超声波测距系统设计报告

超声波测距系统设计报告
超声波测距系统设计报告

时间:周一晚上

组号:8

创新性实验报告

题目超声波测距报警系统设计

学院电子信息学院

专业电子信息工程

班级08041812

学号08041832 08041948 08041906

学生姓名吴思徐旭东张翠翠

指导教师刘公致

完成日期2010年11月

摘要

本文详细介绍了一种基于单片机的超声测距系统。该系统以空气中超声波的传播速度为确定条件,利用反射超声波测量待测距离。其原理是:单片机发出的超声波,通过换能器发射出去,遇到被测物体后翻身回来,计算此超声波从发射出道接受的时间差从而得出被测物体到测距仪的距离,并通过GSM模块实现短信报警。针对测距系统发射、接受、检测、显示部分的总体设计方案做了论证。给出了系统的硬件原理图和软件原理图。

The Design of System for Ultrasonic Distance

Measurement Using MCU

Abstract

The thesis introduces a kind of single-pulse-reflection ultrasonic distance meter system in detail based on single chip processor.The system could measure certain distance on the premise that the speed of reflected wave in the air is fixed.Based on the study of single chip processor,this paper summarizes the development and fundamental principle of ultrasonic detection.Then it presents the theory and characters of ultrasonic sensor.Moreover,it proposes the whole structure of the system by introducing the function of ultrasonic distance meter.Then this paper introduces the principle of distance-measuring-device which is designed with the single chip PProcessor of 51series.This principle is based on the ultrasonic measure which is calculated by the time used by ultrasonic traveling from the target,we also .And then the transmission,receiver,detection,display scheme of this distance meter system are brought out.This paper presents the design of the Circuit and debug of the ultrasonic distance sensor.

Key words:single-chip processor,ultrasonic,distance measurement,GSM

1、总体方案设计

1.1超声波测距原理

超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射与接收回波的时间差t,然后求出距离S=Ct/2,式中的C为超声波波速。由于超声波也是一种声波,其声速C与温度有关,表一列出了几种不同温度下的声速。在使用时,如果温度变化不大,则可以认为声速基本不变的,如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测的超声波往返的时间,既可求得距离。这就是超声波测距仪的机理。

温度

(℃)

-30 -20 -10 0 10 20 30

100

声速

(米/

秒)

313 319 325 323 338 344 349 386

表一

1.2方案比较

方案一

根据设计要求综合各方面的因素,可采用AT89S52单片机作为主控器,用模拟SPI驱动诺基亚5110液晶显示屏,实时显示数据,超声波驱动信号用单片机的定时器完成,同时,我们通过串口发送AT指令控制GSM模块实现了短信报警。超声波测距器的系统框图如下:

方案二

本设计的整体框图如下图一所示,主要由超声波发射,超声波接受与信号转换,按键显示电路与温度传感器电路组成。超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差T,然后求出距离S=CT/2,式中的C为超声波波速。在常温下,空气中的声速约为340m/s.由于超声波也是一种声波,其传播速度C与温度有关,在使用时,如果温度变化不大,则可认为声速是基本不变的。因本系统测距精度要求很高,所以通过对温

度的检测对超声波的传播速度加以校正。超声波传播速度确定后,只要测的超声波往返的时间,如图下图二波形所示。即可求得距离。这就是超声波测距系统的基本原理。

图一

图二

1.3方案选择

比较方案一与方案二,两者有很多相似之处,两个设计都运用到了单片机,用到了同一类型的传感器。运用了LCD显示。但综合分析:方案一,软件的编写方面比较容易理解、实现。而方案二的软件部分与方案一比较,就略显麻烦,而且对外围还需要一些辅助电路,增加了温度补偿电路,程序编写复杂。综合分析之下,本设计采用方案一,另外GSM手机现在已经很普及,而且GSM短信廉价,实现简单,实现超远距离报警。

2、单元模块设计

2.1各单元模块功能介绍及电路设计

2.1.1单片机系统设计

详见原理图附录一

2.1.2超声波测距模块

此系统我们采用了HC-SR04超声波测距模块,该模块可提供2cm-400cm的非接触式距离感测功能,测距精度可高达3mm;模块包括超声波发射器和接收器与控制电路。

其工作原理:

(1) 采用IO 口TRIG 触发测距,给至少10us 的高电平信号;

(2) 模块自动发送8个40khz 的方波,自动检测是否有信号返回;

(3) 有信号返回,通过IO 口ECHO 输出一个高电平,高电平持续的时间就是

超声波从发射到返回的时间。测试距离=(高电平时间×声速)/2;

实物图如下图五所示。VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四支线。

图五

2.1.3 TC35GSM 模块

另外我们还用TC35实现了无线语音报警功能。GSM 模块选用西门子公司的TC35,在应用系统中很容易集成,具有如下特点: (1)频段为双频GSM 900 MHz 和GSM 1800 MHz ; (2)支持数据、语音、短消息和传真; (3)

电源范围宽;

(4)具有RS 232接口和语音接口;

电路连接简单,单片机的串行接口与TC35的串口相连,采用异步串行通信。TC35的外围电路图见附录二。

3、软件设计

3.1 软件设计原理及设计所用工具

本次设计主要利用C语言编写程序,根据功能的需要进行编程,其中软件设计所用的软件主要是Keil uVision3软件,PROTUES ISIS软件。

3.2超声波测距的算法原理

超声波在空气中传播速度为每秒钟340米(15℃)。X2是声波返回时刻,X1是声波发声的时刻,X2-X1得出的是一个时间差的绝对值。

3.3程序流程图设计

本软件设计包括了三部分,主程序、定时中断程序和外部中断程序,流程图如下图六所示。

图六(主程序流程图)

图六(定时器中断服务程序)

图六(外部中断服务子程序)

其中,GSM模块程序流程图如下图

4、系统调试

4.1软件调试

软件的调试主要通过Keil uVision3软件进行操作,对程序编写过程中的错误进行查找,找出错误,进行修改,然后再进行编译直至编译成功,生成HEX文件,才能下载到单片机里,继而实现相应功能。程序源文件见附录三

实测数据如下表,精确度控制在3%以内

实际距离/CM 5 10 15 20 30 40

测试距离/cm 4.9 9.9 14.8 20.1 29.8 39.8

5、系统功能

本系统通过单片机与现实模块相结合,实现的主要功能是超声波测距,报警以及显示功能。设计前期通过KEIL软件PROTEUS软件仿真的联调,对设计功能进行,仿真,均达到了预期的设计效果。

6、总结与体会

本次课程设计是对所学知识的一次综合性运用。其中包括对模拟电子技术的基础和数字电子技术基础、单片机等知识的运用。从而完成了本次设计。在设计的过程中发现了自身知识的不足,也发现我们必须具备专业基础知识才能成功的设计出一间合格的东西。这次课程设计收获很多,体会也很深刻,并且对我们所学的东西也产生了浓厚的兴趣。在设计过程中,也学会了很多新的东西,如对一些初次使用的模块的认识与掌握。当然最重要的是学到了关于基本电子设计的

一些方法,同时也加深了对一些常用的电子元件的理解以及其基本用法的掌握。除此之外,我觉得在这次设计过程中,我发现团队净胜的重要性,很多时候一个人的力量是有限的,一个人不可能什么都会,什么都能自己解决,还是有需要他人帮助的时候,我觉得人与人之间的相互帮助很有必要,这样不仅能帮助大家很快的解决问题,还能调高我们每个人的实际水平,也培养了我们的团队合作精神,这些能力对于我们今后的学习和工作都很有帮助。

由于时间关系,本次设计中还有不尽完善之处。希望在以后的学习生涯中不断的完善和改进。

7、参考文献

【1】全国大学生电子设计竞赛系统设计黄智伟北京航空航天大学出版社

【2】电子系统设计余小平奚大顺北京航空航天大学出版社

【3】单片机高级语言编程与uVision2应用实践徐爱钧电子工业出版社【4】单片机原理及其接口技术胡汉才北京:清华大学出版社,1996年

【5】数字电路逻辑设计王毓银主编高等教育出版社

【6】电子电路大全【美】J.马库斯,卷5数字电路。北京:计量出版社,1985年。

【7】电子创新设计王松屋主审武思军于鑫哈尔兵工程大学电工电子教学基地,2003

【8】流行单片机实用子程序及应用实例杨振江,杜铁军,李群西安电子科技大学出版社,2002

附录附录一

附录二

附录二:源程序

#include

#include

#define uchar unsigned char

#define uint unsigned int

#include"LCD5110.h"

unsigned long time=0;

unsigned int n=0;

unsigned char posit=0;

unsigned long S=0;

bit flag =0;

unsigned long sum=0;

unsigned long num=0;

sbit RX=P2^1 ;

sbit TX=P2^2 ;

/*********************************************************/ void timer_init( void )

{

TMOD=0x11; //设T0为方式1,GATE=1;

TH0=0;

TL0=0;

TH1=0xf8; //2MS定时//th1=(65536-2000)/256

tl1=(65536-2000)%256

TL1=0x30;

ET0=1; //允许T0中断

ET1=1; //允许T1中断

TR1=1; //开启定时器

EA=1; //开启总中断

}

void Conut(void)

{

time=TH0*256+TL0;

TH0=0;

TL0=0;

S=(time*17)/90; //算出来是CM

if((S>=7000)||flag==1) //超出测量范围显示“-”

{

flag=0;

LCD_write_english_string(1,0,"error");

sum=num=0;

}

else

{

num++;

sum+=S;

if(num>=5)

{

S=sum/num;

sum=num=0;

set_xy(1,0) ;

LCD_write_char(S%10000/1000+'0');

LCD_write_char(S%1000/100+'0');

LCD_write_char(S%100/10+'0');

LCD_write_char(S%10+'0');

LCD_write_char(' ');

}

}

}

void main()

{

timer_init();

init();

chinese();

LCD_write_english_string(0,0,"NOKIA 5110 LCD");

while(1)

{

while(!RX); //当RX为零时等待

TR0=1; //开启计数

while(RX); //当RX为1计数并等待

TR0=0; //关闭计数

Conut(); //计算

}

}

/********************************************************/

void timer0() interrupt 1 //T0中断用来计数器溢出,超过测距范围

{

flag=1; //中断溢出标志

}

/********************************************************/

void timer1() interrupt 3 //T1中断用来扫描数码管和计100MS 启动模块

{

TH1=0xf8;

TL1=0x30;

n++;

if(n>=50)

{

n=0;

TX=1; //100MS 启动一次模块

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

TX=0;

}

}

/*************************************************************** ******

* AT指令发送程序*

********************************************************************* /

uchar Send_AT_Command( uchar type){ //发送AT指令

//拨号时号码放在phone.number

//其他用para_temp

AT_Command_Type=type;

send_count=0;

switch(type){

case RESET_TC35: //复位TC35

strcpy(uart_buff,"AT+CFUN=1,1");

break;

case CHECK_PIN: //检查当前是否要输入PIN码

strcpy(uart_buff,"AT+CPIN?");

break;

case TC35_INIT: //TC35初始化命令

strcpy(uart_buff,"ATE0V0");

break;

case SIM_ID:

strcpy(uart_buff,"ATE0V0+CMGF=1+CNMI=2,1");

break;

case AT_IPR:

strcpy(uart_buff,"AT+IPR=9600");

break;

case SMSS_ID:

strcpy(uart_buff,"ATE0V0^SSMSS=1+CNMI=2,1");//AT^SSMSS=1先存SIM卡再存手机存储器

break;

case SMS_CMGF: //SMS 接收方式,

strcpy(uart_buff,"ATE0V0+CMGF=0");

break;

case PHONE_WRITE: //存电话号码

strcpy(uart_buff,"AT+CPBW=");

strcat(uart_buff,para_temp);

break;

case PHONE_READ: //读电话本

strcpy(uart_buff,"AT+CPBR=");

strcat(uart_buff,&read_tmp);

uart_buff[9]=0x0d;

uart_buff[10]=0x0a;

uart_buff[11]=0x00;

uart_buff[12]=0x00;

break;

case SMS_CMGR: //读一个短信

strcpy(uart_buff,"AT+CMGR=");

strcat(uart_buff,para_temp);

break;

case SMS_CMGS: //写一个短信

strcpy(uart_buff,"AT+CMGS=");

strcat(uart_buff,para_temp);

break;

case SMS_CMGD: //删除一个短信

strcpy(uart_buff,"AT+CMGD=");

strcat(uart_buff,para_temp);

break;

case CMGS_MUB: //发报警短信内容

strcpy(uart_buff,para_temp);

break;

case AT_COMMAND:

break;

default:

receive_count=0;

return(TRUE);

}

// LCD_write_string(0,0,uart_buff);

ES=1;

strcat(uart_buff,"\x0d\x00");//在命令后加入CR

send_count=0; //设置发送指针

receive_count=0;

AT_Command_Status=COMMAND_WAIT; //设置接收成功标志

timer_S_cnt=0;

txd_rxd_bit=0;

at_send_bit=0;

TI=1; //开始发送数据

RI=0; //清除接收标志

if (type==TC35_INIT){

while (timer_S_cnt<6){

if

(AT_Command_Status!=COMMAND_WAIT||txd_rxd_bit==1)

return(TRUE);

}

}

else if((type==SMS_CMGR)){

while (timer_S_cnt<6){

if

(AT_Command_Status!=COMMAND_WAIT||txd_rxd_bit==1)

return(TRUE);

}

}

else if((type==CALL_ID)){

while (timer_S_cnt<2){

if

(AT_Command_Status!=COMMAND_WAIT||txd_rxd_bit==1)

return(TRUE);

}

}

else{

while (timer_S_cnt<6){

if

(AT_Command_Status!=COMMAND_WAIT||txd_rxd_bit==1)

return(TRUE);

}

}

return(FALSE);

}

/*************************************************************** ******

* 话机启动的初始化程序* ********************************************************************* /

void Sys_Init(void){//话机启动的初始化程序,包含键盘与定时器,串口等//TH0=(65536-46080)/256;//重新装入定时25mS的初值到TH0,TL0 56320

//TL0=(65536-46080)%256;

//65536-(11.0592/12)*20MS*1000=To 18432 47104

//1ms定时

//11.0592/12 = 0.9216 M (记数频率)

//1ms记数921.6次

//16位2^16 - x = 922 x=64614 FC66

//定时器里不断放fc66,不用怀疑51定时器得到的1ms的精确性吗

//TH0 = 0xf6;

//TL0 = 0x50;

TH0 = 0xB8;

TL0 = 0x00; //20ms的时钟基准//串口中断

TI=0;

RI=0;

SCON=0x50; //选用方式1

TMOD=0x20;

TMOD = (TMOD & 0xf0) | 1;//MODE 1

TH1=0xfd; //波特率为9600

TL1=0xfd;

PCON=0x00; //倍频0x80

IE = 0xb0; // EA XX ET2 ES ET0 EX0 ET1 EX1 11000000

TR1=1; //enable TIMER1

ES=1;

TR0=1;

ET0=1;

ET1=0;

EA=1;

receive_count=0;

send_count=0xff; //表示禁止发送,可以接收

//定时器2

ET2=1;

T2CON=0x01; //16位重载计数器

RCAP2H=0x0;

RCAP2L=0x0;

TH2=0x00;

TL2=0x00;

//TR2=1;

}

/*************************************************************** ******

* 发送短信程序* ********************************************************************* /

void send_sms(){ //发送短信

uchar f=1,j=0;

Send_AT_Command(SIM_ID);

TMP_BUF=0;

do{

para_temp[TMP_BUF]=TEL_temp[TMP_BUF];

TMP_BUF++;

}while( TMP_BUF<=10);

para_temp[TMP_BUF++]=0x0d;

para_temp[TMP_BUF]=0x00;

Send_AT_Command(SMS_CMGS);

while(TEXT_temp[j])

{

para_temp[j]=TEXT_temp[j];

j++;

}

para_temp[j++]=0x1a;para_temp[j++]=0x0d;

para_temp[j++]=0x00;para_temp[j]=0x00;

Send_AT_Command(CMGS_MUB);

system_server=SYS_SMSR;

receive_count=0;

AT_Command_Status=COMMAND_WAIT; //设置接收成功标志

send_count=0xff;timer_S_cnt=0;

while(timer_S_cnt<15&&(AT_Command_Status==COMMAND_WAIT) ){

if(strsearch("+CMGS:")) break;

else if(txd_rxd_bit) break;

}

para_temp[0]=(num_tmp1/10)+0x30;

para_temp[1]=(num_tmp1%10)+0x30;

para_temp[2]=0x0d;

para_temp[3]=0x00;

Send_AT_Command(SMS_CMGD);

timer_S_cnt=0;

Send_AT_Command(SIM_ID);

for(f=0;f<=MAX_TM-2;f++){

uart_buff[f]=0;

}

}

/*************************************************************** ******

* 话机启动的初始化程序*

********************************************************************* /

void Initialize_Model(void){ //初始化PIN检测

uchar h;

IO_IGT=0;

for(h=0;h<8;h++){//进行初始化,并显示

Send_AT_Command(TC35_INIT);

if(uart_buff[1]==0x0d&&uart_buff[0]==0x30){

chinit=1;

break;

}

if((h%4)==0){

IO_IGT=1;

}

else if((h%2)==0){

IO_IGT=0;

}

timer_S_cnt=0;

}

if(h>=11){

chinit=0;

goto at_eer;

}

// if (Size==MC35||Size==TC35) delay1ms(4000);//使用MC35或TC35时需要延时4S

for(h=0;h<48;h++){

if(Send_AT_Command(CHECK_PIN)){//如有收到回应进行分析收到的信息,

uart_buff[receive_count]=0;

if(strsearch("READY")!=0){

chping=1;

break;

}

}

timer_S_cnt=0;

}

if(h>=47){

chping=0;

at_eer:

Send_AT_Command(RESET_TC35);

timer_S_cnt=0;

Send_AT_Command(SMSS_ID);

timer_S_cnt=0;

}

Send_AT_Command(SIM_ID);

Send_AT_Command(AT_IPR);

Send_AT_Command(REQUEST_MOD);

// if(strsearch("TC35\x0d\x0a")==0){

// Send_AT_Command(SMSS_ID); TC35_bit=0;

// }

// else TC35_bit=1;

timer_S_cnt=0;

}

附录四:实物图

认识实习超声波测距报告汇总

Harbin University Of Science And Technology 认识实习报告 学院:自动化学院 专业:电子信息科学与技术 班级:电技12-3 姓名:蔡成灼 学号:1212020301 日期:2015.1.9

任务书 实习项目名称:超声波测距仪的研制 实习时间:2014.12.29 —2015.1.9 一、实习的目的和意义 认识实习是一个重要的基础实习环节,通过认识实习,学生可以了解电子产品的制作工艺和基本原理,掌握电子产品制作的基本操作技能和调试技能,培养学生用所学知识分析实际问题、解决实际问题的能力,为以后的实践性教学环节打下基础。 二、实习内容 本实习以《超声波测距仪的研制》项目为目标,培养学生对电子产品的制作工艺的认识和操作技能,以及电子产品的原理分析。 1、超声波测距原理学习; 2、电路原理图及PCB绘制; 3、电子元器件识别与焊接; 4、超声波测距仪软件设计; 5、超声波测距仪调试。 三、报告内容和格式 内容: 1、超声波测距的意义和应用; 2、超声波测距的原理(原理说明、原理图); 3、超声波测距仪的制作与调试; 4、实习体会 格式: 报告包括封面、任务书、目录、正文等部分,一级标题(章标题):黑体小二;二级标题(节标题):黑体小三;正文:宋体小四;目录:二级目录,宋体小四。行间距: 1.25倍。报告A4纸打印,左侧装订。

目录 1、实习目的 (2) 2、实习内容 2.1方案选择 (2) 2.2 整理思路 (2) 3、超声波测距原理 3.1超声波探头 (2) 3.2超声波测距原理 (3) 3.3 基于单片机超声波测距仪系统构成 (4) 4、超声波测距原理图分析 4.1 发射电路 (4) 4.2 接收电路 (5) 5、超声波测距的意义和应用 5.1超声波测距的意义 (6) 5.2 超声波测距的应用 (7) 6、元件装配及硬件调试 6.1元件装配 (7) 6.2 编程及调试 (8) 6.3 PCB板及成果展示 (12) 7、实习总结 7.1实习总结 (13) 7.2实习体会 (14)

超声波测距系统设计

目录 一、课程设计目的 (2) 二、内容及要求 (2) 2.1、设计内容 (2) 2.2、设计要求 (2) 三、超声波传感器的工作原理 (2) 四、系统框图 (3) 五、单元电路设计原理 (3) 5.1、51系列单片机的功能特 (4) 5.2、超声波发射电路 (4) 5.3、超声波检测接收电路 (5) 六、完整的电路图………………………………………………………………… 七、程序流程图 (6) 八、参考文献 (7) 九、设计中的问题及解决方法 (7) 十、总结 (7)

一、课程设计目的 通过《传感器及检测技术》课程设计,掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。进一步理解传感器及检测系统的设计和应用。 二、内容及要求 超声波测距系统设计 2.1设计内容 采用40KHz的超声波发射和接收传感器测量距离。可采用发射和接收之间的距离,也可将发射和接收平行放在一起,通过反射测量距离。 功能:1)LED数码管显示测量距离,精确到小数点后一位(单位:cm)。 2)测量范围:30cm~200cm。 3)误差<0.5cm。 4)其它。 2.2设计要求 1)掌握传感器的工作原理及相应的辅助电路设计方法。 2)独立设计原理图及相应的硬件电路。 3)设计说明书格式规范,层次合理,重点突出。并附上详细的原理图。 三、超声波传感器的工作原理 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到农业生产等自动化的使用要求。 目前在近距离测量方面常用的是压电式超声波换能器。根据设计要求并综合各方面因素,本文采用AT89C51单片机作为控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器。 超声波测距的原理是利用超声波的发射和接受,根据超声波传播的时间来计算出传播距离。实用的测距方法有两种,一种是在被测距离的两端,一端发射,另一端接收的直接波方式,适用于身高计;一种是发射波被物体反射回来后接收的反射波方式,适用于测距仪。此次设计采用反射波方式。 理论计算 如图1所示为反射时间法,是利用检测声波发出到接收到被测物反射回波的时间来测量距离其原理如图所示,对于距离较短和要求不高的场合我们可认为空气中的声速为常数,我们通过测量回波时间T利用公式(T/2) C S=其中,S为被 * 测距离、V为空气中声速、T为回波时间(T2 =),这样可以求出距离: T1 T+

基于单片机的超声波测距系统设计实验报告 - 重

指导教师评定成绩: 审定成绩: 自动化学院 计算机控制技术课程设计报告设计题目:基于单片机的超声波测距系统设计 单位(二级学院): 学生姓名: 专业: 班级: 学号: 指导教师: 负责项目: 设计时间:二〇一四年五月 自动化学院制

目录 一、设计题目 (1) 基于51单片机的超声波测距系统设计 (1) 设计要求 (1) 摘要 (2) 二、设计报告正文 (3) 2.1 超声波测距原理 (3) 2.2系统总体方案设计 (4) 2.3主要元件选型及其结构 (5) 2.4硬件实现及单元电路设计 (9) 2.5系统的软件设计 (13) 三、设计总结 (17) 四、参考文献 (17) 五、附录 (18) 附录一:总体电路图 (18) 附录二:系统源代码 (18)

一、设计题目 基于51单片机的超声波测距系统设计 设计要求 1、以51系列单片机为核心,控制超声波测距系统; 2、测量范围为:2cm~4m,测量精度:1cm; 3、通过键盘电路设置报警距离,测出的距离通过显示电路显示出来; 4、当所测距离小于报警距离时,声光报警装置报警加以提示; 5、设计出相应的电子电路和控制软件流程及源代码,并制作实物。

摘要 超声波具有传播距离远、能量耗散少、指向性强等特点,在实际应用中常利用这些特点进行距离测量。超声波测距具有非接触式、测量快速、计算简单、应用性强的特点,在汽车倒车雷达系统、液位测量等方面应用广泛。本次课设利用超声波传播中距离与时间的关系为基本原理,以STC89C52单片机为核心进行控制及数据处理,通过外围电源、显示、键盘、声光报警等电路实现系统供电、测距显示、报警值设置及报警提示的功能。软件部分采用了模块化的设计,由系统主程序及各功能部分的子程序组成。超声波回波信号输入单片机,经单片机综合分析处理后实现其预定功能。 关键词:STC89C52单片机; HC-SR04;超声波测距

超声波测距报告(带报警)

目录 一、超声波测距原理 二、超声波测距模块介绍 1.主控模块 2.电源模块 3.显示模块 4.超声波模块 5.扬声器模块 三、超声波测距功能介绍 四、超声波测距前景展望 五、心得 附:程序

超声波测距(可报警) 一、超声波测距原理 超声波发射器定期发送超声波,遇到被测物体时发生反射,反射波经超声波接收器接收并转化为电信号,只要测出发送和接收的时间差t,即可测出超声测距装置到被测物体之间的距离S: S=c*t/2 (式中c为超声波在空气中的传播速度,c=331.45*√(1+T/273.16)) 由此可见声速与温度的密切的关系。在应用中,如果温度变化不大或者对测量要求不太高(例如汽车泊车定位系统),则可认为声速是不变的,否则,必须进行温度补偿。 超声波传感器是超声测距核心部件,传感器按其工作介质可分气相、液相和固相传感器;按其发射波束宽度可分为宽波束和窄波束传感器;按其工作频率又可分为40kHz, 5OkHz等不同等级。超声波在空气传播过程中,由于空气吸收衰减和扩散损失,声强随着传播距离的增大而衰减,而超声波的衰减随频率增大而成指数增加。本设计选用气相、窄波束、40kHz的超声波传感器。 二、超声波测距模块介绍 该产品共有五个模块,其中主控模块、电源模块、显示模块、扬声器模块集成在开发板上,超声波模块是外接的。 1.主控模块 主要部分是51单片机。 51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATLEM公司的AT89系列,它广泛应用于工业测控系统之中。目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是52系列的单片机一般不具备自编程能力。 主要功能: ·8位CPU·4kbytes 程序存储器(ROM) (52为8K)

超声波测距总结报告

电子技术实验课程设计超声波测距系统 总结报告 自03 胡效赫 2010012351

一、课题内容及分析 首先根据课程所给的几个题目进行选择,由于自己最近在做电子设计大赛的平台设计,希望对超声波测距在定位方面应用有更详尽的了解,所以选择课题三——超声波测距作为课程设计,内容如下: 对课题进行分析:实验提供超声波传感器T40-16和R40-16,利用面包板和小规模芯片搭接电路,实现距离的测量及显示。大致思路即驱动发射端发出超声波,接收端收到返回的脉冲进行处理与计算得到测量距离并通过数码管和蜂鸣器显示。 二、方案比较与选择 由于超声波测距方案原理基本相同,只要能够检测出发射到接收的时间,并通过相应计算就可以得到所测距离。所以问题大致分为驱

动发射端、接收端检测、间隔时间计算与计算结果显示四部分。 具体的方案设计如下: 闸门脉冲源产生基准宽度为T 的闸门脉冲,该脉冲一方面控制计数电路的计数启动和并产生计数器清零脉冲,使计数器从零开始对标准脉冲源输出的时钟脉冲(频率为17KHz)计数。同时开启控制门,超声波振荡器输出的40kHz脉冲信号通过控制门,放大后送至超声波换能器,由发射探头转换成声波发射出去。该超声波经过一定的传播时间,达到目标并反射回来,被超声波换能器的接收探头接收变成电信号,经放大、滤波、电压比较和电平转换后,还原成方波。图中的脉冲前沿检测电路检测出第一个脉冲的前沿,输出控制信号关闭计数器,使计数器停止计数。则计数器的计数值反映了超声波从发射到接收所经历的时间(或距离)。

三、模块化设计及参数估算 1、闸门控制模块 ●设计思路 555振荡电路产生频率为2Hz的脉冲,作为闸门脉冲源。 RC微分电路将输出的2Hz脉冲进行微分运算产生脉冲信号,作为计数启动和计数清零的信号,分别控制D触发器的置高端和74LS90的清零端。 ●参数设计: 555振荡电路T = (R1+2*R2)*C*ln2。其中R1取4.7kΩ,R2接入10kΩ滑动变阻器,最后实测7.51kΩ,C取47uF。 RC微分电路R为1kΩ,C为4.7nF 2、超声波发生模块 ●设计思路 555振荡电路产生频率为40kHz的脉冲,作为驱动超声波发射端

10米超声波测距仪设计实现

10米超声波测距仪设计实现 一、功能要求 设计一个超声波测距仪,可以测量测距仪与被测物体间的距离。要求测量范围0.1~10.00米,测量精度1cm,测量时与被测物体不接触,并将测量结果显示出来。 二、系统硬件电路 1.单片机系统及显示电路 单片机采用89C51或89S51。采用12MHz高精度晶振,以获得较稳定的时钟频率,减小测量误差。单片机用p1.0端口输出超声波换能器所需的40Hz方波信号,利用外中断0口监测超声波接受电路输出的返回信号。显示电路采用简单实用的4位共阳极LED数码管,段码用74LS244驱动,位用PNP8550驱动。 2.超声波发射电路 主要由74LS04和超声波换能器T构成。这种推挽形式的方波信号可以提高发射强度。反相器并联提高驱动能力。上拉电阻R1、R2提高74LS04输出高电平的驱动能力。 3.超声波接收电路 CX20106A是接收38KHz超声波的芯片,可利用它做接收电路。 4.系统程序 超声波测距仪的软件主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。 主程序:

开始 系统初始化 发送超声波脉冲 等待反射超声波 计算距离 显示结果 丢系统初始化,设置T0为方式1,EA=1,P0,P2清0。为避免超声波发射器直接接传送到接收器,需要延时0.1ms。由于时钟的频率是12MHz,计数器每计一个数就是1us。如果按声速344m/s,则d=c*t/2=172T0 cm 超声波发生子程序:通过P1.0端口发送2个左右超声波脉冲信号,脉宽12us,同时T0计数。 超声波测距仪利用中断0检测返回的超声波,一旦接收到返回的信号,立即进入中断。中断后就立即关闭T0停止计时。如果计数器益出则测试不成功。 3方案设计和选择 根据本次设计的要求,方案的选择应力求实用性强,性价比高,使用简单。 3.1 超声波测距的基本原理 谐振频率高于20kHz的声波被称为超声波。超声波

超声波测距系统设计

中北大学 物联网工程专业 无线传感器网络课程设计 报告 课题名称:超声波测距系统设计 班级: 13270841 指导教师:马永 开设时间: 2016 年 6 月

目录 一、课程设计目的 (1) 二、课程设计题目 (1) 三、课程设计内容、要求 (1) 1、设计内容 (1) 2、设计要求 (1) 四、传感器工作原理 (1) 1.超声波传感器 (1) 2.温度传感器DS18B20 (3) 五、系统框图 (3) 六、单元电路设计原理 (4) 1、超声波发射电路 (4) 2、超声波检测接收电路 (4) 3、单片机最小系统 (5) 3.1、STC89C52芯片 (5) 3.2 复位电路 (5) 3.3 晶振电路 (6) 4、显示部分 (7) 5、温度检测电路 (7) 七、软件设计与系统调试 (8) 1、主程序流程图 (8) 1.1发射程序与接收程序流程图 (9) 1.2 中断子程序流程图 (10) 1.3 距离计算与显示子程序 (11) 2.系统调试 (12) 八、设计中的问题及解决方法 (12) 九、总结 (13) 十、参考文献 (14)

一、课程设计目的 通过《无线传感器网络》课程设计,掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。进一步理解传感器及检测系统的设计和应用。 二、课程设计题目 超声波测距系统设计 三、课程设计内容、要求 1、设计内容 采用40KHz的超声波发射和接收传感器测量距离。采用发射和接收平行放在一起,通过反射测量距离。根据温度传感器DS18B20所采集的温度数据来修正测距系统中的声速,从而使超声波测得的距离更准确。 功能:1)所有测距和温度数据均通过液晶显示器LCD1602 显示出来,距离精确到毫米,温度精确到小数点后一位(单位:摄氏度)。 2)测量范围:30mm~2000mm。 3)误差<5mm。 4)其它。 2、设计要求 1)掌握传感器的工作原理及相应的辅助电路设计方法。 2)独立设计原理图及相应的硬件电路。 3)设计说明书格式规范,层次合理,重点突出。并附上详细的原理图 四、传感器工作原理 1. 超声波传感器 本次设计超声波传感器采用电气方式中的压电式超声波传感器分机械方式

超声波测距仪硬件电路的设计

超声波测距仪电路设计实验报告 轮机系楼宇071 周钰泉2007212117 实验目的:了解超声波测距仪的原理,掌握焊接方法,掌握电路串接方法,熟悉电路元件。 实验设备及器材:电烙铁,锡线,电路元件 实验步骤:1,学习keil软件编写程序2、焊接电路板3、运行调试 超声波测距程序: #include unsigned char code dispbitcode[]={0x31,0x32,0x34,0x38,0x30,0x30, 0x30,0x30}; unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x77,0x7c,0x 39}; unsigned char dispbuf[8]={10,10,10,10,10,10,0,0}; unsigned char dispcount; unsigned char getdata; unsigned int temp; unsigned int temp1;

unsigned char i; sbit ST=P3^0; sbit OE=P3^1; sbit EOC=P3^4; sbit CLK=P3^5; sbit M1=P3^6; sbit M2=P3^7; sbit SPK=P2^6; sbit LA=P3^3; sbit LB=P3^2; sbit LC=P2^7; sbit K1=P2^4; sbit K2=P2^5; bit wd; bit yw; bit shuid; bit shuig; unsigned int cnta; unsigned int cntb; bit alarmflag; void delay10ms(void) { unsigned char i,j; for(i=20;i>0;i--) for(j=248;j>0;j--); } void main(void) { M1=0; M2=0; yw=1; wd=0; SPK=0; ST=0; OE=0; TMOD=0x12; TH0=0x216; TL0=0x216; TH1=(65536-500)/256; TL1=(65536-500)%256; TR1=1; TR0=1; ET0=1; ET1=1; EA=1; ST=1; ST=0; while(1) { if(K1==0) { delay10ms(); if(K1==0) { yw=1; wd=0; } } else if(K2==0) { delay10ms(); if(K2==0) { wd=1; yw=0; } } else if(LC==1) { delay10ms(); if(LC==1) { M1=0; M2=1; temp1=13; shuid=0; shuig=1; LB=0; } } else if((LC==0) && (LB==1)) { delay10ms(); if((LC==0) && (LB==1)) { M1=0; M2=0; temp1=12; shuig=0; shuid=0; LB=0; }

基于单片机的超声波测距系统实验报告

基于单片机的超声波测距系统实验报告

一、实验目的 1.了解超声波测距原理; 2.根据超声波测距原理,设计超声波测距器的硬件结构电路; 3.对设计的电路进行分析能够产生超声波,实现超声波的发送与接收,从而实现利用 超声波方法测量物体间的距离; 4.以数字的形式显示所测量的距离; 5.用蜂鸣器和发光二极管实现报警功能。 二、实验容 1.认真研究有关理论知识并大量查阅相关资料,确定系统的总体设计方案,设计出系 统框图; 2.决定各项参数所需要的硬件设施,完成电路的理论分析和电路模型构造。 3.对各单元模块进行调试与验证; 4.对单元模块进行整合,整体调试; 5.完成原理图设计和硬件制作; 6.编写程序和整体调试电路; 7.写出实验报告并交于老师验收。 三、实验原理 超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距S=Ct/2,式中的C为超声波波速。由于超声波也是一种声波,其声速C与温度有关。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理,单片机(AT89C51)发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间t,再由系统软件对其进行计算、判别后,相应的计算结果被送至LED显示电路进行显示。 (一)超声波模块原理: 超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到 3mm。模块包括超声波发射器、接收器与控制电路。基本工作原理:采用 IO 口 TRIG 触发测距,给至少 10us 的高电平信号;模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回;有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。实物如下图1。其中VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四支线。

超声波测距报告

项目:超声波测距仪的设计 时间:2011/7/09-2011/7/21 一、超声波测距的基本原理 谐振频率高于20kHz的声波被称为超声波。超声波为直线传播方式,频率越高,绕射能力越弱,但反射能力越强。利用超声波的这种性能就可制成超声传感

器,或称为超声换能器,它是一种既可以把电能转化为机械能、又可以把机械能转化为电能的器件或装置。换能器在电脉冲激励下可将电能转换为机械能,向外发送超声波;反之,当换能器处在接收状态时,它可将声能(机械能)转换为电能。 1.1 超声波发生器 为了利用超研究和利用声波,人们已经设计和制成了许多超声波发生器。总体上讲,超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。 1.2 压电式超声波发生器原理 压电式超声波发生器实际上是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。 1.3 超声波测距原理 超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2 最常用的超声测距的方法是回声探测法,超声波发射器向某一方向发射超声波,在发射时刻的同时计数器开始计时,超声波在空气中传播,途中碰到障碍物面阻挡就立即反射回来,超声波接收器收到反射回的超声波就立即停止计时。 由于超声波也是一种声波,其声速V与温度有关。在使用时,如果传播介质温度变化不大,则可近似认为超声波速度在传播的过程中是基本不变的。如果对测距精度要求很高,则应通过温度补偿的方法对测量结果加以数值校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的基本原理。如图1-1所示。 超声波发射障碍物

高精度超声波测距系统设计

高精度超声波测距系统设计。 引言 利用超声波测量距离的原理可简单描述为:超声波定期发送超声波,遭遇障碍物时发生反射,发射波经由接收器接收并转化为电信号,这样测距技术只要测出发送和接收的时间差, 然后按照下式计算,即可求出距离: 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求, 因此,广泛应用于倒车提醒、建筑工地、工业现场等的距离测量。目前的测距量程上能达到百米数量级,测量的精度往往能达到厘米数量级。本文在分析现有超声波测距技术基础之上, 给出了一种改进方案,测量精度可达毫米级。 2 系统方案分析与论证 2.1 影响精度的因素分析 根据超声波测距式(1)可知测距的误差主要是由超声波的传播速度误差和测量距离传播 的时间误差引起的。 对于时间误差主要由发送计时点和接收计时点准确性确定,为了能够提高计时点选择的准确性,本文提出了对发射信号和加收信号通过校正的方式来实现准确计时。此外,当要求测距误差小于 1 mm时,假定超声波速度C=344 m/s(20℃室温),忽略声速的传播误差。则测距误差s△t<0.000 002 907 s,即2.907 ms。根据以上过计算可知,在超声波的传播速度是准确的前提下,测量距离的传播时间差值精度只要在达到微秒级,就能保证测距误差小于1 mm的误差。使用的12 MHz晶体作时钟基准的89C51单片机定时器能方便的计数到1μs的精度,因此系统采用AT89S51的定一时器能保证时间误差在 1 mm的测量范围内。

超声波测距系统设计

摘要 随着科技的发展,人们生活水平的提高,城市发展建设加快,城市给排水系统也有较大发展,其状况不断改善。但是,由于历史原因合成时间住的许多不可预见因素,城市给排水系统,特别是排水系统往往落后于城市建设。因此,经常出现开挖已经建设好的建筑设施来改造排水系统的现象。城市污水给人们带来了困扰,因此箱涵的排污疏通对大城市给排水系统污水处理,人们生活舒适显得非常重要。而设计研制箱涵排水疏通移动机器人的自动控制系统,保证机器人在箱涵中自由排污疏通,是箱涵排污疏通机器人的设计研制的核心部分。控制系统核心部分就是超声波测距仪的研制。因此,设计好的超声波测距仪就显得非常重要了。 介绍了一种以A T 89C2051 单片机为核心, 利用超声波的特性设计出低成本、高精度测距仪的方法。给出了这种测距仪的硬件原理电路和主要的软件设计思路,用Psp ice 对硬件的主要部分进行了模拟仿真。根据理论分析和试验统计对设计进行改进, 电路达到了预期的效果。 关键词:AT89C2051; 超声波;测距 Abstract With the development of science and technology, the improvement of people's tandard of living, speeding up the development and construction of the city. Urban rainage system have greatly developed their situation is constantly improving. However,due to historical reasons many unpredictable factors in the synthesis of her time, the city drainage system. In particular drainage system often lags behind urban construction.Therefore, there are often good building excavation has been building facilities to upgrade the drainage system phenomenon. It brought to the city sewage, and it is clear to the city sewage and drainage culvert in the sewage treatment system. comfort is very important to people's lives. Mobile robots designed to clear the drainage culvert and the automatic control system Free sewage culvert clear guarantee robot, the robot is designed to clear the culvert sewage to the core. Control System is the core component of the development of ultrasonic range finder. Therefore, it is very important to design a good ultrasonic range finder. A kind of u lt rason ic telem eter based on A T 89C205 is in t roduced. Th is telem eter is provided w ith som e m er it s such as low co st and h igh2accu racy becau se of the u lt rason ic w ave character ist ic. The hardw are p r incip le elect r ic circu it and them ain sof tw are design idea are show ed. The sim u lat ion of the m ain par t of the hardw are has been done w ith P sp ice. A t last, acco rding to the theo ret ical analysis and the exper ience som e imp rovem en t s of the design are m ade. The system has ach ieved the an t icipated effect. Key words:AT89C2051; Silent Wave;Measure Distance

PLC超声波测距实验报告082039140程稳

利用plc的高速计数模块进行超声波测距实验 ―――――微型控制计算机暑期设计实验报告 082039140程稳 利用51单片机来驱动超声波模块测距,是一件很容易的事,只需要结合定时中断和外部中断,利用12M或更高的晶振频率即可精确获取从发射到接收到超声波之间的时间,平均1ms对应 3.4cm的行程,本GE比赛设计需要物位测量的最大距离是30cm,即需要30*2/3.4=17.64ms,而GE PAC RX3i的PME软件梯形图程序得扫描周期2ms以上,就算是最快的定时节点也有1ms,所以若直接用PLC的普通离散量输入模块IC694MDL654输入节点来测量接收到超声波回波的时间的误差为1ms,误差距离3.4/2=1.7cm,结果自然不理想,更严重的问题在于PLC该模块无硬件中断响应功能,是不能测电平宽度的。总之PLC的IO口工作在低速模式下是难以胜任高速测量任务的,但可喜的是GE PLC 的高速计数模块HSC304能处理2MHZ的信号,但仍无硬件中断功能。于是想能否干脆把单片机测出的电平时间数据通过串口发送给PLC,我也试着这样连线测试,不过PLC串口的使用不像单片机这么简单,没有相关资料,PLC内部寄存器找不到PLC从单片机接收的数据。于是仍决定放弃此方案,回到高速计数模块。再认真阅读此模块配置信息和实验调试后,发现其可以测量出外部信号频率,于是想既然PLC无法直接测电平宽度,那干嘛不测量频率,有了频率自然有周期,有周期自然有电平宽度!

利用plc的高速计数模块检测超声波测距仪的信号接收端的频率,正常情况下应使用频率直接求得周期接而来计算时间,但由于实际测得这样根本很难实现,所以直接测频率,并利用示波器查看该频率的波形,并修改程序使得在所测距离变化的情况下,一周期内的低电平保持不变(高电平所持续的时间表示超声波从发出到接收到所经历的时间,低电平是延时,为了使得波形正常),然后测出频率及其所对应的距离。 以下是用虚拟示波器测出的超声波模块在不同距离测量回波接收脚电压波形:

超声波测距实验报告

电子信息系统综合设计报告 超声波测距仪

目录 摘要 (3) 第一章绪论 (3) 1.1 设计要求 (3) 1.2 理论基础 (3) 1.3 系统概述 (4) 第二章方案论证 (4) 2.1 系统控制模块 (5) 2.2距离测量模块 (5) 2.3 温度测量模块 (5) 2.4 实时显示模块 (5) 2.5 蜂鸣报警模块 (6) 第三章硬件电路设计 (6) 3.1 超声波收发电路 (6) 3.2 温度测量电路 (7) 3.3 显示电路 (8) 3.4 蜂鸣器报警电路 (9) 第四章软件设计 (10) 第五章调试过程中遇到的问题及解决 (11) 5.1 画PCB及制作 (11) 5.2 焊接问题及解决 (11) 5.3 软件调试 (11) 实验总结 (13) 附件 (14) 元器件清单 (14) HC-SR04超声波测距模块说明书 (15) 电路原理图 (17) PCB图 (17) 程序 (18)

摘要 该系统是一个以单片机技术为核心,实现实时测量并显示距离的超声波测距系统。系统主要由超声波收发模块、温度补偿电路、LED显示电路、CPU处理电路、蜂鸣器报警电路等5部分组成。系统测量距离的原理是先通过单片机发出40KHz 方波串,然后检测超声波接收端是否接收到遇到障碍物反射的回波,同时测温装置检测环境温度。单片机利用收到回波所用的时间和温度补偿得到的声速计算出距离,显示当前距离与温度,按照不同阈值进行蜂鸣报警。由于超声波检测具有迅速、方便、计算简单、易于做到实时控制的特点,并且在测量精度方面能达到工业实用的要求,因此在生产生活中得到广泛的应用,例如超声波探伤、液位测量、汽车倒车雷达等。 关键词:超声波测距温度测量单片机 LED数码管显示蜂鸣报警 第一章绪论 1.1设计要求 设计一个超声波测距仪,实现以下功能: (1)测量距离要求不低于2米; (2)测量精度±1cm; (3)超限蜂鸣器或语音报警。 1.2理论基础 一、超声波传感器基础知识 超声波传感器是利用晶体的压电效应和电致伸缩效应,将机械能与电能相互转换,并利用波的特性,实现对各种参量的测量。 超声波的传播速度与介质的密度和弹性特性有关,与环境条件也有关: 在气体中,超声波的传播速度与气体种类、压力及温度有关,在空气中传播速度为C=331.5+0.607t/0C (m/s) 式中,t为环境温度,单位为0C. 二、压电式超声波发生器原理 压电式超声波发生器实际上是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。 三、超声波测距原理 由于超声波指向性强,能量消耗缓慢,在空气中传播的距离较远,因而超声波

超声波测距系统设计

(一)题目 超声波测距系统设计 (二)内容及要求 1)设计内容 采用40KHz的超声波发射和接收传感器测量距离。可采用发射和接收之间的距离,也可将发射和接收平行放在一起,通过反射测量距离。 功能:1)LCD液晶显示测量距离,精确到小数点后一位(单位:cm)。 2)测量方式可通过硬件开关预置。 3)测量范围:30cm~200cm, 4)误差<0.5cm。 5)其它。 2)设计要求 1)掌握传感器的工作原理及相应的辅助电路设计方法。 2)独立设计原理图及相应的硬件电路。 3)设计说明书格式规范,层次合理,重点突出。并附上详细的原理图。(三)传感器工作原理 超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离S=Ct/2,式中的C为超声波波速。由于超声波也是一种声波,其声速C与温度有关,表1列出了几种不同温度下的声速。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理。 (四)系统框图 图1 超声波测距系统框图 (五)单元电路设计原理

1、AT89C2051的功能特点 AT89C2051是一个2k字节可编程EPROM的高性能微控制器。它与工业标准MCS-51的指令和引脚兼容,因而是一种功能强大的微控制器,它对很多嵌入式控制应用提供了一个高度灵活有效的解决方案。AT89C2051有以下特点:2k字节EPROM、128字节RAM、15根I/O线、2 个16位定时/计数器、5个向量二级中断结构、1个全双向的串行口、并且内含精密模拟比较器和片内振荡器,具有4.25V至5.5V的电压工作范围和12MHz/24MHz工作频率,同时还具有加密阵列的二级程序存储器加锁、掉电和时钟电路等。此外,AT89C2051还支持二种软件可选的电源节电方式。空闲时,CPU停止,而让RAM、定时/计数器、串行口和中断系统继续工作。可掉电保存RAM的内容,但可使振荡器停振以禁止芯片所有的其它功能直到下一次硬件复位。 AT89C2051有2个16位计时/计数器寄存器Timer0t Timer1。作为一个定时器,每个机器周期寄存器增加1,这样寄存器即可计数机器周期。因为一个机器周期有12个振荡器周期,所以计数率是振荡器频率的1/12。作为一个计数器,该寄存器在相应的外部输入脚P3.4/T0和P3.5/T1上出现从1至0的变化时增1。由于需要二个机器周期来辨认一次1到0的变化,所以最大的计数率是振荡器频率的1/24,可以对外部的输入端P3.2/INT0和P3.3/INT1编程,便于测量脉冲宽度的门。 图2 ATC2051示意图 2、LCD的工作原理 在两片玻璃基板上装有配向膜,所以液晶会沿着沟槽配向,具有偶极矩的液晶棒状分子在外加电场的作用下其排列状态发生变化,使得通过液晶显示器件的光被调制,从而呈现明与暗或透过与不透过的显示效果。液晶显示器件中的每个显示像素都可以单独被电场控制,不同的显示像素按照控制信号的“指挥”便可以在显示屏上组成不同的字符、数字及图形。因此建立显示所需的电场以及控制显示像素的组合就成为液晶显示驱动器和液晶显示控制器的功能。 LCD器件是由背光源发射的光通过偏振片和液晶盒时,控制投

超声波测距实验报告

目录 1、课题设计的目的和意义 (3) 2、课题要求 (3) 2.1、基本功能要求 (3) 2.2、提高要求 (4) 3、重要器件功能介绍 (4) 3.1、CX20106A红外线发射接收专用芯片 (4) 3.2、AT89C51系列单片机的功能特点 (5) 3.3、ISD1700优质语音录放电路 (6) 4、超声波测距原理 (8) 4.1、超声波测距原理图 (8) 4.2、超声波测距的基本原理 (9) 5、硬件系统设计 (10) 5.1、超声波发射单元 (10) 5.2、超声波接收单元 (11)

5.3、显示单元 (11) 5.4、语音单元 (12) 5.5、硬件设计中遇到的难题: (12) 6、系统软件设计 (14) 7、调试与分析 (15) 7.1调试 (15) 7.2误差分析 (15) 8、总结 (16) 9、附件 (17) 9.1、总电路 (17) 9.2、主要程序 (18) 10、参考文献 (22)

1课题设计的目的及意义 随着科学技术的快速发展,超声波在测距仪中的应用越来越广,但就目前技术水平而言,人们可以利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。展望未来,超声波测距作为一种新型的非常重要有用的工具在各方面都有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求。如声纳的发展趋势:研究具体的高定位精度的被动测距声纳,以满足军事和渔业等的发展需求,实现远程的被动探测和识别。毋庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。 超声波测距在某些场合有着显著的优点,因为这种方法是利用计算超声波在被测物体和超声波探头之间的传输来测量距离的,因此它是一种非接触式的测量,所以他就能够在某些场合或环境比较恶劣的环境下使用。比如测有毒或者有腐蚀性化学物质的液面高度或者高速公路上快速行驶汽车之间的距离。 随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最注重发展到具有创造力。在新的时代,测距仪将发挥更大的作用。 2课题要求 以单片机AT89C51为中心控制单元,配以超声波发射、接收装置,实现超声波发射及接收其遇到障碍物发生反射形成的回波信号,并根据超声波在介质中的传播速度及超声波从发射到接收到回波的时间,计算出发射点距障碍物的距离,设计出一套基于单片机的脉冲反射式超声波测距系统,利用单片机进行操作控制,用数码管作输出显示,设计发射、接收、检测、显示硬件电路和测距系统软件。

超声波测距系统设计

超声波测距系统设计

论文题目:超声波测距系统设计 摘要 超声波具有不受外界光及电磁场等因素的影响的优点,超声波测距作为一种有效的非接触式测距方法已被应用于多个领域。 本设计采用渡越时间法,硬件系统分为发射模块、接收模块、显示模块、中央处理模块四个部分。本设计采用STC89C52单片机作为微型中央处理器并由软件实现40kHz脉冲经放大电路从超声波发射探头T-40发射出超声波,接收探头R-40收到声波后经集成芯片CX20106A放大滤波整形后回送到单片机计算,通过发射与接收的时间差和声速计算出距离。本系统使用四位共阳极LED数码管显示距离,能实时显示即时距离。 经测试,在30cm~200cm范围内,误差能控制在2cm以内。根据实验数据进行了误差分析,并提出了解决方案,最后对超声波测距技术的发展进行了展望。通过系统的调试和测试,本设计基本完成了设计要求。 【关键词】单片机,超声波,测距,渡越时间法; 【论文类型】应用型

Title: The design of ultrasonic distance measurement system Major:Electronic and Information Engineering Name: Zhang Yankun Signature:_______ Supervisor: Zhang Xiaoli Signature:_______ ABSTRACT The advantages of ultrasound without the influence of outside light and electromagnetic fields and other factors , ultrasonic distance measurement as an effective non-contact distance measurement method has been used in many fields. This design uses the transit time method, the hardware system is divided into transmitter module, receiver module and display module, the central processing module. This design uses a microcontroller STC89C52 as micro central processing unit and 40 kHz pulse by the software, The ultrasonic emission from the ultrasonic probe the T-40 via the amplifier circuit. Acoustic

相关文档
最新文档