TRƢỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU KHOA : ĐIỆN – ĐIỆN TỬ
ĐỒ ÁN MÔN HỌC 1
ĐỀ TÀI : PHÁT HIỆN 3 MÀU RED-BLUE-GREEN BẰNG MODULE TCS3200 HIỆN THỊ LÊN MÁY TÍNH
SVTH : Nguyễn Văn Sỹ GVHD : Th.s Phạm Ngọc Hiệp
1 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp LỜI CẢM ƠN
Trƣớc tiên em xin gửi lời cám ơn chân thành sâu sắc tới các thầy cô giáo trong trƣờng Đại học BRVT nói chung và các thầy cô giáo trong khoa ĐIỆN-ĐIỆN TỬ, đã tận tình giảng dạy, truyền đạt cho em những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua. Đặc biệt em xin gửi lời cảm ơn đến thầy PHẠM NGỌC HIỆP, thầy đã tận tình giúp đỡ, trực tiếp chỉ bảo, hƣớng dẫn em trong suốt quá trình làm đồ án. Trong thời gian làm việc với thầy, em không ngừng tiếp thu thêm nhiều kiến thức bổ ích
mà còn học tập đƣ c tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả, đây là những điều rất cần thiết cho em trong quá trình học tập và công tác sau này. Sau cùng xin gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động viên, đóng góp ý kiến và giúp đỡ trong quá trình học tâp, nghiên cứu và hoàn thành đồ án này.
2 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp PHỤ LỤC
LỜI NÓI ĐẦU ...........................................................................................................1 CHƢƠNG I : MODULE TCS3200 ...........................................................................2 I: GIỚI THIỆU ...........................................................................................................2 II : CẤU TẠO VÀ NGUYÊN LÝ HOẠT ĐỘNG ................................................6 CHƢƠNG II : KẾT NỐI MODULE TCS 3200 VỚI CPU .......................................9 I : PHẦN CỨNG ....................................................................................................9 II : GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MSC-51 (8951) : ...................9 III : MODULE USB TO UART CP2100 ............................................................12 IV : SƠ ĐỒ KẾT NỐI .........................................................................................14 CHƢƠNG III : LẬP TRÌNH GIAO DIỆN HMI VÀ CODE CHIP 89S52 .............15 I : CODE CHIP 89S52 .........................................................................................15 II: THIẾT KẾ GIAO DIỆN HMI ........................................................................23 CHƢƠNG IV : THIẾT KẾ THI CÔNG PHẦN CỨNG .........................................27 I: VẼ MẠCH NGUYÊN LÝ................................................................................27
II : VẼ MẠCH IN ................................................................................................28 III : SẢN PHẨM THỰC TẾ ................................................................................29 CHƢƠNG V : KẾT LUẬN .................................................................................30
3 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
LỜI NÓI ĐẦU Trong thời buổi hiện nay, việc sử dụng cảm biến trở nên thiết thực hơn bao giờ hết, từ điện thoại di động, tivi, xe cộ, máy bay, máy móc dây chuyền sản xuất công nghiệp đều sử dụng cảm biến để đo lƣờng và điều khiển.
Trên thị trƣờng hiện nay có rất nhiều loại cảm biến khác nhau, sử dụng cho nhiều mục đích khác nhau, trong đó có cảm biến phân biệt màu TCS3200.
Việc phân biệt màu sắc bằng cảm biến đang đƣ c rất nhiều ngƣời quan tâm, có thể ứng dụng trong dây chuyền sản xuất công nghiệp với độ chính xác cao, thời gian làm việc dài giúp nâng cao năng suất giảm bớt nhân công lao động.
Với mục đích đó, trong đề tài này, em sẽ đi nghiên cứu và chế tạo module phân biệt 3 màu sắc cơ bản RED-BLUE-GREEN. Từ đó phát triển theo các ứng dụng thực tế với chi phí thấp, độ tin cậy cao
I: GIỚI THIỆU Ánh sáng trắng là hỗn h p rất nhiều ánh sáng có bƣớc sóng màu sắc khác nhau . Khi ta chiếu ánh sáng trắng vào một vật thể bất kì . Tại bề mặt vật thể sẽ xảy ra hiện tƣ ng hấp thụ và phản xạ ánh sáng . Ví dụ : Một vật thể có màu sắc đỏ khi đƣ c chiếu ánh sáng trắng thì những ánh sáng không nằm trong dải bƣớc sóng màu đỏ sẽ bị vật thể hấp thụ . Còn ánh sáng có bƣớc sóng nằm trong dải màu đỏ sẽ bị phản xạ ngƣ c trở lại .Và khiến mắt ta nhận biết vật thể đó là màu đỏ. Dựa trên nguyên lý sự phản xạ , hấp thụ ánh sáng trắng của vật thể và sự phối chộn màu sắc bởi 3 màu cơ bản Blue,Green,Red
Hình 1.1 : Màu sắc bất kì đƣ c tổng h p từ 3 mầu cơ bản Blue,Green,Red
2 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
TCS3200 có cấu tạo là 4 bộ lọc photodiode Blue,Green,Red và clear để
nhận biết màu sắc vật thể. Tần số ra lớn nhất khi ánh sáng chiếu vào cảm biến cùng loại photodiode đƣ c chọn vì khi đó photodiode sẽ hấp thụ nhiều nhất.
Hình 1.2 : Cảm biến TCS 3200
3 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Hình bên dƣới là bảng test quá trình chuyển đổi từ ánh sáng mà 4 loại photodiode nhận đƣ c thành tần số:
Hình 1.1.5 : Bảng test quá trình chuyển đổi từ ánh sáng ra tần số Với điều kiện test là ánh sáng có bƣớc sóng λp = 470 nm(Dải màu Blue), λp = 524 nm(dải màu Green),λp = 640 nm(dải màu Red) thì 4 bộ lọc photodiode sẽ cho ra tần số khác nhau. Tần số ra lớn nhất khi ánh sáng chiếu vào cảm biến cùng loại photodiode đƣ cchọn vì khi đó photodiode sẽ hấp thụ nhiều nhất. Bản chất của 4 loại photodiode trên nhƣ là các bộ lọc ánh sáng có mầu sắc khác nhau . Có nghĩa nó chỉ tiếp nhận các ánh sáng có cùng màu với loại photodiode tƣơng ứng và không tiếp nhận các ánh sáng có màu sắc khác.
4 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Hình 1.1.3 : Nguyên lý của bộ lọc photodiot
Việc lựa chọn 4 loại photodiode này thông qua 2 chân đầu vào S2,S3 :
Hình 1.1.4 : Chọn Photodiot
5 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
II : CẤU TẠO VÀ NGUYÊN LÝ HOẠT ĐỘNG
Cấu tạo cảm biến TCS3200 gồm 2 khối nhƣ hình vẽ phía dƣới:
Hình 1.2.1 : Sơ đồ khối TCS3200 Khối đầu tiên là mảng ma trận 8x8 gồm các photodiode. • Bao gồm 16 photodiode có thể lọc màu sắc xanh dƣơng (Blue),16 photodiode có thể lọc màu đỏ (Red),16 photodiode có thể lọc màu xanh lá(Green) và 16 photodiode trắng không lọc (Clear). • Tất cả photodiode cùng màu đƣ c kết nối song song với nhau ,và
đƣ c đặt xen kẽ nhau nhằm mục đích chống nhiễu. Khối thứ 2 là bộ chuyển đổi dòng điện từ đầu ra khối thứ nhất thành tần số :
Hình 1.2.2 : Chọn Tần Số Xuất Ra
6 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Tần số đầu ra có độ rộng xung 50% và tỉ lệ với ánh sáng có cƣờng độ và mầu sắc khác nhau Tần số đầu ra nằm trong khoảng 2Hz-500Khz . Ta có thể lựa chọn tỉ lệ tần số đầu ra ở các mức khác nhau nhƣ bảng trên cho phù h p với phần cứng đo tần số .
Tính năng : Chuyển đổi cƣờng độ ánh sáng thành tần số có độ phân giải cao. Lập trình lựa chọn bộ lọc màu sắc khác nhau và dạng tần số xuất ra. Dễ dàng giao tiếp với vi điều khiển. Điện áp đầu vào 2.7-5.5V.
Moudule Cảm biến mầu TCS3200 có 2 hàng jum để giao tiếp S0,S1 : Đầu vào chọn tỉ lệ tần số đầu ra . S2,S3 : Đầu vào chọn kiểu photodiode. OE : Đầu vào cho phép xuất tần số ở chân OUT. OUT : Đầu ra là tần số thay đổi phụ thuộc cƣờng độ và màu sắc.
Ta quan tâm tới chận S2,S3 và chân OUT , các chân khác là giá trị mạc định
7 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Hình 1.2.2 : Module TCS 3200
8 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
CHƯƠNG II : KẾT NỐI MODULE TCS 3200 VỚI CPU
I : PHẦN CỨNG
Ta sử dụng các linh kiện • • • • •
• • • •
Module TCS3200 Ic 89s52 Module usb to uart cp2102 Dây nhảy Thạch anh 11.0592 Mhz Điện trở Tụ điện Board đồng Máy vi tính
II : GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MSC-51 (8951) : Đặc điểm và chức năng hoạt động của các IC họ MSC-51 hoàn toàn tƣơng tự nhƣ nhau. Ở đây giới thiệu IC8951 là một họ IC vi điều khiển do hãng Intel của Mỹ sản xuất.
Các đặc điểm của 8951 đƣ c tóm tắt nhƣ sau : • • • • • • • •
•
8 kb EPROM bên trong 128 Byte RAM nội 4 Port xuất/nhập I/O 8 bit Giao tiếp nối tiếp 64 kb vùng nhớ mã ngoài 64 kb vùng nhớ dữ liệu ngoại Xử lý Boolean (hoạt động trên bit đơn ) 210 vị trí nhớ có thể định bit 4 us cho hoạt động nhân hoặc chia
9 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Sơ đồ khối của 89s51 :
Hình 2.1 : Sơ đồ khối 89s52
10 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
Sơ đồ chân 8951
Hình 2.2 : Sơ đồ chân 89s52
11 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
III : MODULE USB TO UART CP2100
Module này sử dụng chip CP2102 của hãng SILICON LABS. Chip hỗ tr các loại hệ điều hành phổ biến nhƣ: Win8, Win7, Vista, Server 2003, XP, Mac OS - X và các hệ điều hành phổ biến khác. Hỗ tr các tốc độ truyền nhƣ: 300, 600, 1200, 1800, 2400, 4000, 4800, 7200, 9600 , 14400, 16000, 19200, 28800, 38400, 51200, 56000, 57600, 64000, 76800, 115200 , 128.000, 153.600, 230.400 , 250.000, 256.000, 460.800, 500.000, 576.000, 921.600 và các loại tốc độ khác. CP2102 không sử dụng thạch anh ngoài nhƣ các chip PL2303. Module có sẵn ngõ ra điện áp 3.3V. Trên mạch có 6 cổng đầu ra: 3.3V DTR 5V Tx Rx Gnd. Trong đó chân DTR đƣ c sử dụng để reset vi điều khiển trong quá trình nạp. LED nguồn sáng khi gắn vô máy tính và LED báo hiệu Tx / Rx, LED này sẽ sáng khi module nhận, gửi dữ liệu.
Hình 2.3 : module usb to uart
12 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp Mô tả chân như sau:
TXD: chân truyền dữ liệu UART, dùng kết nối đến chân Rx của các module khác, không kết nối trực tiếp đến mức của RS232 RXD: chân nhận dữ liệu UART, dùng kết nối đến chân Tx của các module khác, không kết nối trực tiếp đến mức của RS232 GND: chân mass hoặc nối đất. 5V: nguồn điện áp dƣơng (tối đa 500mA). DTR: Chân reset để nạp cho vi điều khiển 3.3V: nguồn điện áp dƣơng 3.3V
13 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
IV : SƠ ĐỒ KẾT NỐI
MODULE TCS 3200
COMPUTER Giải thích sơ đồ :
CPU 89S52
MODULE USB TO UART CP2102
Chip 89s52 chọn lần lƣ t từng bộ photodiot cho Module TCS 3200 so sánh. ứng với mỗi màu, bộ lọc sẽ cho ra tần số khác nhau Module TCS3200 phát hiện màu sắc chuyển đổi sang dải tần số tƣơng ứng gửi qua chip 89s52 xử lý. Chip 89s52 nhận tín hiệu trả về từ Module TCS3200 so sánh ,với bộ lọc màu nào cho ra tần số cao nhất thì màu phát hiện tƣơng ứng với bộ lọc đó truyền lên máy tính thông qua module CP2102. Máy vi tính nhận dữ liệu từ chíp hiện thị lên màn hình qua giao diện ngƣời dùng, đƣ c viết bằng Microsoft Visual Stdio 2013
14 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
CHƯƠNG III : LẬP TRÌNH GIAO DIỆN HMI VÀ CODE CHIP 89S52 I : CODE CHIP 89S52
/****************HÀM GỬI DỮ LIỆU LÊN MÁY TÍNH*********/
void send (unsigned int a) { SBUF =a; while (TI==0){} TI = 0; } /***********************************************************/ // **************ct delay**************************************/ void delay_ms (unsigned int time) { unsigned int i=0,j=0; for (i=0;i{ for (j=0;j<113;j++) {} } }
16 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
/*/..............20 miligiay ngat timer 0 de tinh toan tan so..................*/ void ngat_tran_timer0 (void) interrupt 1 {TR0 = TR2 = 0; //dung 2 timer t = TH2;
t >>= 8; t |=TL2; tanso = t*50; TH0 = 0xB1;
//nap lai gia tri 20miligaiy cho timer0
TL0 = 0xE0; TL2 = 0;
//xoa gia tri trong counter 1
TH2 = 0; } /*****************************************************************/ /*..............kiem tra mau .............................*/ void check_color_RED (void) {
S2 = 0;
//chon bo loc mau do
S3 = 0; while (P1_0 ==0){}
//cho chan Input co canh len
TR0 = TR2 = 1;
//cho timer 0,timer1 chay de tinh toan tan so
delay_ms(30);
//delay 30mili giay de cho cho timer ngat va tinh
tan so
17 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1 F_Test_RED = tanso; tan so cua mau do}
GVHD : Th.s Phạm Ngọc Hiệp //lay tan so timer vua tinh toan duoc vao bien luu gia tri
/*..................so sanh gia tri tan so ung voi moi bo loc mau..........................*/ void Loc_Mau (void) { if ((F_Test_RED > F_Test_BLUE) &&(F_Test_RED > F_Test_GREEN)) //kiem tra co phai mau do khong {b = 1;
LED_RED = 1;
//neu dung thi xuat ra mau do
LED_BLUE = 0; LED_GREEN = 0;} else if ((F_Test_BLUE > F_Test_RED) &&(F_Test_BLUE > F_Test_GREEN)) //neu khong dung thi kiem tra co phai mau xanh lam khong { b = 2; LED_RED = 0; LED_BLUE = 1; //neu dung xuat ra mau xanh lam LED_GREEN = 0;} else if ((F_Test_GREEN > F_Test_RED) &&(F_Test_GREEN > F_Test_BLUE)) { b = 3; LED_RED = 0; LED_BLUE = 0; LED_GREEN = 1; } 19 SVTH : Nguyễn Văn Sỹ
/*..............................................*/ // chuong trinh chinh while (1) { if (ChoPhep == 1) { c = b; for (i=0;i<=2;i++) { setup_TCS3200 (); //goi ham cai dat cho TCS3200 check_color_RED ();
//Kien tra voi bo loc mau do
check_color_BLUE (); //Kien tra voi bo loc mau Xanh Lam check_color_GREEN (); //Kien tra voi bo loc mauXanh Luc Loc_Mau (); tuong ung
//So sanh Tan so Ung voi moi bo loc mau,xuat ra gia tri
21 SVTH : Nguyễn Văn Sỹ
Đồ Án Môn Học 1
GVHD : Th.s Phạm Ngọc Hiệp
} if (c==b) {send (c);} else{ send (4);} } else if (ChoPhep == 0) { send (5); } } }