Xem mẫu

  1. Ứng dụng mạng cảm biến không dây và điện toán đám mây để giám sát môi trường và điều khiển các thiết bị điện trong nhà Huỳnh Minh Đức Khoa Khoa Học Kỹ Thuật Trường Đại Học Hoa Sen Email: duc.huynhminh@hoasen.edu.vn Tóm tắt—Bài báo này trình bày phương pháp kết hợp [3], cường độ ánh sáng [4], áp suất không khí, nồng độ mạng cảm biến không dây và điện toán đám mây để thiết các loại khí gây ô nhiễm CO, CO2 , SO2 , NO2 , O3 [5], lập hệ thống giám sát theo thời gian thực môi trường sống nồng độ bụi trong không khí [6]. Các ứng dụng giám kèm theo chức năng điều khiển các thiết bị điện bên trong sát môi trường phát triển nhanh chóng, được áp dụng một tòa nhà. Hệ thống, được thiết kế theo kiến trúc đa tầng, được sử dụng để giám sát môi trường, quản lý hệ vào giám sát môi trường sống của cây trồng, vật nuôi thống chiếu sáng, điều hòa không khí trong các lớp học ở [7] trong các nông trại, giám sát môi trường nhà kính đại học Hoa Sen. Mục tiêu là tạo ra môi trường học tập, [8], giám sát chất lượng không khí bên trong nhà [9], ô làm việc phù hợp đồng thời giảm tiêu thụ điện năng. Mạng nhiễm không khí môi trường bên ngoài [10], giám sát cảm biến, theo chuẩn IEEE 802.15.4/ZigBee, bao gồm một khí hậu [11] và giám sát môi trường rừng [12]. nút điều phối các thành phần trong mạng, các nút định Trong dự án tại đại học Hoa Sen, chúng tôi xây dựng tuyến dữ liệu và các nút cảm biến được cấu tạo từ mạch vi điều khiển Arduino/WeMos, mô đun truyền thông Xbee, hệ thống giám sát theo thời gian thực các chỉ số nhiệt độ, cảm biến DHT22 và rơ le. Nút cảm biến thu thập dữ liệu, độ ẩm không khí, ánh sáng, các loại khí gây ô nhiễm CO, truyền dữ liệu theo các nút định tuyến về nút điều phối CO2 , NO2 của môi trường sống bên trong nhà. Hệ thống đóng vai trò là một Gateway. Gateway truyền dữ liệu về này được sử dụng để theo dõi các chỉ số của không khí máy chủ trên cloud để xử lý, lưu trữ thông qua giao thức bên trong các lớp học, phòng làm việc ở đại học Hoa Sen. MQTT. Hệ thống cung cấp giao diện web cùng ứng dụng Bên cạnh chức năng giám sát môi trường từ xa, chúng điện thoại cho người dùng giám sát các chỉ số môi trường trong các lớp học tại những thời điểm khác nhau. tôi còn nghiên cứu và tích hợp vào hệ thống chức năng Từ khóa—Giám sát môi trường, mạng cảm biến không điều khiển từ xa các thiết bị điện, giúp mọi người chủ dây, điện toán đám mây, ZigBee, Arduino, WeMos ESP8266, động sử dụng các thiết bị điện một cách hợp lý. Trước Xbee S2, MQTT. tiên, nhóm thử nghiệm trên nguyên mẫu bao gồm cảm biến đo giá trị nhiệt độ, độ ẩm không khí và rơ le điều I. GIỚI THIỆU khiển đèn hoặc máy lạnh. Thiết kế của hệ thống là mở Cách mạng công nghiệp 4.0, cùng những đột phá của nên dễ dàng đặt thêm các cảm biến và các rơ le khác. kết nối vạn vật (IoT), trí tuệ nhân tạo, điện toán đám Các cảm biến được bố trí tại nhiều vị trí khác nhau trong mây, dữ liệu lớn, diễn ra mạnh mẽ trong vài năm gần các lớp học, phòng làm việc để thu thập dữ liệu. Các dữ đây, đã tạo nên các cuộc cách mạng trong sản xuất công liệu, sau đó, được gửi về trạm thu được gọi là Gateway nghiệp, nông nghiệp và trong các dịch vụ phục vụ đời thông qua mạng cảm biến không dây (WSN). sống xã hội. Song song với sự phát triển này, thế giới WSN là sự kết hợp giữa hệ thống nhúng và truyền cũng đang đối diện với nhiều thách thức trước sự biến thông không dây để truyền dữ liệu giữa các nút cảm đổi của khí hậu, nạn ô nhiễm môi trường, vấn đề giảm biến dựa trên mạng không dây tùy biến. WSN là tập hợp tiêu thụ năng lượng trong đó có điện năng. Do đó, tạo các nút cảm biến bao gồm mạch vi điều khiển, các cảm môi trường sống trong đó các chỉ số được giám sát, giảm biến, mô đun truyền thông không dây và nguồn điện. thiểu sự ô nhiễm, tiết kiệm năng lượng, đang được nhiều Cảm biến thu thập dữ liệu, mạch vi điều khiển xử lý dữ tổ chức và chính phủ đặc biệt quan tâm. liệu, các nút trao đổi một phần hay toàn bộ dữ liệu với Sự phát triển nhanh chóng của công nghệ điện tử viễn các nút khác, các trạm thu nhờ vào mô đun truyền thông. thông cùng nhiều công trình nghiên cứu IoT, trong hơn Các nút cảm biến thường được cấp năng lượng bởi các thập niên qua, được áp dụng vào nhiều lĩnh vực đời sống. nguồn điện độc lập nên thời gian hoạt động phụ thuộc Trong số đó, có nhiều công trình nghiên cứu liên quan vào nguồn điện này. Nhằm giảm năng lượng tiêu thụ, cơ đến các ứng dụng giám sát môi trường [1]. Hệ thống giám chế truyền đa chặng được áp dụng trong quá trình truyền sát môi trường là hệ thống đo đạc, kiểm soát các chỉ số dữ liệu và Wifi [13], Bluetooth [14], ZigBee [4], [5] là của môi trường như nhiệt độ, độ ẩm không khí [2] và đất các giao thức truyền thông được triển khai trên WSN. 43
  2. Hình 1. Mô hình kiến trúc hệ thống tổng thể. WSN được nhóm xây dựng dựa trên giao thức ZigBee thông thấp, công suất thấp, chi phí thấp, được xây dựng bởi vì các thiết bị hỗ trợ ZigBee có kích thước nhỏ, dựa trên chuẩn IEEE 802.15.4, là chuẩn sử dụng tín hiệu chi phí thấp, công suất thấp, linh hoạt và dễ triển khai. vô tuyến (RF) có tần sóng ngắn. Các thiết bị theo chuẩn Xbee là mô đun truyền thông giữa các nút cảm biến với Zigbee hoạt động trên các băng tần 868MHz ở khu vực Gateway. Mạch Arduino Uno là đơn vị xử lý dữ liệu ở châu Âu và Nhật Bản, 915MHz ở khu vực Bắc Mỹ, nút cảm biến. Tại Gateway, mạch WeMos D1 đóng vai 2.4GHz ở các khu vực khác. Băng tần 2.4GHz có 16 trò truyền dữ liệu từ Gateway về máy chủ đặt trên cloud, kênh tín hiệu, 10 kênh tín hiệu ở băng tần 915MHz và 1 từ đó người dùng có thể giám sát từ xa, theo thời gian kênh tín hiệu ở băng tần 868MHz. WSN với Zigbee có thực, các chỉ số môi trường bằng trình duyệt web trên ba kiểu nút, nút điều phối (ZC), nút định tuyến (ZR) và máy tính cá nhân, ứng dụng trên smartphone. Nhiệt độ, thiết bị đầu cuối (ZED), được cấu tạo từ mạch vi điều độ ẩm tương đối của môi trường được thu thập bởi cảm khiển, mô đun truyền thông, cảm biến, rơ le, nguồn điện. biến DHT22, các thiết bị điện được điều khiển bởi rơ le. 1) Mạch vi điều khiển: Các ZR, ZED được xây dựng Trong các phần tiếp theo của bài báo, chúng tôi lần với mạch Arduino Uno Revision 3 (Uno) là trung tâm lượt trình bày kiến trúc hệ thống, các thiết bị để thiết xử lý dữ liệu. Arduino là nền tảng điện tử nguồn mở, lập WSN ở mục II, các phần mềm yêu cầu để lập trình tạo ra các mạch vi điều khiển dễ sử dụng. Arduino phát triển hệ thống ở mục III và quá trình xây dựng, thử thường là mạch vi điều khiển trong các nguyên mẫu thử nghiệm hệ thống trên môi trường thật cùng với kết quả nghiệm WSN. Mạch Uno hoạt động dựa trên vi điều thu được ở mục IV. Cuối cùng, trong phần V, chúng tôi khiển ATmega328. Uno có 14 chân vào/ra kỹ thuật số kết luận bài báo và định hướng mở rộng nghiên cứu. trong đó 6 chân có thể được dùng làm chân ra PWM, 6 chân vào analog có nhãn A0-A5, chi tiết Uno thể II. KIẾN TRÚC HỆ THỐNG hiện trên Hình 2a. ATmega328 có điện áp hoạt động Các ứng dụng giám sát môi trường, trong các công 5V, bộ nhớ Flash 32KB trong đó 0.5KB được cấp cho trình trước đây, được phát triển dưới dạng ứng dụng chạy Bootloader, SRAM 2KB, EEPROM 1KB, tốc độ xung trên máy tính cá nhân (PC) hoặc là ứng dụng web chạy nhịp 16MHz. Bên cạnh Uno [2], một số công trình đã trên máy chủ. Đối với dạng thứ nhất [2], Gateway giao sử dụng mạch Arduino Mega [4], bộ vi xử lý ARM [16]. tiếp với PC qua cổng nối tiếp, ứng dụng mang tính cục ZC được thiết lập với mạch WeMos D1 Revision 2 bộ chỉ chạy trên một PC. Đối với dạng thứ hai, Gateway (WeMos) làm nhiệm vụ xử lý và truyền dữ liệu về máy giao tiếp với máy chủ qua mạng internet không dây [9] chủ. WeMos D1 R2, với mô đun Wifi Soc ESP-8266EX hay có dây [15], người dùng dễ dàng truy xuất từ xa ở trung tâm, là mạch vi điều khiển, truyền thông không thông tin từ máy chủ bằng trình duyệt web trên PC. Hệ dây chuẩn IEEE 802.11. WeMos có 11 chân vào/ra kỹ thống này, Hình 1, thuộc dạng thứ hai, được thiết kế theo thuật số, trừ chân D0, đều có ngắt, PWM và I2C, 1 chân kiến trúc đa tầng, có ba tầng bao gồm tầng biên là WSN vào analog có nhãn A0 với các chi tiết được mô tả trên làm nhiệm vụ thu thập dữ liệu, tầng giữa là máy chủ Hình 2b. WeMos có vi xử lý 32 bits, tốc độ xung nhịp chứa ứng dụng web xử lý dữ liệu, lưu trữ dữ liệu, trình 80/160MHz, bộ nhớ Flash 4MB, điện áp hoạt động 3,3V, bày thông tin và tầng trình bày là giao diện người dùng. tích hợp Wifi 2,4GHz, kích thước 68.6mm x 53.4mm, trọng lượng 21.8g. WeMos được thiết kế với hình dáng A. Yêu cầu phần cứng của tầng biên và bố cục tương tự Uno nên hoạt động như Uno. ZigBee là một giao thức truyền thông chuẩn cho các Các mạch Uno, WeMos được lập trình nhờ vào cổng ứng dụng mạng không dây (WPAN) tầm ngắn có băng USB. Chương trình trên Arduino đều chạy trên WeMos. 44
  3. (a) Arduino Uno R3 Hình 3. Xbee S2C cùng sơ đồ chân và các mạch giao tiếp Xbee. cấu hình, gán địa chỉ và truyền nhận dữ liệu thông qua USB. Adapter có tích hợp IC chuyển đổi nguồn 3.3V và IC FT232RL chuyển USB sang UART kết nối máy tính. 3) Cảm biến DHT22 và mô đun rơ le 5V: Cảm biến nhiệt độ, độ ẩm kỹ thuật số DHT22 là cảm biến kép có đầu ra là một chân mang tín hiệu kỹ thuật số của nhiệt độ và độ ẩm đã được hiệu chỉnh. DHT22 có kích thước nhỏ, tiêu thụ điện năng thấp, độ tin cậy và độ ổn định cao. DHT22 đo độ ẩm dạng điện trở, có bộ phận đo nhiệt độ NTC, khi kết nối với vi điều khiển 8 bit sẽ xử (b) WeMos D1 R2 lý nhanh, chống nhiễu, cho kết quả chính xác. DHT22 Hình 2. Sơ đồ chân mạch Arduino Uno R3 và WeMos D1 R2. có 4 chân, Hình 4a, điện áp hoạt động 3.3–5.5V, dòng điện 2.5mA, đo độ ẩm 0%RH–99.9%RH sai số ±2%, đo nhiệt độ -40–80◦ C sai số ±0.5◦ C, tần số lấy mẫu 0.5Hz. 2) Mô đun Xbee S2C và các mạch giao tiếp Xbee: Mô Rơ le là công tắc được vận hành bằng điện. Từ trường đun truyền thông trên các ZC, ZR, ZED là mạch thu phát tạo ra bởi dòng điện chạy trong cuộn dây bật đòn bẩy để Xbee S2C RF, sản phẩm của Digi International, Hình 3a. thay đổi vị trí công tắc. Rơ le có hai chế độ ON/OFF tùy Xbee trao đổi dữ liệu thông qua giao thức mạng không thuộc vào dòng điện trong cuộn dây. Mô đun rơ le 5V dây IEEE 802.15.4/ZigBee ở băng tần ISM 2.4GHz, kết đơn nhỏ gọn, có opto và transistor cách ly giúp đảm bảo nối nhanh mạng đa điểm hay mạng ngang hàng. Xbee có an toàn cho mạch vi điều khiển. Rơ le có ba tiếp điểm địa chỉ MAC 64 bits và địa chỉ mạng 16 bits, có khả năng đóng ngắt NC, NO và COM, Hình 4b, điện áp hoạt động kết nối 255 thiết bị trên mỗi mạng, tự động định tuyến 5V, dòng điện 80mA, điện áp đóng ngắt tối đa AC250V- để tạo đường truyền dữ liệu giữa các nút. Xbee truyền dữ 10A hoặc DC30V-10A. liệu RF lên đến 250 Kbps trong phạm vi 60m bên trong nhà và 1200m ở ngoài trời. Xbee cung cấp tập lệnh AT B. Mô hình mạng ZigBee (Transparent) hay chế độ API (Application Programming Các mô hình mạng ZigBee thường gặp phổ biến là Interface) để người dùng tự cấu hình Xbee. Xbee có 20 mạng hình sao, hình cây và lưới. Trong mạng hình sao, chân như trên Hình 3b, được thiết kế lý tưởng cho các có duy nhất một ZC chịu trách nhiệm khởi tạo, quản lý ứng dụng tiết kiệm điện, ở nơi khó lắp đặt mạng có dây. các ZED. Các ZED giao tiếp trực tiếp với ZC. Mô hình Mạch giao tiếp Arduino Xbee (Arduino Xbee shield), mạng hình sao đơn giản, dễ triển khai. Hình 3d, tương thích với Xbee Standard và Xbee Pro, Trong mô hình dạng lưới, mạng ZigBee được mở rộng giúp dễ dàng kết nối Xbee với mạch Arduino. Mạch với một số ZR được quản lý bởi ZC. Mạng lưới cho phép tích hợp IC chuyển nguồn 3.3V, Led báo trạng thái một nút giao tiếp với một nút lân cận bất kỳ để truyền (ON/SLEEP, RSSI, ASS) và công tắc để chọn chế độ dữ liệu. Nếu nút nào đó bị lỗi, dữ liệu sẽ tự động được kết nối của Xbee với Arduino hoặc USB máy tính. định tuyến đến nút khác nên khi một đường truyền bị lỗi, Với đế mạch thu phát Xbee USB (Adapter), Hình 3c, nút sẽ tìm đường truyền thay thế. Mạng lưới, thuộc dạng người dùng kết nối Xbee với phần mềm trên máy tính để mạng ngang hàng, là mạng truyền dữ liệu đa chặng. 45
  4. Hình 5. Kiến trúc phần cứng ZC và ZR/ZED của WSN. Hình 4. Cảm biến đo nhiệt độ, độ ẩm DHT22 và mô đun rơ le 5V đơn. các thông điệp giữa hai tầng này. Chúng tôi sử dụng Chức năng của nút ZR trong mạng hình cây là mở giao thức MQTT thay cho giao thức HTTP [4], [5], [15] rộng phạm vi của mạng. Các nút ZED kết nối với nút vì MQTT là giao thức truyền thông điệp theo mô hình ZC hoặc ZR được gọi là nút con. Chỉ có nút ZC, ZR publish/subscribe, sử dụng băng thông thấp, độ tin cậy mới có nút con. Mỗi nút ZED chỉ giao tiếp được với nút cao, hoạt động trong môi trường có độ trễ cao và có cha. Nhược điểm của mạng hình cây là nếu nút cha bị đường truyền không ổn định. MQTT, phù hợp với các lỗi thì các nút con của chúng sẽ không thể giao tiếp với thiết bị IoT, là giao thức lý tưởng cho các ứng dụng các nút khác trong mạng cho dù hai nút ở gần nhau. M2M (Machine-to-Machine). Để thử nghiệm nhanh trên Với nhiều ưu điểm, WSN ở tầng biên được thiết kế theo nguyên mẫu, tầng giữa được triển khai trên Beebotte, một mô hình dạng lưới. Ngoài mạng lưới [5], mạng hình sao nền tảng đám mây kết nối các đối tượng theo thời gian cũng được chọn cho WSN trong nghiên cứu [4], [15]. thực, đã được tích hợp WS, DBMS và giao thức MQTT. C. Thiết kế hệ thống Tầng trình bày là giao diện người dùng. Đó là giao Hình 1 thể hiện kiến trúc tổng thể hệ thống. Tầng biên diện web dành cho trình duyệt web trên PC hay ứng là WSN/ZigBee có mô hình dạng lưới, bao gồm ba thành dụng di động trên smartphone. HTTP và MQTT là các phần ZED, ZR, ZC. ZED và ZR đảm nhận truyền, nhận giao thức giao tiếp giữa tầng giữa và tầng trình bày. dữ liệu RF trong mạng. ZR có tính năng định tuyến các III. CÁC PHẦN MỀM YÊU CẦU gói dữ liệu truyền trong mạng nhưng ZED thì không. Pin Phần mềm phát triển hệ thống gồm có công cụ để là nguồn cấp điện chính cho ZED nên ZED luôn được thiết kế, lập trình hệ thống và phần mềm cùng thư viện tối ưu sao cho công suất tiêu thụ là nhỏ nhất nhờ vào chế hỗ trợ xây dựng hệ thống. Các công cụ, phần mềm, thư độ ngủ. Mạch vi điều khiển trên ZED, ZR là Uno kết nối viện đều là phần mềm miễn phí, mã nguồn mở. với mô đun truyền thông Xbee nhờ vào mạch Arduino Xbee shield, Hình 5b. Nguồn điện từ Uno được cấp cho A. Công cụ thiết kế và lập trình Xbee, cảm biến DHT22, mô đun rơ le 5V. Chân dữ liệu 1) Lập trình Arduino: Mạch Arduino được lập trình của DHT22 và chân tín hiệu của rơ le kết nối với các bằng Arduino IDE, một ứng dụng nguồn mở được tải chân vào/ra kỹ thuật số của Uno như trên Hình 5b. miễn phí từ website Arduino. Arduino IDE được viết ZC khởi tạo PAN (Personal Area Network) bằng cách bằng Java, làm việc trên các nền tảng Windows, MacOSX chọn kênh tín hiệu và PAN ID thích hợp. ZC cho phép và Linux. Ngôn ngữ lập trình Arduino dựa trên ngôn ngữ các ZR, ZED tham gia PAN, truyền, nhận dữ liệu RF, C/C++. Arduino IDE giúp dễ dàng viết, tải chương trình định tuyến dữ liệu truyền trong mạng. ZC là duy nhất lên mạch và tương thích với tất cả mạch Arduino. trong mạng ZigBee, là Gateway truyền dữ liệu từ WSN về Một ứng dụng khác là PlatformIO, hệ sinh thái nguồn máy chủ. ZC được cấu tạo bởi mạch WeMos và mô đun mở để lập trình IoT. Được viết bằng Python, chạy trên đa Xbee kết nối với nhau qua mạch Arduino Xbee shield, nền tảng, PlatformIO không những có đầy đủ tính năng Hình 5a. Xbee được cấp điện từ nguồn điện trên WeMos. của Arduino IDE mà còn là công cụ lập trình thông minh. Tầng giữa là máy chủ (AS) chứa hai thành phần: máy 2) Lập trình Xbee: XCTU là một ứng dụng đa nền chủ ứng dụng web (WS) và hệ quản trị cơ sở dữ liệu tảng tương thích với Windows, MacOSX và Linux. (DBMS). WS chứa ứng dụng web làm nhiệm vụ xử lý XCTU được thiết kế cho những người phát triển hệ thống dữ liệu từ tầng biên gửi về, lưu dữ liệu vào DBMS, tương tác dễ dàng với các mô đun Xbee RF thông qua chuyển dữ liệu thành thông tin giám sát, chuyển lệnh giao diện đồ họa đơn giản dễ sử dụng. Nó cung cấp điều khiển thiết bị từ người dùng xuống tầng biên. Quá các công cụ để thiết lập, cấu hình, kiểm tra các mô đun trình truyền dữ liệu giữa tầng biên và tầng giữa được Xbee RF. XCTU được tải miễn phí từ website của Digi thực hiện dựa trên giao thức MQTT (Message Queuing International. Không chỉ XCTU, CoolTerm, TeraTerm và Telemetry Transport) thông qua MQTT Broker điều phối ZTerm cũng có chức năng cấu hình Xbee. 46
  5. B. Phần mềm và thư viện 1) Ứng dụng dành cho người dùng: Giám sát môi trường và điều khiển thiết bị từ xa được thực hiện trên PC với trình duyệt web hoặc ứng dụng MQTT Dash trên máy tính bảng, smartphone chạy Android. Với MQTT Dash, người dùng dễ dàng tạo bảng điều khiển cho các thiết bị và ứng dụng IoT. MQTT Dash có sẵn trên cửa hàng Google Play. 2) Thư viện lập trình ZC, ZR, ZED: Dữ liệu trao đổi Hình 6. Sơ đồ bố trí ZC, ZR và ZED. giữa tầng biên và tầng giữa trải qua hai giai đoạn: trên tầng biên và giữa Gateway với máy chủ. Các nút của Bảng I WSN ở tầng biên truyền dữ liệu qua mô đun Xbee được THAM SỐ CẤU HÌNH XBEE TRÊN CÁC NÚT điều khiển bởi các thành phần của thư viện xbee-arduino. ZC ZR ZED Xbee-arduino cho phép cả Xbee S1 và Xbee S2 giao tiếp PAN ID 1411 1411 1411 với nhau trong chế độ API. Thư viện này hỗ trợ hầu hết JV Enabled [1] Enabled [1] Enabled [1] các loại gói tin bao gồm TX/RX, AT Command, Remote CE Enabled [1] NI Coordinator Router End Device AT, I/O Samples, Modem Status. API mode 2 2 2 Gateway được lập trình dựa vào thư viện Adafruit MQTT để truyền thông với máy chủ qua giao thức MQTT. Adafruit MQTT, một thư viện MQTT client, chạy • ZC kết nối với WiFi; đọc giá trị nhiệt độ, độ được trên các nền tảng Adafruit FONA, Arduino Yun, ẩm nhận được từ ZR, ZED; gửi giá trị nhiệt ESP8266 và cả Ethernet shield. kết độ, độ ẩm lên Beebotte. nối Gateway với máy chủ qua Wifi. (b) Điều khiển thiết bị điện từ Beebotte Thư viện tạo và quản lý gói tin trong Xbee, • Bật/tắt thiết bị từ bảng điều khiển Beebotte. đọc dữ liệu từ cảm biến kiểu DHT. • ZC nhận yêu cầu từ Beebotte; kiểm tra tên IV. TRIỂN KHAI HỆ THỐNG VÀ KẾT QUẢ phòng (ví dụ A201) trong yêu cầu; chuyển yêu A. Phát triển nguyên mẫu thử nghiệm cầu đến ZR, ZED tương ứng. Chúng tôi triển khai nguyên mẫu thử nghiệm tại Cơ • ZR, ZED kiểm tra lệnh trong yêu cầu từ ZC, sở Quang Trung 2, Đại học Hoa Sen. WSN có một ZC, nếu là 0 thì tắt, nếu là 1 thì bật. hai ZR và bốn ZED, lần lượt có ký hiệu A, B, C, D, 3) Bảng điều khiển Beebotte: Beebotte là một nền E, F, G, được đặt trong phòng lab A211 và sáu phòng tảng đám mây được thiết kế để vận hành các ứng dụng học A201-A206 ở tầng 2, tòa nhà A như trên Hình 6. IoT, giao tiếp theo thời gian thực có hỗ trợ REST, Mô đun Xbee được cấu hình để có firmware phù hợp với WebSockets và MQTT. Chúng tôi xây dựng bảng điều chức năng của từng nút [17]. Mỗi nút có firmware được khiển trên Beebotte giám sát dữ liệu gởi về từ WSN. lập trình với sự hổ trợ của các thư viện mở rộng. Mỗi nút ZR, ZED được quản lý bởi một kênh trên bảng 1) Cấu hình Xbee: Mô đun Xbee trên ZC, ZR, ZED điều khiển, mỗi tài nguyên trên một kênh đại diện cho lần lượt được lập trình là Coordinator, Router, End một kiểu dữ liệu được thu thập trên một nút. Như vậy, Device. Chế độ truyền dữ liệu AT hoặc API của Xbee kênh là tập hợp các tài nguyên được biểu diễn: kenh = cũng được thiết lập. Với chế độ AT, Xbee gửi, nhận dữ {(tai nguyen, du lieu)1 , . . . , (tai nguyen, du lieu)n }. liệu theo cơ chế truyền tuần tự, không có kiểm soát lỗi, Các kênh có nhãn QA201-QA206 được tạo ra trên dữ liệu được truyền không đồng bộ. Trong chế độ API, bảng điều khiển tương ứng với các nút E, D, B, C, F, dữ liệu được định dạng trong các frame có thông tin G. Mỗi kênh có hai tài nguyên nhiệt độ và độ ẩm để đích đến, khối lượng dữ liệu. Chế độ API có hai loại. lưu trữ nhiệt độ, độ ẩm của môi trường, được thể hiện: API mode 1 không gửi đi các ký tự đặc biệt nhưng API QA201 = {(T emperature, T ), (Humidity, RH)}. mode 2 thì có nên dữ liệu được bảo mật hơn. Xbee Chức năng điều khiển các thiết bị điện được quản lý trong ứng dụng này cần được thiết lập tham số PAN ID, bởi một kênh chứa sáu tài nguyên. Mỗi tài nguyên có JV (Channel Verification), CE (Coordinator Enabled), NI kiểu dữ liệu On/Off được tạo bởi Widget On/Off trên (Node Identifier) và API mode bằng XCTU như Bảng I. bảng điều khiển. Kênh điều khiển có dạng: Control = Các tham số cơ bản khác được gán giá trị mặc định. {(A201, On/Of f ), . . . , (A206, On/Of f )}. Xbee trên ZED chuyển qua trạng thái ngủ để tiết kiệm điện năng khi tham số Sleep Mode = Pin Hibernate[1]. B. Kết quả thực nghiệm 2) Kịch bản lập trình ZC, ZR, ZED: Quá trình thử nghiệm nguyên mẫu được thực hiện tại (a) Gửi dữ liệu lên Beebotte sáu phòng học liên tục trong mười ngày. Để đảm bảo tính • ZR, ZED gửi giá trị nhiệt độ, độ ẩm thu thập chính xác của dữ liệu, các ZED, ZR thu thập các chỉ số từ DHT22 đến ZC mỗi 10s. nhiệt độ, độ ẩm mỗi 10 giây. Dữ liệu thu thập từ các 47
  6. Định hướng khi xây dựng hệ thống thực tế, chúng tôi sử dụng openHAB, MySQL và Mosquitto MQTT Broker thay cho Beebotte để tích hợp thêm các đối tượng thông minh có khả năng phân tích dữ liệu, điều khiển các thiết bị tùy theo sự thay đổi của môi trường. Chúng tôi cũng quan tâm đến giảm chi phí xây dựng hệ thống bằng cách sử dụng mô đun truyền thông RF có giá thành thấp hơn Xbee như mạch RF NRF24L01+. LỜI CẢM ƠN Dự án nghiên cứu này, nằm trong khuôn khổ chương trình nghiên cứu và ứng dụng công nghệ thông tin vào môi trường giảng dạy và học tập tại đại học Hoa Sen, được tài trợ bởi quỹ nghiên cứu và phát triển của đại học Hoa Sen. TÀI LIỆU THAM KHẢO [1] R. Mittal and M. P. S. Bhatia, “Wireless sensor networks for mon- itoring the environmental activities,” in 2010 IEEE International Conference on CI and CR, Dec 2010, pp. 1–5. Hình 7. Biểu đồ nhiệt độ (trên), độ ẩm (dưới) trong sáu lớp học. [2] V. S. Kale and R. D. Kulkarni, “Real time remote temperature and humidity monitoring using arduino and xbee s2,” IJIREEICE, vol. 4, no. 6, Jun. 2016. [3] A. Panwar, A. Gaba, R. Singh, and A. Gehlot, “Soil and envi- ronment conditions based smart analysis system for plant growth using iot,” in IC, Control and Devices, 2018, pp. 587–598. [4] G. Marques and R. Pitarma, “An indoor monitoring system for ambient assisted living based on internet of things architecture,” in Int. J. Environ. Res. Public Health, 2016. [5] M. Benammar, A. Abdaoui, S. H. M. Ahmad, F. Touati, and A. Kadri, “A modular iot platform for real-time indoor air quality monitoring,” in Sensors, 2018. [6] H. Ali, J. K. Soe, and S. R. Weller, “A real-time ambient air quality monitoring wireless sensor network for schools in smart cities,” in 2015 IEEE First ISC2, Oct 2015, pp. 1–6. [7] M. López, S. Martínez, J. Gómez, A. Herms, L. Tort, J. Bausells, and A. Errachid, “Wireless monitoring of the ph, nh4+ and temperature in a fish farm,” Procedia Chemistry, vol. 1, 2009. [8] S. Gong, C. Zhang, L. Ma, J. Fang, and S. Wang, “Design and implementation of a low-power zigbee wireless temperature humidity sensor network,” in Computer and CT in Agriculture IV. Springer Heidelberg, 2011, pp. 616–622. Hình 8. Giám sát và điều khiển hệ thống với MQTT Dash. [9] G. Marques and R. Pitarma, “Monitoring health factors in indoor living environments using internet of things,” in Recent Advances in IS and Technologies. Springer Publishing, 2017, pp. 785–794. [10] N. P. T. Amol R. Kasar, Dnyandeo S. Khemnar, “Wsn based air nút được Gateway chuyển về lưu trên Beebotte. Người pollution monitoring system,” IJSEA, vol. 2, pp. 55 – 59, 2013. dùng giám sát các chỉ số môi trường trên bảng điều khiển [11] Y. K. Lee, Y. J. Jung, and K. H. Ryu, “Design and implementation of a system for environmental monitoring sensor network,” in của Beebotte dưới dạng biểu đồ theo thời gian bằng trình Advances in Web and NT, and IM. Springer Heidelberg, 2007. duyệt web trên PC như trên Hình 7 hay ứng dụng MQTT [12] X. Jiang, G. Zhou, Y. Liu, and Y. Wang, “Wireless sensor Dash trên máy tính bảng, smartphone như trên Hình 8. networks for forest environmental monitoring,” in The 2nd Inter- Conference on IS and Engineering, Dec 2010, pp. 2514–2517. Từ kết quả thực nghiệm, có thể nói rằng chúng tôi hài [13] O. A. Postolache, J. M. D. Pereira, and P. M. B. S. Girao, “Smart lòng với những kết quả mà hệ thống mang lại. sensors network for air quality monitoring applications,” IEEE Transactions on I&M, vol. 58, no. 9, pp. 3253–3262, Sept 2009. V. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN [14] M. F. M. Firdhous, B. H. Sudantha, and P. M. Karunaratne, “Iot enabled proactive indoor air quality monitoring system for Chúng tôi đã ứng dụng mạng cảm biến không dây sustainable health management,” in 2017 2nd ICCCT, Feb 2017. ZigBee dựa trên mạch Arduino/WeMos, mô đun Xbee [15] V. Boonsawat, J. Ekchamanonta, K. Bumrungkhet, and S. Kit- tipiyakul, “Xbee wireless sensor networks for temperature moni- S2 cùng nền tảng đám mây để xây dựng hệ thống giám toring,” 05 2010. sát môi trường sống theo thời gian thực và điều khiển [16] M. S. Chavan, M. G. Mehta, and R. K. Munde, “Wireless thiết bị điện từ xa. Sự kết hợp hai chức năng này trên một temperature controlling and monitoring system using arm and xbee,” IJASTR, vol. 2, no. 5, pp. 410–417, Mar. 2015. hệ thống giúp mọi người vừa theo dõi được môi trường [17] H. Kumbhar, “Wireless sensor network using xbee on arduino sống, vừa chủ động sử dụng các thiết bị điện một cách platform: An experimental study,” in ICCUBEA, Aug 2016. hợp lý. Tạo ra một môi trường học tập xanh, tiết kiệm điện năng là điều mà đại học Hoa Sen đang thực hiện. 48
nguon tai.lieu . vn