Arduino 장애물감지센서 (F1030) 기본 소스 및 주석

 이번에는 장애물 감지 센서 입니다. 디바이스마트나 엘레파츠에서 아두이노 관련 센서라면서 판매하고 있는 것이지요. 기본적인 작동은 적외선을 이용하고, 전방에 장애물이 있을시 보드에 있는 LED에 불이 들어오는 센서 입니다. 작동 범위는 10~30mm 정도로 매우 근접한 상태에서만 작동 됩니다. 카메라의 뷰파인더 같이 눈에 바짝 붙여서 사용해야 하는 기기등에 활용할 수 있을것 같네요


소스는 기본적으로 동일 합니다. 신호를 읽고, 출력 이 소스 역시 시리얼 및 LCD로 출력이 가능한 소스 입니다. LCD는 DFR LCD4884 입니다.



#include "LCD4884.h"

int switcher = 8;
int value = 0;
char transv[1];

void setup()
{
 pinMode(switcher, INPUT);
 lcd.LCD_init(); // LCD를 초기화
 lcd.LCD_clear();  // LCD화면을 지움
 Serial.begin(9600); // 시리얼 속도를 9600bps로 맞춤
}

void loop(){
   value = digitalRead(switcher); // 기울기 센서의 값을 value에 저장한다. (switcher는 기울기 센서의 상태 값을 갖고 있음)



    itoa(value,transv,10); // 정수형을 문자형으로 변환시키는 itoa 함수를 쓴다. 이유는 LCD에 출력하기 위해선 문자형이어야 하기 때문.
    Serial.println(transv); // 시리얼에 기울기 센서의 상태 값을 출력시킨다 (시리얼 출력은 정수형, 문자형 상관 없기 때문에 transv 대신 value를 넣어도 됨
   lcd.LCD_clear();
   lcd.LCD_write_string(24, 2, transv, MENU_NORMAL);  //LCD의 24열 2행에 상태 값을 출력 시킨다
   delay(100);     



전방에 있는 적외선으로 장애물을 감지하는 것 같습니다.


30mm에 근접 하지 않았기에 LED는 아무 색도 나오지 않습니다.


 

근접하자 LED에 붉은색 빛이 나옵니다.



참고 

http://devicemart.co.kr/goods/view.php?seq=31059



.




저작자 표시
신고
Trackback 2 Comment : 0
prev 1 ··· 18 19 20 21 22 23 24 25 26 ··· 56 next