아두 이노 오토닉스 - adu ino otonigseu

아두 이노 오토닉스 - adu ino otonigseu

법인명(상호) : 알제이(RJ)테크 대표자(성명) : 정제영 사업자 등록번호 안내 : [113-24-47248] 사업자정보확인
통신판매업 신고 2015-서울구로-0248 전화 : 070-8250-3303 팩스 : 02-6971-9251
주소 : 08206 서울특별시 구로구 신도림로 7 (신도림동) 금강리빙스텔 502호
개인정보관리책임자 : 정제영() Contact for more information.

※ 오 마이 엔지니어는 방문구매가 불가능 합니다, 사이트에서 주문후 방문수령은 가능합니다 (네이버페이 주문건은 불가능)
4시~4시30분 까지는 픽업 및 포장업무 시간으로 유선 전화통화 및 상담이 원활하지 않을수 있습니다.

아두 이노 오토닉스 - adu ino otonigseu

포토센서는 주로 물체를 감지하는데 사용됩니다.

종류로는 투과형, 미러 반사형, 확산 반사형등이 있습니다.

<오토닉스 홈페이지>

투과형은 투광기와 수광기 2개로 이루어져 있으며, 투광기에서는 적외선을 발사하고, 수광기는 

이 적외선을 받게 됩니다. 적외선이 들어오게 되면 감지가 안된 것이고, 안들어오면 감지가 되었다고

생각을 하게 됩니다.

미러 반사형은 적외선을 쏘는 부분과 받는 부분이 하나로 이루어져 있으며, 

적외선을 발사하여 미러를 통해 반사하여 감지합니다.

만약 물체가 감지되면 적외선을 받지못해 인식을 하게 됩니다.

확산 반사형은 미러 반사형처럼 쏘는 부분과 받는 부분이 하나로 이루어져 있지만, 미러가 없어

물체가 없을경우에는 적외선을 받지 못하다가 물체가 감지되면 적외선을 받게되는 구조입니다.

이 3가지중 가장 거리가 길고 인식률도 좋고 정밀도가 좋은 것은 투과형입니다.

하지만 투광기와 수광기를 모두 설치해야하는 단점이 존재합니다.

투과형인 BMS5M-TDT를 사용하여 MCU에서 읽을 수 있도록 회로를 구성해 보겠습니다.

홈페이지나 센서를 구매하시면 제어출력 회로도가 있습니다.

이 모델의 경우 NPN출력과 PNP 출력 2가지가 있는데 BMS5M-TDT는 NPN입니다.

아두 이노 오토닉스 - adu ino otonigseu

그리고 이건 제품의 연결도 입니다.

전원은 12V~24V 를 사용할 수 있습니다.

저는 갈색에 24V, 청색 0V를 인가했습니다.

그리고 흰색( 24V)에 연결하면 Dark ON이 되고, 

청색(0V)에 연결하면 Light ON이 되는데 

Dark ON은 감지가 되면 흑색으로 출력이 나오고,

<Dark ON 모드>

Light ON은 감지가 안되었을때 흑색으로 출력이 나오는 모드입니다.

<Light ON 모드>

이제 MCU에 연결을 해야하는데 보통은 MCU GPIO가 3.3V~5V입니다.

하지만 센서는 24V전원을 사용해서 24V가 나오게 됩니다.

따라서 포토커플러를 사용하여야 합니다.

대표적인 포토커플러로는 PC817이 사용됩니다.

포토커플러는 입력측과 출력측이 절연되어 있습니다.

따라서 입력측이 24V라도 출력측에서는 3.3V나 5V로 내보내 줄 수 있습니다.

포토커플러 연결방법은 아래와 같습니다.

센서의 24V전원과 출력을 포토커플러 입력으로 넣고,

출력쪽엔 MCU의 전원과 저항을 통해 MCU 디지털 입력으로 넣어주면 됩니다.

위 회로기준 풀업저항이 걸려있어, 평상시 D2에 HIGH신호가 들어가게되고,

센서가 감지되는 경우 D2에 LOW신호가 들어가게 됩니다.

Dark ON이냐 Light ON이냐에 따라 입력값이 달라지게 됩니다.

Dark ON모드로 간단히 테스트를 진행했습니다.

MCU는 ESP8266기반의 nodMCU를 사용하였습니다.

회로는 위 참고회로를 기반으로 

PC817

PC817 1번 10k-24V

PC817 2번 포토센서 출력(검은색)

PC817 3번 nodMCU GND

PC817 4번 10k-3.3V, nodMCU GPIO2번

포토센서

갈색, 흰색 24V

파란 GND

검정 PC817 2번

으로 연결하였습니다.

연결된 후 투광기에만 불이 들어오고 수광기는 불이 꺼져있습니다.

중간에 물체 감지시 수광기에도 불이 들어옵니다.

테스트 장면입니다.

#define debug Serial
#define di 2

void setup() {
  // put your setup code here, to run once:
  debug.begin(115200);
  pinMode(INPUT,di);
}

void loop() {
  // put your main code here, to run repeatedly:
  debug.println(digitalRead(di));
  delay(1000);
}