LẬP TRÌNH HỆ THỐNG

Một phần của tài liệu Thiết kế và thi công hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời (Trang 62)

Hệ thống có các chức năng như sau:

 Hệ thống chính là tưới lan tự động thông qua các giá trị cài đặt nhiệt độ không khí, độ ẩm không khí và độ ẩm đất sao cho phù hợp với chỉ số sinh trưởng của cây lan . Sau đó, các giá trị cảm biến sẽ được gửi lên web để giám sát quá trình trồng lan. Thêm nữa là chế độ tay cho phép người chăm sóc vườn lan trực tiếp điều khiển tưới lan hay phun sương khi cần thiết. Nguồn cấp từ pin năng lượng mặt trời.

 Hệ thống mở rộng bao gồm:

 Hệ thống điều khiển thiết bị từ xa thông qua web, hiển thị trạng thái đóng mở của thiết bị thông qua giao diện web điều khiển.

 Hệ thống đo đạc nhiệt độ, đổ ẩm thông qua cảm biến, được hiển thị trực tiếp trên màn hình LCD, đồng thời cũng được hiển thị trên giao diện web điều khiển tạo điều kiện thuận lợi cho người dùng có thể giám sát hệ thống từ xa thông qua Internet.

Khi cấp điện vào hệ thống, khởi động Arduino, module wifi ESP 8266 V1, cảm biến nhiệt độ độ ẩm DHT11, LCD, …. Sau khi khởi động xong mặc định sẽ hiển thị giá trị cảm biến trên LCD và hệ thống chạy chế độ Auto(Mode =1). Muốn đổi chế độ thì ta nhấn phím Manual(Mode =0) tương ứng với chức năng chế độ tay, sau đó chỉ nhấn phím Bơm hoặc Hơi sương thì có thể điều khiển trực tiếp.

a.Lưu đồ hệ thống tưới lan tự động

Quy trình làm việc của hệ thống như thể hiện trong sơ đồ hình 4.13. Chương trình bắt đầu vào khởi động module wifi ESP 8266 V1, LCD, khởi tạo các biến. Nếu chưa kết nối thì chương trình sẽ dừng đợi đến khi nào có kết nối. Vòng lặp chương trình được thực hiện. Mặc định chương trình sẽ vào chế độ (Mode =1). Ở chế độ(Mode =0) thì cho phép điều khiển trực tiếp bằng tay. Đồng thời gửi các thông số cảm biến lên web.

BẮT ĐẦU

KHỞI ĐỘNG ESP KHỎI TẠO LCD KHỞI TẠO CÁC BIẾN

ĐỌC GIÁ TRỊ CẢM BIẾN HIỂN THỊ LÊN MÀN HÌNH LCD THỰC THI CHẾ ĐỘ AUTO CHẾ ĐỘ AUTO MODE==1 THƯC THI CHẾ ĐỘ AUTO

GỬI GIÁ TRỊ LÊN ĐỊA CHỈ WEB KẾT THÚC CHẾ ĐỘ MANUAL MODE==0 THỰC THI CHẾ ĐỘ MANUAL ĐÚNG SAI SAI ĐÚNG ĐỌC GIÁ TRỊ CẢM BIẾN HIỂN THỊ LÊN MÀN HÌNH LCD NHẬN CÁC GIÁ TRỊ CÀI ĐẶT TỪ ĐỊA CHỈ WEB

GIẢI THÍCH LƯU ĐỒ

Chương trình bắt đầu vào khởi động module wifi ESP 8266 V1, LCD, khởi tạo các biến. Nếu chưa kết nối thì chương trình sẽ dừng đợi đến khi nào có kết nối. Vòng lặp chương trình được thực hiện. Mặc định chương trình sẽ vào chế độ tự động (AUTO,Mode =1). Nếu muốn chuyển sang chế độ tay(Mode =0) thì cho phép điều khiển trực tiếp bằng tay. Đồng thời gửi các thông số cảm biến đo lên web.

LƯU ĐỒ CHẾ ĐỘ AUTO BẮT ĐẦU ĐỘ ẨM NHỎ HƠN ĐỘ ẨM DƯỚI BẬT BƠM TƯỚI ĐỘ ẨM KK NHỎ HƠN ĐỘ ẨM KK DƯỚI BẬT PHUN SƯƠNG ĐỘ ẨM LỚN HƠN ĐỘ ẨM TRÊN TẮT BƠM TƯỚI ĐỘ ẨM KK NHỎ HƠN ĐỘ ẨM KK TRÊN TẮT PHUN SƯƠNG SAI SAI SAI SAI ĐÚNG ĐÚNG ĐÚNG ĐÚNG NHIỆT ĐỘ CAO HƠN NHIỆT ĐỘ

TRÊN NHIỆT ĐỘ NHỎ HƠN NHIỆT ĐỘ DƯỚI BẬT QUẠT KẾT THÚC TẮT QUẠT SAI SAI ĐÚNG ĐÚNG Hình 4.16: Lưu đồ chế độ AUTO.

GIẢI THÍCH LƯU ĐỒ CHẾ ĐỘ AUTO

Chế độ AUTO hoạt động như sau: Nhiệt độ cảm biến đo được sẽ so sánh với giá trị cài đặt trước đó nếu lớn hơn nhiệt độ cài đặt thì bật quạt, quạt được bật đến khi giá trị cảm biến đo được nhỏ hơn nhiệt độ cài đặt thì tắt quạt. Độ ẩm không khí cảm biến đo được sẽ so sánh với giá trị cài đặt trước đó nếu bé hơn độ ẩm không khí cài đặt thì bật phun sương, phun sương được bật đến khi giá trị cảm biến đo được lớn hơn độ ẩm không khí cài đặt thì tắt phun sương. Độ ẩm đất cảm biến đo được sẽ so sánh với giá trị cài đặt trước đó nếu bé hơn độ ẩm đất cài đặt thì bật bơm tưới, bơm tưới được bật đến khi giá trị cảm biến đo được lớn hơn độ ẩm đất cài đặt thì tắt bơm tưới. Chương trình lặp lại từ đầu tiếp tục so sánh.

LƯU ĐỒ CHẾ ĐỘ TAY(MANUAL) BẮT ĐẦU NHẤN BƠM BẬT BƠM NHẤN BƠM TẮT BƠM NHẤN PHUN SƯƠNG BẬT PHUN SƯƠNG NHẤN PHUN SƯƠNG TẮT PHUN SƯƠNG SAI SAI ĐÚNG ĐÚNG SAI SAI ĐÚNG ĐÚNG NHẤN ĐỘ ẨM NHẤN ĐỘ ẨM BẬT ĐỘ ẨM TẮT ĐỘ ẨM KẾT THÚC SAI ĐÚNG SAI ĐÚNG Hình 4.17: Lưu đồ chế độ TAY(MANUAL).

GIẢI THÍCH LƯU ĐỒ CHẾ ĐỘ TAY

Chế độ TAY hoạt động như sau: Kiểm tra có nhấn bơm tưới hay không, nếu đúng thì bật bơm tưới nếu sai thì kiểm tra có nhấn phun sương nếu đúng thì bật phun sương nếu sai thì kiểm tra có nhấn quạt nếu đúng thì bật quạt nếu sai thì quay lại từ đầu. Nếu bơm tưới bật hay phun sương bật hay quạt bật thì tiếp tục kiểm tra có nhấn bơm tưới hay không, nếu đúng thì tắt bơm tưới nếu sai thì kiểm tra có nhấn phun sương nếu đúng thì tắt phun sương nếu sai thì kiểm tra có nhấn quạt nếu đúng thì tắt quạt nếu sai thì quay lại từ đầu.

LƯU ĐỒ CHUYỂN DỮ LIỆU LÊN WEB

Hình 4.18: Lưu đồ chuyển dữ liệu lên web.

GIẢI THÍCH LƯU ĐỒ TRUYỀN NHẬN DỮ LIỆU LÊN WEB

Khởi động ESP 8266 thiết lập kết nối. Kết nối thành công chuổi dữ liệu gửi từ web xuống ESP cập nhật các giá trị tại hệ thống và từ hệ thống các giá trị cảm biến đo được sẽ được gửi lên địa chỉ web.

BẮT ĐẦU

ĐỌC GIÁ TRỊ CHUỔI DỮ LIỆU

THIẾT LẬP KẾT NỐI WIFI

GỬI CHUỔI DỮ LIỆU LÊN ĐỊA CHỈ WEBSERVER KẾT THÚC SAI SAI ĐÚNG ĐÚNG

LƯU ĐỒ ĐIỀU KHIỂN BẰNG WEB

Hình 4.19: Lưu đồ khiển bằng web.

BẮT ĐẦU

KHỞI ĐỘNG ESP KHỎI TẠO LCD KHỞI TẠO CÁC BIẾN

ĐỌC GIÁ TRỊ CẢM BIẾN HIỂN THỊ LÊN MÀN HÌNH LCD THỰC THI CHẾ ĐỘ AUTO AUTO THƯC THI CHẾ ĐỘ AUTO

GỬI GIÁ TRỊ LÊN ĐỊA CHỈ WEB KẾT THÚC MANUAL NHẬN GIÁ TRỊ CÀI ĐẶT TỪ ĐỊA CHỈ WEB THỰC THI CHẾ ĐỘ MANUAL ĐÚNG SAI SAI ĐÚNG

GIẢI THÍCH LƯU ĐỒ TRUYỀN NHẬN DỮ LIỆU LÊN WEB

Ban đầu thực thi chế độ AUTO, web sẽ truyền dữ liệu xuống ESP kết nối với hệ thống thực thi chế độ AUTO. Nếu muốn đổi chế độ chỉ việc nhấn MANUAL.

Nếu người dùng muốn bật các thiết bị tương ứng với các thiết bị 1, thiết bị 2, thiết bị 3 thì người dùng thao tác vào chọn MANUAL sau đó hành động hay tắt thì các thiết bị điện trên hệ thống sẽ hoạt động .

Nếu người dùng muốn cài đặt thông số thì người dùng thao tác nhập giá trị nhiệt độ trên dưới hay độ ẩm trên dưới , sau đó chọn sau đó chọn AUTO, khi đó các thiết bị điện trên hệ thống sẽ hoạt động theo chế độ tự động với các thông số vừa nhập.

4.4.2 Phần mềm lập trình cho vi điều khiển Giới thiệu phần mềm lập trình Arduino IDE Giới thiệu phần mềm lập trình Arduino IDE

Môi trường phát triển tích hợp Arduino IDE là một ứng dụng đa nền tảng được viết bằng Java, và được dẫn xuất từ IDE cho ngôn ngữ lập trình xử lý và các dự án lắp ráp. Do có tính chất mã nguồn mở nên môi trường lập trình này hoàn toàn miễn phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm.

Người sử dụng chỉ cần định nghĩa hai hàm để thực hiện một chương trình hoạt động theo chu trình:

setup(): hàm chạy một lần duy nhất vào lúc bắt đầu của một chương trình dùng để khởi tạo các thiết lập.

loop(): hàm được gọi lặp lại liên tục cho đến khi bo mạch được tắt. Chu trình đó có thể mô tả trong hình 4.20 dưới đây:

Hàm Loop() Hàm Setup()

Nhấn Reset Bật nguồn

Hình 4.20: Quy trình làm việc của arduino

Hình 4.21: Giao diện lập trình arduino.

Arduino IDE Menu:

Hình 4.22 : Giao diện menu arduino IDE

Filemenu:

Hình 4.23: Giao diện file menu arduino IDE.

Trong file menu cần quan tâm tới mục Examples, đây là nơi chứa các chương trình mẫu đơn giản như: cách sử dụng các chân digital, analog, sensor,…

Hình 4.24: Giao diện Examples menu arduino IDE Sketch menu:

 Verify/ Compile: chức năng kiểm tra lỗi code.

 Show Sketch Folder: hiển thị nơi code được lưu.

 Add File: thêm vào một Tap code mới.

 Import Library: thêm thư viện từ bên ngoài cho IDE.

Hình 4.26: Giao diện edit menu arduino IDE

Tool menu:

Hình 4.27: Giao diện Tool Menu Arduino IDE

Trong Tool menu ta quan tâm các mục Board và Serial Port. Trong mục Board, cần phải lựa chọn board mạch cho phù hợp với loại board sử dụng. Nếu sử dụng loại board khác thì phải chọn đúng loại board mà mình đang có, nếu sai thì khi Upload chương trình vào chip sẽ bị lỗi. Nếu là Arduino UNO thì phải chọn như hình 4.25:

Hình 4.28: Board Arduino sử dụng

Serial Port: đây là nơi lựa chọn cổng Com của Arduino. Khi chúng ta cài đặt driver thì máy tính sẽ hiện thông báo tên cổng Com của Arduino là bao nhiêu, ta chỉ việc vào Serial Port chọn đúng cổng Com để nạp code, nếu chọn sai thì không thể nạp code cho Arduino được.

Arduino Toolbar có một số button và chức năng của chúng như sau:

1 2 3 4

Hình 4.27: Arduino Toolbar - Verify (1): kiểm tra code có lỗi hay không.

- Upload (2): nạp code đang soạn thảo vào Arduino. - New, Open, Save (3): Tạo mới, mở và lưu sketch.

4.4.3 Phần mềm lập trình web a.Giới thiệu phần mềm a.Giới thiệu phần mềm

Sublime Text là một trình soạn thảo văn bản phức tạp để mã, đánh dấu và văn xuôi. Được thiết kế trên nền tảng soạn thảo văn bản và mã nguồn, với một giao diện lập trình ứng dụng Python. Chức năng của nó mở rộng các plugin. Phần mềm hỗ trợ thiết lập đồ họa và hoàn toàn được cấu hình bằng cách chỉnh sửa các tập tin văn bản.

Sau khi cài đặt phần mềm Sunlime thành công, tiến hành mở phần mềm và tạo file mới để lập trình php. Hình … mô tả quá trình tạo file mới php (File  New file ).

Hình 4.30. Tạo file mới trên Sublime Text

Người lập trình tiến hành viết code, sau khi hoàn tất file php thì lưu file lại( File

 Save ). Quá trình này được mô tả trong hình…

b.Viết web

THIẾT KẾ GIAO DIỆN WEBSITE

- Từ yêu cầu của đề tài, chúng ta cần một công cụ để người dùng có thể thông qua đó quan sát và nắm rõ các thông tin nhiệt độ, độ ẩm, chế độ. Đó có thể là một màn hình hiển thị, smart phone hoặc máy tính. Ở đây, nhóm sinh viên thiết kế một website có thể được truy cập từ điện thoại hay máy tính với các khả năng như sau:

 Giám sát nhiệt độ, độ ẩm của toàn hệ thống.

 Cài đặt nhiệt độ trên dưới, độ ẩm trên dưới để hệ thống chăm sóc lan hiệu quả cao

 Điều khiển thiết bị thông qua web bằng máy tính hay smart phone.

- Dùng HTML và CSS thiết kế một giao diện Web thân thiện với người dùng.

- Sử dụng MySQL và PHP để quản lý cơ sở dữ liệu và thực hiện các tác vụ lên cơ sở dữ liệu.

- Để website có giao diện thân thiện, giúp người dùng dễ dàng phân biệt và tương tác thì nhóm sinh viên sẽ thiết kế và trình bày các nội dung chính về website được bố trí thành dạng tab như hình 4.32 sau:

ĐĂNG KÍ WEB SERVER

Việc tạo ra một web server để lưu trữ các file nguồn cũng như CSDL hiện nay khá đơn giản và có nhiều cách. Cách 1 là sử dụng Local host với phần mềm Xampp, Warm… Hoặc cách 2 là sử dụng một máy tính nhúng như Raspberrt pi để thay thế một máy tính thực thụ trong việc cài đặt và vận hành một web server. Cách 3 là mua hosting và domain từ những nhà cung cấp dịch vụ máy chủ

Tuy nhiên với cách đầu tiên thì website không thể truy cập từ cấp độ mạng toàn cầu. Cách thứ 2 không kinh tế vì giá thành cho một chiếc máy tính nhúng như Raspberry pi là rất đắt so với đề tài. Nhóm sinh viên quyết định sử dụng cách 3, nhưng do kinh phí có hạn nên nhóm chỉ đăng kí một hosting để xây dựng web server từ website https://www.000webhost.com. Việc đăng kí và sử dụng web server này tuy là miễn phí, nhưng vẫn đáp ứng được những mục tiêu mà nhóm đã đề ra cho web server. Sau khi đăng kí website, chúng ta vào trang phpMyAdmin để tạo CSDL để quản lý dữ liệu trên website theo đường dẫn https://www.000webhost.com/

Hình 4.33. Đăng nhập vào địa chỉ web. Bao gồm :

- Tên cơ sơ dữ liệu (data base)

Hình 4.34: Khởi tạo tài khoản.

Hình 4.35: Tải file lên web

Tùy vào cơ chế quản lí của nhà cung cấp dịch vụ web server mà các file nguồn cho website sẽ được lưu trữ theo những cách khác nhau. Ở cách đăng kí website thông qua trang https://www.000webhost.com này. Phần mềm này đầu tiên sẽ được kết nối tới địa chỉ của website.

4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC4.5.1 Viết tài liệu hướng dẫn sử dụng 4.5.1 Viết tài liệu hướng dẫn sử dụng

a. Hệ thống chăm sóc vườn lan

Bước 1: Cấp nguồn cho hệ thống, hệ thống sử dụng nguồn pin năng lượng mặt trời, nguồn dự phòng nguồn tổ ong và mạch giảm áp LM2596. Đợi hệ thống khởi động xong, LCD hiển thị nhiệt độ và độ ẩm.

Bước 2: Mặc định khi khởi động hệ thống hoạt động chế độ tự động. Hệ thống gửi dữ liệu nhiệt độ và độ ẩm lên địa chỉ wep https://hai13141078.000webhostapp.com/

Bước 3: Nếu muốn chuyển chế độ sang Tay(MANUAL)chỉ việc nhấn phím CHẾ ĐỘ TAY, điểu khiển trực tiếp hệ thống.

 Muốn mở hay tắt bơm chỉ việc nhấn phím BƠM TƯỚI.

 Muốn mở hay tắt phun sương chỉ việc nhấn phím ĐỘ ẨM.

 Muốn mở hay tắt quạt chỉ việc nhấn phím QUẠT.

Lưu ý : Hệ thống hoạt động lại chế độ tự động khi nhấn phím CHẾ ĐỘ TỰ ĐỘNG .

b. Hệ thống giám sát và điều khiển thiết bị qua WEB.

Bước 1: Cấp nguồn cho hệ thống, hệ thống sử dụng nguồn 5V. Khởi động module wifi ESP 8266 V1. Đợi hệ thống khởi động xong. LCD hiển thị nhiệt độ, độ ẩm. Tên module phát wifi để ESP kết nối là “VuonLan” pass “999999999” khi đó ESP tự động kết nối và truyền nhận dữ liệu lên web.

Bước 2: Nếu muốn kiểm tra, điều khiển các thiết bị điện hay kiểm tra nhiệt độ, độ ẩm qua mạng wifi thì truy cập vào web https://hai13141078.000webhostapp.com/ Các giá trị nhiệt độ, độ ẩm, độ ẩm đất cũng được hiển thị trên web.

- Nếu người dùng muốn bật các thiết bị tương ứng với các thiết bị 1, thiết bị 2, thiết bị 3 thì người dùng thao tác vào chọn MANUAL sau đó hành động hay tắt thì các thiết bị điện trên hệ thống sẽ hoạt động .

- Nếu người dùng muốn cài đặt thông số thì người dùng thao tác nhập giá trị nhiệt độ trên dưới hay độ ẩm trên dưới , sau đó chọn sau đó chọn AUTO, khi đó các thiết bị điện trên hệ thống sẽ hoạt động theo chế độ tự động với các thông số vừa nhập .

Chương 5. KẾT QUẢ - NHẬN XÉT - ĐÁNH GIÁ KẾT QUẢ-NHẬN XÉT-ĐÁNH GIÁ

Sau thời gian tiến hành tìm hiểu, nghiên cứu các tài liệu chuyên ngành tiếng Việt cũng như tiếng Anh, tìm hiểu thêm qua mạng wifi, tổng hợp lại các kiến thức đã được học trong suốt 4 năm cũng như được sự hướng dẫn của thầy GVHD Th.S Võ Đức Dũng. Nhóm chúng em cũng đã hoàn thành được đồ án tốt nghiệp với đề tài “THIẾT KẾ VÀ

Một phần của tài liệu Thiết kế và thi công hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời (Trang 62)

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

(104 trang)