.9 Cảm biến mưa

Một phần của tài liệu hệ thống quản lý vườn cây thông minh (Trang 41)

3.3.4 Module cảm biến mưa.

Cấu tạo Module: tấm cảm biến mưa lớn có thể thay đổi điện trở phụ thuộc vào lượng

nước trên bề mặt và IC so sánh điện áp LM393 dùng để so sánh điện áp ngõ vào với điện áp ngưỡng do người dùng cài đặt để nhận biết mưa.

Thơng số kỹ thuật:

- Kích thước tấm cảm biến mưa: 54 x 40mm. - Kích thước board PCB: 30 x 16mm.

- Điện áp: 5V.

- Đầu ra: đầu ra kỹ thuật số DO (0 và 1) và đầu ra tương tự điện áp AO.

- Có đèn báo hiệu nguồn và đầu ra.

- Đầu ra TTL, tín hiệu đầu ra TTL có giá trị thấp. Có thể điều khiển trực tiếp relay, buzzer, a small fan...

- Độ nhạy có thể được điều chỉnh thơng qua chiết áp.

- LED sáng lên khi khơng có mưa đầu ra cao, có mưa, đầu ra thấp LED tắt.

Nguyên lý hoạt động: Dựa vào sơ đồ nguyên lý hình 3.8, tấm cảm biến mưa được mắc

nối tiếp với một điện trở để tạo cầu phân áp, điện áp ngõ ra trên cầu phân áp phụ thuộc vào lượng nước trên bề mặt cảm biến mưa. Điện áp ngõ ra này được so sánh với điện áp ngưỡng, từ đó xuất tín hiệu mức cao hoặc thấp (DO) đến vi điều khiển để nhận biết mưa. Độ nhạy của cảm biến phụ thuộc vào điện áp ngưỡng và có thể điều chỉnh được bằng biến trở gắn trên cảm biến.

3.3.5 Module cảm biến độ ẩm đất.

Cấu tạo module: Hai thanh thép nhỏ có thể thay đổi điện trở phụ thuộc vào lượng nước

trong đất và IC so sánh điện áp LM393 dùng để so sánh điện áp ngõ vào với điện áp ngưỡng do người dùng cài đặt để nhận biết độ ẩm.

Hình 3.20 Mạch so sánh điện áp LM393 cảm biến độ ẩm đất. Thông số kỹ thuật: - Phát hiện độ ẩm trong đất. - Phát hiện nước. - Mạch sử dụng IC so sánh điện áp LM393. - Điện áp sử dụng: 3.3-5V.

- Đầu ra: AOUT, DOUT, VCC, GND

o AOUT : Tín hiệu ADC.

o DOUT: Mức logic 0,1.

- Module khi chưa phát hiện ở mức 1, khi phát hiện độ ẩm cho ra mức 0.

- Biến trở cài đặt ngưỡng cài đặt.

Nguyên lý hoạt động: Dựa vào sơ đồ nguyên lý hình 3.10, hai thanh thép cảm biến được

mắc nối tiếp với một điện trở để tạo cầu phân áp, điện áp ngõ ra trên cầu phân áp phụ thuộc vào lượng nước trong đất. Điện áp ngõ ra này (AOUT) được đưa trực tiếp vào ngõ vào ADC của vi điều khiển, dựa vào giá trị bộ ADC có được ta xác định được độ ẩm của đất.

3.3.6 Cảm biến ánh sáng.

Cảm biến cường độ ánh sáng BH1750 được sử dụng để đo cường độ ánh sáng theo đơn vị lux.

Thông số kỹ thuật :

- Nguồn: 3 -> 5VDC - Giao tiếp: I2C

- Khoảng đo: 1 -> 65535 lux - Kích cỡ: 21*16*3.3mm

Nguyên lý hoạt động :Cảm biến

BH1750 được dùng để đo cường độ ánh sáng theo đơn vị Lux, cảm biến gồm hai khối chính là khối ADC nội và bộ tiền xử lý. Khối ADC nội được dùng để chuyển đổi giá trị

Hình 3.21 Cảm biến độ ẩm đất.

Hình 3.13 Sơ đồ chi tiết cảm biến ánh sáng BH1750.

để trả ra đơn vị cường độ ánh sáng theo dơn vị Lux, giá trị này được đọc bởi vi điều khiển thông qua giao tiếp I2C.

3.3.7 Cảm biến nhiệt độ LM35.

Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện áp đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius. Chúng cũng khơng u cầu cân chỉnh ngồi vì vốn chúng đã được cân chỉnh.

Thông số kỹ thuật:

- Điện áp đầu vào từ 4V đến 30V. - Điện áp ra: -1V đến 6V.

- Công suất tiêu thụ là 60uA.

- Độ phân giải điện áp đầu ra là 10mV/oC. - Độ chính xác cao ở 25 C là 0.5 C.

- Trở kháng đầu ra thấp 0.1 cho 1mA tải.

- Độ chính xác thực tế: 1/4°C ở nhiệt độ phịng và 3/4°C ngồi khoảng -55°C tới 150°C.

Hình 3.23 Cảm biến nhiệt độ LM35.

Tính tốn nhiệt độ đầu ra của IC LM35.

- Cảm biến LM35 hoạt động bằng cách cho ra một giá trị hiệu điện thế nhất định tại chân Vout (chân giữa) ứng với mỗi mức nhiệt độ.

- Để đo nhiệt độ khi sử dụng IC LM35 thông thường chúng ta đọc điện áp ngõ ra của LM35 bằng ngõ vào ADC của vi điều khiển.

- Cơng thức tính nhiệt độ theo điện áp ngõ ra :

t= u/k

Trong đó :

 u là điện áp đầu ra

Giả sử điện áp Vcc cấp cho LM35 là 5V ADC 10bit. Vậy bước thay đổi của LM35 sẽ là 5/(2^10) = 5/1024 . Giá trị ADC đo được thì điện áp đầu vào của LM35 là

(t*k)/(5/1024) = ((10^-2)*1024*t)/5 = 2.048*t Vậy nhiệt độ ta đo được t = giá trị ADC/2048

CHƯƠNG 4: THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM.

4.1 Yêu cầu thiết kế.

Mục tiêu của luận văn là thiết kế hệ thống có thể giám sát vườn thanh long và thu thập các thông số môi trường từ xa thông qua kết nối không dây như 3G hoặc 2G.

Để làm được điều này chúng ta cần phải có một nơi lưu lại các thơng số môi trường thu thập được theo thời gian,một giao diện tương tác để người dùng có thể điều khiển và đọc được các thông tin cần thiết về hệ thống.

Dựa trên các yêu cầu trên chúng ta đề xuất giải pháp là thiết kế Web Server. Một Web Server bao gồm: Cơ sở dữ liệu,trang Web và chương trình quản lý Server.Thiết kế hệ thống điều khiển trên Web Server sẽ mang cho ta nhiều lợi ích như dung lượng cơ sở dữ liệu lớn, giao diện là một trang Web nên có thể hoạt động trên nhiều nền tảng khác nhau như Android, iOS, window phone… chỉ u cầu có cài đặt trình duyệt web trước đó.

4.2 Trang Web và phía Server.

4.2.1 Phần mềm Microsoft WebMatrix và ASP.NET framework.

Giao diện trang Web, phía Server và cơ sở dữ liệu trong luận văn này đều được tạo trên phần mềm WebMatrix sử dụng ngơn ngữ HTML kết hợp với ASP.NET Razor.

Hình 4.24Giao diện phần mềm WebMatrix 3.

WebMatrix là một phần mềm ứng dụng phát triển Web miễn phí cho hệ điều hành Windows được phát hành bởi Microsoft.WebMatrix cho phép người phát triển xây dựng trang Web sử dụng các mẫu tích hợp có sẵn hoặc các ứng dụng mã nguồn mở thông dụng với sự hỗ trợ tuyệt đối với ASP.NET, PHP, Node.js và HTML5.Microsoft phát triển WebMatrix cho mục đích cung cấp cho người phát triển Web các tính năng lập trình, chỉnh sửa và phát hành trang Web chỉ trên một phần mềm duy nhất. Phiên bản mới nhất hiện nay là Microsoft WebMatrix 3.

ASP.NET là một chương trình khung ứng dụng Web phía Server thiết kế cho việc phát triển Web để tạo các trang Web động. Được phát triển bởi Microsoft cho phép người phát triển Web xây dụng các trang Web động, ứng dụng Web và dịch vụ Web.

ASP.NET Web pages, được biết chính thức với với tên Web Forms, là các khối xây dựng chính cho phát triển ứng dụng. Web forms được chứa trong các tập tin với phần mở rộng “.aspx”, các tập tin này thường chứa các đánh dấu động HTML cũng như các đánh dấu định nghĩa các điều khiển phía Server và các điều khiển của người dùng. Các mã động được chạy trên Server có thể được đặt trong một khối <% -- mã động -- %>.

phép người dùng sử dụng quy trình xây dựng của HTML. Thay vì sử dụng cú pháp đánh dấu với các ký tự <% -- %> để chỉ ra khối mã lệnh, cú pháp Razor bất đầu khối mã lệnh với một ký tự @ duy nhất và khơng cần thêm ký tự nào để đóng khối mã lệnh. Ưu điểm của Razor là cung cấp một cú pháp tối ưu cho HTML sử dụng một cách tiếp cận tập trung vào mã lệnh, với sự thay đổi nhỏ nhất giữa HTML và mã lệnh.

4.2.2 Tạo cơ sở dữ liệu.

Cơ sở dữ liệu được tạo bằng Microsoft SQL Server 2012 trên phần mềm WebMatrix. Cơ sở dữ liệu gồm có các bảng dùng để lưu trữ dữ liệu được gởi lên từ vi điều khiển và Sim900A, đồng thời cũng lưu trữ các yêu cầu được chọn ở giao diện trang Web.

Sơ đồ cấu trúc cơ sở dữ liệu và chức năng các bảng:

- Bảng Devices:gồm các cột

o Cột id chứa số thứ tự.

o Cột Name chứa tên của các thiết bị.

o Cột DStatus chứa trạng thái của các thiết bị.

o Cột DRequest chứa yêu cầu từ giao diện trang Web.

Hình 4.25 Bảng Devices của cơ sở dữ liệu.

- Bảng Dlog:gồm có các cột:

o Cột id chứa số thứ tự.

o Cột Name chứa tên của thiết bị.

o Cột Status chứa trạng thái vừa thay đổi của thiết bị.

Hình 4.26 Bảng Dlog của cơ sở dữ liệu.

- Bảng Sensors:gồm có các cột:

o Cột id chứa số thứ tự.

o Cột Devices chứa tên các cảm biến được gắn vào mỗi node.

o Cột Parameter chứa thông số của các cảm biến.

o Cột Time cập chứa thời gian cập nhật các thơng số.

Hình 4.27 Bảng Sensors của cơ sở dữ liệu.

- Bảng Slog:gồm các cột:

o Cột id chứa số thứ tự.

o Cột N1Tem,N2Tem, N3Tem, N4Tem: chứa thông số nhiệt độ từcảm biến.

o Cột N1Light, N2Light, N3Light, N4Light: chứa thông số cường độ ánh sáng từcảm biến.

o Cột N1Hum, N2Hum, N3Hum, N4Hum: chứa thơng số độ ẩm đất từcảm biến.

Hình 4.28 Bảng Slog của cơ sở dữ liệu.

- Bảng Mode :gồm các cột

o Cột id chứa số thứ tự.

o Cột Mode chứa yêu cầu về chế độ hoạt động của hệ thống.Gồm 2 chế độ: điều khiển bằng tay và điều khiển tự động.

o Cột Smode chứa trạng thái của mode đang được chọn.

Hình 4.29 Bảng Mode của cơ sở dữ liệu. - Bảng User Profile:gồm các cột

o Cột Email chứa địa chỉ Email,đây cũng chính là tài khoản để đăng nhập vào hệ thống của người sử dụng.

Hình 4.30 Bảng User Profile.

- Bảng Webpage Membership: gồm các cột:

o Cột Id chứa số thứ tự của tài khoản.

o Cột Password chứa mật khẩu của tài khoản.

Hình 4.31 Bảng Webpage Membership của cơ sở dữ liệu. 4.2.3 Thiết kế giao diện người dùng.

Giao diện người dùng là một trang Web được viết bằng HTML – Ngôn ngữ đánh dấu siêu văn bản, và các phần truy cập vào cơ sở dữ liệu phía Server sử dụng Razor.

Trang hiển thị chính của Web có các phần chính như sau:

- Trang Đăng Nhập: trang này có chức năng cho phép người dùng đăng nhập vào hệ

thống.

- Trang Đăng Ký : trang này có chức năng cho phép người dùng tạo một tài khoản

đăng nhập mới.

- Trang Điều khiển : Chứa Bộ điều khiển các thiết bị và chế độ hoạt động của hệ

thống,

- Trang Cài Đặt: Chứa các cài đặt cho hệ thống.

- Trang Thông Số: Chứa các bảng số liệu thể hiện các thông số môi trường thu thập

được từ các node.

4.3 Phần mềm cho vi điều khiển.

4.3.1 Khối Master.

Dựa vào Hình 4 .33 Sơ đồ giải thuật tổng quát khối Master. Ta sẽ tuần tự phân tích các giai đoạn thực hiện:

Khi bắt đầu chương trình sẽ thực hiện khởi động ngoại vi, UART0, UART1, Timer, Sim 900, dịch vụ GPRS và HTTP cho Sim 900 bằng các hàm đã được thiết kế trong code.

Tiếp theo chương trình sẽ bước vào một vịng lặp vơ tận và nó làm việc tuần tự theo q trình sau:

- Quá trình 1: Cập nhật yêu cầu điều khiển thiết bị từ người dùng và chế độ hoạt động

của hệ thống thông qua đọc thông tin từ trang Sendrequest.cshtml của Server.

- Quá trình 2: Xét chế độ làm việc của hệ thống dựa vào dữ liệu lấy được từ Server

được thực hiện trong quá trình 1, nếu chế độ làm việc hiện tại có sự thay đổi so với chế độ làm việc mặc định thì khối Master sẽ tiến hành gửi yêu cầu cập nhật chế độ hoạt động mới xuống khối Slave.

- Quá trình 3: Kiểm tra xem có yêu cầu điều khiển thiết bị từ người dùng dựa vào dữ

liệu lấy được từ Server được thực hiện ở bước 1:

o Nếu có u cầu thì khối Master tiến hành gửi yêu cầu đó xuống khối Slave, sau đó khối Master sẽ chờ thông tin về trạng thái thiết bị được gửi từ khối Slave.Nếu nhận được thơng tin từ khối Slave thì khối Master sẽ gửi trạng thái được cập nhật lên cơ sở dữ liệu của Server.Khi không nhận được khối Master sẽ tiến hành gửi lại yêu cầu điều khiển thiết bị,khi số lần gửi lại vượt quá bốn lần thì khối Master sẽ ngưng khơng gửi tiếp và chương trình sẽ thực thi q trình tiếp theo.

o Khơng có u cầu thì chương trình sẽ thực thi quá trình tiếp theo.

- Q trình 4: Kiểm tra xem có u cầu cập nhật thông số môi trường hay không. Yêu

cầu này được đưa ra bởi khối Master tuần tự sau một khoảng thời gian nhất định.

o Nếu có thì khối Master sẽ thực hiện gửi yêu cầu đó xuống khối Slave.Sau đó khối Master sẽ chờ để nhận được các thông số được gửi trả vể từ khối Slave.Khi nhận được thì khối Master sẽ gửi tồn bộ các thơng số có được lên cơ sở dữ liệu của Server. Cịn khơng thì khối Master sẽ gửi lại yêu cầu, khi số lần gửi lại vượt q bốn lần thì khối Master sẽ ngưng khơng gửi tiếp và thực thi quá trình tiếp theo.

4.3.1.2 Máy trạng thái truyền nhận dữ liệu giữa Master với Slave.

Hình 4.34 Máy trạng thái truyền nhận dữ liệu giữa Master với Slave.

Wait Request From Server: Chương trình đợi yêu cầu điều khiển từ Server. Khi tín hiệu

request=1 có nghĩa là có tín hiệu điều khiển từ sever, hệ thống chuyển sang trạng thái Send Request.

Send Request: Hệ thống gởi tín hiện điều khiển xuống slave, đồng thời set Timer delay

10s sau đó chuyển sang trạng thái Wait Data From Slave.

Wait Data From Slave: Hệ thống chờ nhận tín hiệu trả về từ slave xác nhận việc điều

khiển đã thành công. Trong 10s nếu hệ thống khơng nhận được tín hiệu trả về thì chuyển về trạng thái Send Request, cịn nếu nhận được tín hiệu trả về từ Slave thì chuyển sang trạng thái Send ACK_M.

Send ACK_M: Hệ thống gởi 2 lần liên tiếp tín hiệu ACK_M xuống Slave xác nhận việc

Master đã nhận được tín hiệu trạng thái Slave trả về, sau đó hệ thống trở về trạng thái ban đầu Wait Request From Server.

4.3.1.3 Giao thức truyền giữ liệu giữa Master và Slave.

Hình 4.35 Giao thức truyền dữ liệu giữa Master và Slave.

Master gởi yêu cầu request điều khiển thiết bị xuống Slave, trong thời gian quy định time out, nếu Master không gởi trả về tín hiệu Status devieces thì Master tiến hành gởi lại yêu cầu request xuống Slave.

Slave nhận được tín hiệu request điều khiển từ Master, Slave sẽ tiến hành điều khiển thiết bị sau đó cập nhật trạng thái rồi gởi trả về Master tín hiệu Status devices, trong thời gian quy định Time out, nếu Master khơng gởi trả về Slave tín hiệu ACK_M xác nhận việc đã nhận gói dữ liệu Status devices, khi đó Salve sẽ hiểu tín hiệu Status devices bị lỗi hoặc bị mất gói dữ liệu, từ đó Slave sẽ tiến hành gởi lại tín hiệu Status devices, quá trình này cứ lập lại đến

Một phần của tài liệu hệ thống quản lý vườn cây thông minh (Trang 41)

Tải bản đầy đủ (DOCX)

(89 trang)
w