센서 > 2Y0A21 공식으로 거리값 계산

TODAY726 TOTAL2,230,408
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 센서 | 적외선거리센서 | 2Y0A21 공식으로 거리값 계산

페이지 정보

작성자 키트 작성일2017-08-29 15:53 조회1,516회 댓글0건

본문

2093095301_m9Wxa5iq_25C025FB25BF25DC25BC25B125BC25BE25BC25AD2.png3Ftype3Dw740

2093095301_ac2MAF47_25C025FB25BF25DC25BC25B125BC25BE25BC25AD.png3Ftype3Dw740

2093095301_lE41CDYr_25C125A625B825F1_25BE25F825C025BD.PNG3Ftype3Dw740 

 

 거리에 역수를 취했지만 직선성이 좀 떨어집니다.

0.4V 정도에서 0.01(100cm)

3.0V 에서 0.014(7.14cm) 입니다.

 

ADC입력을 받으면 어떻게 처리 해줘야 할까요

우선 전압으로 변경하면

float adc_f;

int adc_i;

 

adc_i=ADCW;                         // ADC 값을 받아서

adc_f= (float)adc_i * 5.0 / 1023.0; // 전압으로 변경하고  0~5V

if(adc_f>3.0)adc_f=3.0;             // 3.0V 컷

if(adc_f<0.4)adc_f=0.4;             // 0.4V 컷

adc_f-=0.4;                         // 0.4~3.0를 0.0~2.6V로 변경

 

adc_f=(adc_f*0.13/2.6) + 0.01;    // 거리의 역수 형태로 변경

// x축이 0.01~0.14 이므로 0.14-0.01=0.13, 전압 최대치=2.6V

// 0.4V에서의 0.01를 더해줍니다.

 

adc_f=1.0/adc_f;                   //역수를 취해서 cm로 환산 합니다.

 

 

 

직선성이 그다지 좋지 않아서 제대로 값이 나올런지 모르겠습니다.

 

댓글 0

조회수 1,516

등록된 댓글이 없습니다.

센서HOME > 센서 > 적외선거리센서 목록

게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기