이 프로젝트에서는 TCS3200 컬러 센서를 Arduino UNO와 인터페이스 할 것 입니다. TCS3200은 올바른 프로그래밍으로 원하는 수의 색상을 감지 할 수있는 컬러 센서입니다. TCS3200에는 RGB (Red Green Blue) 어레이가 포함되어 있습니다. 현미경 수준의 그림에서 보듯이 eye on sensor 내부의 사각형 상자를 볼 수 있습니다. 이 사각형 상자는 RGB 행렬의 배열입니다. 각 상자에는 3 개의 센서가 포함되어 있습니다. 하나는 RED 광도를 감지하기위한 것이고, 하나는 녹색 광도를 감지하기위한 것이며, 다른 하나는 청색 광도를 감지하기위한 것입니다.
이 세 가지 어레이의 각 센서 어레이는 요구 사항에 따라 별도로 선택됩니다. 따라서 프로그래밍 가능한 센서 로 알려져 있습니다. 모듈은 특정 색상을 감지하고 다른 색상을 남기는 기능을 제공 할 수 있습니다. 선택 목적을위한 필터가 포함되어 있습니다. 필터 모드가없는 네 번째 모드가 있습니다. 필터 모드가 없으면 센서가 백색광을 감지합니다.
필요한 구성 요소
하드웨어: ARDUINO UNO, 전원 공급 장치 (5v), LED, JHD_162ALCD (16 * 2LCD), TCS3200 컬러 센서.
소프트웨어: ARDUINO IDE (ARDUINO 야간).
회로도 및 작동 설명
16x2 LCD에는 백라이트가 있으면 전체적으로 16 개의 핀이 있고, 백라이트가 없으면 14 개의 핀이 있습니다. 백라이트 핀에 전원을 공급하거나 남겨 둘 수 있습니다. 이제 14 핀에는 8 개의 데이터 핀 (7-14 또는 D0-D7), 2 개의 전원 공급 장치 핀 (1 & 2 또는 VSS & VDD 또는 GND & + 5v), 대비 제어를위한 3 번째 핀 (VEE- 문자의 두께 제어 표시) 및 3 개의 제어 핀 (RS & RW & E)
회로에서 내가 두 개의 제어 핀만 가져간 것을 볼 수 있습니다. 대비 비트와 READ / WRITE는 자주 사용되지 않으므로 접지로 단락 될 수 있습니다. 이렇게하면 LCD가 가장 높은 명암비 및 읽기 모드가됩니다. ENABLE 및 RS 핀을 제어하여 문자와 데이터를 적절하게 전송하면됩니다.
LCD에 대해 수행되는 연결은 다음과 같습니다.
접지에 대한 PIN1 또는 VSS
PIN2 또는 VDD 또는 VCC ~ + 5v 전원
PIN3 또는 VEE to ground (초보자에게 최상의 대비를 제공)
ARDUINO UNO의 PIN4 또는 RS (등록 선택) ~ PIN8
PIN5 또는 RW (읽기 / 쓰기)를 접지 (LCD를 읽기 모드로 설정하여 사용자의 통신을 용이하게 함)
ARDUINO UNO의 PIN6 또는 E (활성화) toPIN9
ARDUINO UNO의 PIN11 또는 D4 ~ PIN7
ARDUINO UNO의 PIN12 또는 D5 ~ PIN11
ARDUINO UNO의 PIN13 또는 D6 ~ PIN12
ARDUINO UNO의 PIN14 또는 D7 ~ PIN13
컬러 센서에 대해 수행되는 연결은 다음과 같습니다.
VDD ~ + 5V
GND에서 GROUND로
OE (출력 활성화)에서 GND로
S0-UNO 핀 2
S1-UNO 핀 3
S2-UNO 핀 4
S3-UNO 핀 5
OUT-UNO 핀 10
컬러 센서가 감지해야하는 색상은 두 개의 핀 S2와 S3에 의해 선택됩니다. 이 두 개의 핀 로직 제어를 통해 센서에 어떤 색상 광도를 측정할지 알 수 있습니다.
두 핀을 모두 LOW로 설정하는 데 필요한 RED 색상 강도를 감지해야한다고 가정 해 보겠습니다. 이 작업이 완료되면 센서가 강도를 감지하고 값을 모듈 내부의 제어 시스템으로 보냅니다.
S2 |
S3 |
포토 다이오드 유형 |
엘 |
엘 |
빨간 |
엘 |
H |
푸른 |
H |
엘 |
지우기 (필터 없음) |
H |
H |
초록 |
모듈 내부의 제어 시스템이 그림에 나와 있습니다. 어레이에 의해 측정 된 광도는 주파수 변환기에 전류로 전송됩니다. 그것이하는 일은 ARRAY가 보낸 전류와 관련된 주파수를 갖는 구형파를 내 보냅니다.
그래서 우리는 S2와 S3에 의해 선택된 색상의 광도에 따라 주파수가 달라지는 구형파를 보내는 시스템을 가지고 있습니다.
모듈에서 보내는 신호 주파수는 용도에 따라 변조 될 수 있습니다. 출력 신호 주파수 대역폭을 변경할 수 있습니다.
S0 |
S1 |
출력 주파수 스케일링 (f 0) |
엘 |
엘 |
전력 다운 |
엘 |
H |
2 % |
H |
엘 |
20 % |
H |
H |
100 % |
주파수 스케일링은 두 비트 S0 및 S1에 의해 수행됩니다. 편의를 위해 주파수 스케일링을 20 %로 제한합니다. 이것은 S0을 높음으로 설정하고 S1을 낮음으로 설정하여 수행됩니다. 이 기능은 클럭이 낮은 시스템에서 모듈을 사용할 때 유용합니다.
색상에 대한 어레이 감도는 아래 그림과 같습니다.
색상에 따라 감도가 다르지만 일반적인 사용에는 큰 차이가 없습니다.
여기서 UNO는 모듈로 신호를 보내 색상을 감지하고 모듈이 수신 한 데이터는 연결된 16 * 2 LCD에 표시됩니다.
UNO는 세 가지 색상 강도를 개별적으로 감지하여 LCD에 표시합니다.
Uno는 모듈에서 보낸 구형파의 주파수를 얻을 수있는 신호 펄스 지속 시간을 감지 할 수 있습니다. 가까이에있는 주파수를 사용하여 센서의 색상과 일치시킬 수 있습니다.
|
위의 조건에서 UNO는 UNO의 10 번째 핀 에서 펄스 지속 시간을 읽고 "주파수"정수에 값을 저장합니다.
색상 인식을 위해 세 가지 색상 모두에 대해이 작업을 수행합니다. 세 가지 색상 강도는 모두 16x2 LCD의 주파수로 표시됩니다.