Phân loại sản phẩm (có code) .................................................................. Phân loại sản phẩm (có code) .................................................................. Phân loại sản phẩm (có code) .................................................................. Phân loại sản phẩm (có code) ..................................................................
Trang 1Phân loại sản phẩm
Trang 2MỤC LỤC
Trang 3DANH MỤC CÁC HÌNH VẼ
Trang 4DANH MỤC CÁC BẢNG BIỂU
Trang 6CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN ĐỀ TÀI
1.1 Giới thiệu
Trong quá trình sản xuất, việc phân loại sản phẩm đóng vai trò thiết yếu Có nhiềuhướng để phân biệt nhiều dòng sản phẩm khác nhau tùy vào mục đích sử dụng Đềtài này hướng vào việc nghiên cứu phân loại sản phẩm theo màu sắc đã được địnhtrước
1.1.1 Yêu cầu đặt ra
Phân loại sản phẩm dựa trên màu sắc thông qua hai màu cơ bản là: “Đỏ” và “Xanh”
1.1.2 Hướng giải quyết
- Sử dụng cảm biến để phát hiện vật phẩm và phân biệt màu sắc, sử dụng động
cơ để phân loại sản phẩm
- Vẽ lưu đồ giải thuật và lập trình Dùng trình biên dịch Arduino IDE và thicông phần cứng mô tả hệ thống
1.2 Nguyên lý chung
- Sản phẩm chạy trên băng tải đang vận hành Cảm biến phát hiện có vật phẩm
sẽ kiểm tra màu sắc Nếu sản phẩm có màu “Đỏ” sẽ được động cơ đẩy vàokho sản phẩm “Đỏ”, ngược lại nếu phát hiện màu “Xanh” động cơ sẽ đẩyvào kho sản phẩm “Xanh ”
- Để giảm sai sót trong quá trình phân loại sản phẩm chỉ 2 màu “Đỏ” và
“Xanh”, các trường hợp còn lại không thuộc 2 màu trên nếu đi qua sẽ đượccảnh báo thông qua một đèn led
Trang 7CHƯƠNG 2 TỔNG QUAN VỀ CÁC LINH KIỆN
• Input(1): Điện áp ngõ vào của IC yêu cầu lớn hơn 5v
• GND(2): Chân nối mass
• Output(3): Điện áp ngõ ra ở mức 5V DC
2.2 ATmega328P
Hình 2-2: ATmega328P [5]
Vi đi u khi n ATmega328P là m t vi đi u khi n CMOS 8-bit công su t th p,ề ể ộ ề ể ấ ấ
hi u năng cao d a trên ki n trúc c i ti n c a AVR®, g m có 28 chân B ng sauệ ự ế ả ế ủ ồ ả
mô t nh ng đ c tính c b n c a vi đi u khi n ả ữ ặ ơ ả ủ ề ể
Trang 8Bảng 3-1: Thông số kĩ thuật ATmega328P [5]
2.3 Cảm biến siêu âm HC-SR04
- Cảm biến siêu âm được dùng để phát hiện có hoặc không có sản phẩm thôngqua sóng siêu âm được phát bởi cảm biến
Hình 2-3: C m bi n siêu âm HC-SR04 ả ế [4]
- Sơ đồ chân:
• VCC: Chân cấp nguồn
• Trig: Chân ngõ vào phát xung tín hiệu
• Echo: Chân ngõ ra nhận xung tín hiệu được trả về
• GND: Chân nối đất
2.4 Cảm biến màu TCS3200
- Cảm biến màu được dùng để phát hiện màu sắc của sản phẩm
Trang 9Hình 2-4: S đ chân TCS3200 ơ ồ [3]
- Sơ đồ chân: Cảm biến màu gồm có 8 chân
• VCC và GND: Chân cấp nguồn và nối mass của cảm biến Điện áphoạt động trong khoảng 2.7V đến 5.5V Dòng hoạt động từ 1.4 đến2mA
• OE: Chân cho phép cảm biến hoạt động
• S0, S1: Chân lựa chọn tỉ lệ tần số ngõ ra
• S2, S3: Chân lựa chọn loại màu sắc của photodiode
• Out: Chân xuất giá trị tần số
- Mô tả cảm biến:
• TCS3200 có thể được lập trình để chuyển đổi màu sắc sang tần sốbằng việc phối hợp các photodiode và một bộ chuyển đổi tần số trênmột mạch tích hợp đơn cực CMOS Ngõ ra là một xung vuông (duty
là 50%) và tần số tỉ lệ thuận với cường độ ánh sáng
• Tần số ngõ ra có thể được điều chỉnh bằng một trong ba giá trị đặttrước thông qua hai chân điều khiển S0, S1 Các chân I/O cho phépkết nối trực tiếp với vi điều khiển
• Trong TCS3200 bộ chuyển đổi ánh sáng sang tần số sẽ ghi nhận giátrị từ một dãy 8x8 photodiode được bố trí xen kẽ nhau với 16photdiodes là một bộ lọc xanh, 16 photodiodes là một bộ lọc màu lục,
16 photodiodes là một bộ lọc mảu đỏ và 16 photodiodes còn lại thìkhông có bộ lọc dùng để xóa
Trang 11CHƯƠNG 3 SƠ ĐỒ KHỐI VÀ LƯU ĐỒ GIẢI THUẬT
3/ Khối điều khiển
3.2 Lưu đồ giải thuật
Trang 12- Cảm biến siêu âm HC-SR04:
• Vi điều khiển sẽ gủi một xung kích đến chân trigger của cảm biến siêu
âm trong một khoảng thời gian ngắn được xác định để cảm biến hoạt động
• Sau đó cảm biến phát đi một khoảng thời gian xung để phát hiện vậtcản Khi gặp vật cản chân echo sẽ nhận được một xung trả về, vi điềukhiển sẽ đọc khoảng thời gian từ xung được gửi về
• Khoảng cách được tính bằng thời gian nhận, gửi tín hiệu và tốc độ âmthanh = 340m/s = 0.034 cm/us, với công thức:
Trang 13V i x là th i gian xung nh n và g i tín hi u khi c m bi n phát ớ ờ ậ ử ệ ả ế
hi n v t c n.ệ ậ ả
• C m bi n sẽ phát hi n v t ph m trong kho ng cách t 1 đ nả ế ệ ậ ẩ ả ừ ế5cm Đ n khi đã phát hi n có v t ph m, c m bi n màu sẽ đế ệ ậ ẩ ả ế ượccho phép ho t đ ng.ạ ộ
- C m bi n màu TCS3200: c m bi n g m có ba ngõ vào và m t ngõ ra.ả ế ả ế ồ ộ
B ng 3-1: L a ch n các thông s ả ự ọ ố [3]
• Cảm biến có 4 chân Input gồm S0, S1, S2, S3 để lựa chọn tỉ lệ cần sửdụng với L là mức thấp (LOW) hoặc H là mức cao (HIGH)
• Chân điều khiển S0 và S1 ta chọn được ba giá trị điều chỉnh tỉ lệ tần
số đã được định trước thông qua các mức logic gồm:
• Với chân điều khiển S2, S3 ta có thể chọn các mức logic để cho phépcác bộ lọc photodiodes hoạt động Hệ thống phân loại 2 màu gồm
“Đỏ” và “Xanh” nên ngõ ra vi điều khiển sẽ đẩy hai chân ngõ vào S2,S3 lần lượt lên mức LOW-LOW và LOW-HIGH
• Ngõ ra OUT trả về thời gian với chu kì ứng với tỉ lệ tần số đã đượcđiều khiển bởi hai chân S0 và S1 phía trên, và những khoảng thời giannày cũng tương ứng với màu sắc của vật phẩm Ta lập trình vi điềukhiển đọc thời gian được trả về để so sánh
- Động cơ Servo SG90:
• Dựa vào sự so sánh từ vi điều khiển, động cơ sẽ hoạt động để phân loại
Trang 14• Động cơ sẽ quay một góc tương ướng là nếu thời gian đọc xung của
bộ lọc “Đỏ” là thấp nhất
• Động cơ sẽ quay một góc tương ướng là nếu thời gian đọc xung của
bộ lọc “Xanh” là thấp nhất
Trang 15CHƯƠNG 4 THI CÔNG PHẦN CỨNG
4.1 Layout mạch nguồn 5VDC
Hình 4-1: Layout m ch ngu n 5V DC ạ ồ
4.2 Layout mạch xử lý Atmega328P
Trang 16Hình 4-2: Layout M ch Atmega328P ạ
4.3 Mô hình băng tải phân loại sản phẩm
Trang 17Hình 4-3: Mô hình phân lo i s n ph m ạ ả ẩ
Trang 18CHƯƠNG 5 ĐÁNH GIÁ VÀ KẾT LUẬN
5.1 Đánh giá
- Cảm biến siêu âm và cảm biến màu có thể phát hiện và phân loại đúng sảnphẩm với hai màu định trước
- Công suất hoạt động cho phép phân loại từ 5 đến 10 sản phẩm trong 1 phút
- Tốc độ băng chuyền sử dụng ở mức công suất thấp nên khá chậm
Trang 19TÀI LIỆU THAM KHẢO
Trang 21const int S2 = 7;
const int S3 = 8;
const int Out = 9;
//Khai báo HC-SR04
const int trig = 11;
const int echo = 12;
Trang 23unsigned long x; //biến đọc chu kì xung từ cảm biến đến vật cản int kc; //biến tính khoảng cách
Trang 26green = pulseIn(Out, HIGH);