ĐỒ ÁN TỐT NGHIỆP
ỨNG DỤNG TRUYỀN NHẬN DỮ LIỆU
SỬ DỤNG MODULE LORA
MỤC LỤC
DANH MỤC CÁC HÌNH VẼ VII
DANH MỤC CÁC BẢNG BIỂU
VIII
DANH MỤC CÁC TỪ VIẾT TẮT IX
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG
1.1
MỤC ĐÍCH CỦA ĐỀ TÀI
1.2
GIỚI THIỆU MODULE LORA
1.3
ĐIỂM QUAN TRỌNG IOT 2
1
1
2
CHƯƠNG 2. CẤU TRÚC TRUYỀN DỮ LIỆU VÀ GIỚI THIỆU LINH KIỆN 3
2.1
SƠ ĐỒ TỔNG QUÁT CỦA MÔ HÌNH
3
2.2
CẤU TRÚC TRUYỀN DỮ LIỆU TẠI GATEWAY VÀ CÁC NODE 3
2.3
XỬ LÍ DỮ LIỆU TẠI CENTER 3
2.4
GIỚI THIỆU LINH KIỆN
2.5
GIAO DIỆN ĐIỀU KHIỂN, HIỂN THỊ DỮ LIỆU THÔNG QUA NODE-RED
3
CHƯƠNG 3. NGUYÊN LÍ VÀ QUY TẮC LAYOUT PCB 4
3.1
SƠ ĐỒ NGUYÊN LÍ MODULE 4
3.2
NGUYÊN TẮC VẼ NGUYÊN LÍ VÀ LAYOUT PCB
3.3
CÁC KHỐI CHỨC NĂNG SỬ DỤNG TRONG NODE-RED
3.4
HÌNH ẢNH LAYOUT CÁC KHỐI CHỨC NĂNG TRONG NODE-RED 4
3.5
LƯU ĐỒ GIẢI THUẬT
4
4
4
CHƯƠNG 4. MÔ HÌNH THỰC TẾ VÀ THỰC NGHIỆM 5
4.1
HÌNH ẢNH MÔ HÌNH THỰC TẾ
5
4.1
THỰC NGHIỆM KHOẢNG CÁCH
5
CHƯƠNG 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6
5.1
KẾT LUẬN 6
5.2
HƯỚNG PHÁT TRIỂN
6
3
TÀI LIỆU THAM KHẢO 7
PHỤ LỤC A
8
DANH MỤC CÁC HÌNH VẼ
HÌNH 2-1: SƠ ĐỒ TỔNG QUÁT MÔ HÌNH 3
HÌNH 2-2: CẤU TRÚC TRUYỀN DỮ LIỆU 4
HÌNH 2-3: HÌNH ẢNH CÁC GATEWAY GỬI DỮ LIỆU VỀ PC 5
HÌNH 2-4: HÌNH ẢNH MODULE LORA SX1278 6HÌNH 2-5: HÌNH ẢNH CHIP
AVR ATMEGA328P
8
HÌNH 2-6: HÌNH ẢNH IC DS13079HÌNH 2-7: SƠ ĐỒ CHÂN IC DS1307
10
HÌNH 2-8: HÌNH ẢNH IC LƯU DỮ LIỆU FLASH IC 24LC04B1 11HÌNH 2-9:
HÌNH ẢNH CẢM BIẾN NHIỆT ĐỘ VÀ ĐỘ ẨM DHT11 12
HÌNH 2-10: HÌNH ẢNH CHƯƠNG TRÌNH ỨNG DỤNG NODE-RED
13HÌNH
2-11: TỔNG QUANG XỬ LÍ TRONG NODE-RED 14
HÌNH 2-12: GIAO DIỆN HIỂN THỊ TRONG NODE-RED 14HÌNH 2-13: MÔ TẢ PC
ĐÓNG VAI TRÒ LÀ SERVER VÀ CLIENT 15
HÌNH 2-14: MÔ TẢ PC ĐÓNG VAI TRÒ LÀ SERVER
15HÌNH 3-1: NGUYÊN
LÍ TOÀN BỘ HỆ THỐNG 16
HÌNH 3-2: NGUYÊN LÍ MẠCH NGUỒN
17HÌNH 3-3: MẠCH NGUYÊN LÍ
MCU 16
HÌNH 3-4: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG 18HÌNH
3-5: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG
18
HÌNH 3-6: PHỦ POLYGON CHO MẠCH NGUỒN 19HÌNH 3-7: ĐƯỜNG DÂY
THEO CHUẨN TEXAS INSTRUMENTS
20
Hình 3-8: HÌNH ẢNH SỬ DỤNG ĐIỆN TRỞ 0
20
HÌNH 3-9: MẠCH NGUYÊN LÍ MCU 21
Hình 3-10: NGUYÊN LÍ GIAO TIÊẾP CÁC CÔNG TRUYÊỀN THÔNG
22
HÌNH 3-11: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG 22
Hình 3-12: PHỦ POLYGON CHO MẠCH NGUÔỀN 23
HÌNH 3-13: ĐƯỜNG DÂY THEO CHUẨN TEXAS INSTRUSMENT
HÌNH 3-14: HÌNH ẢNH SỬ DỤNG ĐIỆN TRỞ 0
23
24
HÌNH 3-15: MẠCH NGUYÊN LÍ MCU 25
HÌNH 3-16: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG 27HÌNH
3-17: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG 28
HÌNH 3-18: PHỦ POLYGON CHO MẠCH NGUỒN
THEO CHUẨN TEXAS INSTRUMENTS
29HÌNH 3-19: ĐƯỜNG DÂY
30
HÌNH 4-1: MÔ HÌNH THỰC TẾ 31HÌNH 4-2: ĐO KHOẢNG CÁCH TỪ
GOOGLE MAP 32
HÌNH 4-3: MÔ TẢ KHOẢNG CÁCH CÁC NODE VÀ GATEWAY 32
DANH MỤC CÁC BẢNG BIỂU
BẢNG 1-1: BẢNG THỐNG KÊ
33
DANH MỤC CÁC TỪ VIẾT TẮT
LoRa
Long Range
I2C
Inter-Integrated Circuit
SPI
Serial Peripheral Interface
IoT
Internet of Things
UART
Universal Asynchronous Receiver-Transmitter
TX
Transmitter
RX
Receiver
PCB
Print Circuit Board
RTC
Read Time Clock
Trang 1/39
CHƯƠNG 1. TỔNG QUAN VỀ HỆ THỐNG
1.1 Mục đích của đề tài
Với mong muốn tạo ra một hệ thống thu thập dữ liệu với khoảng cách xa hàng km,
hay những khu vực không có sóng Wifi, những nơi hẻo lánh không có sóng di động.
Giúp mọi người có thể tiếp cận được, đơn giản như người nông dân có thể thu thập
dữ liệu cảm biến độ ẩm đất từ nương rẫy xa xôi, có thể điều khiển bật/tắt máy bơm
nước từ xa để tưới tiêu. Hay là người dân vùng biển tận dụng việc truyền xa của hệ
thống để áp dụng ngoài biển khơi khi không có vật cản, để thu thập các dữ liệu gió,
làm các dữ liệu cần thiết từ biển để phục vụ cho việc sinh sống, kinh tế từ người
dân. Thiết bị quan sát theo dõi trẻ em truyền dữ liệu GPS qua module LoRa, cảnh
báo chống trộm trong thành phố bán kính 5-10km để module LoRa đáp ứng được.
Trong thời đại công nghiệp 4.0, với khả năng truyền không dây xa mang kèm tính
năng tiết kiệm năng lượng thì rất phù hợp vào các hệ thống áp dụng giải pháp thành
phố thông minh, bãi đậu xe thông minh, điều khiển thiết bị từ xa, theo dõi quan trắc
môi trường và các hệ thống công nghiệp.
Tóm lại, với những nhu cầu và thực trạng như hiện nay trong xã hội, ý tưởng của đề
tài xuất phát và ra đời.
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 2/39
1.2 Giới thiệu module LoRa
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, từ đó giúp tiết kiệm năng lượng tiêu thụ khi truyền/nhận dữ liệu. Do
đó, LoRa có thể được áp dụng rộng rãi trong các ứng dụng thu thập dữ liệu như
sensor network trong đó các sensor node có thể gửi giá trị đo đạc về trung tâm cách
xa hàng km và có thể hoạt động với pin trong thời gian dài trước khi cần thay pin.
1.3 Điểm quan trọng IoT
Điểm quan trọng của ứng dụng IoT yêu cầu chỉ truyền rất ít bit dữ liệu để theo dõi
các thiết bị tầm xa. Hệ thống mạng di động thì không phù hợp với vấn đề năng
lượng pin và tốn phí khi gửi ít dữ liệu. Vì vậy, LoRaWAN được đưa ra cho những
ứng dụng này. LoRaWAN thích hợp cho việc gửi một lượng nhỏ dữ liệu với khoảng
cách xa, thời lượng pin dài.
Tiết kiệm năng lượng (dòng điện khởi động 10.3mA, dòng điện duy trì 200nA)
Khoảng cách truyền xa (10-12km) ít vật chắn, trong thành phố trung bình 5km (cần
có trạm Center cao khoảng trên 10 tầng lầu).
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 3/39
CHƯƠNG 2. CẤU TRÚC TRUYỀN DỮ LIỆU VÀ GIỚI THIỆU
LINH KIỆN
2.1 Sơ đồ tổng quát của mô hình
Hình 2-1: Sơ đồ tổng quát của mô hình
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 4/39
2.2 Cấu trúc truyền dữ liệu tại Gateway và các node
Hình 2-2: Cấu trúc truyền dữ liệu
2.3 Xử lí dữ liệu tại Center
Hình 2-3: Hình ảnh các Gateway gửi dữ liệu về PC
Tại PC hay máy tính nhúng giao tiếp với module LoRa qua giao tiếp UART
PC có nhiệm vụ truyền, nhận, xử lí dữ liệu, sử dụng ngôn ngữ Python
(Python xử lí nhanh, tiết kiệm bộ nhớ, khả năng mở rộng, đa năng …)
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 5/39
Toàn bộ node, hay Gateway chỉ gửi dữ liệu lên PC, PC xử lí toàn bộ và sau
đó update lên Web theo thời gian định sẵn để tránh trường hợp đầy, hay
nghẽn dữ liệu tại Webserver.
Tại PC luôn gửi ACK cho từng Gateway để tránh mất gói dữ liệu. (Tại các
node tự giải quyết dữ liệu cho Gateway trong phạm vi của mình, chứ không
được gửi lên tới Center).
2.4 Giới thiệu linh kiện
2.4.1 Module LoRa SX1278 100mW
LoRa sử dụng kỹ thuật điều chế gọi là Chirp Spread Spectrum. Có thể hiểu nguyên
lý này 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; có 2 loại chirp signal là up-chirp có tần số tăng theo thời
gian và down-chirp có tần số giảm theo thời gian; và việc mã hoá theo nguyên tắc
bit 1 sẽ sử dụng up-chirp, và bit 0 sẽ sử dụng down-chirp) trước khi truyền ra anten
để gửi đi.Theo Semtech công bố thì 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ể giải mã và điều chế lại dữ liệu; hơn nữa
LoRa không cần công suất phát lớn mà vẫn có thể truyền xa vì tín hiệu Lora có thể
được nhận ở khoảng cách xa ngay cả độ mạnh tín hiệu thấp hơn cả nhiễu môi
trường xung quanh.
Băng tần làm việc của LoRa từ 430MHz đến 915MHz cho từng khu vực khác nhau
trên thế giới:
430MHz cho châu Á
780MHz cho Trung Quốc
433MHz hoặc 866MHz cho châu Âu
915MHz cho USA
Nhờ sử dụng chirp signal mà các tín hiệu LoRa với các chirp rate khác nhau có thể
hoạt động trong cùng một khu vực mà không gây nhiễu cho nhau. Điều này cho
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 6/39
phép nhiều thiết bị LoRa có thể trao đổi dữ liệu trên nhiều kênh đồng thời (mỗi
kênh cho một chirprate).
Hình 2-4: Hình ảnh module LoRa SX1278
Module Lora SX1278 100mW sử dụng chip Semtech SX1278 của chuẩn
LoRaTM không dây, module ngoài sử dụng công nghệ GFSK truyền thống,
nó cũng sử dụng công nghệ Lora (long range) chống nhiễu và giảm dòng tiêu
thụ. Module hỗ trợ chuẩn giao tiếp UART, độ mạnh tín hiệu phát lớn
100mW, truyền tải được khoảng cách xa mà điện năng tiêu thụ thấp.
Nó thích hợp cho bất kỳ môi trường ứng dụng phức tạp nào cần truyền tải dữ
liệu không dây, chẳng hạn như: điều khiển nhà thông minh nhà, ô tô điện tử,
báo động an ninh, giám sát và kiểm soát hệ thống công nghiệp, hệ thống điều
khiển từ xa cho các ứng dụng tưới tiêu. Các module có thể dễ dàng nhúng
vào hệ thống bằng giao thức SPI chuẩn, giúp cho giao tiếp dễ dàng và đơn
giản.
Thông số kỹ thuật
Kích thước: 21x36mm
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 7/39
Tần số: 433MHz (410 ~ 441MHz) hỗ trợ 32 kênh
Điện áp hoạt động: 2.3 ~ 5.5VDC
Độ mạnh phát: 20dBm (100mW) với 4 mức điều chỉnh (20, 17, 14,
10dBm)
Tốc độ truyền không dây: 2.4kbps có thể điều chỉnh 6 mức (0.3, 1.2,
2.4, 4.8, 9.6, 19.2Kbps)
Dòng sleep mode 2.0uA ở Mode 3
Dòng phát: 110mA
Dòng nhận : 14mA ở Mode 0,1
UART baudrate: 1200 ~ 115.200. Tổng cộng có 8 loại tốc độ truyền
(mặc định 9600)
UART TX, RX Cache 512 Bytes
Hỗ trợ 16 bit địa chỉ để thiết lập network
Anten SMA-K Threaded lỗ, 50Ω trở kháng
Độ nhạy nhận -130dBm
Nhiệt độ hoạt động -40 ~ + 85 ℃
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 8/39
2.4.2 Atmega328 AU SMD
Hình 2-5: Hình ảnh chip AVR ATmega328P
Kiến trúc: AVR 8bit
Xung nhịp lớn nhất: 20MHz
Bộ nhớ chương trình (FLASH): 32KB
Bộ nhớ EEPROM: 1KB
Bộ nhớ RAM: 2KB
Điện áp hoạt động rộng: 1.8V - 5.5V
Số timer: 3 timer gồm 2 timer 8-bit và 1 timer 16-bit
Số kênh xung PWM: 6 kênh (1 timer 2 kênh)
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 9/39
2.4.3 IC DS1307
Hình 2-6: Hình ảnh IC DS1307
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 10/39
Hình 2-7: Sơ đồ chân IC DS1307
X1 và X2 là đầu vào dao động cho DS1307. Cần dao động thạch anh
32.768KHz.
VBAT là nguồn nuôi cho chip. VCC là nguồn cho giao tiếp I2C.
GND là nguồn Mass chung cho cả VCC và VBAT.
SQW/OUT là một ngõ ra phụ tạo xung dao động (xung vuông).
SCL và SDA là hai bus dữ liệu của DS1307. Thông tin truyền và ghi
đều được truyền qua 2 đường truyền này theo chuẩn I2C.
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 11/39
2.4.4 IC AT24C512C
Hình 2-8: Hình ảnh IC lưu dữ liệu flash IC 24LC04B1
áp là cần thiết. Thiết bị hoạt động trong phạm vi điện áp từ 2.5V đến 5.5V.
Tổ chức nội bộ 65.536 x 8
Truyền thông I2C
Schmitt gây nên, lọc đầu vào để ngăn chặn nhiễu
Giao thức truyền dữ liệu hai chiều
Khả năng tương thích 1MHz (2.5V, 5.5V)
Bảo vệ pin cho phần cứng và phần mềm bảo vệ dữ liệu
Chế độ ghi 128 byte (cho phép ghi tối đa 1 thanh ghi)
Chu trình ghi thời gian tự động (tối đa 5ms)
Độ tin cậy cao
Độ bền: 1.000.000 chu trình ghi
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 12/39
2.4.5 DHT 11
Hình 2-9: Hình ảnh cảm biến nhiệt độ và độ ẩm DHT11
Điện áp hoạt động: 3VDC - 5VDC
Dãi độ ẩm hoạt động: 20% - 90% RH, sai số ± 5%RH
Dãi nhiệt độ hoạt động: 0°C ~ 50°C, sai số ± 2°C
Khoảng cách truyển tối đa: 20m
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
Trang 13/39
2.5 Giao diện điều khiển, hiển thị dữ liệu thông qua Node-RED
Hình 2-10: Hình ảnh chương tình ứng dụng Node-Red
Node-RED được dựa trên Node.js, nó có thể được xem như một web
server mà có thể cấu hình tùy chỉnh các chức năng gọi là “flow” từ bất
kỳ trình duyệt nào trên máy tính. Mỗi ứng dụng Node-RED bao gồm
các node có thể liên kết được với nhau với các dạng là input, output
và operation.
Node-RED cung cấp trình biên tập luồng dựa trên trình duyệt làm cho
dễ dàng kết nối các luồng với nhiều nút trong bảng. Các luồng có thể
được triển khai tới thời gian chạy bằng một cú nhấp chuột duy nhất.
Các hàm JavaScript có thể được tạo ra bên trong trình soạn thảo sử
dụng trình biên tập văn bản phong phú.
Thư viện được xây dựng sẵn cho phép bạn lưu lại các chức năng hữu
ích, mẫu hoặc dòng chảy để tái sử dụng.
Ứng dụng truyền nhận dữ liệu sử dụng module LoRa
`
- Xem thêm -