超声波测距系统的仿真

超声波测距系统的仿真
超声波测距系统的仿真

淮海工学院

课程设计报告书

课程名称:单片机控制系统课程设计

题目:基于单片机的超声波测距系统

系(院):东港学院

学期: 2013-2014-2 专业班级: D自动化111 姓名:王佳力

学号: 2011130874 评语:

成绩:

签名:

日期:

1 引言

超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。

系统的设计主要包括两部分,即硬件电路和软件程序。硬件电路主要包括单片机电路、发射电路、接收电路、显示电路和电源电路,另外还有复位电路和LED控制电路等。我采用以AT89C51单片机为核心的数字显示超声波测距仪的硬件电路。整个电路采用模块化设计,由信号发射和接收、供电、显示等模块组成。发射探头的信号经放大和检波后发射出去,单片机的计时器开始计时,超声波被发射后按原路返回,在经过放大带通滤波整形等环节,然后被单片机接收,计数器停止工作并得到时间。温度测量后送到单片机,通过程序对速度进行校正, 结合两者实现超声波测距的功能。软件程序主要由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。它控制单片机进行数据发送与接收,实现数据正确显示在LED上。另外程序控制单片机消除各探头对发射和接收超声波的影响。相关部分附有硬件电路图、程序流程图。

实际的环境对超声波有很大的影响,如外部电磁干扰电源干扰信道干扰等等,空气的温度对超声波的速度影响也很大。此外供电电源也会使测量差生很大的误差。再设计的过程中考虑了这些因素,并给出了一些解决方案。

1.1设计目的和要求

本次课程设计是根据“自动化专业培养计划”而制定的。单片机控制系统课程

设计是自动化专业的学生在学过相关专业课以后进行综合训练的教学环节,特别是《自动控制系统》、《单片机原理及应用》、《计算机控制技术》等专业课学完之后的

一次实践教学。其目的在于使学生在课程设计过程中能够理论联系实际,在实践中

充分利用所学理论知识分析和研究设计过程中出现的各类技术问题,巩固和扩大所

学知识面,为以后走向工作岗位进行设计打下一定的基础。

在设计过程中,通过课程设计,使学生了解一般电气控制系统、自动控制

系统和计算机控制系统设计的过程、步骤、要求、工作内容及设计方法。训练学生

综合运用专业课的能力,提高学生工程设计的能力。

1.2设计的内容

综合运用《微机原理及应用》、《单片机原理及应用》、《DSP技术原理及应用》、《计算机控制技术》和《检测技术与自动化仪表》的知识,掌握单片机控制系统的组成、原

理及工作方式,了解单片机控制系统的设计步骤与方法,特别是要了解单片机系统开发的整个过程,完成系统的软、硬件设计。

2 设计电路

2.1系统设计方案

图2-1系统设计方案图

系统计划在实验室内实现小范围测距,测试距离约为0.2m —3m 米,系统的整体结构如图2-1所示。发射电路采用单片机 端口编程输出40kHz 左右的方波脉冲信号,同时开启内部计数器TO 。由于单片机端口输出功率很弱,为使测量距离满足要求,驱动超声传感器UCM-40T 发射超声波距离足够远,故在此电路上加功率放大电路。

从接收传感器探头UCM-40T 传来的超声波的回波很微弱(几十个mV 级),又存在着较强的噪声,所以放大信号和抑制噪声是放大电路必须考虑的。本系统设计此部分电路时采用一级放大和带通滤波电路,中心频率4OKHz 左右,放大滤波电路均采用了高速精密运算放大器TL082,输出信号大约在5V 左右。

由于放大电路输出的信号是连续的正弦波叠加信号,而单片机所能接受的中断响应信号常为下降沿脉冲信号,故信号在放大电路后通过LM393构成的比较电路,将正弦信号转换成方波信号,用方波的负跳变作单片机的中断输入,使得单片机知道已接收到超声信号,内部计数器停止计时。

显示电路采用动态扫描显示,主要是处于节省硬件的考虑。通过单片机编程将内部

单片机处理单元

发射电路 检测电路 接收探头

接受电路

发射探头

目标

计数得到的时间数据转换为距离信息,通过3位LED 数码管显示,数据XXX ,单位cm 。

2.2 单片机的选择

本系统硬件部分由AT89C51控制器、超声波发射电路及接收电路和LCD 显示电路组成。由单片机AT89C51编程产生10us 以上的高电平,由指定引脚输出,就可以在指定接收口等待高电平输出。一旦有高电平输出,即在模块中经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的处理,指定接收口即变为低电平,读取单片机中定时器的值。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。系统设计框图见图2-2。

图2-2系统设计总框图

由图1-3时序图可以看出,超声波测距模块的发射端在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时间差,即可得到超声波在媒介中传播的时间t ,由此便可计算出距离。

图2-3时序图

发接

AT89C51 LCD

DS1

2.3超声波部分的设计

2.3.1超声波传感器的选择

在超声波测量系统中,频率取得太低,外界的杂音干扰较多;频率取得太高,在传播的过程中衰减较大,检测距离越短,分辨力也变高。本文中选用的探头是4OKHz 的收发分体式超声传感器,由一支发射传感器UCM-T40KI 和一支接收传感器UCM-R4OKI 组成,其特性参数如表2-4所示。 型号 UCM-T40K1 UCM-R40KQ 结构 开放式 开放式 使用方式 发射

接收

中心频率 Z KH 140± Z KH 138± 频带宽 Z KH 5.02± Z KH 5.02± 灵敏度 ubar dBV 110

ubar dBV 65-

声压

)

02.00min(115mPa dB dB =

)10min(70ubar V dB dB =-

指向角 o 75

o 80

容量

pF %252500±

pF %252500±

图2-4 传感器UCM-T40KI 和传感器UCM-R4OKI 特性参数

2.3.2超声波发射电路设计

超声波发射部分是为了让超声波发射换能器TCT40-16T 能向外界发出40 kHz 左右的方波脉冲信号。40 kHz 左右的方波脉冲信号的产生通常有两种方法:采用硬件如由555振荡产生或软件如单片机软件编程输出,本系统采用后者。编程由单片机P1.0端口输出40 kHz 左右的方波脉冲信号,由于单片机端口输出功率不够,40 kHz 方波脉冲信号分成两路,送给一个由74HC04组成的推挽式电路进行功率放大以便使发射距离足够远,满足测量距离要求,最后送给超声波发射换能器TCT40-16T 以声波形式发射到空气中。发射部分的电路,如图2-5所示。图中输出端上拉电阻R31,R32,一方面可以提高反向器74HC04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。

图2-5超声波发射电路框图

本系统用单片机P1.0发射一组方波脉冲信号,其输出波形稳定可靠,但输出电流和输出功率很低,不能够推动发射传感器发出足够强度的超声信号,所以在此间加入一个单电源乙类互补对称功率放大电路,如图2-6所示。

图2-6 超声波发射电路

2.3接收电路的设计

接收换能器晶片接收到超声波垂直作用后,因谐振而形成逐步加强的机械振动。因压电效应晶片两面出现交变的等量异号电荷,电荷量很少,只能提供微小交变的电压信号,而不能提供电流信号。所以需要一个前置放大电路将这一微小交变电压信号充分放大,同时考虑可能出现干扰信号,放大有用信号的同时加入滤波电路,驱动后面的比较器输出电位跳变,作为确定接收到的时刻。

前置放大电路单元的作用是对有用的信号进行放大,并抑制其它的噪声和干扰,从而达到最大信噪比,以利于后续电路的设计。

图2-7前置放大电路图

电路如图2-7所示,考虑到超声换能器的输出电阻比较大(一般数百兆欧姆以上),因此前置放大器必须有足够大的输入阻抗;同时,换能器的输出电压很小(数十毫伏),这就要求前置放大电路有很高的精度、很小的输入偏置电压。前置放大电路是由一个高精度、高输入阻抗放大器TL082及电阻R2、

R和R 构成,组成反向比例放大电路,

3

这样可以减小地线噪声的影响。

2.4单片机LED显示电路设计

显示器是一个典型的输出设备,而且其应用是极为广泛的,几乎所有的电子产品都要使用显示器,其差别仅在于显示器的结构类型不同而己。最简单的显示器可以使LED 发光二极管,给出一个简单的开关量信息,而复杂的较完整的显示器应该是CRT监视器或者屏幕较大的LCD于显示的距离范围在4米之内,选用3位LED示,表示距离的XXXcm 数值。液晶屏。综合课题的实际要求由数码管,通过单片机编程实现显示,表示距离的XXXcm数值。

P1.0/T21P1.1/T2EX 2P1.2/ECI 3P1.3/CEX04P1.4/CEX15P1.5/CEX26P1.6/CEX37P1.7/CEX48RST 9P3.0/RxD 10P3.1/TxD 11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR 16P3.7/RD

17

XTAL2

18

XTAL119VSS 20

P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15

PSEN 29ALE/PROG

30

EA/VPP 31P0.7/AD732P0.6/AD633P0.5/AD534P0.4/AD435P0.3/AD336P0.2/AD237P0.1/AD138P0.0/AD039VCC

40AT89S51

IN11IN22IN33IN44IN55IN66IN77OUT116OUT314OUT413OUT512OUT611OUT710OUT215COM

9GND 8

ULN2003A

OE 1CLK 11D02O019D13O118D24O217D35O316D46O415D57O514D68O613D79O7

12

VCC 20

GND 10

74ACQ574PC

1

2

XTAL

C3

C2

1K

R1C1VCC

VCC

K f g e d K

c DP b a Dpy Red-CC

K f g e d K

c DP b a Dpy Red-CC

K f g e d K

c DP b a Dpy Red-CC

VCC

VCC 1

2345678161514131211109Res Pack4

VCC Y1Y2Y3

Y1Y2Y3

X2X3X4X5X6X7X8

X1X2X3X4X5X6X7X8

X1X2X3X4X5X6X7X8

X1X2X3X4X5X6X7X8

X1

图2-8显示部分的电路图

本单元电路设计如图2-8所示,采用3位共阴极数码显示管,显示字符由单片机P2口送至锁存器74HC574锁存,再经显示驱动芯片ULN2O03驱动数码管显示,P0.1-P0.3分别控制每一位的动态显示。

74HC574为三态输出D型上升沿触发器,图2-9为其引脚图,在输入使能端OE有效时,当时钟脉冲CK有上升沿跳变,触发器发生翻转,将锁存的8路输入数据(即单片机P2口送出的字符数据)送出显示。其功能表,如表2-1

图2-9 74HC574引脚图图2-10ULN2003引脚图

表2-1 74HC574功能表

ULN2003为显示驱动芯片,抬升单片机的输出电流,提高负载驱动能力。其引脚如图2-10所示,其内部含七对达林顿放大管,其主要功能:当输入为高电平时,输出为低电平;输入为低电平时,输出为高电平。本课题让单片机P0.1-P0.3经此芯片提升驱动能力从而控制数码管的位选,实现数据动态扫描输出。

2.4.1 LCD显示部分

本设计显示部分采用字符型TC1602液晶显示所测距离值。TC1602显示的容量为2行16个字。液晶显示屏有微功耗、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点,与数码管相比,显得更专业、美观。使用时,可将P0与LCD的数据线相连,P2口与LCD的控制线相连,如图2-11所示。

图2-11 TC1602液晶显示电路

其中,TC1602第4脚RS 为寄存器选择,第5脚RW 为读写信号线,第6脚E 为使能端。第7~14脚:D0~D7为8位双向数据线。这里要注意的是,为了布线方便,单片机端的D0~D7是接到LCD /602的D1~D0,正好相反,因此在编写软件时需要做处理,使读取正确。

3 系统软件设计

3.1 系统程序结构

(1)DS18B20温度传感器接口模块,分为初始化程序、写入命令以及读取子程序等部分;

(2)基于YB1602的显示模块,分为初始化子程序、写入子程序以及显示子程序; (3)本次设计使用C 语言编写程序,C 语言相比汇编有许多的优势;编译器使用Keil Version2进行程序编译,该软件功能强大使用方便。

主程序,分为系统初始化、按键处理以及各个子程序的调度管理等部分。 如图3-1所示描述了各个模块的关系:

图3-1系统软件方框图

DS18B20初始化

距离计算

LED 显示模块

超声波发射 超声波接收

按键处理

蜂鸣器鸣音

3.2系统主程序:

本设计主程序的思想如下:

(1)DS18B20在12位精度下转换周期为750ms ,故900ms满足该速度要求;超声波每隔60ms发送一次。

(2)按键S为测量启动键;

(3)系统采用AT89S52的内时钟:12MHz;

(4)没有使用看门狗功能;

(5)超声波发送一定时间后才开始启动检测,避免直达信号造成误判。所以系统最小测量约为112mm;

系统主程序如下:

void main(void)

{

uchar i,j;

for(i=0;i<255;i++)

for(j=0;j<255;j++); //延时,等待系统外围复位完成

sys_init(); //初始化

display(); //显示

sta_flag=0; //标准复位

waitforstarting: //检测按键

while(START);

for(i=0;i<20;i++)

delay1ms();

if(START)

goto waitforstarting;

BUZZER=0; //蜂鸣器鸣音一次提示按键按下

i=100000;

while(i--);

BUZZER=1;

i=100000;

while(i--);

TR0=1; //启动定时器0

while(1)

{

if(sta_flag) //60MS到了,超声波已经发送{

while(0==CSBIN); //等待超声波返回

TR1=0;

jsh=TH1; //停止计数

{

temp=wd();

count=0;

testtemp(); //重新启动转换

display(); //刷新显示

}

computer(); //计算距离

hextobcd(); //转化成BCD码

sta_flag=0; //标志清零

}

}

}

void sys_init(void)

{

uchar i;

for(i=0;i<29;i++) //显示清零

{ num[i]=0;}

TMOD=0x11;

TH0=0x15;

TL0=0xA0;

P0=0;

CNT=0; //超声波发送关闭

CSBIN=1;

EA=1; //开放总中断

Init_LCD();

3.2实现距离计算

float Dis_count() //距离计算函数

{

float cm;

cm=TH1*256+TL1;

cm-=7610; //减去限制10M的初值+可调误差值cm*=speed; //计算距离uS*34650m

cm/=20000; //转换为s 单程

return cm;

}

3.3系统原理图

3.3.1系统PCB板图

4 心得体会

本次设计是对自动控制系统》、《单片机原理及应用》、《计算机控制技术》等专业课学完之后的一次复习和应用,在设计过程中遇到了一些难题,查阅参考资料给了我很大的帮助。这次的设计也是存在不足的,在实际生产应用方面还有很大改进的的空间,但是尽自己的努力设计出这个超声波测距系统也让自己觉得很满足和充实,在今后的学习中我会牢记专业知识,在作业或者生活中运用所学,学以致用。

5 参考文献

1 求是科技.单片机典型模块设计实例导航.第一版.北京:人民邮电出版社.2002

2 谢剑英,贾青.微型计算机控制技术.第三版. 北京:国防工业出版社,2001

3 潘新民.微型计算机与传感器技术. 北京:人民邮电出版社,1996

4 肖看、李群芳,单片机原理、接口及应用,第二版,清华大学出版社2010

超声波测距系统设计

目录 一、课程设计目的 (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+

51单片机超声波测距程序

//晶振:11.0592 //TRIG:P1.2 ECH0:P1.1 //波特率:9600 #include #include #include #define uchar unsigned char #define uint unsigned int sbit RX=P0^2; sbit TX=P0^3; unsigned int time=0; unsigned int timer=0; float S=0; bit flag =0; void Conut(void) { time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.87)/100; //算出来是CM if(flag==1) //超出测量 { flag=0; printf("-----\n"); } printf("S=%f\n",S); } void delayms(unsigned int ms) { unsigned char i=100,j; for(;ms;ms--) { while(--i)

{ j=10; while(--j); } } } void zd0() interrupt 1 //T0中断用来计数器溢出,超出测距范围{ flag=1; //中断溢出标志 } void StartModule() //T1中断用来扫描数码管和计800ms启动模块{ TX=1; //800MS启动一次模块 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; } void main(void) { TMOD=0x21; //设T0为方式1,GATE=1; SCON=0x50; TH1=0xFD; TL1=0xFD; TH0=0; TL0=0;

超声波测距仪单片机课设实验资料报告材料

微机原理与单片机系统课程设计 业:专轨道交通信号与控制 级:班1305 交控

姓名:贺云鹏 学号: 201310104 指导教师:建国 交通大学自动化与电气工程学院 30 日 12 2015 年月 超声波测距仪设计设计说明1 设计目的1.1 测量声波在发超声波测距的原理是利用超声波在空气中的传播速度为已知,根据发射和接收的时间差计算出发射点到障碍射后遇到障碍物反射回来的时间,物的实际距离。超声波测距主要应用于倒车提醒、建筑工地、工业现场等的距离测量。 超声波在气体、液体及固体中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强。超声波能以一定速度定向传播、遇障碍物后形成反射,利用这一特性,通过测定超声波往返所用时间就可计算出实际距离,从而实现无接触测量物体距离。超声波测距迅速、方便,且不受光线等因素影响,广泛应用于水文液位测量、建筑施工工地的测量、现场的位置监控、振动仪车辆倒车障碍物的检测、移动机器入探测定位等领域。 1.2 设计方法 本课题包括数据测距模块、显示模块。测距模块包括一个HC-SR04超声波测距模块和一片AT89C51单片机,该设计选用HC-SR04超声波测距模块,通过单片机对超声波进行计时并根据超AT89C51发射和接受超声波,使用HC-SR04.声波在空气中速度为340米每秒的特性计算出距离。显示模块包括一个4位共阳极LED数码管和AT89C51单片机,由AT89C51单片机控制数码管动态显示距离。 1.3 设计要求 采用单片机为核心部件,选用超声波模组,实现对距离的测量,测量距离能够通过显示输出(LED,LCD)。 2 设计方案及原理 2.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; }

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. 超声波传感器 本次设计超声波传感器采用电气方式中的压电式超声波传感器分机械方式

超声波测距程序(详细C语言数码管显示)

超声波测距程序(详细C语言数码管显示) #include //头文件 #include// _nop_() 函数延时1US用 #include #include #define uchar unsigned char #define uint unsigned int #define nop _nop_() sbit csb=P1^0;//超声波发送端口为P1.0 sbit bai=P2^2;//数码管百位 sbit shi=P2^1;//数码管十位 sbit ge=P2^0;//数码管个位 uchar flag;//超声波接收标志 float juli1;//距离变量,用来数码管显示用 int juli; uchar table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳数码管0到9的代码 int xianshi[3]; void delayshow(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void ledshow(void) { xianshi[0]=juli/100; xianshi[1]=((juli%100)/10); xianshi[2]=juli%10; bai=0; P0=table[xianshi[0]]; delayshow(2); bai=1; delayshow(2); shi=0; P0=table[xianshi[1]]; delayshow(2); shi=1;

课程设计-超声波测距+实际 MSP430 单片机与 proteus 中虚拟 51 单片机串口通信仿真

课题名称超声波测距+实际MSP430 单片机与proteus 中 虚拟51 单片机串口通信仿真 姓名 学号 年级专业 指导老师 完成日期2017年05 月27 日

摘要 随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。 本设计所介绍的就是实现实际单片机与proteus 中的虚拟单片机进行串口通信,采用MSP430F149 单片机为控制核心、以单线数字温度传感器DS18B20 来完成温度信号的采集、温度以数宇的方式显示在LCD1602 液晶上,最终实现温度的采集、显示。利用集成的超声波测距模块测出与障碍物之间的距离。并且利用UART 串口通信将实时数据发送给 proteus 中的虚拟单片机,虚拟单片用的是 AT89C51 单片机。51 单片机把接收到的数据用液晶模块显示出来,实现和实际单片机电路同步显示,并且设有报警电路,当距离小于5cm 时进行报警。 关键词:超声波测距、MSP430 单片机、LCD 液晶显示、proteus 仿真、AT89C51

目录 1. 绪论..................................................................................................... 1.1. MSP430 单片机概述 (1) 1.2. MSP430 的特点 (2) 1.3. 课题研究的主要内容 (3) 2. 系统总体方案设计......................................................................................... 2.1. 控制系统的原理图 (4) 2.2. 超声波测距的原理 (4) 2.2.1. 超声波发生器 (5) 2.2.2. 超声波测距原理 (5) 2.2.3. 超声波测距误差分析 (6) 2.2.3.1. 温度误差 (7) 2.2.3.2. 时间误差 (7) 2.3. 温度测量原理 (8) 3. 硬件系统与软件系统设计................................................................................... 3.1. 硬件部分 (8) 3.1.1. MSP430F149 单片机 (8) 3.1.1.1. MSP430F149 的组成 (9) 3.1.1.2. MSP430F149 的定时器及转换模块 (9) 3.1.2. 单线数字温度传感器DS18B20 (9) 3.1.2.1. 温度传感器DS18B20 特点 (10) 3.1.2.2. 温度传感器DS18B20 内部结构 (10) 3.1.2.3. DS18B20 读/写时序图: (13) 3.1.3. 超声波测距模块 (13) 3.1.3.1. HC-SR04 超声波模块原理图 (13) 3.1.3.2. 实物图: (14) 3.1.3.3. 电气参数: (14) 3.1.3.4. 超声波时序图: (15) 3.1.4. 报警模块 (15) 3.1.5. 液晶显示模块 (16) 3.2. 软件部分 (16) 3.2.1. 主处理的流程图 (16) 3.2.2. 温度采集DS18B20 模块 (18) 3.2.3. 超声波传感器模块 (19) 3.2.4. 报警模块 (20) 4. Proteus 中虚拟单片机的仿真系统设计.......................................................................... 4.1. Proteus 简介 (20) 4.2. ISISI 编辑器介绍 (21) 4.3. Proteus 中虚拟单片机仿真图搭建 (23) 4.3.1. 51 单片机最小系统电路 (23) 4.3.2. proteus 中1602 液晶电路 (23) 4.3.3. 虚拟终端以及串口电路 (24) 4.4. 在Proteus 中画出完整的电路图 (25)

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

高精度超声波测距系统设计。 引言 利用超声波测量距离的原理可简单描述为:超声波定期发送超声波,遭遇障碍物时发生反射,发射波经由接收器接收并转化为电信号,这样测距技术只要测出发送和接收的时间差, 然后按照下式计算,即可求出距离: 由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求, 因此,广泛应用于倒车提醒、建筑工地、工业现场等的距离测量。目前的测距量程上能达到百米数量级,测量的精度往往能达到厘米数量级。本文在分析现有超声波测距技术基础之上, 给出了一种改进方案,测量精度可达毫米级。 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

单片机应用_超声波测距器

单片机课程设计 一、需求分析: 超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。要求测量围在1m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。 本文旨在设计一种能对中近距离障碍物进行实时测量的测距装置,它能对障碍物进行适时、适量的测量,起到智能操作,实时监控的作用。 关键词单片机AT82S51 超声波传感器测量距离 二、硬件设计方案 设计思路 超声波传感器及其测距原理 超声波是指频率高于20KHz的机械波。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波测距的原理一般采用渡越时间法TOF(time of flight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离 测量距离的方法有很多种,短距离的可以用尺,远距离的有激光测距等,超声波测距适用于高精度的中长距离测量。因为超声波在标准空气中的传播速度为340米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以达到毫米级。 由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。 超声波发生器可以分为两类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。本课题属于近距离测量,可以采用常用的压电式超声波换能器来实现。 根据设计要求并综合各方面因素,可以采用AT89S51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,超声波测距器的系统框图如下图所示: 超声波测距器系统设计框图 主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。采用AT89S51来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。

超声波测距调试与仿真

6 仿真与调试 6.1 基于Proteus软件的仿真 Proteus是一款功能强大的软件,其ISIS用来做仿真十分方便,尤其是单片机系统的仿真,我们在本设计的开发初期,用Proteus来仿真我们的设计,以便验证我们的设计,对设计的正确性做出分析。 因为在proteus软件中没有超声波传感器之类的元件,发射和接收的信号可以用信号发生器发出的类似信号进行仿真。本次仿真与实际电路现象有所出入,所以仅供参考; 在proteus软件里用“激励源”里的“SINE”作为超声波发射信号,设置如下图6-1所示: 图6-1 超声波模拟发射信号设置 用“虚拟仪器”里的简易示波器来接收正弦波进行观察;下面的“虚拟示波器”中,蓝色的波是模拟超声波发射的正弦波,黄色的波是接收到的波。

6.2电路调试 首先对单片机最小系统进行检测,看单片机是否正常工作;比如晶振是否起振,复位电路时候能对单片机进行复位。在这些都正常后就可以对原理图中的各个模块进行调试。 (1)显示电路的调试 对显示电路的调试主要是调试程序所写的和数码管的显示是否一致,若不一致就对数码管的高低位显示做调整。首先调试显示电路主要是为了方便后面的调试 (2)发射模块调试 上电后,在单片机P1.0脚处用示波器检测是否有波发出,然后再在超声波换能器TCT40-10F1连接处检测发出的波的状况;TCT40-10F1的连接要注意引脚的高低电平。 (3)接收模块调试 接收模块的调试不太容易,因为不知道什么时候可以接收到波,所以我在程序中有设置设置了若接收到波数码管的显示不为“0000”;通过TCT40-10S1还还可以判断,若接收到波后,TCT40-10S1的高电平脚变为低电平。为了能更 好的发射和检测到波,我设置了两组超声波换能器,发射都是从P1.0脚出来,都由P3.2进行采样接收。

超声波测距电子电路设计详解

超声波测距电子电路设计详解 在自主行走机器人系统中,机器人要实现在未知和不确定环境下行走,必须实时采集环境信息,以实现避障和导航,这必须依靠能实现感知环境信息的传感器系统来实现。视觉、红外、激光、超声波等传感器都在行走机器人中得到广泛应用。由于超声波测距方法设备简单、价格便宜、体积小、设计简单、易于做到实时控制,并且在测量距离、测量精度等方面能达到工业实用的要求,因此得到了广泛的应用。本文所介绍的机器人采用三方超声波测距系统,该系统可为机器人识别其运动的前方、左方和右方环境而提供关于运动距离的信息。 超声波测距原理 超声波发生器内部由两个压电片和一个共振板组成。当它的两极外加脉冲信号,且其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两极间未加外电压,当共振板接收到超声波时,就成为超声波接收器。超声波测距一般有两种方法:①取输出脉冲的平均电压值,该电压与距离成正比,测量电压即可测量距离;②测量输出脉冲的宽度,即发射超声波与接收超声波的时间间隔t,根据被测距离s=vt?2来得到测

量距离,由于超声波速度v与温度有关,所以如果温度变化比较大,应通过温度补偿的方法加以校正。 本测量系统采用第二种方法,由于测量精度要求不是特别高,所以可以认为温度基本不变。本系统以PIC16F877单片机为核心,通过软件编程实现其对外围电路的实时控制,并提供给外围电路所需的信号,包括频率振动信号、数据处理信号等,从而简化了外围电路,且移植性好。系统硬件电路方框图见图1。 图1 系统硬件电路方框图 由于本系统只需要清楚机器人前方、左方、右方是否有障碍物,并不需要知道障碍物与机器人的具体距离,因此不需要显示电路,只需要设定一距离阀值,使障碍物与机器人的距离达到某一值时,单片机控制机器人电机停转,这可通过软件编程实现。

超声波测距系统设计

(一)题目 超声波测距系统设计 (二)内容及要求 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器件是由背光源发射的光通过偏振片和液晶盒时,控制投

超声波测距仪的设计说明

题目:超声波测距仪的设计 超声波测距仪的设计 一、设计目的: 以51单片机为主控制器,利用超声波模块HC-SR04,设计出一套可在数码管上实时显示障碍物距离的超声波测距仪。 通过该设计的制作,更为深入的了解51的工作原理,特别是51的中断系统及定时器/计数器的应用;掌握数码管动态扫描显示的方法和超声波传感器测距的原理及方法,学会搭建51的最小系统及一些简单外围电路(LED显示电路)。从中提高电路的实际设计、焊接、检错、排错能力,并学会仿真及软件调试的基本方法。 二、设计要求: 设计一个超声波测距仪。要求: 1.能在数码管上实时显示障碍物的实际距离; 2.所测距离大于2cm小于300cm,精度2mm。 三、设计器材: STC89C52RC单片机 HC-SR04超声波模块 SM410561D3B四位的共阳数码管 9014三极管(4) 按键(1) 电容(30PF2,10UF1) 排阻(10K),万用板,电烙铁,万用表,5V直流稳压电源,镊子,钳子,

导线及焊锡若干,电阻(200欧5)。 四、设计原理及设计方案: (一)超声波测距原理 超声测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。基本的测距公式为:L=(△t/2)*C 式中 L——要测的距离 T——发射波和反射波之间的时间间隔 C——超声波在空气中的声速,常温下取为344m/s 声速确定后,只要测出超声波往返的时间,即可求得L。 根据本次设计所要求的测量距离的围及测量精度,我们选用的是HC-SR04超声波测距模块。(如下图所示)。此模块已将发射电路和接收电路集成好了,硬件上不必再自行设计繁复的发射及接收电路,软件上也无需再通过定时器产生40Khz的方波引起压电陶瓷共振从而产生超声波。在使用时,只要在控制端‘Trig’发一个大于15us宽度的高电平,就可以在接收端‘Echo’等待高电平输出。单片机一旦检测到有输出就打开定时器开始计时。 当此口变为低电平时就停止计时并读出定时器的值,此值就为此次测距的时间,再根据传播速度方可算出障碍物的距离。 (二)超声波测距模块HC-SR04简要介绍 HC-SR04超声波测距模块的主要技术参数使用方法如下所述: 1. 主要技术参数: ①使用电压:DC5V ②静态电流:小于2mA ③电平输出:高5V

超声波测距系统设计

超声波测距系统设计

论文题目:超声波测距系统设计 摘要 超声波具有不受外界光及电磁场等因素的影响的优点,超声波测距作为一种有效的非接触式测距方法已被应用于多个领域。 本设计采用渡越时间法,硬件系统分为发射模块、接收模块、显示模块、中央处理模块四个部分。本设计采用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

超声波测距C语言源程序代码

超声波测距C语言源程 序代码 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

/*{HZ即单位s的倒数}本晶振为12MHZ,因此外部的时钟频率为12MHZ,所以内部的时钟频率为(12M H Z)/12=1M H 即1000000HZ,而机械频率为1/(1MHZ),即每完成一次计算(即定时器的值加一)用时, 即1us(微秒).*/ /*************************************************************************** ********/ #include<> #define UC unsigned char #define UI unsigned int void delay(UI); sbit BX = P3^0;void TimeConfiguration(); a = 0; b = 0; c = 0; P2 =~ 0x00; goto loop; } time = TL0 + TH0*256; juli = ( int )( (time*/2 ); BAI = ( (juli%1000)/100 ); SHI = ( (juli%100)/10 ); GE = ( juli%10 ); /******************************************两种模式的距离显示 ********************************************/ if(juli > MAX) { Hong = 0; Lv = 1; while( t1-- ) { a = 0; b = 1; c = 1; P2 =~ CharacterCode[BAI]; delay(400); a = 1; b = 0; c = 1; P2 =~ CharacterCode[SHI]; delay(400); a = 1; b = 1; c = 0; P2 =~ CharacterCode[GE]; delay(390);

相关文档
最新文档