Lưu đồ giải thuật hàm kiểm tra sự cố

Một phần của tài liệu Hệ thống giám sát hồ nuôi tôm dùng ARDUINO (Trang 90)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 72

Bước 1: Kiểm tra sự cố về nhiệt.

Nếu nhiệt độ cao hoặc thấp quá mức quy định, vi điều khiển tiến hành kiểm tra trạng thái cập nhật thời gian xảy ra sự cố nhiệt độ. Nếu đã cập nhật rồi thì khơng cập nhật lại nữa. Nếu chưa thì tiến hành cập nhật thời gian xảy ra sự cố nhiệt độ. Đồng thời đặt các biến trạng thái xảy ra sự cố và cập nhật thời gian xảy ra trạng thái lên mức 1.

Bước 2: Kiểm tra sự cố pH.

Nếu pH cao hoặc thấp quá mức quy định, vi điều khiển tiến hành kiểm tra trạng thái cập nhật thời gian xảy ra sự cố pH. Nếu đã cập nhật rồi thì khơng cập nhật lại nữa. Nếu chưa thì tiến hành cập nhật thời gian xảy ra sự cố pH. Đồng thời đặt các biến trạng thái xảy ra sự cố và cập nhật thời gian xảy ra trạng thái lên mức 1.

Bước 3: Kiểm tra sự cố quá tải động cơ.

Nếu dòng điện cao quá mức quy định, vi điều khiển tiến hành kiểm tra trạng thái cập nhật thời gian xảy ra sự cố quá tải. Nếu đã cập nhật rồi thì khơng cập nhật lại nữa. Nếu chưa thì tiến hành cập nhật thời gian xảy ra sự cố quá tải. Đồng thời đặt các biến trạng thái xảy ra sự cố và cập nhật thời gian xảy ra trạng thái lên mức 1.

Bước 4: Kiểm tra sự cố mất nguồn động cơ.

Nếu dòng điệnđo được bằng 0, tiến hành kiểm tra xem trong thời gian đó, relay có bật khơng, nếu relay bật mà dịng điện bằng 0 thì kiểm tra trạng thái cập nhật thời gian xảy ra sự cố mất nguồn. Nếu đã cập nhật rồi thì khơng cập nhật lại nữa. Nếu chưa thì tiến hành cập nhật thời gian xảy ra sự cố mất nguồn. Đồng thời đặt các biến trạng thái xảy ra sự cố và cập nhật thời gian xảy ra trạng thái lên mức 1.

Lưu đồ giải thuật hàm xử lý sự cố

 Yêu cầu: Kiểm tra trạng thái các sự cố xảy ra. Tiến hành kiểm tra và xử lý sự cố chặt chẽ gồm nhiều cấp độ. Đảm bảo độ chính xác cao và hệ thống vận hành ổn định

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 73 Hình 4.20.Lưu đồ giải thuật hàm xử lý sự cố

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 74 Hình 4.21. Lưu đồ giải thuật hàm xử lý sự cố (tt)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 75 Hình 4.22. Lưu đồ giải thuật hàm xử lý sự cố (tt)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 76

Bước 1: Xử lý sự cố nhiệt độ.

Trường hợp sự cố nhiệt độ xảy ra, nếu sự cố nhiệt độ xảy ra quá 5 phút, tiến hành kiểm tra trạng thái gửi tin nhắn cảnh báo cho kĩ thuật viên. Nếu chưa gửi tin nhắn thì thực hiện gửi tin nhắn. Nếu sự cố nhiệt độ xảy ra qúa 10 phút, kiểm tra trạng thái gọi điện cho kĩ thuật viên, nếu chưa gọi thì thực hiện gọi điện báo động cho kĩ thuật viên. Nếu sự cố nhiệt độ tiếp tục xảy ra và xảy ra quá 20 phút thì kiểm tra trạng thái báo động cho chủ hồ nuôi tôm. Nếu chưa báo động cho chủ hồ ni tơm thì thực hiện gửi tin nhắn xảy ra sự cố nhiệt độ và gọi điện cho chủ hồ nuôi tôm

Bước 2: Xử lý sự cố độ pH.

(tương tự như xử lý sự cố nhiệt độ) Bước 3: Xử lý sự cố quá tải động cơ.

(tương tự như xử lý sự cố nhiệt độ) Bước 4: Xử lý sự cố mất nguồn động cơ.

(tương tự như xử lý sự cố nhiệt độ)

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

Đồ án sử dụng phần mềm Arduino IDE(Integrated Development Environment). Phần mềm Arduino IDE có thể chạy trên ba nền tảng phổ biến nhất hiện nay là Windows, Macintosh OSX và Linux. Do có tính chất nguồn mở nên môi trường lập trình này hồn tồn miễn phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm.

Ngơn ngữ lập trình có thể được mở rộng thông qua các thư viện C++. Và do ngơn ngữ lập trình này dựa trên nền tảng ngôn ngữ C của AVR nên người dùng hồn tồn có thể nhúng thêm code viết bằng AVR C vào chương trình nếu muốn.

Để mở phần mềm Arduino IDE, tiến hành click đúp chuột trái hoặc là click phải chuột rồi chọn OPEN

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 77 Hình 4.23. Giao diện Arduino IDE

Trong đó: a: Toolbar bao gồm Arduino toolbar và Arduino Menu b: Vùng soạn thảo

c : Vùng Debug (gỡ lỗi)

Bảng 4.2. Các vùng của Arduino IDE và ý nghĩa

Vùng Tên Hình ảnh Giải thích

Arduino

Verify Kiểm tra code có lỗi hay khơng

Upload Nạp code từ vùng soạn thảo tới board Arduino

New Tạo một Project mới

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 78

Toolbar Save Lưu Project Serial

monitor

Màn hình hiển thị dữ liệu từ Arduino lên màn hình máy tính

Arduino Menu

File menu

File Chứa các file menu như Verify, Upload, Example, Save, .....

Edit Edit Chứa các thao tác soạn thảo như Copy, Paste, Find, Find Next......

Sketch Sketch Chứa các thao tác biến dịch , thêm file, thêm thư viện

Tools Tools Chứa các công cụ soạn thảo, chọn board Arduino, tần số làm việc, ......

Help Help Chứa các nội dung giúp đỡ người lập trình Vùng

soạn thảo

Là nơi chứa toàn bộ code, thư viện trong lập trình trên board Arduino

Vùng Debug

Chứa các lệnh giúp gỡ lỗi trong quá trình lập trình từ trình soạn thảo

Arduino IDE cũng cấp gần như đầy đủ các chức năng lập trình, giúp người lập trình dễ dàng hơn rất nhiều trong việc lập trình.

b) Viết chương trình hệ thống  Hàm cài đặt: void setup() { lcd.begin(16, 2); lcd.setCursor(0, 0);

lcd.print("Khoi tao chuong trinh"); lcd.setCursor(0, 1);

lcd.print("Loading......."); Wire.begin();

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 79

gian cho module */ Ethernet.begin(mac); ThingSpeak.begin(client); SIM900.begin(9600); pinMode(3, INPUT_PULLUP); pinMode(2, INPUT_PULLUP); pinMode(18, INPUT_PULLUP); pinMode(19, INPUT_PULLUP); attachInterrupt(0, thang1, FALLING);

attachInterrupt(1, thang2, FALLING); attachInterrupt(5, thang3, FALLING); attachInterrupt(4, thang4, FALLING); pinMode(28, OUTPUT); lcd.clear(); lcd.setCursor(0, 0); lcd.print("N.do: do C"); lcd.setCursor(0, 1); lcd.print("do pH:"); }  Chương trình chính: void loop() { nhietdo(); dopH(); cbdong(); hienthi_lcd(); readDS1307(); upload(); dk_dongco();

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 80 kiemtra_suco(); if ( TT_sc == 1) { xuli_suco1(); } else { set_TT(); } }

4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC

a) Cách sử dụng board mạch trung tâm:

Bước 1:Kết nối cáp mạng, dây điện nguồn cho board mạch

Hình 4.24. Kết nối cáp mạng và cáp VGA

Nếu có khơng sử dụng tính năng upload mạng hoặc hiển thị màn hình VGA thì có thể bỏ qua bước này.

Bước 2:Cấp điện cho mạch, mạch sử dụng nguồn điện AC hoặc DC bé hơn 40V

Sử dụng nguồn đi kèm với hộp điều khiển trung tâm nên chỉ cần cắm vào jack nguồn là ổn định.

Bước 3: Mạch ở trạng thái khởi động.

Bước 4: Mạch hiển thị thơng số là lúc q trình khởi tạo hồn thành, mạch chạy

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 81 Hình 4.25. Mạch hoạt động

Lưu ý: nếu mạch bị lỗi, nhấn nút Reset để khởi động lại mạch b) Cách kết nối giữa relay và cảm biến ACS712

Hình 4.26. Kết nối cảm biến ACS712 và động cơ

Theo đó, muốn dùng cảm biến dòng ACS712 theo dõi động cơ nào chỉ cần nối nối tiếp như hình là theo dõi động cơ đó. Nếu khơng sử dụng chức năng theo dõi thì khơng nối qua cảm biến ACS712.

BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP 82 Hình 4.27. Các nút nhấn của hộp điều khiển trung tâm

Trong đó:

1: Nút reset lại board trung tâm khi cần thiết. 2: Nút chọn thời gian quạt oxy quay trong tháng 1 3: Nút chọn thời gian quạt oxy quay trong tháng 2 4: Nút chọn thời gian quạt oxy quay trong tháng 3 5: Nút chọn thời gian quạt oxy quay trong tháng 4

Chức năng này giúp chọn thời gian quạt quay theo từng thời kỳ nuôi tôm, khi tôm càng lớn, thời gian quạt quay sẽ càng nhiều. Vì thế người dùng cần phải thay đổi để sao cho chi phí là hợp lý nhất.

BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP 83 Chương 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ

.

5.1 KẾT QUẢ 5.1.1 Cảm biến 5.1.1 Cảm biến

Về cảm biến, hệ thống đọc thông số khá chính xác đối với từng loại cảm biến như cảm biến pH, cảm biến nhiệt độ DS18B20, cảm biến dòng điện ACS712.

a) Cảm biến pH: đọc được cảm biến pH khá chính xác với yêu cầu thiết kế. Để so sánh, nhóm sử dụng thuốc thử độ pH với giá trị mà đầu pH probe đọc vào.

Hình 5.1. Giá trịnh pH=6 với thuốc thử

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 84

Theo giá trị đo đạc bằng hóa chất mà mắt thường có thể nhận biết là vào khoảng giá trị 6, trong nhiều trường hợp thì giá trị nằm ở ngưỡng giữa nên rất khó phân biệt, sử dụng cảm biến pH mang lại giá trị chính xác.

Giá trị đọc được từ đầu pH probe:

Hình 5.3. Giá trị pH=8 với thuốc thử

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 85

Giá trị đọc vào chính xác, giúp ích rất nhiều cho người ni tơm trong q trình đo đạc.

b) Cảm biến nhiệt độ DS18B20: nhóm tiến hành đọc giá trị nước được lưu trong bình thủy và đã qua độ sơi với kết quả:

Hình 5.5. Giá trị nước do cảm biến DS18B20 đọc

Trong hình giá trị pH khơng đo đạc mà chỉ tập trung đo đạc cảm biến nhiệt độ DS18B20.

5.1.2 Bộ vi điều khiển

Về bộ xử lý, mạch hoạt động khá ổn định và upload dữ liệu được liên tục và nhanh, đáp ứng theo yêu cầu đặt ra của thiết kế.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 86

Các giá trị upload được lưu trữ online và được hiển thị theo dạng biểu đồ thời gian thực, giúp trực quan cho người dùng, người dùng có thể xem giá trị liên tục cập nhật trên thingspeak để có thể biết tình trạng hồ ni tơm nhanh chóng và tiện lợi.

Hình 5.7. Giá trị pH và nhiệt độ được lưu trữ dưới dạng file Excel

Các giá trị được upload ta có thể tải về dưới dạng file Excel để xem tất cả các thông số trong trường hợp người dùng muốn xem tất cả các thơng số dưới dạng bảng.

Nhóm học lập trình trên kit Arduino, biết sử dụng thư viện mã nguồn mở của chương trình Arduino IDE để lập trình cho bo xử lý trung tâm, tuy nhiên do số lượng các dịng code khá lớn nên q trình khởi tạo của bo xử lý trung tâm bị chậm lúc khởi động.

5.1.3 Mơ đun Sim800L

Nhóm sử dụng mơ đun sim800L để cảnh báo, báo động khi có sự cố cho người quản lý biết, kết quả đạt được là khả quan khi sự cảnh báo được thực hiện kịp thời, qua đó sẽ giảm rủi ro cho người ni tơm khi mà các trục trặc, vấn đề được phát hiện kịp thời.

5.1.4 Hiển thị màn hình VGA

Chức năng hiển thị màn hình VGA giúp quản lý tập trung ở những hồ ni tơm lớn, nơi địi hỏi sử dụng màn hình hiển thị dễ dàng các thơng số, màn hình hiển thị sinh động và to hơn các thông số cần thiết.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 87 Hình 5.8. Hiển thị màn hình VGA

Ở đồ án đạt kết quả hiển thị màn hình thơng qua cổng VGA sử dụng vi điều khiển 8 bit. Vì dùng vi điều khiển 8 bit nên khả năng hiển thị hạn chế.

5.1.5 Mơ hình hồ ni tơm

Đồ án thiết kế và xây dựng được mơ hình hồ ni tơm gần giống với thực tế, bởi vì trong thực tế hồ ni tơm được phân ra từng hồ nhỏ, vì vậy nếu áp dụng chỉ cần một thiết bị giám sát trên một hồ nuôi.

Về động cơ trong mơ hình, trong mơ hình chỉ sử dụng một động cơ quạt nước, trong thực tế tùy vào diện tích hồ ni mà số lượng động cơ nhiều hơn, tuy nhiên các động cơ đều hoạt động cùng lúc đối với một hồ nuôi tôm nên trong mơ hình chỉ sử dụng một động cơ là hợp lý.

5.1.6 Kết quả thống kê

Hệ thống của nhóm sử dụng cảm biến nhiệt độ và pH. Tuy nhiên trong q trình thi cơng lắp ráp khơng thể tránh khỏi sai số. Nhóm đã tiến hành lập bảng so sánh với thiết bị chuẩn bút đo pH/nhiệt độ điện tử MARTINI pH55 chống vô nước (-2 - 16pH; - 5- 60 0C) của hãng MARTINI – mauritius.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 88

Bảng 5.1: Kết quả so sánh nhiệt độ và độ pH của thiết bị

Từ bảng so sánh trên trên ta tính được sai số độ pH và nhiệt độ trong các trường hợp. Từ đó ta tính được sai số tương ứng của nhiệt độ là 0,328%, của độ pH là 0,06% so với thiết bị chuẩn là bút đo nhiệt độ và độ pH MARTINI pH55.

5.2 NHẬN XÉT

Đồ án hoàn thành các mục tiêu đặt ra như đọc giá trị cảm biến pH, nhiệt độ, cảm biến dịng, sau đó upload dữ liệu lên lưu trữ ở website thingspeak.com. Hệ thống điều khiển động cơ theo thời gian thực, động cơ được đóng mở tự động mà khơng cần con người. Bên cạnh đó là hệ thống cảnh báo khi có sự cố bất thường từ các thông số đo đạc hay lỗi sự cố động cơ.

5.3 ĐÁNH GIÁ

Hệ thống được hồn thành thành cơng và chạy tương đối ổn định, hoàn thành các nhiệm vụ đặt ra:

STT

Thiết bị của nhóm Thiết bị chuẩn MARTINI pH55 pH Nhiệt độ pH Nhiệt độ 1 8,06 30,25 8,1 30.4 2 8,12 30,55 8,1 30,6 3 8,16 31,43 8,2 31,5 4 8,00 31,86 8,0 32,0 5 8,04 31,98 8,0 32,1 6 8,10 32,06 8,1 32,2 7 8,05 32,45 8,1 32,5 8 8,02 32,68 8,0 32,8 9 8,01 32,88 8,0 33,0 10 7,99 33,01 8,0 33,1

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 89

- Đo đạc, upload và lưu trữ thông số pH và nhiệt độ ở website Thingspeak.com. - Tự động điều khiển động cơ theo thời gian thực.

- Thông báo kịp thời cho chủ quản lý thông qua tin nhắn SMS và cuộc gọi điện thoại.

- Hiển thị các thơng số lên màn hình VGA và màn hình LCD 16x2. Tuy nhiên bên cạnh những đạt được thì mạch tồn tại các hạn chế như: - Quá trình khởi động của mạch trung tâm còn lâu.

- Hiển thị màn hình VGA cịn hạn chế do sử dụng driver là vi điều khiển 8 bit nên khả năng đáp ứng chậm và thấp.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 90 Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

6.1 KẾT LUẬN

Sau bốn tháng nghiên cứu và thực hiện đề tài: “Hệ thống giám sát hồ nuôi

tôm dùng Arduino”, nhóm thực hiện đã hoàn thành sản phẩm đáp ứng được những

mục tiêu đặt ra với những ưu, khuyết điểm như sau:

Mặt đã làm được:

 Đọc cảm biến pH và nhiệt độ DS18B20 ổn định.

 Khi một trong số các thông số thay đổi đột ngột là hệ thống sẽ cảnh báo ngay cho người quản lý thông qua tin nhắn SMS và cuộc gọi điện thoại.

 Người sử dụng có thể giám sát được các thơng số hồ ni tôm ở bất cứ đâu thông qua mạng Internet.

 Thiết kế linh hoạt, có độ bền cao, dễ thay thế khi hư hỏng.

 Giá thành rẻ hơn nhiều so với các sản phẩm hiện hành trên thị trường.

Mặt hạn chế

 Vẫn còn thiếu những yếu tố khác cho một hệ thống giám sát.  Hệ thống cần phải nâng cấp thêm để dẫn đến tự động hóa.

Đánh giá

Vì thời gian hạn chế nên nhóm thực hiện đã tìm hiểu và phân tích các vấn đề liên quan đến đề tài thực hiện, bản thân đề tài còn nhiều vấn đề chưa giải quyết được nên không thể tránh khỏi những thiếu sót. Tuy vậy, nhóm tự đánh giá q trình thực hiện như sau:

- Thành công trong việc thiết kế một hệ thống giám sát hồ ni tơm có khả năng ứng dụng vào thực tế.

BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP 91

Một phần của tài liệu Hệ thống giám sát hồ nuôi tôm dùng ARDUINO (Trang 90)

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

(122 trang)