1. Trang chủ
  2. » Luận Văn - Báo Cáo

đồ án i thiết kế hệ thống quan trắc thời tiết

29 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế hệ thống quan trắc thời tiết
Tác giả Phạm Minh Khởi
Người hướng dẫn Hoàng Đức Chính
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Công nghệ Điều khiển & Tự động hóa
Thể loại Đồ án I
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 29
Dung lượng 2,21 MB

Nội dung

MỤC LỤCTổng quan về hệ thống quan trắc thời tiếtBối cảnh chungCác trạm quan trắc thời tiết trên thực tếCác trang web cung cấp thông tin thời tiếtMục tiêu đề tàiBố cục đồ ánCấu trúc hệ th

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

ĐỒ ÁN I THIẾT K H Ế Ệ THỐNG QUAN TR C TH I TI Ắ Ờ ẾT

PHẠM MINH KHỞI

Ngành KT Điều khiển & Tự động hóa

Giảng viên hướng dẫn: Hoàng Đức Chính

Tự động hóa

HÀ NỘI, 8/2023

Chữ ký của GVHD

Trang 2

MỤC LỤC

Tổng quan về hệ thống quan trắc thời tiết

Bối cảnh chung

Các trạm quan trắc thời tiết trên thực tế

Các trang web cung cấp thông tin thời tiết

Giới thiệu phần mềm thiết kế mạch Altium Designer

Giới thiệu về chuẩn giao tiếp I2C và giao thức MQTT

Giới thiệu về giao tiếp I2C

Giới thiệu chung về giao thức MQTT

Lập trình chương trình máy

Lưu đồ giải thuật chương trình máy

Giới thiệu phần mềm lập trình hệ thống

Thiết kế ứng dụng trên điện thoại

Lưu đồ ứng dụng hiển thị thông số cảm biến trên android app

Phương hướng phát triển

TÀI LIỆU THAM KHẢO

Trang 3

DANH MỤC HÌNH VẼHình 1.1 Mô hình trạm thời tiết tự động ET107

Hình 1.2 Các thành phần của trạm thời tiết ET107

Hình 1.3 Một số trang web cung cấp thông tin về thời tiết

Hình 2.7 Cảm biến hướng gió

Hình 2.8 Sơ đồ mạch đo và bảng giá trị điện trở ứng với mỗi góc quay

Hình 2.9 Gầu nước bên trong cảm biến lượng mưa

Hình 2.10 Sơ đồ nguyên lý mạch giao tiếp

Hình 2.11 Giao diện làm việc Altium Designer

Hình 2.12 Lưu đồ chương trình máy

Hình 2.13 Giao diện làm việc Arduino IDE

Hình 2.14 Lưu đồ ứng dụng thể hiện thông tin thời tiết

Hình 2.15 Giao diện làm việc Android Sttudio

Hình 3.1 Thông tin thời tiết đo được qua cảm biến

Hình 3.2 Dữ liệu thời tiết được hiển thị trên ứng dụng

Trang 4

CHƯƠNG 1 GIỚI THIỆU

Tổng quan về hệ thống quan trắc thời tiết

ố ả

Thời tiết là tập hợp trạng thái của các yếu tố khí tượng xảy ra trong khí quyển ở một thời điểm, một khoảng thời gian nhất đinh nhất định như nắng hay mưa, nóng hay lạnh, ẩm thấp hay khô ráo Thời tiết ảnh hưởng rất nhiều đến các hoạt động sản xuất và sinh hoạt của con người Chính vì thế con người đã cố gắng dự báo thời tiết trong suốtnhiều thiên niên kỷ Năm 650 BC, người Babylon tiên đoán thời tiết dựa vào hình dạng của các đám mây cũng như dựa vào chiêm tinh học Khoảng 340 BC, miêu tả một phần thời tiết trong cuốn “meteorologica” Lúc này các dự đoán chủ yếu dựa vào quan sát một phần nhất định như mặt trời, chu kỳ trăng, sự chuyển động của gió Đến khi công nghệ phát triển hơn chúng ta đã có thể đo được các dữ liệu môi trường một cách chính xác hơn, nắm được các quy luật của thời tiết và dựa vào các dữ liệu quang trắc môi trường để đưa ra các dự báo về sự thay đổi của thời tiết

Các trạm quang trắc khí tượng cung cấp các dữ liệu về môi trường như : nhiệt độ,

độ ẩm, áp suất, ánh sáng, tốc độ gió, lượng mưa… mang lại rất nhiều lợi ích cho hoạt động sinh hoạt, sản xuất của con người

Dự báo thời tiết

Cung cấp dữ liệu môi trường phục vụ các hoạt động sản xuất nhất là trong nông nghiệp

Cảnh báo thiên tai

ng cấp dữ liệu phục vụ cho các nghiên cứu về môi trường và khi hậu

Trên thực tế có rất nhiều loại trạm quan trắc thời tiết khác nhau, với những tính năng

và mục đích sử dụng như: Trạm quan trắc thời tiết sử dụng cho mục đích nông nghiệp thương mại, tưới tiêu, hoặc tại các công trình lớn như thủy điện… trạm thời tiết RK900 được sử dụng cho nhiều mục đích khác như nghiên cứu khoa học, khí tượng thủy văn, nông lâm thủy sản,…

Trang 5

Mô hình trạm thời tiết tự động

Trạm thời tiết ET107 có những tính năng đặc trưng như

Sử dụng Datalogger CR1000 nên rất thuận tiện cho việc lập trình ghi đo và truyền

số liệu bằng nhiều hình thức khác n

Sử dụng các cảm biến ghi đo phổ biến và thông dụng, có thể hỗ trợ nhiều ứng dụng, mục đích khác nhau

Hộp bảo vệ kín nước nên có thể bảo vệ an toàn các thiết bị điện tử bên trong, tăng

độ tin cậy số liệu ghi đo trong thời gian lâu dài

Tiêu thụ điện năng thấp nên hệ thống pin mặt trời, ăc quy cũng rất gọn nhẹ, kéo theo giá đỡ của trạm cũng rất gọn nhẹ

Tuỳ chọn xem và tải số liệu qua Internet thông qua máy chủ ảo đặt tại Việt Nam Tuỳ chọn cảnh báo bằng tin nhắn SMS, E ng số đo vượt ngưỡng cho phép (thường là lượng mưa)

Trạm quan trắc thời tiết ET107 gồm các thành phần như hình vẽ:

Các thành phần của trạm thời tiết ET107

Trang 6

1: Bộ ghi đo tự động

2: Bộ nguồn bao gồm ăc quy 12 VDC 7Ah, pin mặt trời 10W, bộ sạc

3: Cảm biến đo bức xạ mặt trời

4: Cảm biến đo nhiệt độ và độ ẩm tương đối của không khí

5: Cốc đo mưa dạng xung lật

6: Cảm biến đo tốc độ gió và hướng gió

7: Modem truyền dữ liệu

Với sự phát triển của Internet rất nhiều website với mục đích cung cấp các thông tin

và dự báo về thời tiết khu vực đã được phát hành như : Acc

Underground, Weather.com… hay ( trang web của Trung tâm dự báo khí tượng thủy văn quốc gia Việt Nam) Đây đều là những trang web có cơ sở dữ liệu rất lớn phủ khắp trên thế giới Cho phép ta dễ dàng nắm được các thông tin chuẩn xác nhất

về thời tiết của bất cứ nơi nào ta muố

Một số trang web cung cấp thông tin về thời tiết

Trang 7

Ngoài chức năng chính là đưa ra các thông tin thời tiết và dự đoán thời tiết các trang web còn cung cấp rất nhiều các dịch vụ và tính năng bổ sung :

Dự báo chi tiết hơn: Các dịch vụ trả phí cung cấp dự báo thời tiết chi tiết hơn, bao gồm thông tin về nhiệt độ, độ ẩm, tốc độ gió, mức độ UV, mưa, tuyết, và các chỉ số khí quyển khác trong thời gian ngắn và dài hạn Ngoài ra còn có thêm những dự báo

về sấm, chớp, bão, mưa lớn, lốc xoáy cùng các hiện tượng thời tiết nguy hiểm khác Những thông tin chi tiết này có thể giúp cho người dùng có thể chuẩn bị và đối phó.Phân tích kèm theo những đồ họa và mở rộng hơn Có thể phân tích thông tin thời tiết dưới dạng biểu đồ, trong thời gian thực và liên tục Giúp người dùng nhận biết

dễ dàng và hiểu rõ hơn xu hướng thời tiết

Cùng với đó, dịch vụ trả phí cung cấp thêm những thông tin thời tiết của địa điểm khác, theo đó có những kế hoạch đặt ra trong tương lai cụ thể và rõ ràng

từ xa thông qua module esp8266 kết hợp với giao thức MQTT

Trang 8

CHƯƠNG 2 THIẾT KẾ HỆ THỐNG

Cấu trúc hệ thống

Sơ đồ ệ ố

Sơ đồ hệ thốngThông qua mạch giao tiếp dữ liệu thời tiết được đọc bởi ESP8266 > ESP8266 sẽ đọc

và gửi dữ liệu lên máy tính để làm MQTT Broker( mosquitto) qua kết nối wifi Ứng dụng nhận và hiển thị dữ liệu được gửi lên Bro

Tổng quan về NodeMCU ESP8266

Giới thiệu sơ lược về NodeMCU ESP8266

ESP8266 là một chip của Espressif Systems có tích hợp công nghệ Wi Fi với đặc tính giá rẻ, tương thích với nhiều nền tảng Nó thường được sử dụng trong các board mạch smart home giá rẻ như Sonoff Basic và các công tắc Wi

Bảng phát triển NodeMCU ESP8266 đi kèm với mô đun ESP 12E chứa chip ESP8266 Bộ vi xử lý này hỗ trợ RTOS và hoạt động ở tần số xung nhịp có thể điều chỉnh

từ 80MHz đến 160 MHz

NodeMCU có 128 KB RAM và 4MB bộ nhớ Flash để lưu trữ dữ liệu và chương Sức mạnh xử lý cao của nó với Wi Fi / Bluetooth và các tính năng Điều hành Ngủ sâu tích hợp khiến nó trở nên lý tưởng cho các dự án IoT

Trang 9

NodeMCU có thể được cấp nguồn bằng giắc cắm Micro USB và chân VIN (Chân nguồn cung cấp bên ngoài) Nó hỗ trợ giao diện UART, SPI và I2C.

Thông số kỹ thuật

USB NodeMCU có thể cấp nguồn qua cổng USB

3.3V: quy định có hể cung cấp cho chân này để cấp nguồn cho mạch

GND: Chân nối đấtVin: Nguồn điện bên ngoàiChốt và nút đặt lại bộ vi điều khiểnĐược sử dụng để đo điện áp tương tự trong khoảng 0

Trang 10

GPIO1 đến GPIO16 Chân MCU có 16 chân đầu vào – đầu ra

4 chân để giao tiếp SPIĐược sử dụng để tải lên chương trình

2 chân để giao tiếp I2C

Cảm biến nhiệt độ và độ ẩm AM2320

Cảm biến độ ẩm và nhiệt độ AM2320 là cảm biến lấy dữ liệu thông qua giao tiếp 1 wire (giao tiếp digital 1 dây truyền dữ liệu duy nhất), tương tự như cảm biến DHT22

Trang 11

Cảm biến áp suất BM

Cảm biến nhiệt độ, độ ẩm, áp suất không khí BM

được sử dụng như một áp kế điện tử giúp đo áp suất, độ ẩm, nhiệt độ của môi trường khí), cảm biến có thiết kế nhỏ gọn, độ bền cao có thể sử dụng ở trong nhà và ngoài trời với các ứng dụng nhà thông minh, dự báo thời tiết, vườn thông minh, , cảm biến sử dụng giao tiếp I2C rất dễ kết nói và điều khiển

Điện áp sử dụng: 3.3VDC

tiếp: I2C

Khoảng đo nhiệt độ:

Khoảng đo độ ẩm: 0

Khoảng đo áp suất: 30,000 Pa

Độ chính xác tương đối: 12 Pa, độ chính xác tuyệt đối: 100 Pa

Cảm biến tốc độ gió

Cảm biến tốc độ gió điển hình có ba cách quạt với các muỗng ở cuối để đón gió và làm cánh quạt quay Ở phía dưới của cách quạt ta sẽ tìm thấy một nam châm nhỏ được gắn ở dưới

Cảm biến tốc độ gióCảm biến áp suất BMP280

Trang 12

Tại hai điểm của vòng quay nam châm, nó kích hoạt một thiết bị điện tử thông minh được gọi làcông tắc sậy, như hình bên dưới.

Công tắc sậyCông tắc sậy có hai tiếp điểm kim loại bên trong tiếp xúc với nhau khi chịu tác động của nam châm Do đó, về mặt điện tử, công tắc này hoạt động giống hệt như một nút được kết nối với vi điều khiên: khi máy đo gió quay, nam châm của nó sẽ vượt công tắc sậy, khiến nó tạo thành một mạch kín trong giây lát Do đó, bạn có thể sử dụng

số lượng tín hiệu từ công tắc sậy để tính tốc độ quay của máy đo gió Bất cứ khi nào công tắc sậy được kích hoạt, nó sẽ tạo ra tín hiệu mà bạn có thể phát hiện qua

❖Tính tốc độ gió

Máy đo gió tạo ra hai tín hiệu trên mỗi vòng quay, vì vậy bạn có thể đếm số vòng quay đầy đủ của cảm biến bằng cách giảm một nửa số lượng đầu vào được phát

hiện Điều này sau đó có thể được sử dụng để tính toán tốc độ gió:

vận tốc = quãng đường/thời gian

Để tính vận tốc , bạn cần biết quãng đường vật đi được trong một khoảng thời nhất định Việc đo thời gian khá đơn giản và bạn có thể đếm số lượng tín hiệu trong một khoảng thời gian cố định, chẳng hạn như năm giây

Quãng đường đi được của một trong các cốc sẽ bằng số lần quay nhân với khoảng cách quanh mép của hình tròn (chu vi):

tốc độ = (vòng quay * chu vi) / thời gian

Trang 13

Toàn bộ vòng quay sẽ tạo ra hai tín hiệu, vì vậy cần giảm một nửa số lượng tín hiệu được phát hiện:

tốc độ = (tín hiệu/2)∗(2 ∗ π∗ bán kính)

tín hiệu

Cảm biến hướng gió

Các cánh quạt gió chỉ hướng gió đến chứ không phải nơi nó sẽ đi Điều này có thể hơi khó hiểu lúc đầu, bởi vì các mũi tên trên hầu hết các bản đồ thời tiết trên TV cho thấy điều ngược lại Một cánh gió hoạt động do gió tác dụng lực lên cánh quạt thẳng đứng của

nó, khiến cánh quạt này quay để tìm vị trí ít sức cản của gió nhất; vị trí này thẳng hàng với hướng gió thổi tới

Giống như máy đo mưa hoặc máy đo gió, cánh gió được sử dụng ở đây cũng có công tắc và nam châm quay

Nếu nhìn vào bên trong hình ảnh, có tới tám công tắc được bố trí giống như nan hoa của bánh xe

Trang 14

Cảm biến hướng gióđiện trởtrong cánh gió và khi nam châm quay, các công tắc sậy khác nhau sẽ mở và đóng và do đó chuyển điện trở tương ứng của chúng vào và ra khỏi mạch Nam châm của cánh có thể đóng hai công tắc cùng một lúc, cho phép chỉ định tối đa

16 vị trí khác nhau Một điện trở bên ngoài có thể được sử dụng để tạo thành một bộ chia điện áp, tạo ra một đầu ra điện áp có thể đo được bằng bộ chuyển đổi tương tự sang kỹ thuật số, như minh họa bên dưới

Sơ đồ mạch đo và bảng giá trị điện trở ứng với mỗi góc quay

Để đọc hướng gió từ cánh quạt, bạn cần có khả năng đo điện trở do cảm biến tạo ra

và chuyển đổi giá trị đó thành giá trị góc Có một số bước trong quá trình này

Trang 15

đi vào vị trí Để tính được lượng mưa ta chỉ cần nhân số lần lật úp với lượng nước tới hạn của gầu

Bên cạnh gầu đựng ta có một bảng mạch chứa công tắc Khi một trong các gầu bị lật, nam châm sẽ vượt qua công tắc, khiến nó đóng lại trong giây lát Vì vậy, giống như với máy đo gió, nếu bạn kết nối máy đo mưa với chân GPIO để đếm số lần lật úp, từ đó tính được lượng mưa

Một mạch tổng hợp có nhiệm vụ đọc tín hiệu từ các cảm biến và tổng hợp dữ liệu

để thuận lợi hơn trong quá trình truyền tải và xử lý dữ liệu

Trang 16

Sơ đồ nguyên lý mạch giao tiếp

Sơ đồ nguyên lý gồm có:

điều khiển

Cảm biến áp suất BMP280: gồm 6 chân, trong đó 4 chân được sử dụng cho giao tiếp I2C là Vcc, Gnd,

Cảm biến nhiệt độ AM2320: gồm 4 chân là Vcc, Gnd, SCL, SDA

IC ổn áp AMS1117 3.3V: gồm 3 chân Vin, Vout, Gnd

Bộ đo mưa RAIN: được kết nối với modul bằng bộ dây và đầu nối RJ11 gồm 6 tiếp điểm, kết nối bằng 2 tiếp điểm thứ 3 và 4 truyền thông tin và “đất”

Bộ đo gió WIND: được kết nối với modul bằng bộ dây và đầu nối RJ11 gồm 6 tiếp điểm, kết nối bằng các tiếp điểm 2, 3, 4 và 5 đối xứng Tiếp điểm 2, 3 truyền tải thông tin và 4, 5 được nối “đất”

Đầu cấp nguồn cho toàn mạch và truyền tải thông tin: gồm 3 chân kết nối là Data,

2 đèn báo tín hiệu Link và STU

Dao động thạch anh XTAL: tạo ra tín hiệu xung nhịp tần số ổn định

Giới thiệu phần mềm thiết kế mạch

Altium Designer trước kia có tên gọi quen thuộc là Protel DXP, là một trong những công cụ vẽ mạch điện tử mạnh nhất hiện nay Được phát triển bởi hãng Altium Limited

Trang 17

esigner là một phần mềm chuyên nghành được sử dụng trong thiết kế mạch điện

tử mạnh với nhiều tính năng như: hỗ trợ mạnh mẽ cho việc thiết kế thiết kế sơ đồ nguyên

lý, mạch PCB Mở, xem, in các file thiết kế mạch với đầy đủ các linh kiện Hệ thống linh kiện phong phú, chi tiết và hoàn chỉnh Tạo ra các linh kiện, các mạch in mới Mô phỏng mạch PCB, mô phỏng mạch trong không gian 3 chiều

Giao diện làm việc Giới thiệu về chuẩn tiếp I2C và giao thức MQTT

Trang 18

I2C sử dụng 2 đường truyền tín hiệu:

Serial Clock Line: Tạo xung nhịp đồng hồ do Master phát đi

ial Data Line: Đường truyền gửi và nhận dữ liệu

Quá trình truyền dữ liệu đến thiết bị I2C

Bước 1: Master gửi tín hiệu start I2C

Bước 2: Master gửi địa chỉ của thiết bị I2C (7 bit) kèm bit Write (bit 0); Bước 3gửi địa chỉ của thanh ghi dữ liệu của Slave muốn ghi giá trị

Bước 4: Master gửi giá trị mà muốn ghi vào thành ghi ở bước 3

Bước 5: Master tạo tín hiệu stop

Quá trình nhận dữ liệu từ thiết bị I2C

Bước 1: Master gửi tín hiệu start I2C

Bước 2: Master gửi địa chỉ của thiết bị I2C (7 Bước 3gửi đia chỉ thanh ghi của Slave mà muốn đọc dữ liệu

Trang 19

Bước 4: Master gửi tín hiệu Repeated Start.

Bước 5: Master gửi địa chỉ của thiết bị I2C (7 bit) kèm bit Read (bit 1); Bước 6Master đọc dữ liệu chứa trong thanh ghi ở bước 3 từ Slave gửi về

Bước 7: Master tạo tín hiệu Stop

MQTT là viết tắt của "Message Queue Telemetry Transport", là một giao thức truyền thông nhẹ và đơn giản cho các thiết bị Internet of Things (IoT) MQTT sử dụng mô hình publish/subscribe, trong đó các thiết bị IoT có thể gửi (publish) và nhận (subscribe) các thông điệp (message) thông qua một trung tâm tin cậy (broker), mà không cần phải thiết lập một kết nối trực tiếp với nhau

thiết bị IoT gửi dữ liệu với băng thông hạn chế và tiêu thụ điện năng thấp, đồng thời hỗ trợ các tính năng bảo mật như xác thực, mã hóa và kiểm soát truy cập MQTT thường được sử dụng để giám sát và điều khiển các thiết bị IoT trong các ứng dụng như quản lý năng lượng, giám sát môi trường, tự động hóa nhà thông minh, và nhiều ứng dụng IoT khác

Trang 20

Lập trình chương trình máy

Lưu đồ ả ật chương trình máy

❖ Cấu hình thiết lập cho hệ thống:

• Khai báo các thư viện sử dụng trong chương trình

Serial.begin(2400)

•password của mạng wifi kết nối; khai báo các thông số để kết nối tới Mosquitto (host,username,

const char* ssid =

❖ Kiểm tra tín hiệu vào và kết nối với Broker:

• Kiểm tra tín hiệu vào

Serial.available()

• Kiểm tra kết nối đến máy chủ Mosquitto

while(client connected ()){

Serial.print("Đang kết nối đến broker MQTT ");

if(client.connect("ESP8266Client", mqtt_user, mqtt_passwor

)){

Serial println ("Kết nối thành công!");

client subscribe ("topic");

Lưu đồ chương trình máy

Ngày đăng: 18/06/2024, 17:04

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w