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








 게시판 검색





 
 
회원등록 비번분실


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

      거래은행 바로가기
 
 Sensor Applications
센서 자료실
작성자 leeky        
작성일 2006/02/25
첨부#1 srf04_if_servo.src.zip (0KB) (Down:91)
Link#1 ultrasonic.html (Down:128)
ㆍ추천: 0  ㆍ조회: 718   
  SRF04 초음파 거리센서의 제작
 
 
SRF04 초음파 거리센서
이 고성능 초음파 거리검출기는 간단하면서도 30 mm에서 3000 mm 까지 놀라운 넓은 범위를 측정합니다.
이 범위는 당신의 로봇 혹은 다른 모든 정밀한 거리를 측저하는 프로젝트를 위해 완전하다.
이 센서는 당신의 MPU의 디지털 I/O 에 연결한다. 제어기로 인터페이스하는 많은 예를 보려면,
아래의 사이트 연결을 참조하라. 하나 혹은 2개의 거리계를 위한 nifty Lynxmotion SRF04를 찾을 수 있다. 

SRF04 초음파 거리센서 규격
전압 5v
전류 30mA Typ. 50mA Max
주파수 40KHz
최대거리 3 m
최소거리 3 cm
검출감도 3cm 반경 길이 2 m이상의 막대기
트리거입력 10uS최소. TTL 레벨
검출펄스 TTL레벨
무게 0.4 oz.
크기 1.75" w x 0.625" h x 0.5" d
지향각 45도
가격 : $36.00 / 44,000원
품명 : R93-SRF04 
 
----------------------------------------------------------------------------------------------------
◎ SRF04 초음파 거리센서의 사용방법
영국 Robot Electronics의 초음파 거리감지 센서입니다.
40KHz 의 초음파를 이용하여 3CM - 3M의 거리를 감지합니다.
스타트 신호를 입력한 후에 거리에 따른 시간 지연 신호가 출력됩니다.
MPU에서 타이머 기능을 이용하여 거리를 측정합니다.
모듈 내부에 마이크로 프로세서가 있는 신뢰성이 매우높은 초음파 거리감지 센서입니다.
.
◎ SRF04 초음파 거리센서의 회로도
 

작은기판은 SRF04로 안정화된 5V 전원을 공급한다.
Devantech 규격에 일치하면, SRF04 소나모듈은 50 mA를 요구할 것이다. 

----------------------------------------------------------------------------------------------------
SRF04 센서 응용소스
코드는 작은 기판 srf04-3.c를 위한 대화형의 C로 쓰여 졌다.
http://www.acroname.com/robotics/info/examples/srf04-3/srf04-3.c
 
/*********************************************/
/* HANDY BOARD EXAMPLE FOR DEVANTECH SRF04 ULTRASONIC RANGING MODULE */
/* This code is based heavily on the Polaroid Sonar Ranging code at: */
/* http://handyboard.com/software/sonar.html */
/* developed by Fred Martin fredm@media.mit.edu */
/*********************************************/
void main()
{
sonar_init();
while (1) {
int result;
result= sonar_sample();
if (result != -1)
printf("%d ", result);
else
printf("@@@@@@@ ");
tone((float)(result/8),0.2);
}
}

void sonar_init() {
bit_set(0x1026, 0x80); /* set Digital Input #9 as output */
bit_clear(0x1021, 1); /* at TCTL2, */
bit_set(0x1021, 2); /* set TIC3 for falling edge */
}
.
int sonar_sample() {
int start_time;
int dist;
poke(0x1023, 1); /* clear tic3 flag */
start_time= peekword(0x100e); /* capture start time */
bit_set(0x1000, 0x80); /* send init pulse */
bit_clear(0x1000, 0x80);

while (peek(0x1000) & 0x1) { /* wait until receive echo */
if ((peekword(0x100e) - start_time) < 0) {
/* if too much time has elapsed, abort */
return -1;
}
defer(); /* let others run while waiting */
}
msleep(10L); /* give unit time to reset */
dist= peekword(0x1014)-start_time;
return dist; /* tic3 has time of echo */
}
.
제어기는 음향장치(sonar)를 읽으려면 음향장치(sonar)의 초기화 핀(INIT) 핀을 반드시 올리고 내려야 한다.
입력핀 INIT이 low로 된 다음, 음향장치(sonar)는 충격파(ping)를 방출한다.
충격파(ping) 다음은, 출력 ECHO 핀이 high로 된다음,
모듈이 반사파(echo)를 수신하면 다시 low로 된다.
작은 기판은 내부의 타이머로 반사파의 지연시간(delay)을 측정한다.
타이머는 반사파(echo)의 내리막(falling edge)에서 작동을 중지한다.
제어기는 모듈에 알맞은 리셋을 주려면 10 ms을 대기한다.
.
- 접속방법
 

- 조립
회로는 다른 입력과 출력들로 연습된 PIC는 통신에 사용된 같은 회로를 사용한다
이 시간은 센서로 부터 들어올 것이다. 그리고 출력은 센서의 제어와 서보로 간다.
이 것을 위한 PIC 16C84A의 연결 배선은 다음과 같아야 한다.
.
Port A0 (그림 1 - 핀 17) <=WIRED TO=> 센서로 부터의 출력 (그림 2 - 출력)
Port B3 (그림 1 - 핀 9) <=WIRED TO=> 센서로 입력 (그림 2 - 입력)
Port B0 (그림 1 - 핀 6) <=WIRED TO=> 서보로 명령 (백색 선)
.
이 회로는 우리에게 PIC의 포트A로 부터 수신을 허용한다. 그리고 포트 B로 출력을 송신한다.
포트는 분리된 입력과 출력 그리고 다른 센서의 추가를 용이하게 선택되었다.
다른 포트는 사용되었다. 그러나, 코드는 알맞게 바꾸어야 한다.
.
-SRF04 펄스
 
.
아래에 보인 명령신호는 반드시 센서로 부터 읽기를 시작하고 결과출력을 생생하였다
초기화를 읽으면, 센서로 가는 명령은 반드시 low로 고정(hold)되고, 최소 10 us 동안 high로 된다.
펄스는 명령신호의 내리막에서 생성된다. 명령이 주어진 다음에,
 반드시 센서가 high로 가는 출력이 보일 때 까지 대기한다.
출력은 가급적 빨리 high로 간다. MPU는 출력 신호가 low로 다시 갈 때까지 기록을 시작한다.

----------------------------------------------------------------------------------------------------
■ SRF04 응용소스 #2
참조 : http://www.robot-electronics.co.uk/htm/srf04.shtml

* SFR04
* +----------+
* 5V ---->|o |
* P0.2(INT0) Echo ---->|o |
* P0.3 Trigger Pulse ---->|o |
* NC ---->|o |
* GND ---->|o |
* +----------+
****************************************************/
#include
#include
#include

_sfrbit TRIGER = _p0^3; // 격발펄스 출력 ---> SRF04의 Triger 입력으로 간다
void _InitSerialPort(void);
void _interrupt IVN_INTERRUPT0 sonar_data_out()
{ // INT0 인터럽트

char vl;
char vh;
_tmr3cn &= 0xFB; // Timer 3 정지
vl = _tmr3l;
vh = _tmr3h;

_p1 = vl; // Port 1 에서 Low
_p3 = vh; // Port 3 에서 High

_dac0l = vl; // DAC0 에 출력
_dac0h = vh;

_tmr3cn |= 0x04; // Timer 3 작동
}

void _interrupt IVN_TIMER3 sonar_start()
{ // Timer 3 오버플로우 인터럽트

int i;
_tmr3cn &= 0x7F; // Timer 3 Overflpw Flag 지움

TRIGER = 1; // Trigger 펄스 High
for ( i = 0; i<3; i++)
{
;
} // 12 uSEC Delay Time (11.0592MHz OSC)
TRIGER = 0; // Trigger 펄스 Low
}

void main(void)
{
_wdtcn = 0xDE; // Watch Dog 중지
_wdtcn = 0xAD; //
_oscxcn = 0x65; // XFCN = '101' =11.0592 MHz 크리스털
_oscicn = 0x08; // 내장 오실레이터 금지하고 외부 크리스탈 사용
_xbr0 = 0x04; // UART 허가
_xbr1 = 0x04; // INT0 허가
_xbr2 = 0x40; // Crossbar 허가
_prt0cf = 0x08; // Port P0.3 Trigger 펄스 비트 = Push-Pull Mode

_ref0cn = 0x03; // 내장 Band Gap 기준전압 On, Reference Buffer On
_dac0cn = 0x80; //

_tmr3rll = 0x00; // Timer 3 Auto Re-load register low
_tmr3rlh = 0x40; // Timer 3 Auto Re-load register high
_tmr3l = 0x00; // Timer 3 시작 값 Low 바이트
_tmr3h = 0x00; // Timer 3 시작 값 High 바이트
_tmr3cn |= 0x04; // Timer 3 작동시작

TRIGER = 0;
_InitSerialPort(); // 11.0592MHz 오실레이터에서 19200 BPS

_it0 = 1; // 내리막 Triger (INT0)
_ex0 = 1; // INT0 허가
_eie2 |= 0x01; // Timer 3 Interrupt 허가
do
{
;
} while(1);


AVRTOOLS™
   
윗글 SHT11 습도센서 SX18 인터페이스
아래글 Ambient Light Sensors TSL2550
    N         제목    글쓴이 작성일 조회 추천
74 AT89C2051과 EM4095를 사용한 RFID 장치의 제작 leeky 2006/12/31 (일) 1214 0
73 UserPort for Windows 2000 leeky 2007/11/12 (월) 840 0
72 아날로그 PID 제어 회로 leeky 2007/11/12 (월) 1424 0
71 Windows Scope 2K4 leeky 2007/11/12 (월) 972 0
70 12C508 금속검출기 leeky 2006/02/24 (금) 1137 0
69 16C84 LCD표시 L,C 메터 leeky 2006/02/25 (토) 1181 2
68 89C2051 LCD표시 LC메터의 제작 leeky 2006/02/14 (화) 1193 8
67 12C508A 초음파 거리 측정기 avrtools 2006/02/23 (목) 1074 0
66 Caliper to computer (RS-232) interface leeky 2006/02/23 (목) 1106 4
65 가속도센서 ADXL202의 PIC12C508 인터페이스 leeky 2006/02/20 (월) 1066 2
64 16F84 광학식 심박측정기 leeky 2006/02/27 (월) 1144 6
63 12C508 전자 나침판 leeky 2006/02/27 (월) 741 0
62 ENC28J60 Ethernet to SPI Header Board leeky 2007/03/26 (월) 1010 0
61 SHT11 습도센서 8051 인터페이스 leeky 2006/02/14 (화) 1061 0
60 SHT11 습도센서 SX18 인터페이스 leeky 2006/03/16 (목) 704 2
59 SRF04 초음파 거리센서의 제작 leeky 2006/02/25 (토) 718 0
58 Ambient Light Sensors TSL2550 avrtools 2006/04/06 (목) 518 0
57 PIC16F877A BioSense Physiologic Sensing leeky 2006/04/06 (목) 631 0
56 Electrocardiogram (ECG) Front End leeky 2006/04/06 (목) 702 0
55 Biometric Interface Board leeky 2006/04/06 (목) 820 0
54 MAX2242 802.11b 블루투스 RF증폭기 leeky 2006/04/06 (목) 516 0
53 AX.25 9600BPS 무선모뎀 L2PCX leeky 2006/04/06 (목) 406 0
52 TCS230 색상검출 평가키트 leeky 2006/04/06 (목) 1688 0
51 100V10A 50W 전자부하 leeky 2006/04/06 (목) 601 0
50 FLAME SENSOR UVTRON R2868 leeky 2006/04/06 (목) 586 0
49 Compact Optical Image Scanner leeky 2006/04/06 (목) 525 0
48 지자기 방위계 모듈 CMPS03 leeky 2006/04/06 (목) 675 0
47 0~1.5KV 정전기 측정센서 PKE05A1 leeky 2006/04/06 (목) 364 0
46 Rain Sensor 인터페이스 회로 leeky 2006/04/06 (목) 592 0
45 초음파 감지 센서 leeky 2006/04/06 (목) 597 0
44 HUMIDITY SENSOR HS-1100 leeky 2006/04/06 (목) 463 0
43 Relative Humidity Sensor KSH01, KSH-02 leeky 2006/04/06 (목) 353 0
42 Digital Radar Speedometer leeky 2006/04/06 (목) 522 0
41 Touch Sensitive Switch leeky 2006/04/06 (목) 566 0
40 Economy radar detector leeky 2006/04/06 (목) 400 0
39 Twin Loop metal detector leeky 2006/04/06 (목) 532 0
38 Proximity Detector CS209A/D leeky 2006/04/06 (목) 521 0
37 Lego Sound Sensor leeky 2006/04/06 (목) 471 0
36 12C508 IR Proximity Detector leeky 2006/04/06 (목) 681 0
35 Sharp IR Sensor Hack leeky 2006/04/06 (목) 658 0
34 TIL300 PRECISION LINEAR OPTOCOUPLER leeky 2006/04/06 (목) 414 0
33 Analog Opto Isolator leeky 2006/04/06 (목) 459 0
32 Rich Caudle's capaciflector leeky 2006/04/06 (목) 301 0
31 Geiger Tube leeky 2006/04/06 (목) 410 0
30 Lynxmotion Infrared Proximity Detector leeky 2006/04/06 (목) 388 0
29 Low Power LED Flasher leeky 2006/04/06 (목) 466 0
28 백색 LED BLU 구동회로 leeky 2006/04/06 (목) 498 0
27 저전압 백색 LED 구동회로 leeky 2006/04/06 (목) 534 0
26 IR LED 송신회로 avrtools 2006/04/06 (목) 529 0
25 LED 총방사 광량의 측정 leeky 2006/04/06 (목) 430 0
24 자외선 측정센서의 교정 leeky 2006/04/06 (목) 382 0
23 UV센서 S9050의 데이터 leeky 2006/04/06 (목) 296 0
22 디지털 자외선 메터 leeky 2006/04/06 (목) 345 0
21 Simple Metal Detector leeky 2006/04/06 (목) 538 0
20 DS1820 온도센서 읽기 leeky 2006/04/04 (화) 597 0
19 RC5 적외선 리모콘의 신호처리 leeky 2006/02/17 (금) 687 0
18 NEC 적외선 리모콘의 전송규격 leeky 2006/02/17 (금) 590 0
17 MBI-6001 TRANSLESS LED DRIVER leeky 2006/02/14 (화) 413 0
16 PC로 제어하는 AD9850 DDS 신호발생기 leeky 2006/02/14 (화) 457 0
15 2400 Mhz test oscillator leeky 2006/02/14 (화) 479 0
14 DC BRUSHLESS FANS leeky 2006/02/14 (화) 565 0
13 RF mW Meter for SHF (2300MHz) leeky 2006/02/14 (화) 394 0
12 FET로 만드는 400W SSR leeky 2006/02/14 (화) 628 0
11 Scope2k4 소프트웨어 및 하드웨어 회로 leeky 2006/02/14 (화) 746 0
10 LTC1298를 사용한 PC 병렬포트용 ADC leeky 2006/02/14 (화) 414 0
9 0~14V 가변정전압, 0~2A 가변정전류 전원 avrtools 2006/02/14 (화) 540 0
8 ATV 1240-1300MHz 튜너용 PLL leeky 2006/02/14 (화) 293 0
7 1 Transistor FM Microphone leeky 2006/02/14 (화) 349 0
6 Helical Antenna Design Software leeky 2006/02/13 (월) 451 0
5 IRF510을 사용한 7MHz 출력10W 증폭기, PLL leeky 2006/02/13 (월) 516 0
4 MC34063A 설계용 계산기 avrtools 2006/02/13 (월) 487 0
3 RS232 신호 변환회로 leeky 2006/02/13 (월) 636 0
2 Sound card based multimeter Scope leeky 2006/02/13 (월) 770 0
1 2400MHz Helical Antenna Design leeky 2006/02/08 (수) 414 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