로그인회원등록 내글장바구니주문조회현재접속자
 상품 검색








 게시판 검색





 
 
회원등록 비번분실


온라인 입금계좌
ㆍ기업은행
ㆍ219-043192-01-028
ㆍ이건영

      거래은행 바로가기
 
  Products Introduce
상품 설명서
작성자 leeky        
작성일 2006/03/07
첨부#1 CDM_2.04.06_WHQL_Certified.zip (819KB) (Down:431)
첨부#2 taos_tcs230_kit.jpg (17KB) (Down:536)
Link#1 (Down:338)
ㆍ추천: 3  ㆍ조회: 5510   
  Mega8 칼라센서 TCS230 색상인식 장치

TAOS TCS230 ($4.7)으로 COLOR SENSOR를 만들어 보았습니다,
원래는 PIC로 된 MPU에  stamp basic이 미리 구워진 BS2라는 Basic 모듈에
parallax에서 제공하는 BS2 베이직으로 된 소스입니다, ($150 ~ $190)
.
이것을 ATmega-8을 사용하고, 언어는 C로 바꾸어 이식하였습니다.
사용한 C언어는 Image Craft 사의 ICC AVR 6.25C입니다.
TCS230은 TAOS의 64셀 포토 다이오드가  SOIC-8핀에 들어 있으며
최고 500KHz 출력으로 250,000:1의 다이나믹 레인지를 가지고 있는 광학 센서입니다.


TCS230은 Data_Out, Output_Enable 핀이 있으며,
/OE는 TCS230의 출력 데이터 Enable, Data_out은 내부의 V/F Converter 출력으로
선택된 색상(R,G,B,W 4색으로 각각 16개씩 내장)의 검출된 광도를 주파수로 출력합니다.
색상의 선택은 S3,S2, 출력 주파수 선택 S1, S0이 있습니다만, S1과 S0는 1:1로 고정하고,
펌웨어에서 TCS230의 출력주파수를 측정하는 주기를 변경하여 각 색상의 검출감도를 제어하고 있습니다. 
 
 
 
 
이번에 AVR로 포팅한 목적은, Bueno Systems에서 만든 tcs230match라는 소프트인데요,
색상검출 모듈의 신호를 받아서 색상을 표시합니다, 즉 색상검출 모듈의 색상신호를 수신해서,
색의 합성을 하여 화면에 표시하는 소프트입니다.
문제는 BS2로 만든 TCS230 Color Sensor 색상검출 모듈의 가격이 너무 비싸기도 하고,
이미 가지고 있던, mega8 칩과 tcs230을 연결하여, ICC AVR C로 만들어 보았습니다.

작동 모드는 Fixed White Ballance와 Calibrated White Ballance 로 2가지이며
리셋후에는 고정된 감도인 Fixed Ballance로 작동합니다.
이후 Calibrate 버튼으로 백색을 교정하면, RGB의 3개 출력이 같아 지도록,
주파수 측정용 주기(period)를 RGB 모두를 자동으로 설정합니다.
Calibrated 출력은 Reset에 의하여 Fixed 모드로 복귀됩니다.

tcs230match는 RS232C의 통신포트로 BS2 모듈에서 TCS230의 신호를 받는 소프트웨어입니다.
tcs230match는 연결된 이후에는 데이터를 보내지 않고, ASCII String으로 데이터를 받기만 합니다.
통신포맷은 9600,N,8,1이고, 별 다른 프로토콜은 없습니다,
AVR 기판의 밑면의 빈 공간에 MAX232를 넣고, 3PIN SIP 콘넥터를 통해
PCB 외부에서 DB9 콘넥터에 연결한 다음 PC의 COM1에 연결 하였습니다.

프로그램의 흐름은 메인 루틴에서 호출하는 보조함수의 기능을 보면 알 수 있듯이
보편적인 MPU의 처리순서를 보여주고 있습니다.
리셋으로 작동되는 주함수 main()은 포트 초기화를 시작으로,
ADC, 타이머0, UART 순으로 모든 하드웨어의 초기화를 끝내면,
오프닝 메세지를 Serial 포트로 송신하고, 측정과 출력을 하는 반복루틴으로 들어 갑니다.

이상 설명한 소스 tcs230m8.c 및 tcs230m8.hex 화일은 tcs230match.exe와 함께 첨부화일로 올라 있습니다.
다음은 소프트웨어를 수정없이 사용할 수 있도록 tcs230 색상 자동검사 장치의 시험결과 입니다. 

백색의 RGB 검출값과 색상표시 (감도를 조절하여 FS에 가깝게 230~240 정도에 맞춘다)
 
 
분홍색의 RGB 검출값과 색상표시
 
 
노란색의 RGB 검출값과 색상표시
 
 
녹색의 RGB 검출값과 색상표시
 
 
청색의 RGB 검출값과 색상표시
 
 
백색교정
백색 종이를 센서에 대고, 센서의 출력값이 크게 되도록 백색 LED의 취부각도를 45도로 조절한다음,
감도조정 POT를 돌려서 센서의 RGB 출력이 FS에 가까이 되도록 맞춘다,
.
센서옆의 백색LED는 각도가 30도, 센서의 검출거리는 10mm에서 가장 좋은 색상이 검출되었다.
또한 백색 LED로 부터의 빛이 TCS230 센서로 직접 들어가는 것을 방지하기 위해
LED의 측면은 검은색의 열수축 튜브나 고무튜브 혹은 금속 슬리브를 씌워 줍니다.
.
감도조절은 AVR의 10 BIT ADC(adc mux 7)에 5K ohm의 POT를 연결하여,
이 값으로 TCS230의 출력주파수 측정용 주기를 조절하였습니다.
또한 남는 포트(portd 7)에 TACT SW를 연결하여, 측정시 주위 조명이 바뀌었을 때,
버튼을 누르면 언제라도 RGB의 출력값이 FS이 되도록 White Ballance를 맞추도록 하였습니다.
.
tcs230match.exe 에서도 소프트웨어적으로 White Ballance를 맞출 수 있는 기능이 있습니다만
백색 LED를 30도로 비추고, 감도조절을 하면, 이 기능을 사용하지 않고도 색상검출에 문제가 없습니다.
가장 검출이 어려운 옅은 노란색의 검출도 위와 같은 조건에서는 검출이 매우 잘 됩니다.

회로설명
ADC6와 ADC7은 M8에서 유일하게 아날로그 입력 전용핀인데요,
TCS230 칼라센서 응용에서는 ADC7을 감도조정용 5K ~ 10K 1회전 가변저항(P1)을 연결하였습니다.
U1 TCS230은 SO8 SMD 패키지를 사용하여 작은 기판에 독립하여 조립,
배선이나 2.54mm 간격의 한줄 콘넥터로 MPU 기판에 수직으로 결합이 되도록 하였습니다.
즉 MPU 기판을 수평으로 놓으면 센서의 검출방향이 전방으로 가도록 설계하였습니다.
.
TCS230 1번은 S0 =VCC
TCS230 2번은 S1 =VCC
TCS230 3번은 /OE =PB1
TCS230 4번은 GND
TCS230 5번은 +5V
TCS230 6번은 OUT =PB0
TCS230 7번은 S2 =PB4
TCS230 8번은 S3 =PB5

6핀 ISP 콘넥터를 USB 인터페이스와 함께 PCB에 추가하였습니다.
ISP 1번은 PB4/MISO (MISO)
ISP 2번은 +5V (VCC)
ISP 3번은 PB5/SCK (SCK)
ISP 4번은 PB3/MOSI (MOSI)
ISP 5번은 /RST (RESET)
ISP 6번은 GND (GND)

최종적으로 개발된 제품의 사진
 
 
MPU는 Mega8-16AI를 사용하고 있고, USB 인터페이스는 FT232BM을 사용하고 잇습니다.
또한 TCS230 칼라센서와 조명용 백색 LED 4개는 밑면에 장착되어 있습니다.
좌측의 SW는 자동백색조정과 리셋이며,  POT는 검출 감도조정입니다.
우측상단의 적색SW는 전원스위치이며, 우측 중앙에 USB 콘넥터를 장착하였습니다. 
 
이 자료의 일부 혹은 전부, 그리고 이 글을 인용하여 개조한 결과물의 무단복제 및 무단배포를 모두 금합니다.
단 아래와 같이 원저자와 참조 사이트를 글과 함꼐 게시하는 조건으로 허용합니다.
You do not use this code for commercial purpose. This code is free for study only .

원저자 : http://avrtools.co.kr/
참조 : http://www.taosinc.com/
참조 : http://www.parallax.com/
참조 : http://www.ftdichip.com/
참조 : http://www.atmel.com/

주의사항
AVR-ISP는 AVR-JTAGICE와 커넥터가 틀립니다. ISP는 6핀, JTAGICE는 10핀을 권장합니다.
타겟기판의 ISP 커넥터를 10핀 방식으로 설계하는 경우, JTAGICE와 혼동하여 연결할 수 있습니다,
AVR-ISP를 AVR-JTAGICE 커넥터에 연결하거나, AVR-JTAGICE를 AVR-ISP 커넥터에 연결하게 되면,
연결 후에 전원을 1번만 연결해도, 즉시 AVR-ISP나 AVR-JTAGICE가 작동하지 않게 됩니다.

이 자료의 무단복제 및 무단게시를 금합니다.
감사합니다.
 AVRTOOLS™
   
  0
3590
윗글 MEGA128-MPU KIT V2.0
아래글 XBee USB Dongle의 소개
    N         제목    글쓴이 작성일 조회 추천
21 USB2serial V2.0 사용설명서 avrtools™ 2011/07/30 (토) 2163 0
20 M328-mini V2.0 사용 설명서 avrtools™ 2011/08/29 (월) 2360 0
19 Jtagice-mkII로 펌웨어 굽기 leeky 2011/08/05 (금) 2373 0
18 USBISP-mkII V2.0 사용설명서 leeky 2011/07/15 (금) 2311 0
17 USB2serial V1.0 사용설명서 [3] avrtools™ 2011/07/30 (토) 3106 0
16 USBISP-mkII V1.0 사용설명서 avrtools™ 2011/07/19 (화) 2091 0
15 AVRISP-mkII-CL 사용설명서 leeky 2011/07/15 (금) 2138 0
14 AVR Studio SP498 사용 설명서 leeky 2007/11/11 (일) 4068 0
13 JTAGICE-mkII의 Debug WIRE 설명서 [50] avrtools™ 2009/10/15 (목) 4675 20
12 AVR JTAGICE MKII CL 설명서 avrtools™ 2009/09/25 (금) 5497 0
11 USB AVRISP + JTAGICE [7] avrtools™ 2008/12/03 (수) 3807 0
10 AVR 910-ISP V3.0 사용설명서 leeky 2007/11/10 (토) 5110 0
9 FT232 가상직렬포트 드라이버 leeky 2007/11/10 (토) 5054 0
8 M168-mini와 M328-mini 기판 avrtools™ 2008/08/31 (일) 3152 0
7 M168-USB과 M328-USB 기판 avrtools™ 2008/08/31 (일) 9595 0
6 아듀이노 데시밀라의 소개 avrtools™ 2008/08/07 (목) 4434 0
5 MEGA128-MPU KIT V2.0 leeky 2006/04/02 (일) 4508 2
4 Mega8 칼라센서 TCS230 색상인식 장치 leeky 2006/03/07 (화) 5510 3
3 XBee USB Dongle의 소개 leeky 2007/11/11 (일) 4143 0
2 USB AVR-ISP V2.0의 소개 leeky 2007/11/10 (토) 5769 0
1 USB JTAG-ICE V2.0의 소개 leeky 2007/11/10 (토) 7600 0
1

바구니 : 0
 보관함 : 0
오늘뷰 : 0
HOME   |   회사소개   |   제휴안내   |   회사위치   |   서비스이용 약관   |   개인정보 보호정책   |   사이트맵
17015 경기도 용인시 기흥구 동백중앙로16번길 16-25, 508호. 전화 : 031-282-3310
사업자 등록번호 : 697-47-00075 / 대표 : 이건영 / 업태 : 제조업 / 종목 : LED조명, LED전원, 제어장치.
개인정보 관리책임자 : 홈페이지 관리자 . Copyright ⓒ2016 아크레즈 (ACLEDS INC.)
HOME TOP PREVNEXT 0 0 0