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








 게시판 검색





 
 
회원등록 비번분실


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

      거래은행 바로가기
 
 Sensor Applications
아듀이노 공개소스
작성자 avrtools™        
작성일 2008/09/20
Link#1 UltrasoundSensor (Down:311)
ㆍ추천: 0  ㆍ조회: 5908   
  아듀이노 초음파 거리측정
참조 :  http://www.arduino.cc/en/Tutorial/UltrasoundSensor
제목 :  PING range finder
 
핑 거리 검출기는 3M 까지 목표를 검출하는 초음파 센서이다.
센서는 3개의 핀으로, 2개는 전원과 접지이다. 세번째 핀은 입력/출력 겸용으로 사용된다.
센서의 규격에 따라 입력을 출력으로 바꾼다음에는, 핀의 설정을 다시 입력으로 바꾸어야  된다.
 
먼저, 센서가 초음파를 송신하기 위해서는 펄스를 출력해야한다, 그리고 반응을 기다린다.
반복해서 초음파가 수신되게 하려면, 매번 수신 직전에 5us 펄스를 센서로 출력해야 한다. 
  
수신된 펄스폭은 0.115 ms ~ 18.5 ms으로, 목표와의 거리에 비례한다.
 
응용 예는 David Cuartielles씨가 소프트웨어를 만들었고, Marcus Hannerstig씨가 설치햇다.
설명한대로 초음파센서 기판은 구형 아듀이노와 전선으로 연결햇다.
 
 
  
초음파 센서 규격
측정거리 2cm ~ 3m
전원 공급 전압 4.5V ~6V
전원 소비전류 30 ~ 35 mA
3핀 커넥터 VCC(power), VSS(ground), I/O(signal)
 
좁은 출력 각도 = 1m 거리에서 ±10도
간단한 펄스 입력/출력 = 1 핀
표시 LED로 진행과 측정을 보여준다
발사 입력 = 2 ~ 5 µs (표준) 
응답 펄스 = 115 us ~ 18.5 ms
응답 펄스 감지시간 = 발사후 750 µs
단발 주파수 = 40 kHz를  200 µs 동안 송신 
크기 = 22 H x 46 W x 16 D (mm)
 
PING))) 센서는 오직 3개의 커넥터로 전원, 접지, 신호(입,출력 겸용)이다.
ParrkFun에서 PING)))라고 하는 3핀 인터페이스 제품의 이름은 NT-TS601 이다,  
초음파 모듈 NT-TS601은  디바이스마트에서 22,000원에 구입할 수 있다.


-----------------------------------------------------------------------------------------------------------------
응용 소스

아래의 짧은 소스는 초음파 센서를 사용한 예다. 초음파 센서는 아듀이노와 USB V1.1로 연결된다.
3m 거리에서 초음파 센서로 읽은 값은 14 ~ 1199 이다. 그리고 직렬포트로 읽은 값을 송신한다.
참조 : http://www.xlab.se
저자 : 2005 Mackie, XLAB
 
int ultraSoundSignal = 7;     // 초음파 신호 핀
int val = 0;
int ultrasoundValue = 0;
int timecount = 0;               // 거리 측정 카운더
int ledPin = 13;                   // LED 표시기는 핀 13
 
void setup()
{
  beginSerial(9600);                  // 직렬통신 포트를 9600 bps로 시작
  pinMode(ledPin, OUTPUT);     // LED 표시기를 출력으로 전환
}
 
void loop()
{
   timecount = 0;
   val = 0;
   pinMode(ultraSoundSignal, OUTPUT);   // 처음에는 신호핀을 출력으로
 
  digitalWrite(ultraSoundSignal, LOW);       // LOW를 출력
  delayMicroseconds(2);                         // 2us 을 기다린다
  digitalWrite(ultraSoundSignal, HIGH);       // HIGH를 출력
  delayMicroseconds(5);                         // 5us을 기다린다
  digitalWrite(ultraSoundSignal, LOW);       // LOW로 출력하고 대기한다
 
  pinMode(ultraSoundSignal, INPUT);   // 초음파 신호 핀을 입력으로 전환
  val = digitalRead(ultraSoundSignal);   // 초음파 신호핀의 레벨을 val에 저장
  while(val == LOW)                            // val 값이 LOW가 될 때까지 기다린다.
  { 
    val = digitalRead(ultraSoundSignal); // 초음파 신호핀을 계속해서 읽는다. 
  }
 
 while(val == HIGH)                            // 초음파 신호핀이 HIGH로 머문 시간을 측정  
 { 
   val = digitalRead(ultraSoundSignal);  // 초음파 출력핀을 계속 읽는다
   timecount = timecount +1;                // 반복된 횟수만큼 카운터를 +1한다 (응답값을 측정)
 }
 
 ultrasoundValue = timecount;   // 초음파 값을 읽어온다
 serialWrite('A');                      // A를 식별자로 사용한다
 printInteger(ultrasoundValue);  // 측정값을 직렬포트로 송신한다
 serialWrite(10);                       // 줄바꾸기 (LF)
 serialWrite(13);                       // 다음 송신 끝 (CR)
 
 if (timecount > 0)  // 응답 펄스로 0.2초 동안 LED를 켠다
 {
   digitalWrite(ledPin, HIGH);
  }
  delay(100);
}

참조 :  http://www.arduino.cc/en/Tutorial/UltrasoundSensor
단순히 초음파 신호핀의 상태를 읽은 횟수를 계수하는 방법은 절대거리 값이 아니므로,
실제 검출거리로 변환하는 처리가 필요하다. 측정방법으로 pulseIn()을 사용하는 방법도 있다.  

-----------------------------------------------------------------------------------------------------------------
아듀이노 거리센서
참조 : http://kousaku-kousaku.blogspot.com/2008/08/arduino_22.html
제목 : Arduino Range Finder, 2008年8月23日
 
이번에는, Parallax사의 초음파 거리센서 PING)))으로 거리를 계측합니다.
PING)))은 초음파를 사용하는 방식입니다. 측정거리는 3cm ~ 3.35m로 되어 있으며,
적외선 거리측정 GP2D12 측정거리 10cm~80cm 보다, 측정범위가 넓습니다.

PING)))에서는 1선의 단자로 펄스를 측정합니다. PING)))에서 초음파를 5us 동안초음파를 발사합니다.
이 초음파가 물체에 반사하여 되돌아오는 시간을 계측하여, 음속과 시간의 관계로 부터 거리를 유출합니다.
 
샘플 소스
아듀이노의 Playground >Learning>Examples>Complex Sensors에 있습니다.
이번에는 전자의 pulseIn()을 쓰는 방법으로, 변수는 unsigned long 타입을 사용합니다.
 
unsigned long echo = 0; // 반사파
int signalPin = 9;            // 수신핀
 
void setup()

  Serial.begin(9600);       // 출력용 직렬통신을 시작
}
 
void loop()
{
  pinMode(signalPin, OUTPUT);    // 초음파 핀을 출력으로
  digitalWrite(signalPin, LOW);       // 2us 동안 LOW (초음파 정지)
  delayMicroseconds(2); 
 
  digitalWrite(signalPin, HIGH);       // 5us 동안 HIGH (초음파 출력)
  delayMicroseconds(5);
  digitalWrite(signalPin, LOW);       // 초음파 출력을 중지

  pinMode(signalPin, INPUT);        // 송신핀을 입력으로
  digitalWrite(signalPin, HIGH);       // 송신핀을 HIGH로, (pullup)
  echo = pulseIn(signalPin, HIGH)  // 반사파를 us펄스폭으로 수신,

  int distance = (echo /2) *0.34442; // mm로 환산한다. 편도거리는 1/2 이다.
  Serial.println(distance);               // 거리값을 직렬포트로 출력하여 PC에 표시
  delay(250);                                // 반복시간 간격은 0.25초 이다.
}
 
음속은 344.42m/sec 이므로, 1us에 0.34442 mm의 거리를 진행합니다.
초음파센서에서 측정된 값은 왕복거리이므로, 측정값을 2로 나누어 편도거리로 환산합니다. 

이 프로그램은 무료 소프트웨어로, 신체와 재산 상의 어떤 위험과 손해를 보상하지 않습니다.
이 프로그램은 GNU 무료 소프트웨어 배포규정을 따릅니다.
Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA

AVRTOOLS™
   
윗글 아듀이노 Wii 프로세싱
아래글 아듀이노 8x5 초소형 전광판
    N         제목    글쓴이 작성일 조회 추천
61 비접점식 QTouch 방식 근접검출 스위치 leeky 2016/01/21 (목) 565 0
60 Arduino 고속 오실로스코프 #3 avrtools™ 2012/03/29 (목) 17616 0
59 아날로그 8ch 데이터 로거 avrtools™ 2012/03/29 (목) 2724 0
58 Arduino DMX512 송신기 제작 avrtools™ 2012/03/15 (목) 2828 0
57 nRF24L01 무선모듈의 사용방법 avrtools™ 2012/03/07 (수) 5626 0
56 초음파 거리 측정기의 제작 avrtools™ 2011/09/18 (일) 4702 0
55 3축 가속도 센서 ADXL335 avrtools™ 2011/09/09 (금) 3242 0
54 Arduino Uno USBserial 펌웨어의 변경 avrtools™ 2011/08/27 (토) 2886 0
53 Arduino MIDI의 소개 avrtools™ 2011/08/19 (금) 3267 0
52 Arduino 고속 Oscillo Scope #2 avrtools™ 2011/08/12 (금) 2869 0
51 Arduino Uno 및 USB2serial Uno의 소개 [2] avrtools™ 2011/07/30 (토) 3128 0
50 Arduino IDE에서 AVRISP-mkII 사용방법 avrtools™ 2010/10/22 (금) 7748 0
49 아듀이노 초음파 거리측정 및 응용 avrtools™ 2010/03/14 (일) 4034 0
48 M328-USB의 비밀 온도센서 avrtools™ 2010/01/02 (토) 3463 0
47 M168-mini로 만드는 USBasp avrtools™ 2009/10/10 (토) 5112 0
46 OBDuino ISO9141 소스의 설명 avrtools™ 2009/10/08 (목) 4017 0
45 아듀이노 0017 업그레이드 avrtools™ 2009/08/18 (화) 3544 0
44 Arduino 0015 업그레이드 avrtools™ 2009/06/01 (월) 3227 0
43 CC2500 Zigbee RF Modem #1 [4] avrtools™ 2008/11/20 (목) 6434 0
42 아듀이노 소프트웨어 Ver 0012 avrtools™ 2008/09/23 (화) 3896 0
41 Arduino 소프트웨어 설치방법 avrtools™ 2008/08/31 (일) 5431 0
40 아듀이노 PC 카메라 제작 avrtools™ 2008/10/28 (화) 7026 0
39 아듀이노 AVR-ISP V2의 제작 [6] avrtools™ 2008/10/22 (수) 8058 0
38 아듀이노 J1850-PWM 스캐너 avrtools™ 2008/10/15 (수) 4416 0
37 아듀이노 MPGduino의 제작 avrtools™ 2008/10/11 (토) 4733 0
36 아듀이노 OBD-II PID 처리함수 avrtools™ 2008/10/12 (일) 5332 0
35 아듀이노 OBD-II PID 송수신 함수 avrtools™ 2008/10/09 (목) 9430 0
34 아듀이노 ODB-II 스캐너 제작 [9] avrtools™ 2008/10/04 (토) 16793 0
33 아듀이노 AC전원 THD 측정 [2] avrtools™ 2008/09/30 (화) 6584 0
32 아듀이노 소프트방식 16Bit ADC avrtools™ 2008/09/23 (화) 5418 0
31 아듀이노 초음파 모듈의 제작. avrtools™ 2008/09/22 (월) 4689 0
30 아듀이노 Wii 프로세싱 avrtools™ 2008/09/20 (토) 4009 0
29 아듀이노 초음파 거리측정 avrtools™ 2008/09/20 (토) 5908 0
28 아듀이노 8x5 초소형 전광판 avrtools™ 2008/09/11 (목) 4524 0
27 아듀이노 4선식 터치패널 avrtools™ 2008/09/10 (수) 4544 0
26 아듀이노 2색 8x8 LED avrtools™ 2008/09/10 (수) 4751 0
25 아듀이노 24x6 LED 전광판 avrtools™ 2008/09/10 (수) 5273 0
24 아듀이노 8x8 LED 프로세싱 avrtools™ 2008/09/10 (수) 4004 0
23 아듀이노 32x16 RGB 전광판 avrtools™ 2008/09/06 (토) 13527 0
22 아듀이노 맥박검출기 avrtools™ 2008/09/03 (수) 9264 0
21 아듀이노 적외선 거리센서 avrtools™ 2008/09/01 (월) 5736 0
20 아듀이노 DMX 수신장치 [7] avrtools™ 2008/08/31 (일) 6595 0
19 아듀이노 AVR-ISP 만들기 avrtools™ 2008/08/30 (토) 4028 0
18 아듀이노 POV #3 avrtools™ 2008/08/30 (토) 3343 0
17 아듀이노 POV #2 avrtools™ 2008/08/30 (토) 3148 0
16 AVR 병렬포트 굽기장치 avrtools™ 2008/08/30 (토) 5056 0
15 아듀이노 DMX 송신기 avrtools™ 2008/08/28 (목) 4988 0
14 아듀이노 부트로더의 개조 [1] avrtools™ 2008/08/28 (목) 5667 0
13 아듀이노 병렬포트 굽기장치 avrtools™ 2008/08/26 (화) 4084 0
12 아듀이노 POV #1 avrtools™ 2008/08/26 (화) 3387 0
11 아듀이노 MIDI 드럼 leeky 2008/08/24 (일) 4621 0
10 아듀이노 SD/MMC 카드 avrtools™ 2008/08/24 (일) 9657 0
9 아듀이노 MIDI 플륫 avrtools™ 2008/08/24 (일) 3462 0
8 아듀이노 RGB LED avrtools™ 2008/08/23 (토) 4901 0
7 아듀이노 USB 오실로스코프 [2] leeky 2008/08/21 (목) 6286 0
6 가속도계 ADXL202 응용소스 avrtools™ 2008/08/20 (수) 4773 0
5 아듀이노 가속도센서 avrtools™ 2008/08/18 (월) 4744 0
4 아듀이노 RC서보 제어 avrtools™ 2008/08/17 (일) 5077 0
3 아듀이노 910-ISP 만들기 avrtools™ 2008/08/16 (토) 4590 0
2 아듀이노 온도센서, XBee 송수신 avrtools™ 2008/08/15 (금) 7344 0
1 아듀이노 기본명령 avrtools™ 2008/08/07 (목) 6420 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