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








 게시판 검색





 
 
회원등록 비번분실


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

      거래은행 바로가기
 
 Sensor Applications
아듀이노 공개소스
작성자 avrtools™        
작성일 2008/09/22
첨부#2 400STR100.pdf (86KB) (Down:657)
ㆍ추천: 0  ㆍ조회: 4588   
  아듀이노 초음파 모듈의 제작.
초음파 센서 모듈의 제작.
아듀이노 기판과 초음파 센서 그리고 신호증폭회로를 연결하면, 초음파 센서 모듈을 직접 만들 수 있다.
초음파는 출력진폭에 비례하여 검출거리가 늘어나며, 작은 출력을 사용할수록 반사각도가 좁아진다.
 
센서텍에서 판매하는 초음파 센서             디바이스마트에서 판매하는 초음파 센서
참조 : http://www.st4u.com/                 참조 : http://devicemart.co.kr/  
  
 
센서텍(주) 샘플의 소매가격.                    디바이스마트 소매가격   
ST-501T/R : 3,000원(부가세 별도)            400ST100, 400SR100 : 2,800원(부가세 별도)

 
초음파 진동자(ST501 T/R)의 공진주파수(40.35 KHz)와 송수신주파수 (41 KHz)
 
저출력 초음파 거리검출 회로 #1 (검출거리 50cm 이하)
 
 
초음파 거리검출 회로 #2 (송신 증폭회로 추가, 검출거리 50cm 이상)
 
 
초음파 거리검출 회로 #3 (수신금지 DIS핀 추가) 
 
 

초음파 소스를 시험한 기판
M18-USB 기판 소개 : http://www.avrtools.co.kr/technote7/board.php?board=tnshoppublic&command=body&no=44

 
 
저출력 초음파 거리측정 소스
// http://www.avrtools.co.kr/
// 저출력 초음파 거리측정 소스
int usDis = 6;             // 초음파 수신금지 = D6
int usTx = 7;              // 초음파 송신핀 = D7
int usRx = 8;              // 초음파 수신핀 = D8
int ledPin = 13;           // LED 표시핀 = D13

 
int val = 0;                 // 수신 포트 값
long txValue = 0;        // 변환된 측정 값
long time_cnt = 0;       // 실측정 카운터


// 초기화 함수
void setup()
{
  beginSerial(9600);                  // 직렬통신 포트를 9600 bps로 시작
  pinMode(usDis, OUTPUT);     // 초음파 수신금지 = D6
  pinMode(usTx, OUTPUT);      // 초음파 송신핀 = D7
  pinMode(ledPin, OUTPUT);     // LED 표시핀 =  출력
}

 
// 무한반복 주함수
void loop()
{
  digitalWrite(usDis, HIGH);     // 초음파 수신금지 (회로에 따라서 사용할 수 있음)
  usSignal_Tx(8);                  // 40KHz 초음파 펄스를 8개 출력한다 (송신시간 =200us)
  delayMicroseconds(200);       // 송신파형이 완전히 없어질 때까지 200us을 기다린다
  digitalWrite(usDis, LOW);        // 초음파 수신허가 (회로에 따라서 사용할 수 있음) 

 
  time_cnt = 0;                          // 측정 카운터를 0으로 리셋
  usSignal_Rx();                      // 반사파가 들어올 때 까지의 시간을 측정
  time_cnt = time_cnt +400;        // 송신시간 + 송신감쇄시간을 카운터에 추가한다


  txValue = time_cnt;               // 초음파 값을 읽어온다
  // txValue = txVlaue / 5.822;  // (us / 5.822) = 측정거리 [mm]

  us_Trans();                          // 측정한 거리를 직렬포트로 송신한다.
 
  if (time_cnt >500)  digitalWrite(ledPin, HIGH);  // 수신값이 500us 이상이면 LED를 켠다
  delay(100);                           // 거리측정 반복시간 = 100ms
  digitalWrite(ledPin, LOW);       // 시간이 되었으므로 LED를 무조건 끈다
}

 
// 40KHz 초음파 펄스를 송신
void usSignal_Tx(int pulse)
{
  int i;
  for (i=0; i<pulse; i++)            // 40.5KHz 주파수 발생 = 24.7us x 8펄스 = 197.6 us 
  {
    delayMicroseconds(9);      // 9us을 기다린다 (송신 주파수가 낮으면 줄인다)
    digitalWrite(usTx, HIGH);    // HIGH를 출력하면 12.35us가 됨 (함수를 실행하는 지연시간을 포함)
    delayMicroseconds(9);      // 9us을 기다린다 (송신 주파수가 낮으면 줄인다)
    digitalWrite(usTx, LOW);     //  LOW를 출력하면 24.7us가 됨 (함수를 실행하는 지연시간을 포함)
  }
}


// 초음파 반사신호의 수신 (전용명령을 사용한 예)
void usSignal_Rx()
{
   time_cnt = pulseIn(usRx, LOW);  // usRx 핀에 들어오는 LOW 펄스폭을 us으로 측정
}

 
// 측정된 반사신호 값을 직렬포트로 송신
void us_Trans()
{
  serialWrite(10);                      // 줄 바꾸기 (LF)
  printInteger(txValue);             // 측정값을 직렬포트로 송신한다

  Serial.print(" us");                  // 측정 단위를 송신한다. (변환값을 사용하면, mm로 바꾸어야 한다)
  serialWrite(13);                      // 송신 끝 (CR)
}

초음파 전달시간
매질                     전달속도 m/s
이산화탄소            268
공기 0°C               331.6
공기 20°C              344      <--- 이 값이 공기중에서 사용하는 초음파 진행속도이다
공기 30°C              349.6
수소                     1310
물                        1483     <--- 물속에서의 초음파 진행속도가 빠르고, 감쇄가 매우 적다.
글리세린               1923
황동                     3420   
유리                     5000
철                        5200
 
초음파 센서의 송수신 제어와 실제의 파형
2m 이내의 거리측정에는 8 펄스를 출력하고, 2m 이상의 거리검출에서는 16펄스를 출력한다.
  
초음파 펄스 송신시간 200us이후에, 실제의 초음파 센서에서 발생한 진동이 감쇄하는 시간 200us이 있다.
초음파진동 감쇄시간에는 수신이 불가능하다. 그러므로 송신펄스 200us + 감쇄시간 200us 이후에 수신을 시작한다.

송신펄스의 시작 ~ 수신신호의 시작 까지의 시간이 거리 x2 값이며, 초음파가 반사된 곳까지 왕복한 시간이다.
송신펄스 끝 ~ 수신신호 끝 까지를 이용할 수도 있으나, 감쇄진동의 레벨이 흔들리고, 낮으므로 측정 정도가 내려간다.

초음파 센서의 온도보상
각 온도에서의 초음파 진행속도는, 331.5 m/s + (0.6 *  온도°C) = 초음파 속도[m/sec] 이다.

 온도 [°C]  초음파 속도 [m/sec]
-10 325.5
0 331.5
10 337.5
20 343.5
30 349.5
40 355.5
50 361.5

거리 변환 공식
Distance[µs*cm] = Time[µs] / Velocity of sound[µs/cm] x 2 이므로.
20 °C에서 실제거리는, 측정시간 (us) / 5.822 (us/mm)  = 측정거리 (mm)로 계산할 수 있다.

20 °C에서, 초음파 반사파가 들어온 시간이 2 초, 343.5 m를 왕복한 시간이라면,
2000000us / 5.822(us/mm) =   343524 mm /1000 = 343.5 m로 공식은 이상이 없다. 


이 프로그램은 무료 소프트웨어로, 신체와 재산 상의 어떤 위험과 손해를 보상하지 않습니다.
이 프로그램은 GNU 무료 소프트웨어 배포규정을 따릅니다.
Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
AVRTOOLS™
   
윗글 아듀이노 소프트방식 16Bit ADC
아래글 아듀이노 Wii 프로세싱
    N         제목    글쓴이 작성일 조회 추천
61 비접점식 QTouch 방식 근접검출 스위치 leeky 2016/01/21 (목) 487 0
60 Arduino 고속 오실로스코프 #3 avrtools™ 2012/03/29 (목) 17510 0
59 아날로그 8ch 데이터 로거 avrtools™ 2012/03/29 (목) 2653 0
58 Arduino DMX512 송신기 제작 avrtools™ 2012/03/15 (목) 2749 0
57 nRF24L01 무선모듈의 사용방법 avrtools™ 2012/03/07 (수) 5490 0
56 초음파 거리 측정기의 제작 avrtools™ 2011/09/18 (일) 4592 0
55 3축 가속도 센서 ADXL335 avrtools™ 2011/09/09 (금) 3143 0
54 Arduino Uno USBserial 펌웨어의 변경 avrtools™ 2011/08/27 (토) 2815 0
53 Arduino MIDI의 소개 avrtools™ 2011/08/19 (금) 3173 0
52 Arduino 고속 Oscillo Scope #2 avrtools™ 2011/08/12 (금) 2798 0
51 Arduino Uno 및 USB2serial Uno의 소개 [2] avrtools™ 2011/07/30 (토) 3043 0
50 Arduino IDE에서 AVRISP-mkII 사용방법 avrtools™ 2010/10/22 (금) 7631 0
49 아듀이노 초음파 거리측정 및 응용 avrtools™ 2010/03/14 (일) 3962 0
48 M328-USB의 비밀 온도센서 avrtools™ 2010/01/02 (토) 3398 0
47 M168-mini로 만드는 USBasp avrtools™ 2009/10/10 (토) 4996 0
46 OBDuino ISO9141 소스의 설명 avrtools™ 2009/10/08 (목) 3927 0
45 아듀이노 0017 업그레이드 avrtools™ 2009/08/18 (화) 3459 0
44 Arduino 0015 업그레이드 avrtools™ 2009/06/01 (월) 3158 0
43 CC2500 Zigbee RF Modem #1 [4] avrtools™ 2008/11/20 (목) 6315 0
42 아듀이노 소프트웨어 Ver 0012 avrtools™ 2008/09/23 (화) 3822 0
41 Arduino 소프트웨어 설치방법 avrtools™ 2008/08/31 (일) 5341 0
40 아듀이노 PC 카메라 제작 avrtools™ 2008/10/28 (화) 6940 0
39 아듀이노 AVR-ISP V2의 제작 [6] avrtools™ 2008/10/22 (수) 7902 0
38 아듀이노 J1850-PWM 스캐너 avrtools™ 2008/10/15 (수) 4356 0
37 아듀이노 MPGduino의 제작 avrtools™ 2008/10/11 (토) 4616 0
36 아듀이노 OBD-II PID 처리함수 avrtools™ 2008/10/12 (일) 5242 0
35 아듀이노 OBD-II PID 송수신 함수 avrtools™ 2008/10/09 (목) 9312 0
34 아듀이노 ODB-II 스캐너 제작 [9] avrtools™ 2008/10/04 (토) 16506 0
33 아듀이노 AC전원 THD 측정 [2] avrtools™ 2008/09/30 (화) 6442 0
32 아듀이노 소프트방식 16Bit ADC avrtools™ 2008/09/23 (화) 5326 0
31 아듀이노 초음파 모듈의 제작. avrtools™ 2008/09/22 (월) 4588 0
30 아듀이노 Wii 프로세싱 avrtools™ 2008/09/20 (토) 3939 0
29 아듀이노 초음파 거리측정 avrtools™ 2008/09/20 (토) 5814 0
28 아듀이노 8x5 초소형 전광판 avrtools™ 2008/09/11 (목) 4421 0
27 아듀이노 4선식 터치패널 avrtools™ 2008/09/10 (수) 4469 0
26 아듀이노 2색 8x8 LED avrtools™ 2008/09/10 (수) 4652 0
25 아듀이노 24x6 LED 전광판 avrtools™ 2008/09/10 (수) 5178 0
24 아듀이노 8x8 LED 프로세싱 avrtools™ 2008/09/10 (수) 3935 0
23 아듀이노 32x16 RGB 전광판 avrtools™ 2008/09/06 (토) 13439 0
22 아듀이노 맥박검출기 avrtools™ 2008/09/03 (수) 9154 0
21 아듀이노 적외선 거리센서 avrtools™ 2008/09/01 (월) 5631 0
20 아듀이노 DMX 수신장치 [7] avrtools™ 2008/08/31 (일) 6482 0
19 아듀이노 AVR-ISP 만들기 avrtools™ 2008/08/30 (토) 3973 0
18 아듀이노 POV #3 avrtools™ 2008/08/30 (토) 3282 0
17 아듀이노 POV #2 avrtools™ 2008/08/30 (토) 3091 0
16 AVR 병렬포트 굽기장치 avrtools™ 2008/08/30 (토) 4948 0
15 아듀이노 DMX 송신기 avrtools™ 2008/08/28 (목) 4910 0
14 아듀이노 부트로더의 개조 [1] avrtools™ 2008/08/28 (목) 5593 0
13 아듀이노 병렬포트 굽기장치 avrtools™ 2008/08/26 (화) 4026 0
12 아듀이노 POV #1 avrtools™ 2008/08/26 (화) 3319 0
11 아듀이노 MIDI 드럼 leeky 2008/08/24 (일) 4533 0
10 아듀이노 SD/MMC 카드 avrtools™ 2008/08/24 (일) 9564 0
9 아듀이노 MIDI 플륫 avrtools™ 2008/08/24 (일) 3395 0
8 아듀이노 RGB LED avrtools™ 2008/08/23 (토) 4825 0
7 아듀이노 USB 오실로스코프 [2] leeky 2008/08/21 (목) 6201 0
6 가속도계 ADXL202 응용소스 avrtools™ 2008/08/20 (수) 4688 0
5 아듀이노 가속도센서 avrtools™ 2008/08/18 (월) 4632 0
4 아듀이노 RC서보 제어 avrtools™ 2008/08/17 (일) 4984 0
3 아듀이노 910-ISP 만들기 avrtools™ 2008/08/16 (토) 4508 0
2 아듀이노 온도센서, XBee 송수신 avrtools™ 2008/08/15 (금) 7204 0
1 아듀이노 기본명령 avrtools™ 2008/08/07 (목) 6312 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