Xem mẫu

  1. Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XIII về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR), Nha Trang, ngày 8-9/10/2020 DOI: 10.15625/vap.2020.00214 THIẾT KẾ VÀ TỔ CHỨC GIAO THỨC TRUYỀN THÔNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY LORA Nguyễn Văn Thiện1, Quách Đức Cường2, Trịnh Trọng Chưởng3, Nguyễn Bá Nghiễn1 1 Khoa Công nghệ thông tin, Trường Đại học Công nghiệp Hà Nội 2 Khoa Điện, Trường Đại học Công nghiệp Hà Nội 3 Viện Công nghệ HaUI, Trường Đại học Công nghiệp Hà Nội nguyenthien@haui.edu.vn, cuongqd@haui.edu.vn, chuonghtd@haui.edu.vn, nguyenbanghien_cntt@haui.edu.vn TÓM TẮT: Mạng LoRa ngày càng được ứng dụng rộng rãi trong hệ thống mạng cảm biến không dây WSNs (Wireless Sensor Networks) bởi khả năng truyền xa, tiết kiệm năng lượng, hoạt động ổn định. Trong bài báo này, nhóm tác giả sẽ giới thiệu quá trình từng bước xây dựng và tổ chức giao thức truyền thông của mạng LoRa cấu trúc hình cây đảm bảo các yếu tố tin cậy, bảo mật, chuẩn công nghiệp. Quá trình thử nghiệm trên hệ thống WSNs thực hiện với chíp xử lý dòng họ PIC của Microchip đã đạt được kết quả tốt. Từ khóa: WSNs, LoRa network protocol, PIC microcontroller. I. GIỚI THIỆU Mạng cảm biến không dây WSNs (Wireless Sensor Network system) ngày càng được sử dụng phổ biến trong các ứng dụng công nghiệp, nông nghiệp, y tế, giao thông, hệ thống thiết bị dân dụng,… WSNs đã đóng một vai trò quan trọng trong việc kiểm soát dữ liệu diện rộng trên quy mô lớn. Từ đó hệ thống quản lý và người dùng có thể phân tích, đánh giá dữ liệu một cách linh hoạt và thuận tiện. Chính vì những ưu điểm đó nên việc nghiên cứu và triển khai ứng dụng mạng WSNs vào việc thu thập dữ liệu đã trở lên cấp thiết trong những năm gần đây. Nghiên cứu về WSNs tập trung vào một số hướng chính: 1) Tổ chức mạng tối ưu, cải thiện tốc độ mạng; 2) Bảo mật, an toàn hệ thống mạng; 3) Tối ưu năng lượng trong mạng, đặc biệt là các hệ thống mạng sử dụng nguồn pin. WSNs có thể được xây dựng dựa trên nhiều nền tảng mạng khác nhau như: Zigbee, LoRa, Wifi,… hoặc kết hợp giữa các mạng cục bộ và mạng diện rộng để có được cấu trúc mạng WSNs phù hợp với nhu cầu thực tế sử dụng. Đã có rất nhiều các công bố liên quan đến xây dựng cấu trúc mạng, kết quả thiết kế tổ chức mạng WSNs ứng dụng trong các trường hợp cụ thể. Nhưng hầu hết các công bố trên chỉ thể hiện ở lý thuyết tổng quan hoặc các kết quả thử nghiệm. Những vấn đề kỹ thuật chi tiết trong việc tổ chức cấu trúc mạng, định dạng cơ chế bắt tay, định dạng các gói/tập tin truyền nhận,… để thực hiện một mạng dữ liệu không dây thực tiễn đều chưa được đề cập một cách cụ thể và chi tiết. Trong bài báo này chúng tôi sẽ giới thiệu chi tiết việc tổ chức thực hiện một mạng WSNs có cấu trúc hình cây phục vụ việc đo lường các thông số môi trường. Hệ thống WSNs này được thực hiện trên cơ sở phần cứng là các module LoRa 433 MHz và vi điều khiển PIC16F877A của hãng Microchip. II. CẤU TRÚC MẠNG KHÔNG DÂY ĐIỂN HÌNH Mạng cảm biến không dây WSNs là một hệ thống thiết bị bao gồm các phần tử: cảm biến, thiết bị xử lý, thiết bị truyền tin không dây, thiết bị định tuyến, hạ tầng thông tin internet (nếu là hệ diện rộng) nhằm mục đích đo lường, tổng hợp dữ liệu vật lý trong điều kiện Hệ thống này hiện nay được sử dụng rất phổ biến do chúng có nhiều ưu điểm như: linh hoạt trong quá trình lắp đặt, có thể quản lý ở diện rộng với phạm vi khoảng cách địa lý rộng lớn,… Hiện tại mạng WSNs có thể chia thành hai loại chính là mạng WSNs cục bộ và mạng WSNs diện rộng. WSNs cục bộ là mạng cảm biến không dây với phạm vi địa lý khoảng cách từ vài mét cho đến hàng kilômét. Chúng được xây dựng trên nền tảng mạng BlueTooh (BLE), Wi-fi, Zigbee, RF, Z-Wave, LoRa,… Trong khi đó WSNs diện rộng là mạng cảm biến có phạm vi địa lý rộng lớn. WSNs diện rộng thực chất là một hệ thống sử dụng dịch vụ GPRS, internet để kết nối các WSNs cục bộ tạo thành một mạng cảm biến không dây nhiều tầng, nhiều lớp với không gian địa lý rộng lớn. Hình 1 mô tả mạng cảm biến WSNs cục bộ và mạng WSNs diện rộng điển hình. Hình 1. Mạng cảm biến không dây WSNs điển hình
  2. Nguyễn Văn Thiện, Quách Đức Cường, Trịnh Trọng Chưởng, Nguyễn Bá Nghiễn 571 Trong bài báo này chúng tôi tập trung vào việc tổ chức một mạng WSNs cục bộ hình cây dựa trên mạng LoRa. Đây là mạng không dây có băng tần từ 430 MHz đến 915 MHz cho từng khu vực khác nhau trên thế giới được sử dụng khá phổ biến do chúng có ưu điểm: khoảng truyền xa (từ vài trăm mét đến vài kilômét); công suất tiêu thụ nhỏ. Tuy vậy mạng LoRa cũng có nhược điểm là tốc độ truyền tin chậm (nhỏ hơn 115200 bps) chỉ phù hợp với mạng thu thập dữ liệu và điều khiển với chu kỳ lấy mẫu không quá nhỏ. SN1 Mesh Star Tree GW SN3 GW GW RT3 RT2 RT3 SN5 SN4 RT1 SN3 RT4 SN2 RT4 SN1 SN2 SN4 RT1 SN1 SN6 SN5 SN3 SN4 SN2 Hình 2. Một số cấu trúc mạng WSNs cục bộ điển hình Cấu trúc mạng phổ biến có ba dạng như trên Hình 2. Trong đó: GW (Gateway) là cổng mạng dữ liệu làm nhiệm vụ kết nối dữ liệu của mạng WSNs cục bộ với hệ thống quản lý bên ngoài; RT là thiết bị định tuyến (Router); và SN (Sensor Node) là các điểm cảm biến bao gồm sensor. Tất cả các thiết bị trên ghép nối với nhau qua thiết bị module LoRa. Cấu trúc hình sao (Star) dùng trong trường hợp mạng có ít SN và khoảng cách địa lý ngắn. Trường hợp cần WSNs với khoảng phủ lớn (không gian địa lý rộng, nhiều điểm SN) có thể sử dụng cấu trúc hình cây (Tree) hoặc dạng lưới (Mesh). Khi đó trong hệ thống WSNs cần bổ sung thêm các thiết bị định tuyến RT [5]. III. THIẾT KẾ PHẦN CỨNG Phần cứng của hệ thống thử nghiệm được thiết kế sử dụng vi điều khiển PIC16F688/PIC16F877A và module LoRA. Nội dung chính của quá trình thiết kế hệ thống thử nghiệm tập trung vào các vấn đề như kết nối mạng, lập trình và kiểm tra lỗi mạng cục bộ. Các vấn đề như: băng thông, lưu trữ, tối ưu hóa năng lượng tiêu thụ của nút cảm biến hay toàn mạng, nguồn điện cấp, khả năng sống sót trong môi trường khắc nghiệt,… chưa được đề cập đến. GW LCD RF433-E30 Wireless sensor d=0 NC Node 2004 RS232 Power UART PIC16F877A Microcontroller KEY SN d=1 RT1 1 DS18b20 DHT22 MQ-7 MG811 SN SN sensor sensor sensor sensor d=2 RT2 2 3 d=3 SN SN 4 5 Hình 3. Cấu trúc lớp mạng Hình 4. Cấu trúc khối của nút cảm biến SN Cấu trúc mạng thử nghiệm bao gồm 04 tầng lớp, 02 Router RT, 01 GW (bao gồm máy tính PC và module LoRA) và 05 nút cảm biến SN như trên Hình 3. Thiết bị định tuyến RT (Hình 6) là module LoRA E32-433T20DT kết nối với vi điều khiển PIC16F688 qua cổng nối tiếp UART. Các nút SN được thiết kế dựa trên MCU PIC16F877A của Microchip được mô tả bằng sơ đồ khối như trên Hình 4. Mỗi SN kết nối với các cảm biến DS18b20, DHT22, MQ-7 và MG811 để đo các thông số nhiệt độ, độ ẩm, nồng độ khí CO và nồng độ khí CO2. Module Wireless sử dụng loại E32- 433T20DT hoạt động ở dải tần 433 MHz, công suất 100 mW và khoảng truyền xa trong điều kiện lý tưởng là 3.000 m. Ngoài ra. trên module SN còn tích hợp thêm màn hình LCD 2004 thuận tiện cho việc quan sát dữ liệu tại hiện trường để so sánh với dữ liệu thu được trên GW.
  3. 572 THIẾT KẾ VÀ TỔ CHỨC GIAO THỨC TRUYỀN THÔNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY LORA 433T20DT 433T20DT E32- E32- NC RS232 PIC16F688 Power Microcontroller PC UART Hình 5. Sơ đồ khối RT sử dụng PIC16F688 Hình 6. Sơ đồ khối GW Thiết bị RT đơn giản là khối MCU PIC16F688 kết nối với module LoRA E32-433T20DT qua cổng UART. MCU PIC16F688 của khối RT sẽ nhận khung dữ liệu từ khối NC qua UART hoặc từ các điểm mạng (SN hoặc RT khác) và định tuyến đường truyền dữ liệu trong mạng (Hình 5). Khối GW đóng vai trò chuyển đổi giao thức kết nối dữ liệu của WSNs với mạng internet hoặc lưu trữ hệ thống cơ sở dữ liệu của mạng WSNs cục bộ. GW bao gồm khâu điều phối mạng NC và máy tính PC. Trong đó khối NC là module LoRA E32-433T20DT kết nối với PC qua vi mạch chuyển đổi MAX232 như trên Hình 6. IV. LẬP TRÌNH PHẦN MỀM A. Thiết lập địa chỉ Có nhiều phương thức thiết lập địa chỉ nút mạng (địa chỉ RT, SN). Trong bài báo này chúng tôi sử dụng phương thức thiết lập địa chỉ nút mạng. Địa chỉ nút mạng An được thiết lập theo cách thiết lập địa chỉ nút mạng Zigbee và được xác định theo công thức (1) và (2), [1], [2], [6].  1 + Cm × ( Lm − d − 1) ; khi Rm = 1  Cskip (d ) = 1 + Cm − Rm − Cm × Rm( m ) L − d −1  ; khi Rm ≠ 1 (1)  1 − Rm An = Aparent + Cskip (d ) × Rm + n (2) trong đó: • Lm là độ sâu của tầng mạng. • Cm là số lượng nút lớn nhất (bao gồm cả RT và SN) của tầng đang xét kết nối với tầng phía trên. • Rm là số lượng nút RT lớn nhất kết nối tầng phía trên. • Chỉ số n, Aparent, lần lượt là thứ tự nút cảm biến và địa chỉ gốc của GW. B. Lưu đồ thuật toán của các phần tử trong mạng WSNs Lưu đồ thuật toán tổng quát thực hiện trên các thiết bị GW, RT và SN như trên Hình 7 [2], [6]. Phát hiện quá trình nhận dữ liệu của các Node thông qua sự kiện ngắt cổng UART trên MCU. Để tránh xảy ra lỗi trong quá trình thu nhận chuỗi dữ liệu, cần thực hiện một số kỹ thuật: 1) mã hóa khung dữ liệu; 2) kết hợp giải thuật kiểm tra lỗi khung dữ liệu; 3) thực hiện chế độ “thời gian chờ” tại cổng UART, nếu vượt quá khoảng thời gian chờ của 1 byte thì kết thúc quá trình nhận chuỗi dữ liệu. Begin Begin Begin WSNs Into WSNs Data process Into WSNs installation Send data to Send data RT node Receive data Y Receive data from GW N from RT Receive data N Y Data process N from RT Data process Receive data Y Y from SN Send data to Send data GW node Send data to UART N to RT N N N Stop Stop Stop Y Y Y End End End Lưu đồ thuật toán GW Lưu đồ thuật toán RT Lưu đồ thuật toán SN Hình 7. Lưu đồ thuật toán dạng tổng quát của WSNs [2], [6]
  4. Nguyễn Văn Thiện, Quách Đức Cường, Trịnh Trọng Chưởng, Nguyễn Bá Nghiễn 573 Khi khởi động mạng, GW thực hiện việc truyền dữ liệu cài đặt tới tất cả các SN (bao gồm các thông số: địa chỉ SN, các dữ liệu về tần số lấy mẫu các ngưỡng cảnh báo của SN,…) và thiết lập định khối định tuyến RT (địa chỉ RT và quản lý những địa chỉ nào,…). NC sẽ nhận dữ liệu từ các địa chỉ gửi về và gửi lên PC thông qua UART. PC nhận dữ liệu trong chế độ chờ và hỏi vòng. Đối với RT, khi RT nhận khung dữ liệu yêu cầu từ NC, RT sẽ phân tách khung dữ liệu để tìm địa chỉ của SN. Sau đó so sánh địa chỉ này với danh mục địa chỉ mà RT đang quản lý. Nếu địa chỉ này thuộc phạm vi RT quản lý thì RT sẽ truyền tiếp khung dữ liệu từ NC gửi tới SN, ngược lại nó sẽ không phát khung dữ liệu. Quá trình nhận dữ liệu NS gửi về NC tương tự như trên. Đối với SN khi nhận được khung dữ liệu (có kèm địa chỉ), SN sẽ phân tách dữ liệu trong khung (lọc địa chỉ, kiểm tra CRC, phân tích mã lệnh yêu cầu,…) nếu đúng là địa chỉ của SN thì nó sẽ kiểm tra CRC bản tin và thực hiện lệnh truyền dữ liệu về NC. Lưu đồ thuật toán tách/xử lý dữ liệu (khối Data process trong Hình 7) nhận được của một nút mạng được thể hiện trên Hình 8. Nhiệm vụ chính của khối Data process là: 1) đọc dữ liệu, 2) kiểm tra tính đúng/sai của khung dữ liệu, 3) xác định yêu cầu nhiệm vụ của khung dữ liệu, 4) loại dữ liệu: thiết lập hệ thống, lệnh yêu cầu từ GW, hay dữ liệu thông số từ cảm biến truyền lên. Kết thúc khâu này các nút mạng không dây sẽ ra quyết định truyền/xử lý dữ liệu. Ví dụ đối với RT sau khi nhận diện khung dữ liệu, xác nhận khung dữ liệu đúng thì RT sẽ chuyển tiếp khung dữ liệu này cho các nút mạng nó kiểm soát. Trường hợp khung dữ liệu này sai thì RT sẽ gửi khung dữ liệu báo sai về nút mạng quản lý nó (ở tầng trên). Đối với SN sau khi ngắt nhận khung dữ liệu, MCU sẽ kiểm tra địa chỉ. Nếu đúng địa chỉ của nó thì SN sẽ thực hiện lệnh (có thể là truyền dữ liệu về GW hoặc cài đặt chế độ SN). Trường hợp không phải địa chỉ thì SN không thực hiện bất kỳ lệnh gì. Begin Read data_frame Calculate Byte[i] Y Y Execute Address = true? CRC = true? commands N N Send data End Hình 8. Lưu đồ thuật toán của khâu xử lý dữ liệu Data process C. Định dạng khung dữ liệu trong hệ thống mạng WSNs [6] 1. Định dạng khung dữ liệu từ SN gửi lên GW Dữ liệu từ SN chuyển lên GW chứa đựng các thông tin về trạng thái điểm SN, địa chỉ nút cảm biến gửi lên, các dữ liệu đo được từ cảm biến và các byte dữ liệu CRC dùng cho việc kiểm tra lỗi dữ liệu khung truyền như trên Hình 9. Trong đó: • n là số lượng byte dữ liệu cần truyền. • byte khởi đầu (start byte) có giá trị 0x8E và byte kết thúc (stop byte) có giá trị 0x8E. • STATE là byte trạng thái, nếu hệ hoạt động bình thường STATE = 0x27 và ngược lại STATE = 0x2D. • ADD là hai byte địa chỉ của thiết bị. Đây chính là giá trị An 1 2 3, 4 5÷(n+4) n+5 n+6 n+7 0x8E STATE ADD DATA CRC CRC 0x8E Hình 9. Khung dữ liệu từ SN gửi lên GW • Chuỗi dữ liệu DATA: là tập dữ liệu của nhiều thông số cần đo, mỗi thông số cần đo có 3 byte thông tin: Byte 1 là ID của dữ liệu; Byte 2, 3 là giá trị byte cao, byte thấp của dữ liệu thông số cần đo. Hệ thống có 04 thông số cần đo là nhiệt độ môi trường, độ ẩm, nồng độ khí CO và nồng độ khí CO2. Bảng 1 là một ví dụ mô tả giá trị của chuỗi dữ liệu DATA. • CRC: Dữ liệu kiểm tra đối sánh sử dụng mã CRC-16 bit, giá trị này chứa đựng trong 2 byte n+5 và n+6. SN sẽ tính giá trị CRC tương ứng với chuỗi dữ liệu và gửi lên GW. Và GW sẽ tính lại các giá trị này để đối sánh phát hiện lỗi chuỗi dữ liệu. Khả năng phát hiện lỗi khung truyền khi sử dụng CRC-16 lên tới 99,9985 %. Tức là trong một triệu lần truyền dữ liệu thì số lần truyền lỗi không phát hiện được tối đa là 15.
  5. 574 THIẾT KẾ VÀ TỔ CHỨC GIAO THỨC TRUYỀN THÔNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY LORA Bảng 1. Giá trị ID mã hóa cho các thông số STT Thông số ID High Byte Low Byte 1 Nhiệt độ môi trường 0x01 0x05 0xF5 2 Độ ẩm 0x02 0x00 0x59 3 Nồng độ khí CO 0x03 0x12 0xF4 4 Nồng độ khí CO2 0x04 0x01 0xE2 5 Chuỗi dữ liệu DATA [0x01 0x05 0xF5 0x02 0x00 0x59 0x03 0x12 0xF4 0x04 0x01 0xE2] 2. Định dạng khung dữ liệu truyền từ GW xuống SN Dữ liệu từ GW xuống SN có hai dạng. Một là truyền dữ liệu cài đặt tham số hoạt động của SN, hai là truyền dữ liệu yêu cầu SN gửi dữ liệu về GW. Cách thức tổ chức đường truyền dữ liệu này có ưu điểm là không xảy ra tình huống tranh chấp, chồng lấn dữ liệu do các SN đồng loạt gửi. Tuy nhiên nhược điểm của cách thức truyền nhận dữ liệu đồng bộ theo lệnh từ GW này là tốc độ thu thập dữ liệu không nhanh, đặc biệt là đối với các hệ thống WSNs có số lượng điểm đo SN lớn. a) Khung dữ liệu thiết lập hoạt động của SN do GW quy định Dữ liệu của cảm biến được chỉ định thu thập định kỳ và tại hiện trường SN còn có chức năng cảnh báo khi tham số cần đo vượt ngưỡng. Do đó, cần phải thiết lập ba loại tham số của cảm biến thông qua lệnh cổng nối tiếp và các tham số này không bị mất khi tắt nguồn (lưu giữ trong EEPROM của MCU). Các tham số cần được cấu hình là: 1) loại dữ liệu được thu thập bởi SN; 2) chu kỳ thu thập dữ liệu; 3) ngưỡng dữ liệu an toàn. Định dạng khung giao thức cấu hình tham số cảm biến mô tả trong hình 10. 1 2 3, 4 5 6 7 8-9 10 0x8E STATE ADD ID H Byte L Byte CRC 0x8E Hình 10. Khung dữ liệu từ PC xuống thiết bị. Byte bắt đầu và byte kết thúc đều có giá trị 0x8E. Mã lệnh chỉ thị cấu hình SN: STATE = 0x18. ADD là địa chỉ của SN. Từ lệnh cấu hình cảm biến (ID): Theo yêu cầu của các tham số cấu hình, có 7 loại lệnh cấu hình: 0xFF ~ 0xF9. Các lệnh cấu hình chi tiết thể hiện trong bảng 3. Bảng 2. Giá trị ID tương ứng với ý nghĩa thiết lập STT Thông số ID 1 Bố trí chu kỳ lấy mẫu 0xFF 2 Ngưỡng trên của nhiệt độ 0xFE 3 Ngưỡng dưới của nhiệt độ 0xFD 4 Ngưỡng trên của độ ẩm 0xFC 5 Ngưỡng dưới của độ ẩm 0xFB 6 Ngưỡng trên của CO 0xFA 7 Ngưỡng trên của CO2 0xF9 b) Khung dữ liệu GW yêu cầu SN gửi dữ liệu Khung dữ liệu GW yêu cầu SN gửi dữ liệu thể hiện trên Hình 11. Nhìn chung khung dữ liệu này cũng giống như hai khung dữ liệu trên Hình 9, Hình 10. Điểm khác biệt là phần dữ liệu chính là giá trị các ID trong Bảng 1 để yêu cầu gửi các dữ liệu cần thiết. 1 2 3, 4 5 … 0x8E STATE ADD ID1 … IDn CRC 0x8E Hình 11. Khung dữ liệu từ PC xuống thiết bị 3. Cấu trúc lại giá trị khung dữ liệu Trong toàn bộ khung dữ liệu từ byte thứ 3 đến byte thứ n+6 nếu tồn tại một byte nào có giá trị là 0x8E (trùng với giá trị của start byte và stop byte) hoặc 0x8D thì cần phải đổi lại giá trị theo quy luật: 1) Nếu dữ liệu là 0x8D đổi thành 0x8D 0x5D; 2) Nếu dữ liệu là 0x8E đổi thành 0x8D 0x5E. Như vậy có thể thấy số lượng byte trong khung dữ liệu không phải là hằng số, giá trị này phụ thuộc vào số lượng byte có giá trị 0x8D và 0x8E có trong khung dữ liệu. Việc đổi giá trị byte nhằm mục đích đảm bảo rằng trong toàn bộ byte dữ liệu từ thứ tự 2 đến n+6 không tồn tại giá trị 0x8E. Nguyên do hệ thống thực hiện việc truyền/nhận dữ liệu không đồng bộ về thời gian nên cần sử dụng cơ chế ngắt của cổng UART trên MCU và giá trị 0x8E có vai trong quá trình nhận biết sự bắt đầu hoặc kết thúc khung dữ liệu.
  6. Nguyễn Văn Thiện, Quách Đức Cường, Trịnh Trọng Chưởng, Nguyễn Bá Nghiễn 575 D. Phần mềm và phần cứng hệ thống Để quan sát hệ thống trên PC, nhóm tác giả đã phát triển HMI bằng ngôn ngữ Visual Basic 2012. Phần mềm có chức năng: 1) truyền dữ liệu để thiết lập trạng thái hoạt động của các SN (chu kỳ lấy mẫu, trạng thái ngưỡng của các thông số); 2) tự phát hiện cổng kết nối để thực hiện kết nối thiết bị trung tâm với máy tính hiện trường; 3) quan sát và vẽ đồ thị theo dõi thông số tại các nút cảm biến. Phần mềm được thiết kế có giao diện thân thiện, dễ sử dụng. Hình 12. Phần mềm HMI thử nghiệm Hình 13. Giao diện đồ thị thông số theo thời gian Thiết bị phần cứng thử nghiệm thể hiện trên Hình 13. Thiết bị SN hiện trường được trang bị màn hình LCD phục vụ quan sát dữ liệu hiện trường để so sánh với giá trị dữ hiện thị tại trung tâm thu thập (GW). V. KẾT QUẢ THỬ NGHIỆM Hệ thống thử nghiệm bao gồm 5 SN kết nối với GW thông qua hai RT như trên hình 3. Quá trình thử nghiệm được thực hiện tại khuôn viên Trường Đại học Công nghiệp Hà Nội (Minh Khai, Bắc Từ Liêm, Hà Nội) và các điểm xung trường như trên Hình 14. Giá trị trung bình của 6 lần đo (thời điểm 9h05 ngày 10/7/2020) được ghi trong Bảng 3. Hình 14. Bản đồ thực địa bố trí mạng WSNs thử nghiệm Khoảng cách truyền/nhận tối đa của LoRA E32-433T20DT trong điều kiện lý tưởng là 3.000 m. Trên thực tế trong quá trình thử nghiệm trong môi trường thành phố với điều kiện thiết bị thu-phát đều đặt cách mặt đất 1m cho thấy khoảng cách truyền/nhận tối đa khoảng 350 m. Thậm chí trong môi trường không gian với nhiều vật cản khoảng cách
  7. 576 THIẾT KẾ VÀ TỔ CHỨC GIAO THỨC TRUYỀN THÔNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY LORA này còn nhỏ hơn 200 m. Nguyên do địa hình thực địa có nhiều vật cản như: nhà cao tầng, các công trình công cộng, cây xanh. Nếu mật độ vật cản lớn, không gian bị “che khuất” nhiều thì khoảng cách truyền/nhận của các module LoRA sẽ ngắn lại. Bảng 3. Thu thập dữ liệu ngày 1 tại thời điểm 9h05 ngày 10/7/2020 Đơn vị Giá trị đo trong ngày 10/07/2020 Cảm biến SN SN1 SN2 SN3 SN4 SN5 Nhiệt độ o C 32,5 33,8 30,4 33,1 32,5 Độ ẩm % RH 75,2 74,1 79,1 76,9 75,6 Nồng độ CO ppm 15,5 18,2 20,8 22,6 19,1 Nồng độ CO2 ppm 1150,2 1253,7 1261,8 1102,3 1214,7 Để kiểm thử khả năng phát hiện lỗi khung truyền và giải thuật phân tách/xử lý dữ liệu, nhóm tác giả đã thực hiện 32 lần truyền dẫn dữ liệu trong mạng. Kết quả cho thấy mạng phát hiện được 100 % lỗi khung truyền và xử lý tình huống đúng với kịch bản xây dựng. Điều đó cho thấy hoàn toàn có thể sử dụng các giải pháp thiết kế trên để thực hiện một cấu trúc mạng WSNs cục bộ với công nghệ LoRA. VI. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Bài báo đã giới thiệu một cách thức tổ chức và lập trình đơn giản cho mạng WSNs cục bộ với cấu trúc hình cây. Mô hình mạng WSNs được thiết kế 04 tầng với 01 GW, 02 thiết bị định tuyến RT và 05 nút cảm biến SN thiết kế sử dụng module LoRA E32-433T20DT và vi điều khiển PIC16F688/PIC16F877A được thử nghiệm trong môi trường không gian thành phố. Kết quả thử nghiệm cho thấy mạng WSNs hoạt động tin cậy, ổn định. Tuy vậy tốc độ mạng khá chậm do sử dụng cơ chế thu thập dữ liệu tuần tự dưới sự điều khiển của thiết bị GW. Trong những nghiên cứu tới, nhóm nghiên cứu sẽ quan tâm, phát triển và thử nghiệm cấu trúc mạng WSNs thu thập dữ liệu theo mô hình truyền/nhận song song, giải quyết các vấn đề tranh chấp/chồng lấn dữ liệu để nâng cao tốc độ của mạng WSNs cục bộ. VII. LỜI CẢM ƠN Nhóm tác giả xin chân thành gửi lời cảm ơn tới Khoa Công nghệ thông tin, Khoa Điện và Viện công nghệ HaUI Trường Đại học Công nghiệp Hà Nội đã phối hợp hỗ trợ trong quá trình thực hiện nghiên cứu. TÀI LIỆU THAM KHẢO [1] Wáng xiǎo Qiáng, Ōu Yáng, Huáng Níng, “ZigBee wú xiàn chuán gǎn qì wǎng luò shè jì yǔ shí xiàn”, Huà xué gōng yè chū bǎn shè,134-137, 2012. [2] Qīng dǎo dōng hé xìn xī jì shù yǒu xiàn gōng sī, “ZigBee kāi fā jì shù jí shí zhàn”, Xī' ān diàn zǐ kē jì dà xué chū bǎn shè, 2014. [3] Prashant Tiwari, Varun Prakash Saxena, Raj Gaurav Mishra, Devendra Bhavsar, “Wireless Sensor Networks: Introduction, Advantages, Applications and Research Challenges”, HCTL Open International Journal of Technology Innovations and Research (IJTIR), Volume 14, April 2015. [4] Dai Qingyun, Bao Hong Liu Yihong, Liu Zexi, Zhou Ke, Wang Jin, “433MHz Wireless Network Technology for Wireless Manufacturing”, Second International Conference on Future Generation Communication and Networking, 2008. [5] Rizky Firdaus, Muhammad Ary Murti, Ibnu Alinursafa “Air Quality Monitoring System Based Internet of Things (IoT) Using LPWAN LoRa”, IEEE International Conference on Internet of Things and Intelligence System, 2019. [6] Quách Đức Cường, Bùi Văn Huy, Đỗ Duy Hợp, “Nghiên cứu thiết kế mạng WSNs thu thập một số thông số môi trường tầng hầm”, Tạp chí Khoa học và Công nghệ trường Đại học Công nghiệp Hà Nội, số 52, pp. 17-21, 2019. [7] Trịnh Trọng Chưởng, Nguyễn Hồng Minh, “Xây dựng hệ thống giám sát tự động thông số môi trường nước thải các khu công nghiệp tại tỉnh Hải Dương bằng công nghệ GSM/GPRS”, đề tài khoa học công nghệ cấp tỉnh Hải Dương, 2016. ORGANIZATION DESIGN THE COMMUNICATION PROTOCOL FOR A LORA WIRELESS SENSOR NETWORK Nguyen Van Thien, Quach Duc Cuong, Trinh Trong Chuong, Nguyen Ba Nghien ABSTRACT: LoRa networks are applied widely in Wirelss Sensor Network (WSN) because of its long transmission, energy saving and stable operation. In this paper, the authors will introduce every step of building and organizing communication protocol for hierarchial topology ensuring reliability, privacy, and industrial standard. Experiment processes with WSNs on Microchip PIC processor achieved good results.
nguon tai.lieu . vn