'블루투스'에 해당되는 글 4건

  1. 2011.07.12 초음파센서를 이용한 거리측정 및 모터제어 (35)
  2. 2011.06.20 블루투스 RC카 - FB155BC통신 (5)
  3. 2011.05.22 블루투스(FB155BC) LED 제어 (18)
  4. 2011.05.10 라인트레이서 (JH)
안녕하세요 숭덕이 박제현 입니다. 회사에서 일끝나고 또 의자에 앉아 이렇게 글을 남깁니다. 조금 있으면 블로그시작한지 음 기억이 안나요!!!!!!!!암튼 초음파로 거리측정하고 모터를 움직여보겠습니다..


                                                             데이터시트
 

 

 





Apple | iPhone 3GS | 2011:07:12 22:03:03

 주파수 40Khz 
 최대 측정거리 3~4M 
 최소 측정거리 1CM 
 입력전압 5V 
 초당 측정횟수  1000ms(1초) 한번 측정시 50ms 1초당 약 20회
 입력신호 10usec 
 소비전류 4mA 
 크기 43 * 20 * 17 mm 
 스펙참조   (http://eleparts.co.kr/front/productdetail.php?productcode=005035002004000009&sort=)
 SRF-05 Single Pin Mode 



 

SRF-05에 제가 쓸 핀은 VCC,Echo,Trigger,Gnd 4개의 핀으로 회로와 초음파를 사용해보겠습니다.
초음파는 민감하고 잘 고장나는 센서이므로 회로도를 잘 보고 결선을 해주셔야 합니다. 이제 한번 이 센서를 먼저 분석해보도록 하겠습니다. 현재 가지고 있는 센서가 예전에 쓰던건데 고장난것인지 아닌지는 정확하게 모르겠으나 일단 초음파센서에 대해 적고 그 다음 빠른시일내에 테스트 해보겠습니다.

데이터시트에 보시면 타이밍 다이어그램이 있습니다. 그 그림을 가지고 설명을 드리겠습니다.


자 이 센서의 타이밍도 입니다. 정확한 펄스를 안맞춰도 되지만 정확한 값을 받지는 못하겠죠? 그래서 데이터시트에 나와있는 그대로 하면 좋습니다. 값은 나와도 값이 정확하지가 않으면 센서는 무용지물입니다.

처음 타이밍도를 보면 10us동안에 High로 되어 있습니다. 그 다음 Low로 내려간 상태에서 거리측정이 되시는것을 보실 수 있습니다. 10us의 펄스를 가하게 되면 2번째의 그림에서와 같이 8 cycles의 초음파가 발생합니다.


자 여기서 58us일때는 cm로 계산이 되며 148us는 inches로 계산된다고 나와있네요 제가 항상 실수하는것이
데이터시트를 정확하게 안보고 일단 만들어보고 그 다음에 실수한 부분을 찾는 다는 겁니다.
잘못되긴 했어도 만드는것이 재미있다 보니 어쩔 수 없이 안되더군요.

흠냥 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

초음파의 음파속도는 340m/s 입니다. 초음파는 음파를 발생하고 벽이나 장애물에 부딪치고 돌아오는 시간을 계산해보면 S= V * T/2 로 했을시 거리가 나오게 됩니다. 조금 어렵네요 저는 수학을 잘 못해서............



저도 예전에 한 2년전에 초음파센서로 거리측정한 후에 한번도 사용해보지를 못해서 정확하지는 않아서 인터넷을 찾아보니 1 ~ 2M 까지는 오차가 거의 없고 그 이상에서 1cm 정도 오차가 난다고 합니다... 참고하세요



 

자 이제 LCD에 대해 간단하게만 설명해야겠죠?????


자 집에 없는게 없군요 LCD도 있고 ^^ 일단 회로를 봐야겠군요

그냥 간단히 하고 넘어가겠습니다. LCD는 그다지 그렇게 많은 설명이 필요없을거 같습니다. 1번핀은 GND네요
당연히 GND는 연결을 해야겠지요?? 자 다음은 VDD 저는 여기에 5V를 연결하겠습니다. ㅋㅋㅋㅋ
자 이제 새로운게 나왔네요 Vo 흠 머지 Contrast 음 LCD에 선명도를 나타내는군요 !!!!   원래 가변저항을 써야하는데 제가 가난한 나머지 1k옴을 연결하고 GND와 연결하겠습니다.  가변저항을 연결하실때는 10K옴 가변저항을 사용하세요.
생각해보니까 이렇게 하난하나 설명하는거 보다 그냥 회로도를 올려드리는게 좋을거 같습니다. 다음에 한번에 해서 올려드리겠습니다...............


LCD TEST 완료....



주말에 조금 노느냐고 공부를 못했습니다. 지금 시간이 7월 17일 11시 24분 입니다.

지금 막 초음파 센서를 가지고 거리측정을 해봤습니다.

동영상을 찍어서 올리려고 했는데 전송잭을 안가져와서 그냥 일단 사진으로만 올리도록 하겠습니다





 #include <mega128.h>
#include <stdio.h>
#include <delay.h>
#include <lcd.h>
#asm
   .equ __lcd_port=0x1B ;PORTA
#endasm

#define Trigger         PORTD.4 //초음파 트리거
#define Echo            PINE.4 //초음파 에코

unsigned int i=0;
char s[21];


unsigned int getEcho(void){
    unsigned int range;
    while(!Echo);                  // Wait for echo pin to go high
    TCNT1=0; TCCR1B=2;            // 1:8 prescaler = 0.5us
    while(Echo);                   // Wait for echo pin to go low
    TCCR1B=8; range=TCNT1/116;   // the range in CM
    return(range);
}

void main(void){
    unsigned int range;
    DDRB=0x60;
    DDRD=0x10;
    DDRE=0x00;
    TCCR1A=0; TCCR1B=8;    // Set timer up in CTC mode
    delay_ms(100); lcd_init(16);
    while(1){    
        Trigger=1; delay_us(10); Trigger=0;    // 10uS
        range = getEcho(); 
        lcd_gotoxy(0, 0); sprintf(s,"Bongpjh");   lcd_puts(s);
        lcd_gotoxy(0, 2); sprintf(s,"Jae Hyun=%u cm", range); lcd_puts(s);
      
   
        if(range<30)
       {
       PORTB=0x20, delay_us(1300)  , PORTB=0x00, delay_ms(23);
       }                                                            
        else if(range<50)
       { 
       PORTB=0x20, delay_us(1050)  , PORTB=0x00, delay_ms(23);
       }
    
    
    }
  }



Posted by 숭덕이
AVR 8BIT/Bluetooth RC2011.06.20 15:38

안녕하세요 숭덕이 박제현 입니다.
이제 전원부를 설계를 다 했으면 UART쪽에 설계를 해보도록 하겠습니다.
일단 블루투스의 특징은 고 신뢰성, 저가의 무선통신 구현,저전력 입니다.
전송속도는 1Mbps ~ 3Mbps 사이가 됩니다. 또한 한대의 블루투스장치에 동시에 접속가능장치는 최대 7 입니다.
FB155BC는 3.3V의 전압이 필요하다고 하네요 그래서 LM1117-3.3V의 레귤레이터를 사용했습니다.



데이터시트를 보니 최대7V까지네요. 하지만 저희는 7V이상의 전압을 사용하지 않습니다. 하기에 5 -> 3.3V로 전압을 다운시키겠습니다. 자 3.3V를 VCC에 인가하고 GND는 공통그라운드에 자 이제 중요한 순서입니다. MCU에 RX와 BLUETOOTH TX를
크로스연결합니다. MCU에 TX와 BLUETOOTH의 RX도 크로스연결합니다. 크로스연결을 하지 않으면 데이터전송이 되지가
않습니다. 참고 바랍니다.

FB155BC에 대한 스펙은 최대통신거리가 30m이며 기본 10m 이다 예를 들어 앞에 장애물이 있거나 벽사이를 뜷고 신호가 나가야 하는 상황이라면 10m도 못갈수 있다.  자세한 사항은 제품스펙을 통해 보도록 하자!!!






 

'AVR 8BIT > Bluetooth RC' 카테고리의 다른 글

블루투스 RC 카 - 모터  (38) 2011.06.20
블루투스 RC카 - 동영상  (2) 2011.06.20
블루투스 RC카 - FB155BC통신  (5) 2011.06.20
블루투스 RC카 - 전원부  (0) 2011.06.20
Posted by 숭덕이
AVR 8BIT/통신(USART)2011.05.22 04:07

안녕하세요 숭덕이 박제현입니다.

오늘 많이 삽질을 했습니다..

저녁에 와서 요즘 스트레스로 어깨가 많이 결려서 하루종일 침대에 누워있다가 이렇게 하면 안되겠다 싶어

주말에 올리기로 한 블루투스(FB155BC) 글을 올립니다.

현재 새벽 4:03분이네요 

컴파일은 코드비젼이고요 크리스탈은 14.7456 입니다. 이것때문에 많은 고생을 했다는...........

STM32만 매일 하다가 오랜만에 AVR 잡으니까 힘드네요 AVR은 무조건 16Mhz 인줄알았습니다. ^^

그래서 UBRR을 103으로 보레이트 9,600으로 했는데 아무리 해도 안되길래 이걸로 1시간 동안 고민했다는.....^^

소스는 쉽다보니...책에서 레지스터값만 찾아서 공부하시면 쉬울듯 합니다..


 

 SOURCE



#include <mega128.h>
#include <delay.h>

char rx;

interrupt[USART0_RXC]void usart0_rxc(void){
rx=UDR0;

레지스터에 데이터를 쓰면 송신 데이터버퍼 TXBn에 값이 써지고, UDRn 레지스터를 읽으면 데이터 버퍼 RXBn에
들어있는 내용이 읽어진다.

if(rx=='1')PORTC=1,delay_ms(300);
if(rx=='2')PORTC=2,delay_ms(300);
if(rx=='3')PORTC=4,delay_ms(300);
if(rx=='4')PORTC=8,delay_ms(300);
if(rx=='5')PORTC=16,delay_ms(300);
if(rx=='6')PORTC=32,delay_ms(300);
if(rx=='7')PORTC=64,delay_ms(300);
if(rx=='8')PORTC=128,delay_ms(300);

}

void main(void)
{

DDRC=0xff;
UCSR0B=0x98; //RXEN , TXEN Enable
UCSR0C=0x06; //8bit mode
UBRR0H=0;
UBRR0L=95;

 

UBRRL = (F_CPU/(UART_BAUD_RATE*16L)-1; // 보레이트 계산식입니다.

보레이트때문에 고생을 많이 했네요 14.7456Mhz로 계산결과 97이 나왔는데 데이터시트에는
95로 적혀있길래 95로 사용하였고요 또한 에러율은 0% 마음에 드네요 속도면서 크게 문제가
되지는 않을거 같습니다.

#asm("sei")

}


 

결과물



'AVR 8BIT > 통신(USART)' 카테고리의 다른 글

블루투스(FB155BC)를 이용한 CDS센서 값 USART 찍기  (0) 2011.05.24
블루투스(FB155BC) LED 제어  (18) 2011.05.22
ATMEGA USART 이론  (0) 2011.05.20
Posted by 숭덕이


 




GNMK | MG_PHOTO | Average | 2010:06:04 19:59:54

GNMK | MG_PHOTO | Average | 2010:06:04 19:59:55

GNMK | MG_PHOTO | Average | 2010:06:04 19:59:56

GNMK | MG_PHOTO | Average | 2010:06:04 19:59:57

GNMK | MG_PHOTO | Average | 2010:06:04 19:59:58

GNMK | MG_PHOTO | Average | 2010:06:04 19:59:59

GNMK | MG_PHOTO | Average | 2010:06:04 20:00:00

GNMK | MG_PHOTO | Average | 2010:06:04 20:00:00

GNMK | MG_PHOTO | Average | 2010:06:04 20:00:01




'AVR 8BIT > 라인트레이서' 카테고리의 다른 글

라인트레이서 (JH)  (0) 2011.05.10
Posted by 숭덕이