Hệ thống phân loại hoa quả dựa vào màu sắc để nhận biếtđộ xanh chín bằng phần mềm labview kết nối với arduino | Báo cáo học phần Lập trình căn bản điện tử
Mục đích của đề tài là sử dụng webcam để thu thập hình ảnh và ảnh sẽ được xử lý bằng phần mềm Labview (nhận diện hoa quả theo màu sắc). Sau đó giao tiếp arduino uno với labview để nhận tín hiệu nhận diện thu thập từ camera. Tiếp đó, Arduino sẽ điều điều khiển phân loại để phân loại quả vào từng hộp khác nhau, cuối cùng là lưu lại dữ liệu. Tài liệu giúp bạn tham khảo, ôn tập và đạt kết quả cao. Mời bạn đón xem.
Preview text:
TRƯỜNG ĐẠI HỌC PHENIKAA KHOA KHOA HỌC CƠ BẢN ----------*******----------
LẬP TRÌNH CĂN BẢN ĐIỆN TỬ BÁO CÁO
Đề tài: Hệ thống phân loại hoa quả dựa vào màu sắc để nhận biết
độ xanh chín bằng phần mềm labview kết nối với arduino.
Thành viên: Khổng Thị Dung – 21012374
Trương Thị Nhung – 21011061 HÀ NỘI, THÁNG 10, 2022 PHÂN CÔNG CÔNG VIỆC Họ tên Công việc Khổng Thị Dung Thiết kế phần mềm Tạo powerpoint Edit video Thuyết trình Trương Thị Nhung Thiết kế phần mềm Viết báo cáo Edit video Thuyết trình MỤC LỤC
PHẦN 1: LỜI NÓI ĐẦU.........................................................................................4
PHẦN 2: TỔNG QUAN..........................................................................................5
PHẦN 3: CHI TIẾT ĐỀ TÀI..................................................................................6
1. Giới thiệu chung...............................................................................................6
1.1. Liên kết video..............................................................................................6
1.2. Ý tưởng........................................................................................................6
1.3. Cơ sở lý thuyết............................................................................................6
1.3.1. Nguyên tắc phân loại ớt.........................................................................6
1.3.2. Hệ thống xử lý ảnh labview...................................................................7
1.3.3. Tổng quan arduino.................................................................................7
2. Thiết kế và tính toán:.......................................................................................7
2.1. Mô hình hệ thống:......................................................................................7
2.2. Thiết kế hệ thống và tính toán...................................................................8
2.2.1. Thiết kế sơ đồ khối hệ thống:..............................................................8
2.2.2. Thiết kế phần mềm:.............................................................................9
2.2.3. Lập trình arduino uno........................................................................14
PHẦN 4: KẾT LUẬN............................................................................................15
PHẦN 5: TÀI LIỆU THAM KHẢO....................................................................16
PHẦN 1: LỜI NÓI ĐẦU
Để có những kiến thức nền tảng hoàn thành đề tài này, nhóm chúng em xin cảm
ơn Đại học Phenikaa đã đưa môn học Lập trình căn bản điện tử vào chương trình
giảng dạy. Môn học mang lại cho chúng em kiến thức về lập trình điều khiển cơ bản,
thiết kế phần mềm cũng như điều khiển phần cứng. Ngoài ra, môn học còn giúp
chúng em cải thiện kỹ năng mềm như kỹ năng thuyết trình, kỹ năng viết báo cáo, kỹ
năng làm việc nhóm, … Đây đều là những kỹ năng quan trọng vô cùng cần thiết cho
chúng em ở giảng đường đại học và cho tương lai công việc sau này.
Đặc biệt, chúng em xin gửi lời cảm ơn sâu sắc đến Thầy Lê Minh Huy đã giảng
dạy, chỉ bảo và truyền đạt cho chúng em những kiến thức quý báu trong suốt thời
gian chúng em học môn Lập trình căn bản điện tử.
Nhóm chúng em đã cố gắng để hoàn thành đề tài này một cách hoàn chỉnh nhất,
tuy nhiên vì kiến thức của chúng em còn hạn chế, khả năng tiếp thu thực tế còn nhiều
khó khăn, vì vậy đề tài không tránh khỏi những thiếu sót. Chúng em rất mong những
ý kiến đóng góp của Thầy để hoàn thiện và rút ra những kinh nghiệm quý báu. Xin chân thành cảm ơn! PHẦN 2: TỔNG QUAN
Hoa quả mang lại nhiều lợi ích cho sức khỏe, là một phần của chế độ ăn uống
lành mạnh. Tuy nhiên hoa quả có màu sắc, mùi vị, thành phần dinh dưỡng khác nhau
theo từng giai đoạn phát triển. Tùy theo mục đích sử dụng ứng với từng giai đoạn
phát triển, hệ thống hoạt động trong lĩnh vực thu mua và chế biến các sản phẩm về
hoa quả sẽ phải có quy trình phân loại để bảo đảm nguyên liệu đầu vào đạt mục đích
sử dụng. Trước kia việc phân loại hoa quả được thực hiện chủ yếu là dựa vào sức
người, công việc đòi hỏi sự tập trung và lặp đi lặp lại trong thời gian dài khiến năng 5
suất công việc không được cao. Nhận thấy tầm quan trọng của vấn đề nhóm chúng
em đã lựa chọn đề tài: phân tích và nhận diện màu sắc hoa quả bằng labview kết hợp arduino.
Mục đích của đề tài là sử dụng webcam để thu thập hình ảnh và ảnh sẽ được xử
lý bằng phần mềm Labview (nhận diện hoa quả theo màu sắc). Sau đó giao tiếp
arduino uno với labview để nhận tín hiệu nhận diện thu thập từ camera. Tiếp đó,
Arduino sẽ điều điều khiển phân loại để phân loại quả vào từng hộp khác nhau, cuối
cùng là lưu lại dữ liệu.
Cấu trúc của báo cáo: thiết kế và tính toán hệ thống: trình bày sơ đồ kết nối, sơ
đồ chương trình; thi công; kết quả: trình bày kết quả đạt được trên phần mềm; hạn
chế của đề tài; kết luận và hướng phát triển.
Qua thực trạng trên chúng em nhận thấy nhu cầu về một hệ thống phân loại sử
dụng công nghệ hoạt động ổn định, liên tục, chi phí vận hành thấp là vô cùng cần
thiết. Nhưng vẫn còn những hạn chế của đề tài như: mô hình phân loại quy mô nhỏ,
tốc độ phân loại không cao và không nhận diện nhiều loại cùng lúc.
PHẦN 3: CHI TIẾT ĐỀ TÀI
1. Giới thiệu chung 1.1. Liên kết video 1.2. Ý tưởng
Ở đề tài này, chúng em thực hành thí nghiệm hệ thống phân loại nhận diện ớt
xanh, chín. Việc phân loại quả xanh chín đòi hỏi sự tập chung cao và lặp đi lặp lại
trong khoảng thời gian dài công nhân khó đảm bảo được tính chính xác và năng suất
công việc không được cao. Vì vậy chúng em suy nghĩ về một hệ thống nhận dạng và 6
phân loại với độ chính xác cao, tốc độ ổn định, lưu trữ và hiển thị trên giao diện hệ thống.
1.3. Cơ sở lý thuyết
1.3.1. Nguyên tắc phân loại ớt
Sau thu hoạch, trước khi đưa ra thị trường hoa quả cần phải phân loại để loại
bỏ sản phẩm chưa đạt yêu cầu. Ớt sẽ được đưa vào hệ thống qua băng tải và đưa đến
khu phân loại theo nguyên tắc màu sắc để chọn lọc được những sản phẩm có chất
lượng tốt nhất và phù hợp với nhu cầu người sử dụng nhất.
Khi ớt được chọn lọc bằng màu sắc sẽ đảm bảo được chất lượng và giúp bảo
quản dễ dàng hơn. Việc phân loại ớt theo màu sắc sẽ không giúp chúng ta chọn lọc
được các quả đồng đều đẹp mắt nhưng phân loại theo màu sắc sẽ lựa chọn được
những quả có chất lượng tốt nhất.
1.3.2. Hệ thống xử lý ảnh labview
Quá trình xử lý ảnh gồm các bước cơ bản:
Hình 1: Các bước xử lý ảnh cơ bản
1.3.3. Tổng quan arduino
Arduino là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác
với nhau hoặc với môi trường được thuận lợi hơn. Phần cứng bao gồm một board
mạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARM
Atmel 32-bit. Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân 7
đầu vào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau.
Một số loại arduino phổ biến trên thị trường có thể kể đến là: Arduino Nano,
Arduino Uno R3, Arduino Mega 2560 R3, Arduino Due, ...Ngoài ra còn có một số
dòng arduino hỗ trợ Internet như Arduino Ethernet, NODEMCU ESP8266, ...
2. Thiết kế và tính toán:
2.1. Mô hình hệ thống:
Hệ thống phân loại sản phẩm sẽ thực hiện nhận biết màu sắc của ớt ở đầu vào
sau đó truyền tín hiệu màu đã qua xử lý đến khối xử lý để thực hiện phân loại.
Hình 2: Các bước làm việc của hệ thống
2.2. Thiết kế hệ thống và tính toán
2.2.1. Thiết kế sơ đồ khối hệ thống:
Với yêu cầu và giới hạn của đề tài, nhóm chúng em tiến hành thiết kế sơ đồ khối như sau: 8
Hình 3: Sơ đồ khối hệ thống Chức năng:
- Khối nguồn: có chức năng cấp nguồn cho cả hệ thống
- Khối xử lý màu sắc: có chức năng xử lý tín hiệu từ cảm biến màu sắc và gửi
tín hiệu đến khối xử lý trung tâm
- Khối băng truyền: có chức năng đưa ớt đến khu vực xử lý khác trong hệ thống
- Khối xử lý trung tâm: có chức năng nhận, xử lý thông tin và điều khiển các khối khác
- Khối hệ thống điều khiển: có chức năng đưa ớt được phân loại khỏi băng tải.
2.2.2. Thiết kế phần mềm:
Lưu đồ giải thuật cho khối nhận biết màu sắc: Chương trình xử lý màu sắc sẽ
thực hiện kiểm tra cảm biến vật cản, tiếp theo là kiểm tra màu mà cảm biến nhận
được. Với mỗi màu sẽ bật led hiển thị màu tương ứng và xuất tín hiệu ra chân tín
hiệu tương ứng với màu đó. 9
Hình 4: Lưu đồ giải thuật chương trình nhận biết màu sắc 10
Hình 5: Chương tình xử lý ảnh
Hệ thống gồm 2 phần chính:
1. Phần lập trình xử lý màu. 2. Phần lập trình motor.
Hình 6: chương trình chính phần mềm 11
Để xử lý ảnh đầu tiên chúng ta phải thu thập
hình ảnh từ thư viện sau đó khai báo cho camera.
Hình 7: Thư viện khai báo cho camera
Khi khai báo đầy đủ chúng ta cần 1 image để hiện thị camera lên giao diện labview.
Tiếp theo chúng ta cần 1 IMAQ Colorlearn để phân tích màu
và đưa ra kết luận màu sắc ở dải màu bao nhiêu.
Ở bài này độ nhạy của màu được chọn ở mức thấp, nên không gian màu sắc
chia làm 7 màu tạo ra 16 ô.
Image ROI giúp camera chỉ nhận diện màu sắc trong vùng được chọn.
Tiếp theo sử dụng khối color Spectrum để nhận biết màu sắc đang nhận diện
nằm ở vị trí nào trên dải màu.
Nếu sản phẩm nằm ở biên số 7 trên dải màu thì xuất ra màu xanh 12
Giá trị biên là giá trị trên dưới của dải màu. Ví dụ sản phẩm ở
biên màu số 8 thì giá trị xuất ra vẫn là màu xanh.
Khi nhận được giá trị màu đỏ nó sẽ vào event structures lúc này motor sẽ gạt 1
góc 90 độ để phân loại màu đỏ. Nếu đúng nó sẽ kết thúc chương trình. Nếu sai nó sẽ hiện ra góc 1 độ.
Tiếp theo là lập trình motor điều khiển
Phần khai báo arduino gồm cổng com, 1 motor, và góc cho motor. Khi chương
trình khởi động motor nằm ở góc 0 độ.
2.2.3 Kết quả trên phần mềm
Khi cho quả ớt chín vào camera nhận diện kết quả thu được led đỏ sáng. 13
Tương tự với ớt xanh và ớt nửa xanh nửa chín.
Hình 8: Kết quả của chương trình PHẦN 4: KẾT LUẬN
Hệ thống nhận diện và phân loại màu sắc khá tốt, sử dụng công nghệ xử lý
ảnh có khả năng thị giác như con người, hoạt động ổn định, liên tục, chi phí vận 14
hành thấp. Nhưng đa phần những công trình ngiên cứu liên quan đến đề tài này
đều phải thừa nhận một khuyết điểm đó là tốc độ phân loại chưa cao và chưa phân
loại được nhiều loại cùng một lúc,... Nhưng vì đề tài được xây dựng dựa vào những
kiến thức cơ bản của labview vision nên còn nhiều hạn chế. Trong tương lai, để hệ
thống hoạt động tốt hơn nhóm chúng em cần nghiên cứu sâu hơn và cố gắng để
phát triển đề tài trong thực tế.
PHẦN 5: TÀI LIỆU THAM KHẢO
[1] Bài giảng thầy Lê Minh Huy 15
[2] John Essick (2018), Hands-On Introduction to LabVIEW for Scientists and
Engineers, Oxford University Press
[3] Nguyễn Tất Bảo Thiện, Phạm Quang Huy, Lập trình IoT với Arduino
ESP8266 & XBEE, NXB Thanh niên, 2018
[4] https://www.youtube.com/watch?v=poi0peoOCDM
[5] https://www.youtube.com/watch?v=TukfO4CofPU&t=1359s [6]http://arduino.vn/ 16