[아두이노#601] Arduino에 컬러센서(TCS3200, TCS3472)를 연결해서 컬러인식하는 방법 알아보기!(녹칸다의 아두이노 시즌2)
프로그래밍/아두이노 호작질 2024. 6. 25. 22:59
[아두이노#601] Arduino에 컬러센서(TCS3200, TCS3472)를 연결해서 컬러인식하는 방법 알아보기!(녹칸다의 아두이노 시즌2)
녹칸다의 아두이노 시즌2 시리즈이다!
이번편에서는 아두이노에서 대표적으로 많이 활용하는 컬러센서 4종을 활용해보도록 한다!
센서는 TCS3200과 TCS3472인데 각각 모양이 다른 모듈 2종씩 해서 총 4개의 모듈을 보유하고있다!
(같은 TCS3200인데 모양이 다른거 2개, 같은 TCS3472인데 모양이 다른거 2개)
연결하고 작동시켰을때 어떤 센서값이 출력되는지 확인하고 컬러가 있는 물체를 구분해보도록 하자!
(깨알지식)
1.오늘 녹칸다가 활용할 컬러센서는 TCS3200과 TCS3472이다!
2.TCS3200은 라이브러리가 없고 컬러를 측정하기 위한 코드를 아두이노에서 직접 구현해야한다!
3.TCP3472는 라이브러리가 있고 모듈내에 조그만한 아두이노 같은게 있어서 자기가 측정해서 아두이노로 I2C통신으로 넘겨주는 방식이다!
4.각 컬러센서로 측정한 값은 절대적인 RGB값은 아니다! 예를들어 컴퓨터에서 R255, G0, B0이면 빨간색인데, 센서에서 나오는 값이 그런 형태는 아니다!
5.TCS3472는 라이브러리검색시 "TCS34725"라고 검색해서 adafruit걸로 설치함!
6.VS코드에서 TCS3472를 사용하기 위한 platformio.ini설정
[env:uno]
platform = atmelavr
board = uno
framework = arduino
lib_deps =
adafruit/Adafruit TCS34725@^1.4.4
Wire
SPI
(예제목차)
1.TCS3200의 기본코드를 활용해서 시리얼모니터에 값을 출력하는 예시를 구현하시오!
2.예제1을 시리얼플로터를 이용해서 그래프로 출력하시오!
3.빨간색,보라색,녹색 큐브를 이용해서 컬러를 구분하시오!(이 세상에는 3개의 색밖에 없다!)
4.컬러6개의 블럭을 구분하는 방법론을 마련해보시오!
5.TCS3472를 연결하고 6개의 블럭을 구분해보시오!