Tải bản đầy đủ (.doc) (46 trang)

ỨNG DỤNG TRUYỀN NHẬN dữ LIỆU sử DỤNG MODULE LORA (có code và sơ đồ mạch)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.35 MB, 46 trang )

ĐỒ Á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

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

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À SERVER15HÌ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
3-5: NGUYÊN LÍ GIAO TIẾP CÁC CỔNG TRUYỀN THÔNG

18HÌNH

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 INSTRUSMENT23
HÌNH 3-14: HÌNH ẢNH SỬ DỤNG ĐIỆN TRỞ 0

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


`


Trang 14/39

Một ví dụ đơn giản để chúng ta có thể hình dung được các node khác nhau sẽ
tương tác như thế nào?

Hình 2-11: Tổng quang xử lí trong Node-RED

Hình 2-12: Giao diện hiển thị của Node-RED

 Với Node-RED ta có thể hình dung cách tương tác và giao tiếp với
các thiết bị một cách tổng quan như hình dưới.

Ứng dụng truyền nhận dữ liệu sử dụng module LoRa

`


Trang 15/39

 Ở đây máy tính sẽ đóng vai trò là server và client.

Hình 2-13: Mô tả PC đóng vai trò là Server và Client

 Nếu dùng máy tính nhúng hay PC thì thiết bị này sẽ đóng vai trò là
Server, còn lại sẽ là client như hình.

Hình 2-14: Mô tả PC đóng vai trò là Server


Ứng dụng truyền nhận dữ liệu sử dụng module LoRa

`


Trang 16/39

CHƯƠNG 3. NGUYÊN LÍ VÀ QUY TẮC LAYOUT PCB
3.1 Sơ đồ nguyên lí module

Hình 3-1: Nguyên lí toàn bộ hệ thống

Ứng dụng truyền nhận dữ liệu sử dụng module LoRa

`


Trang 17/39

Hình 3-2: Nguyên lí mạch nguồn

Hình 3-3: Mạch nguyên lí MCU

Ứng dụng truyền nhận dữ liệu sử dụng module LoRa

`


Trang 18/39


Hình 3-4: Nguyên lí các module giao tiếp và các cổng truyền thông

Hình 3-5: Nguyên lí các module giao tiếp và các cổng truyền thông

Ứng dụng truyền nhận dữ liệu sử dụng module LoRa

`


×