- Giao diện máy tính: Hiển thị nhiệt độ, độ ẩm, mực nước, nồng độ bụi đo được từ các trạm con, cho phép cài đặt ngưỡng cảnh báo và cảnh báo khi các thông số vượt ngưỡng.. - Khối xử lý tr
Trang 1ĐỒ ÁN TỐT NGHIỆP
HỆ THỐNG THU THẬP DỮ LIỆU VÀ GIÁM SÁT
Trang 2LoRa cũng là một công nghệ truyền không dây, công nghệ này có ưu điểm hơn những công nghệ khác là có thể truyền dữ liệu với khoảng cách lên hàng km mà không cần các mạch khuếch đại công suất giúp tiết kiệm năng lượng tiêu thụ khi tr
Đề tài “Hệ thống thu thập dữ liệu và giám sát” là một hệ thống ứng dụng công nghệ LoRa trong việc truyền, nhận dữ liệu ở khoảng cách xa Hệ thống là một giải pháp tối ưu cho việc giám sát các thông số của môi trường như nhiệt độ, độ ẩm, mực nước sau đó tổng hợp để đưa ra những dự báo về tình hình lũ lụt (mực nước sông dâng nhanh), cháy rừng (nhiệt độ tăng cao) hay mức độ ô nhiễm không khí
1.2 Mục đích nghiên cứu
Ứng dụng công nghệ truyền LoRa, áp dụng kiến thức đã học về vi điều khiển và các cảm biến cũng như cách thiết kế một giao diện máy tính sử dụng Visual studio C#
để tạo ra hệ thống thu thập dữ liệu và giám sát.
1.3 Đối tượng nghiên cứu
Vi điều khiển PIC, LoRa, cảm biến nhiệt độ và độ ẩm, cảm biến bụi, cảm biến mực nước.
1.4 Phạm vi nghiên cứu
Trang 3Hệ thống hiển thị lên giao diện máy tính các thông số về nhiệt độ từ 0 oC – 50 oC,
độ ẩm từ 20 % - 90 %RH và cảnh báo mực nước với 3 mực nước khác nhau, đo nồng
độ bụi trong khoảng từ 0 mmg/m3 đến 5 mmg/m3 Hệ thống với các trạm con có thể được đặt ở những nơi cần giám sát các thông số của môi trường, những trạm con này đặt cách trạm chủ không quá 7.5 km.
1.5 Kết quả đạt được
Sản phẩm có được là một hệ thống có thể giám sát các thông số môi trường như nhiệt độ, độ ẩm, mực nước, nồng độ bụi Các thông số này được hiển thị lên giao diện máy tính, LCD, cảnh báo nếu các thông số vượt ngưỡng giới hạn, cho phép thay đổi
ID (Identification) của trạm và thêm bớt trạm.
CHƯƠNG 2 THIẾT KẾ VÀ THI CÔNG
1.6 Sơ đồ khối của hệ thống
Trang 4Hình 2-1: Sơ đồ khối trạm chủ
Chức năng của các khối như sau:
- Khối LoRa: Thu thập dữ liệu từ các trạm con và gửi dữ liệu về cho trạm chính.
- Giao diện máy tính: Hiển thị nhiệt độ, độ ẩm, mực nước, nồng độ bụi đo được từ các trạm con, cho phép cài đặt ngưỡng cảnh báo và cảnh báo khi các thông số vượt ngưỡng Dữ liệu gửi về được lưu vào file excel.
- Dây USB – UART: Chuyển từ cổng USB sang UART.
Hình 2-2: Sơ đồ khối trạm con
Chức năng của các khối như sau:
- Khối nguồn: Cung cấp nguồn cho hệ thống.
Trang 5- Khối cảm biến: Đo các thông số môi trường và gửi về cho bộ xử lý trung tâm Các khối cảm biến bao gồm các loại cảm biến sau:
Khối cảm biến nhiệt độ và độ ẩm: Đo nhiệt độ, độ ẩm và gửi tín hiệu dưới dạng số cho khối xử lý trung tâm.
Khối cảm biến mực nước: Khi nước dâng đến mức nào thì cảm biến tương ứng sẽ tác động.
Khối cảm biến bụi: Đo nồng độ bụi trong không khí.
- Khối xử lý trung tâm: Đọc dữ liệu từ các cảm biến (nhiệt độ, độ ẩm, mức nước, nồng độ bụi), gửi dữ liệu lên máy tính thông qua module LoRa khi có yêu cầu.
Trang 6Hình 2-3: LM2576T – 5V [8]
1.1.2 Khối LoRa
- Chức năng: Thu thập dữ liệu từ hai trạm con và gửi dữ liệu về cho trạm chính.
- Linh kiện chính sử dụng: E32 - TTL - 1W.
- LoRa là viết tắt của Long Range Radio được nghiên cứu và phát triển bởi Cycleo và sau này được mua lại bởi công ty Semtech năm 2012 Với công nghệ này, chúng ta có thể truyền dữ liệu với khoảng cách lên hàng km mà không cần các mạch khuếch đại công suất.
- LoRa sử dụng kỹ thuật điều chế gọi là Chirp Spread Spectrum, nó duy trì các đặc tính công suất thấp giống như điều chế FSK (Frequency Shift Keying) nhưng làm tăng đáng kể phạm vi hoạt động [9]
- Kỹ thuật điều chế Chirp Spread Spectrum nghĩa là dữ liệu sẽ được băm bằng các xung cao tần để tạo ra tín hiệu có dãy tần số cao hơn tần số của dữ liệu gốc (cái này gọi là chipped), sau đó tín hiệu cao tần này tiếp tục được mã hoá theo các chuỗi chirp signal (là các tín hiệu hình sin có tần số thay đổi theo thời gian) trước khi truyền ra anten để gửi đi Nguyên lý này giúp giảm độ phức tạp và độ chính xác cần thiết của mạch nhận để có thể điều chế và giải mã lại dữ liệu [12].
- Các thông số kỹ thuật của LoRa [2]:
Kích thước: 22x43 mm.
Khoảng cách truyền: 7.5 km khi không có vật cản.
Công suất truyền tải: tối đa 1 W.
Trang 7 Nhiệt độ hoạt động: -40 ℃ đến +85 đến +85 oC.
Độ ẩm hoạt động: 0 % đến 90 %.
- Các thông số hoạt động của LoRa:
+ Spreading Factor – SF: SF xác định số lượng chrip signal khi mã hóa tín hiệu đã được điều chế tần số (chipped signal) của dữ liệu Giá trị cho SF càng lớn thì thời gian truyền dữ liệu sẽ lâu hơn nhưng khoảng cách truyền sẽ
xa hơn.
+ Bandwidth – BW: BW xác định biên độ tần số mà chirp signal có thể thay đổi BW càng cao thì thời gian mã hóa chipped signal càng ngắn thời gian truyền dữ liệu cũng giảm xuống và khoảng cách truyền cũng ngắn lại + Coding Rate – CR: CR là số lượng bit được tự thêm vào mỗi trong Payload (dữ liệu truyền qua LoRa) để mạch nhận có thể sử dụng để phục hồi lại 1 số bit dữ liệu đã nhận sai và từ đó phục hồi được nguyên vẹn dữ liệu trong Payload CR càng cao thì khả năng nhận dữ liệu đúng càng tăng thời gian truyền dữ liệu tăng.
SF, BW, CR là 3 thông số ảnh hưởng đến quá trình truyền dữ liệu của LoRa SF và
BW sẽ ảnh hưởng thời gian và khoảng cách truyền dữ liệu, CR thì chỉ ảnh hưởng thời gian truyền dữ liệu.
Bảng 2-1: Các chế độ hoạt động của LoRa
Mode 2
Power - saving 0 1
Chỉ làm việc ở chế độ mạch thu, khi nhận được dữ liệu, bộ UART sẽ được kích hoạt và sẽ bị vô hiệu hóa khi truyền xong dữ liệu.
Mode 3
Sleep 1 1 Cài đặt thông số.
Trang 8Hình 2-4: E32 – TTL - 1W [2]
Hình 2-5: Sơ đồ kết nối chân của E32 – TTL - 1W với vi điều khiển [2]
Bảng 2-2: Giải thích các chân của LoRa
M0, M1 Chọn chế độ hoạt động (4 chế độ).
RXD Nhận tín hiệu từ vi điều khiển hoặc máy tính.
TXD Truyền tín hiệu đến vi điều khiển hoặc máy tính.
AUX Cho biết có tín hiệu trả về.
VCC Cấp nguồn 2.8 – 5.5 V.
GND Nối đất.
1.1.3 Khối cảm biến
Trang 91.1.1.1Khối cảm biến mực nước
- Chức năng: Khối này sử dụng 3 cảm biến mức nước dạng phao tương ứng với 3 mức cảnh báo Khi nước dâng đến mức nào thì cảm biến tương ứng với mức nước đó sẽ bị tác động.
- Linh kiện chính sử dụng: MH16P là cảm biến mức dạng phao, cấu tạo như một công tắc được gắn với một phao nhỏ, đơn giản ,dễ sử dụng và độ tin cậy cao (hình 2-6).
- Thông số kỹ thuật:
Điện áp chuyển mạch tối đa: 100 VDC.
Dòng chuyển mạch tối đa: 0.5 A.
Dòng tải tối đa: 1 A.
Nhiệt độ hoạt động: -10 °C đến + 85 °C.
Hình 2-6: MH16P
1.1.1.2Khối cảm biến nhiệt độ và độ ẩm
Chức năng: Đo nhiệt độ, độ ẩm và gửi tín hiệu dưới dạng số cho khối vi điều khiển.
Linh kiện chính sử dụng: DHT11 là cảm biến đo nhiệt độ và độ ẩm gồm có 4 chân: VCC, DATA, NC, GND
Chi phí rẻ, kích thước nhỏ, tiêu thụ điện năng thấp, sai số đầu ra phù hợp với yêu cầu của hệ thống hiện tại, rất dễ lấy dữ liệu thông qua việc gửi và nhận dữ liệu bởi một dây tín hiệu DATA Cảm biến có khả năng chống nhiễu mạnh, truyền tín hiệu đường dài, đầu ra tín hiệu số và hiệu chuẩn chính xác.
Trang 10 Cảm biến DHT11 được thiết kế để đo độ ẩm theo độ ẩm tương đối (RH) Độ
ẩm tương đối là tỷ lệ của lượng hơi nước trong không khí với độ ẩm bão hòa ở cùng áp suất hoặc nhiệt độ.
Tần số lấy mẫu tối đa: 1 Hz (1 giây 1 lần).
Khoảng cách truyền tối đa: 20 m.
DHT11 gửi và nhận dữ liệu bởi một dây tín hiệu DATA Dữ liệu truyền về vi điều khiển của DHT11 gồm 40 bit dữ liệu theo thứ tự: 8 bit biểu thị phần nguyên của độ ẩm + 8 bit biểu thị phần thập phân của độ ẩm + 8 bit biểu thị phần nguyên của nhiệt độ + 8 bit biểu thị phần thập phân của nhiệt độ + 8 bit checksum (cảm biến sẽ gửi MSB trước tiên) [3].
Hình 2-7: DHT11 [3]
1.1.1.3Khối cảm biến bụi
Chức năng: Đo nồng độ bụi trong không khí.
Linh kiện chính sử dụng: Cảm biến bụi PM2.5 GP2Y1010AU0F
Trang 11 Cảm biến bụi PM2.5 GP2Y1010AU0F được sản xuất bởi hãng SHARP, được
sử dụng để nhận biết nồng độ bụi PM2.5 trong không khí.
Nguyên lý hoạt động dựa trên LED phát hồng ngoại tích hợp bên trong cảm biến, khi có bụi vào thì sẽ bị khúc xạ, làm giảm đi cường độ tia hồng ngoại điện áp thay đổi
Các chân của cảm biến bụi được mô tả theo bảng dưới đây:
Bảng 2-3: Giải thích các chân của cảm biến bụi
Chân Mô tả
V-LED Nguồn dương của LED hồng ngoại.
LED-GND Nguồn âm của LED hồng ngoại.
LED Chân kích cho LED hồng ngoại hoạt động.
S-GND Chân 0 V của bộ biến đổi tương tự (analog).
VO Ngõ ra của cảm biến.
VCC Chân nguồn của bộ biến đổi tương tự (analog).
Hình 2-8: Cảm biến bụi PM2.5 GP2Y1010AU0F [5]
Trang 121.1.4 Khối vi điều khiển
- Chức năng: Đọc dữ liệu từ cảm biến (nhiệt độ, độ ẩm, mức nước, nồng độ bụi), gửi dữ liệu lên máy tính thông qua module LoRa khi có yêu cầu.
- Linh kiện chính sử dụng: PIC16F886
- Các thông số kỹ thuật của PIC16F886 [4]:
28 chân được chia thành 4 port (port A, B, C, E), 1 chân cấp nguồn, 2 chân GND, một chân dùng để reset vi điều khiển ( RE3 - MCLR ) (hình 2-9).
Bộ nhớ Flash 8192 words.
Bộ nhớ SRAM 368B.
Bộ nhớ EEPROM 256B.
3 timer: timer 0, timer 1, timer 2.
1 bộ chuyển đổi ADC 10 bit 11 kênh.
2 bộ CCP (Capture/Compare/PWM).
- Các port của PIC16F886:
Port A: 6 chân từ RA0 đến RA7
Port B: 8 chân từ RB0 đến RB7.
Port C: 8 chân từ RC0 đến RC7.
Port E: 1 chân RE3.
Trang 13Hình 2-9: PIC16F886 và sơ đồ chân [4]
- Sơ đồ nguyên lý:
Hình 2-10: Sơ đồ nguyên lý của PIC16F886
Trang 15 Hiển thị nhiệt độ, độ ẩm, mực nước, nồng độ bụi đo được từ các trạm con, cảnh báo khi các thông số vượt ngưỡng cho phép (có thể cài đặt).
Dữ liệu gửi về được lưu vào file excel để sau này có thể truy xuất dữ liệu dễ dàng.
Hình 2-13: Giao diện điều khiển trên máy tính
1.1.6 Dây USB – UART
- Chức năng: Chuyển giao tiếp từ cổng USB sang UART và ngược lại thông qua cổng COM trên máy tính.
- Dây chuyển đổi USB - UART PL2303 sử dụng chip PL2303HX chuyển đổi USB - UART, dễ dàng kết nối với máy tính.
- PL-2303HX cung cấp một giải pháp thuận tiện để kết nối không đồng bộ song công hoàn toàn giống như RS232, có thể mô phỏng cổng COM truyền thống trên hầu hết các hệ điều hành.
- Đặc điểm của dây USB – UART [7] :
Chip: PL-2303HX.
Trang 16 Điện áp: 5V cấp trực tiếp từ cổng USB.
Chuẩn USB: loại A.
Hình 2-14: Dây USB – UART
Hình 2-15: Chip PL2303HX và sơ đồ chân [7]
Trang 17- LCD được sử dụng trong rất nhiều các ứng dụng của vi điều khiển, tốn rất ít tài nguyên hệ thống và giá thành rẻ.
- Thông số kỹ thuật [7]:
Điện áp đầu ra: 3 V.
Điện áp đầu vào: 3.1 V – 3.5 V
Nhiệt độ hoạt động: 0 oC – 50 oC.
Dòng cung cấp lên đến 2.5 mA.
Tần số dao động nội: 190 kHz đến 350 kHz (điển hình là 270 kHz).
- Các chân của LCD được mô tả theo bảng dưới đây:
Bảng 2-3: Chức năng các chân của LCDChâ
1 VSS Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này với
GND của mạch điều khiển.
2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân này
với VCC=5 V của mạch điều khiển.
3 VEE Điều chỉnh độ tương phản của LCD.
4 RS Chân chọn thanh ghi (Register select).
5 R/W Chân chọn chế độ đọc/ghi (Read/Write) Nối chân R/W với
logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic
“1” để LCD ở chế độ đọc.
6 E Chân cho phép (Enable) Sau khi các tín hiệu được đặt lên
Trang 18bus DB0 - DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E
Trang 19Hình 2-17: Mô hình cho cảm biến mực nước.
Hình 2-18: Hộp mô hình cho các trạm con
Trang 20Hình 2-19: Hộp mô hình cho trạm chủ
Hình 2-20: Mô hình thực tế
Trang 21CHƯƠNG 3 GIẢI THUẬT VÀ ĐIỀU KHIỂN
1.8 Hoạt động của hệ thống
- Hệ thống bao gồm một trạm chính và 4 trạm con Các trạm con đo được mực nước, nhiệt độ, độ ẩm, nồng độ bụi và hiển thị trên LCD Trạm chính được nối trực tiếp với máy tính Các trạm con và trạm chính truyền thông với nhau thông qua module LoRa.
- Khi dữ liệu vượt ngưỡng cho phép thì giao diện máy tính sẽ hiển thị cảnh báo.
- Hệ thống cho phép thêm các trạm con.
- Trạm chính lưu dữ liệu nhận được từ các trạm con gửi về vào file excel.
1.9 Lưu đồ giải thuật
Hình 3-1: Lưu đồ chương trình chính của trạm chủ
Trang 22Khi bắt đầu chương trình, sau mỗi một khoảng thời gian chương trình sẽ gửi một lệnh yêu cầu dữ liệu đến các trạm con và khi nhấn nút thoát, hệ thống sẽ thoát khỏi chương trình (hình 3-1a).
Hình 3-2: Lưu đồ chương trình ngắt của trạm chủ
Khi có dữ liệu được gửi đến module LoRa, chương trình sẽ đọc và tách dữ liệu nhận được thành ID và value, sau đó sẽ xác định ID và dữ liệu đó là của trạm nào, nếu dữ liệu nhận được vượt ngưỡng cho phép thì chương trình sẽ hiển thị cảnh báo, sau đó sẽ hiển thị value tương ứng, đồng thời giá trị này cũng được lưu vào file excel (hình 3- 1b).
Trang 23Hình 3-3: Lưu đồ giải thuật chương trình chính của trạm con
Khi bắt đầu, chương trình tiến hành khởi tạo một số thủ tục ban đầu như LCD, timer, ADC Sau đó chương trình sẽ đọc nút nhấn để tiến hành cài đặt các thông số của trạm Khi có dữ liệu từ UART sẽ tiến hành xử lý dữ liệu (hình 3-2).
Trang 24Hình 3-4: Lưu đồ giải thuật chương trình ngắt của trạm con
Khi có dữ liệu được gửi đến module LoRa, chương trình sẽ đọc và kiểm tra xem ID có đúng hay không, nếu đúng ID, chương trình sẽ tiến hành đọc cảm biến, ghép ID và dữ liệu, sau đó gửi dữ liệu về cho trạm chủ (hình 3-3).
Trang 25CHƯƠNG 4 THỰC NGHIỆM
1.10 Tiến trình thực nghiệm
- Bước 1: Cấp nguồn cho từng trạm con và đo ngõ ra tương ứng với từng trạm.
- Bước 2: Kết nối module LoRa với máy tính thông qua dây USB – UART, tiến hành mở giao diện máy tính.
- Bước 3: Chọn cổng COM và tiến hành kết nối Quan sát dữ liệu từ các trạm con gửi về trên giao diện Đồng thời quan sát dữ liệu hiện trên LCD.
- Bước 4: Cài đặt ngưỡng cảnh báo cho từng thông số.
- Bước 5: Quan sát giao diện khi dữ liệu vượt ngưỡng cho phép.
- Bước 6: Thoát chương trình và mở file excel để truy xuất dữ liệu.
Trang 26- Bước 3: Khi kết nối với cổng COM3, ta thấy dữ liệu được hiển thị trên giao diện bao gồm: nhiệt độ, nồng độ bụi, độ ẩm, mực nước.
Hình 4-2: Hiển thị thông số lên giao diện máy tính
Hình 4-3: Nhiệt độ hiển thị trên LCD
Trang 27Hình 4-4: Độ ẩm hiển thị trên LCD
- Bước 4: Cài đặt ngưỡng cho nhiệt độ là 35 oC và độ ẩm là 80 %, nồng độ bụi là
120 µg/m3.
Hình 4-5: Cài đặt ngưỡng cho nhiệt độ và độ ẩm
- Bước 5: Khi nồng đội bụi đọc được từ cảm biến bụi là 130µg/m3 và độ ẩm đọc được từ cảm cảm biến độ ẩm là 89 % thì giao diện hiển thị cảnh báo nồng độ
Trang 28bụi và độ ẩm vượt quá giới hạn Kết quả tương tự khi thực nghiệm với nhiệt độ
và mực nước khi dữ liệu nhận được từ 2 trạm vượt quá giới hạn.
Hình 4-6: Hiển thị cảnh báo nồng độ bụi và độ ẩm vượt quá giới hạn
- Bước 6: Khi thoát khỏi chương trình, ta thấy có một tập tin excel được tạo ra Tệp sẽ được lưu theo ý muốn của người dùng Nội dung của tập tin excel là dữ liệu gửi về từ các trạm và thời gian cập nhật tương ứng.
Trang 29Hình 4-7: File excel hiển thị dữ liệu gửi về từ các trạm con
Hiển thị được các thông số lên giao diện máy tính và cảnh báo khi các thông
số vượt ngưỡng cho phép.
Có thể thêm 1 hay nhiều trạm con vào hệ thống.
Các thông số môi trường được lưu trữ trong file excel.
Có thể thay đổi vị trí hiển thị các thông số theo yêu cầu bằng cách thay đổi ID của trạm.
Trang 30CHƯƠNG 5 KẾT LUẬN
5.1 Kết quả
Kết quả đề tài đạt được:
Nghiên cứu và hiểu được tổng quan về hệ thống thu thập dữ liệu và giám sát.
Mạch được thiết kế và thi công đúng với yêu cầu đề tài đặt ra.
Hiểu rõ và nắm được cách hoạt động của hệ thống thu thập dữ liệu và giám sát.
Hệ thống có thể hiển thị 4 thông số môi trường bao gồm nhiệt độ, độ ẩm, nồng
độ bụi, mực nước theo yêu cầu của đề tài.
Các thông số môi trường được hiển thị lên giao diện máy tính một cách sinh động, trực quan.
Có thể thêm trạm con vào hệ thống một cách dễ dàng.
Các thông số môi trường được lưu trữ vào file excel để tiện giám sát.
Hệ thống có thể cảnh báo khi các thông số vượt ngưỡng cho phép.
- Chi phí module LoRa cao hơn so với RF thông thường.
- Độ tin cậy của hệ thống chưa cao.
5.2 Ứng dụng
- Hệ thống sẽ thu thập dữ liệu môi trường như nhiệt độ, độ ẩm không khí, nồng
độ bụi, mực nước và sử dụng dữ liệu thu được để hiển thị trên giao diện máy tính, khi đó ta có thể xác định các thay đổi về chất lượng môi trường, đưa ra những dự báo về tình hình lũ lụt (mực nước sông dâng nhanh), cháy rừng (nhiệt
độ tăng cao) hay mức độ ô nhiễm không khí ở những khu vực có lắp đặt hệ