Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 101 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
101
Dung lượng
3,53 MB
Nội dung
Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI 1.1 Đặt vấn đề Trong nông nghiệp, phát sinh, phát triển lây lan dịch bệnh nhiều yếu tố ngoại cảnh như: độ ẩm đất, nhiệt độ, độ pH… dịch bệnh lây lan từ nơi đến nơi khác gây ảnh hưởng đến trồng, không mang lại suất cao Vì người ta tạo vườnnhàkính nhằm cách ly vườn rau với yếu tố ngoại cảnh, tác nhân không tốt cho tr ồng dịch bệnh dễ dàng cho việc chăm sóc, tưới tiêu, thu hoạch Và để tối ưu hơn, chúng em nghĩ đến việc giám sát, điều khiển yếu tố ngoại cảnh độ ẩm đất, ánh sáng, nhiệt độ mức phù hợp cho phát triển tốt cách ứngdụng Internet of Things 1.2 Internet of things Thuật ngữ “Internet of Things” (viết tắt IoT) dạo gần xuất nhiều thu hút khơng quan tâm ý gi ới cơng nghệ Vì bùng nổ IoT tương lai có tác động mạnh mẽ tới sống, công việc xã hội loài người Thực tế, Internet of things manh nha từ nhi ều thập kỹ trước Tuy nhiên đến năm 1999 cụm từ IoT đưa Kevin Ashton, Ông nhà khoa học sáng lập Trung tâm Auto-ID đại học MIT, nơi thiết lập quy chuẩn toàn cầu cho RFID (một phương thức giao ti ếp không dây dùng sóng radio) số loại cảm biến khác 1.2.1Internet of Things gì? Internet of Things (IoT) – Mạng lưới thiết bị kết nối Internet viễn cảnh giới, đồ vật, người cung cấp định danh (tương tự ID) riêng Tất chúng có khả truyền tải, trao đổi liệu qua mạng mà không cần tương tác trực tiếp người với Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” người, hay người với máy tính IoT kết hợp cơng nghệ khơng dây, cơng nghệ vi điện tử internet Nói cách đơn giản, Internet of Things tất thứ kết nối với qua mạng Internet, người dùng (chủ) ki ểm sốt đồ vật qua mạng thiết bị thông minh, chẳng hạn smartphone, tablet, PC… 1.2.2Kiến trúc hệthống Internet of things Một hệthốngIot tạo thành phần: Vạn vật (Things), trạm kết nối (Gateways), hạ tầng mạng điện toán đám mây (Network and Cloud) lớp tạo cung cấp dịch vụ (Services-creation and Solutions Layers) Vạn vật (Things): Ngày có hàng tỷ vật dụng hữu thị trường gia dụng công nghệ, nhà tay người dùng Chẳng hạn xe hơi, thiết bị cảm biến, thiết bị đeo điện thoại di động kết nối trực tiếp thông qua băng tầng mạng không dây truy cập vào Internet Giải pháp IoT giúp thiết bị thông minh sàng lọc, kết nối quản lý liệu cách cục bộ, thiết bị chưa thơng minh kết nối thông qua trạm kết nối Trạm kết nối (Gateways): Một rào cản tri ển khai IoT gần 85% vật dụng khơng thiết kế để kết nối với Internet chia sẻ liệu với điện toán đám mây Để khắc phục vấn đề này, trạm kết nối đóng vai trò trung gian trực tiếp, cho phép vật dụng có sẵn kết nối với điện toán đám mây cách bảo mật dễ dàng quản lý Hạ tầng mạng điện toán đám mây (Network and Cloud): - Cơ sở hạ tầng kết nối: Internet hệthống toàn cầu nhiều mạng IP kết nối với liên kết với Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” hệthống máy tính Cơ sở hạ tầng mạng bao gồm thiết bị định tuyến, trạm kết nối, thiết bị tổng hợp, thiếp bị lặp nhiều thiết bị khác kiểm sốt lưu lượng liệu lưu thơng kết nối đến mạng lưới viễn thông cáp - triển khai nhà cung cấp dịch vụ - Trung tâm liệu/ hạ tầng điện toán đám mây: Các trung tâm liệu hạ tầng điện toán đám mây bao gồm hệthống lớn máy chủ, hệthống lưu trữ mạng ảo hóa kết nối Các lớp tạo cung cấp dịch vụ (Services-Creation and Solutions Layers): Intel kết hợp phần mềm quản lý API hàng đầu (Application Progmraming Interface) Mashery* Aepona* để giúp đưa sản phẩm giải pháp IoT thị trường cách chóng tận dụng hết giá trị việc phân tích liệu từ hệthống tài sản có sẵn 1.2.3Ứng dụng Internet of things IoT có ứngdụng rộng vơ cùng, kể số thư sau: • Quản lí chất thải • Quản lí lập kế hoạch quản lí thị • Quản lí mơi trường • Phản hồi tinh khẩn cấp • Mua sắm thơng minh • Quản lí thiết bị cá nhân • Đồng hồ đo thơng minh • Tự động hóa ngơi nhà • Ứngdụng nơng nghiệp Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” Tác động IoT đa dạng, lĩnh vực: quản lý hạ tầng, y tế, xây dựng tự động hóa, giao thơng… Cụ thể lĩnh vực y tế, Thiết bị IoT sử dụng phép theo dõi sức khỏe từ xa hệ th ống thông báo khẩn cấp Các thiết bị theo dõi sức khỏe dao động từ huyết áp nhịp tim với thiết bị tiên tiến có khả giám sát cấy ghép đặc biệt, chẳng hạn máy điều hòa nhịp trợ thính tiên tiến cảm biến đặc biệt trang bị không gian sống để theo dõi sức khỏe thịnh vượng chung người già, bảo đảm xử lý thích hợp quản trị hỗ trợ người dân lấy lại tính di động thơng qua điều trị tốt thiết bị tiêu dùng khác để khuyến khích l ối sống lành mạnh, chẳng hạn như, quy mô kết nối máy theo dõi tim mặc 1.3 Giới thiệu chung vườnnhàkínhVườn rau nhàkính (hình 1.1) ứngdụng không giới chưa phổ biến với nông nghiệp nước ta Rau trồng hệthốngnhà bao bọc xung quanh nilong Hệthống điều chỉnh nhiệt độ, độ ẩm, ánh sáng mang lại sản phẩm chất lượng nông nghiệp, hiệu kinh tế cao Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” Hình 1.1 Mơ hình vườn rau nhàkính 1.3.1 Hệthống khung sườn vườnnhàkính Hình 1.2 Khung sườn vườnnhàkính Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” Hệthốngnhàkính sử dụng mái che, rèm che nilong, mái vòm Khung sườn vườnnhàkính (hình 1.2) sắt bao bọc xung quanh vườn lưới nilong để ngăn chặn sâu bệnh từ lây lan vàovườn rau, hạn chế bớt ảnh hưởng xấu từ khí hậu mưa gió, nắng nóng, sương muối, … 1.3.2 Cấu trúc mái che Mái che vườnnhàkính thiết kế hình vòm phủ lớp nilong để ngăn khơng cho mưa tác động đến vườn rau, ngăn thiệt hại mưa lớn, mưa đá, sương muối,… 1.3.3 Hệthống tưới phun sương Tưới phun sương hình thức đưa nước tưới dạng mưa nhân tạo nhờ thiết bị hỗ trợ đầu phun ( hình 1.3) Tưới phun sương nhằm tiết kiệm lượng nước khổng lồ, tiết kiệm công tưới Tưới phun sương đáp ứng tốt yêu cầu tưới, làm lá, nước phân bố đều, sinh trưởng tốt Hình 1.3 Hệthống tưới phun sương Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” 1.3.4 Hệthống làm mát, thơng gió Hệthống làm mát, thơng gió (hình 1.4) làm mát thơng gió tự nhiên phía mái bên hơng vườn sử dụng quạt thơng gió đẩy khí lưu thơngvườn nhằm làm giảm nhiệt độ nhiệt độ khơng khí q cao gây ảnh hưởng xấu đến trồng làm thơngthống khống khí, giúp sinh trưởng tốt Hình 1.4 Quạt thơng gió làm mát vườn rau 1.3.5 Đèn chiếu sáng Đèn bật tự động vào ngày trời mù, ánh sáng mặt trời không đủ cho quang hợp phát triển tăng số gi chi ếu sáng vào mùa hoa, kết trái Khi trời tối chế độ tắt 1.4 Hệthống giám sát điều khiển 1.4.1 Hệthống giám sát Hiển thị giá trị đo nhiệt độ, cường độ ánh sáng, độ ẩm đất, trạng thái làm việc thiết bị quạt, bơm nước, đèn lên web hình chỗ, gần với vườn rau để người nông dân dễ dàng giám sát thơng số điều kiện khí hậu với vườn rau vườn xa Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” 1.4.2 Hệthống điều khiển Hệthống sử dụng hai phương pháp điều khiển tay tự động Điều khiển tay cách đến trực tiếp vườn rau, điều ển thiết bị cách nhấn nút tủ điện điều khiển thi ết bị web điện thoại máy tính mà khơng cần đến trực tiếp vườn rau Điều khiển tự động: Các cảm biến đo giá trị môi trường so sánh với giá trị đặt Nếu chưa phù hợp điều khiển thi ết bị tác động quạt, bơm, đèn để trông có mơi trường sinh trưởng tốt Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” CHƯƠNG 2: LỰA CHỌN THIẾT BỊ PHẦN CỨNG 2.1 Sơ đồ tổng qt Hình 2.1 Sơ đồ tổng qt đề tài Mơ tả hệthốngHệthống gồm phận - Bộ phần xử lí: sử dụng vi điều khiển Arduino Mega 2560 có chức tính tốn, xử lí liệu đưa từ cảm biến, từ đưa tín hiệu điều khiển hoạt động thiết bị cấu chấp hành, - đưa tín hiệu hiển thị hình hiển thị LCD Bộ phận cảm biến: bao gồm cảm biến cường độ ánh sáng, cảm biến nhiệt độ, cảm biến độ ẩm đất có chức thu thập liệu môi - trường, đưa đến phận xử lý để phân tích, so sánh Bộ phận hiển thị chấp hành: gồm có hình LCD 16x2 để hiển thị giá trị cảm biến đo được; quạt dùng để làm mát nhiệt độ vượt Đề tài: “Ứng dụngIoTvàohệthốngvườnnhà kính” nhiệt độ cho phép; bơm nước để tưới nước cho trồng, hệ - thống đèn led để đảm bảo đủ ánh sáng cho quang hợp trồng Bộ phận điều khiển: gồm có nút bấm thực chức năng: chọn chế độ làm việc (auto/manual), nút điều khiển đèn (on/off), nút điều khiển quạt (on/off), nút điều khiển bơm nước (on/off), nút - reset hệthống Bộ phận thu-phát sóng wifi: sử dụng Module wifi ESP8266 để kết nối song wifi, thông qua thực nhiệm vụ trao đổi liệu hệthống - mạng Internet Giao diện giám sát điều khiển: viết ngơn ngữ html, sử dụng máy lính hay smart phone để truy cập, có chức hiển thị giá trị cảm biến đo được, nút chức điều khiển hiển thị chấp hành nhập giá trị đặt cho hệthốngThông qua việc so sánh giá trị cảm biến đo giá trị đặt hệthống đưa tín hiệu điều khiển hoạt động thiết bị quạt, đèn, bơm nước Việc set giá trị đặt thực hai cách, cách thứ trực tiếp thay đổi chương trình nạp vào vi điều khiển Arduino, cách thứ hai thay đổi giao diện wed giám sát điều khiển thông qua việc nhập thông số vào ô setpoint 2.2 Board Arduino mega2560 2.2.1 Giới thiệu Arduino mega2560 Arduino mega2560 (hình 2.2) board mạch tổ hợp sử dụng vi điều khiển Atmega2560 Nó có 54 chân vào/ra, có 15 chân có th ể sử dụng kết đầu PWM, 16 chân vào anolog, chân UART, hoạt động tần số 16MHz, kết nối USB, jack DC, đầu ICSB, nút reset… Arduino mega2560 chứa tất thứ cần thiết để lập trình tự học Chỉ cần kết nối board với máy tính cap USB, chuyển đổi AC/DC pin cấp nguồn cho board mega2560 10 Topic Message SensorValuethe payloadControlValuegR pre { font-size: 11px; } var form = document.forms["send"]; form.addEventListener("submit", function (e) { e.preventDefault(); message = new Paho.MQTT.Message(document.getElementById("message").value); message.destinationName = document.getElementById("topic").value; client.send(message); }); function Publish(msg, topic) { message = new Paho.MQTT.Message(msg); message.destinationName = topic; client.send(message); } // called when the client connects function onConnect() { // Once a connection has been made, make a subscription and send a message console.log("onConnect"); infDiv.textContent = ""; infDiv.style.display= "none"; errDiv.textContent = ""; errDiv.style.display = "none"; sucDiv.textContent = "Connect successfully !"; sucDiv.style.display = "block"; client.subscribe("#"); IsConnected = true; Publish("gR", 'ControlValue'); } // called when the client loses its connection function onConnectionLost(responseObject) { if (responseObject.errorCode !== 0) { console.log("onConnectionLost:", responseObject.errorMessage); setTimeout(function() { client.connect() }, 5000); } } var Humi = document.getElementById("Humi").innerHTML; var Temp = document.getElementById("Temp").innerHTML; var Light = document.getElementById("Light").innerHTML; // called when a message arrives function onMessageArrived(message) { var tdTopic = document.createElement("td"); tdTopic.textContent = message.destinationName; var tdMsg = document.createElement("td"); try { tdMsg.textContent = message.payloadString; } catch (e) { //tdMsg.textContent = "*** Binary data ***"; var pre = document.createElement("pre"); var base64 = btoa(String.fromCharCode.apply(null, message.payloadBytes)); pre.textContent = base64.replace(/(.{72})/g, "$1\n"); var note = document.createElement("em"); note.textContent = "Binary data (base64 encoded)" tdMsg.appendChild(note); tdMsg.appendChild(pre) } //alert(tdMsg.textContent); if (tdMsg.textContent.charAt(0) == 'L') { var arr = tdMsg.textContent.split("-"); document.getElementById("Light").innerHTML = arr[0].substring(1) + " S"; document.getElementById("Temp").innerHTML = arr[1].substring(1) + " C"; document.getElementById("Humi").innerHTML = arr[2].substring(1) + " %"; } if (tdMsg.textContent.charAt(4) == 'R') { for( i = 0; i < 4; i++) { if (tdMsg.textContent.charAt(i) == '1') { document.getElementById("lamp" + (i + 1)).checked = true; } else { document.getElementById("lamp" + (i + 1)).checked = false; } } } if (tdMsg.textContent.charAt(1) == '_' && message.destinationName != "SmartPhone") { var number = Number(tdMsg.textContent.substring(0, 1)); if ((number + 1) > 4) return; var i = number + 1; if (tdMsg.textContent.charAt(2) == '1') { document.getElementById("lamp" + i).checked = true; } else { document.getElementById("lamp" + i).checked = false; } } var tr = document.createElement("tr"); tr.appendChild(tdTopic); tr.appendChild(tdMsg); document.getElementById("msgs").appendChild(tr); } function onFailure(invocationContext, errorCode, errorMessage) { infDiv.textContent = ""; infDiv.style.display = "none"; errDiv.textContent = "Connect failed !"; errDiv.style.display = "block"; sucDiv.textContent = ""; sucDiv.style.display = "none"; IsConnected = false; } var infDiv = document.getElementById("info"); var errDiv = document.getElementById("error"); var sucDiv = document.getElementById("success"); var configPanel = document.getElementById("ConfigPanel"); var webSocket = document.getElementById("WebSocket"); infDiv.textContent = "Connecting "; infDiv.style.display = "block"; var IsConnected = false; var Host = "m12.cloudmqtt.com"; var Port = 37387; var UserName = "wind2115"; var Password = "841566"; var clientId = "ws" + Math.random(); // Create a client instance var client = new Paho.MQTT.Client(Host, Port, clientId); // set callback handlers client.onConnectionLost = onConnectionLost; client.onMessageArrived = onMessageArrived; // kết nối tới client client.connect( { useSSL: true, userName: UserName, password: Password, onSuccess: onConnect, onFailure: onFailure }); function ConnectCloudMQTT() { if (IsConnected == true) client.disconnect(); Host = document.getElementById("host").value; Port = document.getElementById("port").value; UserName = document.getElementById("username").value; Password = document.getElementById("password").value; clientId = "ws" + Math.random(); // Create a client instance client = new Paho.MQTT.Client(Host, parseInt(Port), clientId); // set callback handlers client.onConnectionLost = onConnectionLost; client.onMessageArrived = onMessageArrived; // connect the client client.connect({ useSSL: true, userName: UserName, password: Password, onSuccess: onConnect, onFailure: onFailure }); infDiv.textContent = "Connecting "; infDiv.style.display = "block"; sucDiv.textContent = ""; sucDiv.style.display = "none"; errDiv.textContent = ""; errDiv.style.display = "none"; } function Config() { if (configPanel.style.display == "none") { configPanel.style.display = "block"; } else { configPanel.style.display = "none"; } } function TurnWebSocket() { if (webSocket.style.display == "none") { webSocket.style.display = "block"; } else { webSocket.style.display = "none"; } } function SendControlValue(element) { var number = Number(element.id.substring(4)) - 1; if(element.checked == true) { Publish(number + "_1", 'ControlValue'); Publish(number + "_1\n", 'SmartPhone'); } else { Publish(number + "_0", 'ControlValue'); Publish(number + "_0\n", 'SmartPhone'); } } function UpdateSetpoint() { var light = document.getElementById("spLight").value; var temp = document.getElementById("spTemp").value; var humi = document.getElementById("spHumi").value; Publish("Sp-L" + light + "-T" + temp + "-H" + humi, 'ControlValue'); Publish("Sp-L" + light + "-T" + temp + "-H" + humi + "\n", 'SmartPhone'); } function Refresh() { Publish("refresh", 'ControlValue'); } ... Ứng dụng IoT vào hệ thống vườn nhà kính Hình 1.1 Mơ hình vườn rau nhà kính 1.3.1 Hệ thống khung sườn vườn nhà kính Hình 1.2 Khung sườn vườn nhà kính Đề tài: Ứng dụng IoT vào hệ thống vườn nhà. .. tài: Ứng dụng IoT vào hệ thống vườn nhà kính 3.4 Sơ đồ nối dây Hình 3.4 Sơ đồ nối dây hệ thống 28 Đề tài: Ứng dụng IoT vào hệ thống vườn nhà kính 3.5 29 Đề tài: Ứng dụng IoT vào hệ thống vườn. .. phụ thuộc vào giá trị đặt 22 Đề tài: Ứng dụng IoT vào hệ thống vườn nhà kính 3.2 Sơ đồ thuật tốn Hình 3.2 Sơ đồ thuật toán hệ thống 23 Đề tài: Ứng dụng IoT vào hệ thống vườn nhà kính 3.3