Bạn đã bao giờ tò mò về cách cảm biến màu sắc hoạt động? Cảm biến màu GY-31 (TCS3200) có thể giúp bạn đo lường một phạm vi gần như vô hạn của màu sắc có thể nhìn thấy. Với IC TAOS TCS3200 RGB và 4 led trắng, cảm biến này sẽ giúp bạn nhận biết màu sắc của các vật thể xung quanh.
Bạn đang xem: Cảm biến màu GY-31 (TCS3200): Phát hiện và đo lường màu sắc
Tính năng của cảm biến màu GY-31 (TCS3200)
Xem thêm : Khám phá: 1 dm bằng bao nhiêu cm, m, mm? Quy đổi đơn vị đềximét.
Cảm biến màu GY-31 (TCS3200) tích hợp 1 dãy bộ dò ánh sáng quang bên trong, với mỗi cảm biến tương ứng với các màu đỏ, xanh lá và xanh dương. Điều này giúp loại bỏ sai lệch vị trí giữa các màu sắc và đảm bảo kết quả đo lường chính xác.
READ MORE:
Thông số kỹ thuật
- Nguồn: 2.7 – 5.5VDC
- Ngõ ra: 3 tần số xung tương ứng 3 màu đỏ, xanh dương và xanh lá.
READ MORE:
Chức năng của các chân cảm biến màu
- 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 vào cường độ và màu sắc.
Bạn có thể sử dụng cảm biến màu GY-31 (TCS3200) kết hợp với Arduino để nhận biết màu sắc của các vật thể. Dưới đây là code tham khảo:
/* Color Sensor Arduino - - VCC 5V GND GND s0 8 s1 9 s2 12 s3 11 OUT 10 OE GND */
const int s0 = 8;
const int s1 = 9;
const int s2 = 12;
const int s3 = 11;
const int out = 10;
// LED pins connected to Arduino
int redLed = 2;
int greenLed = 3;
int blueLed = 4;
// Variables
int red = 0;
int green = 0;
int blue = 0;
void setup() {
Serial.begin(9600);
pinMode(s0, OUTPUT);
pinMode(s1, OUTPUT);
pinMode(s2, OUTPUT);
pinMode(s3, OUTPUT);
pinMode(out, INPUT);
pinMode(redLed, OUTPUT);
pinMode(greenLed, OUTPUT);
pinMode(blueLed, OUTPUT);
digitalWrite(s0, HIGH);
digitalWrite(s1, HIGH);
}
void loop() {
color();
if (red < blue && red < green && red < 20) {
Serial.println(" - (Màu Đỏ)");
digitalWrite(redLed, HIGH);
digitalWrite(greenLed, LOW);
digitalWrite(blueLed, LOW);
} else if (blue < red && blue < green) {
Serial.println(" - (Màu Xanh Dương)");
digitalWrite(redLed, LOW);
digitalWrite(greenLed, LOW);
digitalWrite(blueLed, HIGH);
} else if (green < red && green < blue) {
Serial.println(" - (Màu Xanh Lá)");
digitalWrite(redLed, LOW);
digitalWrite(greenLed, HIGH);
digitalWrite(blueLed, LOW);
} else{
Serial.println();
}
delay(300);
digitalWrite(redLed, LOW);
digitalWrite(greenLed, LOW);
digitalWrite(blueLed, LOW);
}
void color() {
digitalWrite(s2, LOW);
digitalWrite(s3, LOW);
red = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);
digitalWrite(s3, HIGH);
blue = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);
digitalWrite(s2, HIGH);
green = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);
}
Xem thêm : Tổng quan về chất trợ hàn, dung môi hàn: Làm sạch và tạo điều kiện hoàn hảo cho mối hàn
Bằng cách sử dụng cảm biến màu GY-31 (TCS3200) và Arduino, bạn có thể nhận biết màu sắc của các vật thể xung quanh bạn. Hãy tham khảo video dưới đây để có cái nhìn cụ thể hơn về cảm biến này.
Với cảm biến màu GY-31 (TCS3200), bạn có thể khám phá thế giới màu sắc xung quanh mình một cách thú vị và sáng tạo!
Nguồn: https://cite.edu.vn
Danh mục: Học tập