1、0传感器与测试技术课程设计题目 超声波测距系统设计 学校 四川广播电视大学 专业 机械设计制造及其自动化班级 135100083012502姓名 陈康峰 学号 1351001223255 指导教师 熊纪宇 完成时间 2014 年 4 月 18 号 1目录一、课程设计目的 2二、课程设计题目 2三、课程设计内容及要求 21、设计内容 .22、设计要求 .2四、传感器工作原理 2五、系统框图 4六、单元电路设计原理 41、LED 显示电路与键盘控制电路设计 .42、超声波发射电路设计 .53、超声波接收电路设计 .74 、串口通信与蜂鸣器电路设计 8七、 软件设计与系统调试 .91、 主程序流程图
2、 .101.1 发射程序与接收流程图 .101.2 中断子程序及流程图 .111.3 距离计算与显示子程序 .12八、设计中的问题及解决方法 .13九、参考文献 .142一、 课程设计目的通过传感器及检测技术课程设计,掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。进一步理解传感器及检测系统的设计和应用。 二、 课程设计题目:超声波测距系统设计三、课程设计内容及要求1、设计内容采用 40KHz 的超声波发射和接收传感器测量距离。可采用发射和接收之间的距离,也可将发射和接收平行放在一起,通过反射测量距离。功能:1)LED 数码管显示测量距离,精确到小数点后一位(单位:cm) 。2
3、)测量范围:30cm200cm,3)误差0.5cm。4)其它。2、设计要求1)掌握传感器的工作原理及相应的辅助电路设计方法。2)独立设计原理图及相应的硬件电路。3) 设计说明书格式规范,层次合理,重点突出。并附上详细的原理图四、传感器工作原理超声波发生器内部结构有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,就成为超声接收波换能器。超声测距大致有以下方法: 取输出脉冲的平均值电压,该电压 (其幅值基本固定
4、)与距离成正比,测量电压即可测得距离; 测量输出脉冲的宽度,即发射超声波与接收超声波的时间间隔 t,测距原理如图2-1 所示,距离公式为 s=ct/2,其中 c 为声速。通过测量发射与接受装置之间的距离 h, 利用直角三角形可求得 。因为 sh,则 d=s,d=s= ct/2。本测量电路22/hsd)(采用第二种方案。3目标h dS图 4-1 测距原理图在空气中,常温下超声波的传播速度是 334 米/秒,但其传播速度 v 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高 1,声速增加约 0.6米/秒。声速与温度关系如表 4-2 所示。因此在测距精度要求很高的情况下,应
5、通过对温度补偿的方法对传播速度加以校正。已知现场环境温度 T 时,超声波传播速度 V 的计算公式可近似如下:V=331.5+0.607T这样,只要测得超声波发射和接收回波的时间差 t 以及现场环境温度 T,就可以精确计算出发射点到障碍物之间的距离。表 4-2 声速与温度关系表:温度()-30 -20 -10 0 10 20 30 40声速(m/s)313 319 325 332 338 344 350 3564五、系统框图障碍物单片机发射电路接收电路发射发射接收接收通信接口L E D 显示电路六、单元电路设计原理1、LED 显示电路与键盘控制电路设计显示器是一个典型的输出设备,而且其应用是极为
6、广泛的,几乎所有的电子产品都要使用显示器,其差别仅在于显示器的结构类型不同而已。最简单最直观的显示器可以使用LED 发光二极管,而复杂的教完整的显示器应该是 CRT 监视器或者屏幕较大的 LCD 液晶屏。综合课题的实际要求,由于只需显示距障碍物的距离,因此选用 LED 数码管,通过单片机编程实现显示。动态扫描显示接口是单片机中应用最为广泛的一种显示方式之一。其接口电路是把所有显示器的 8 个笔划断 adp 同名端连在一起,而每一个显示器的公共极 COM 是各自独立的受 I/O 线的控制。CPU 向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于 COM 端,
7、而这一端是由 I/O 控制的,所以我们就可以自行决定何时显示哪一位了。而所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的 COM 端,使各个显示器轮流点亮。在轮流点亮过程中,每位显示器的点亮时间是极为短暂的(约 1ms) ,但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非人同时点亮,但只是扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。采用静态扫描方式控制点亮 LED 数码管无位选信号,各数码管是同时点亮的,每个数码管显示数码的笔划信息也分路同时送给,其原理比较简单。静态扫描显示编程容易,显示比较清晰,亮度一般较高,但要求占用很多 I/O 接线
8、口和增用不少硬件芯片,成本较高。因此,我采用动态扫描。设计的显示电路采用 4 位一体八段共阴极数码管显示,段码直接由单片机的 P0 口来驱动,因为 P0 口的内部无上拉电阻,需在外部接上拉电阻;位码则通过 4 个 NPN 型三极管来驱动,同时接单片机 P2 口。显示电路如图 6-1 所示。5PNabfcgdep76421903DS8LEAGKR?s图 6-1 显示电路在外围的键盘控制电路中,设置了四个独立按键,分别与单片机的 P3.4P3.7 相连,当按下 S1 时,启动超声波发射,开始测距;当按下 S2 时,停止发射超声波,即停止测距;S3 为报警开关,当测量到距离过近时,蜂鸣器电路发出警告
9、,此时按下 S3 键,即可停止报警,S4 为预留出来的按键,当需要的时候可以实行编程控制。电路设计如图 6-2 所示。VC图 6-2 键盘控制电路2、超声波发射电路设计超声波的发射和接收是由超声波换能器来完成的,也就是我们俗称的探头。超声波的发射与接收可采用一体式的或独立式的,但是一体式的盲区问题比较严重,所以本次设计选择发射和接收探头分开的,具体将采用超声波发射换能器 TCT40-16BT 和超声波接收换能6器 TCT40-16BR。命名规则: 型号:TCT40-16BT 或(R) 类别:TC压电陶瓷超声波传感器;T通用性;T发射/R接收 外径:16 代表 16mm 外壳材料:铝 外壳颜色:
10、银色具体参数: 中心频率:40.0kHz1.0 kHz 输出电压: 115dB 接收灵敏度:-65dB 静电容量:2000pF20% 指向角:80 工作温度: -20+70超声波探头按其工作原理可分为压电式、磁致伸缩式、电磁式等,而以压电式最为常用。压电型超声波探头常用的材料是压电晶体和压电陶瓷,它是利用压电材料的压电效应来工作的:逆压电效应将高频电振动转化成高频机械振动,从而产生超声波,可作为发射探头;而利用正压电效应,将超声振动波转化为电信号,可作为接收头。超声波发射电路,是为了让超声波发射换能器 TCT40-16BT 能向外界发出 40 kHz 左右的方波脉冲信号。40 kHz 左右的方
11、波脉冲信号的产生通常有两种方法:采用硬件如由 555振荡产生或软件如单片机软件编程输出,本系统采用后者。编程由单片机 P1.0 端口输出40 kHz 左右的方波脉冲信号,由于单片机端口输出功率不够,40 kHz 方波脉冲信号分成两路,一路经一级反相器后送到超声波换能器的一个电极;另一路经两级反相器后送到超声波换能器的另一个电极。用这种推挽形式将方波信号加到超声波换能器的两端,实际上构成了一个桥式电路,输入与输出的相位图如图 3-4 所示,再加上输出端上拉电阻 R3,R4,一方面可以提高反向器 MC14069UB 输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。
12、发射电路如图 6-3 所示。LS1peakrVC7图 6-3 超声波发射电路3、超声波接收电路设计上述 TCT40-16BT 发射的在空气中传播,遇到障碍物就会返回,超声波接收部分是为了将反射波(回波)顺利接收到超声波接收换能器 TCT40-16BR 进行转换变成电信号,并对此电信号进行放大、滤波、整形等处理后,这里用索尼公司生产的集成芯片 CX20106,得到一个负脉冲送给单片机的 P3.2(INT0)引脚,以产生一个中断。CX20l06A 是日本索尼公司生产的红外接收芯片,也适用于超声波接收。其采用单列 8脚直插式,超小型封装。+5V 供电。以下是 CX20l06A 的引脚注释:1 脚:超
13、声波信号输入端,该脚的输入阻抗约为 40k 。2 脚:该脚与 GND 之间连接 RC 串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻 R 或减小 C,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但 C 的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为 R=4.7 ,C=3.3 F。3 脚:该脚与 GND 之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为 3.3 F。4 脚:接地端。5 脚:该脚与电源端 VCC 接
14、入一个电阻,用以设置带通滤波器的中心频率 fn,阻值越大,中心频率越低。例如,取 R=200k 时,f042kHz,若取 R=220k,则中心频率f038kHz。6 脚: 该脚与 GND 之间接入一个积分电容,标准值为 330pF,如果该电容取得太大,会使探测距离变短。7 脚:遥控命令输出端,它是集电极开路的输出方式,因此该引脚必须接上一个上拉电阻到电源端,该电阻推荐阻值为 22k ,没有接收信号时该端输出为高电平,有信号时则会下降。8 脚: 电源正极,4.5V5V。接收部分的电路如图 6-4 所示。8Speakr1234567ICX0AV图 6-4 超声波接收电路可以看到,集成芯片 CX20
15、106 在接收部分电路中起了很大的作用。CX20106 是一款应用广泛的红外线检波接收的专用芯片,也适用于超声波,其具有功能强、性能优越、外围接口简单、成本低等优点,由于红外遥控常用的载波频率 38 kHz 与测距的超声波频率 40 kHz 比较接近,而且 CX20106 内部设置的滤波器中心频率 f0 可由其 5 脚外接电阻调节,阻值越大中心频率越低,范围为 3060 kHz。故本次设计用它来做接收电路。CX20106 内部由前置放大器、限幅放大器、带通滤波器、检波器、积分器及整形电路构成。工作过程如下:接收的回波信号先经过前置放大器和限幅放大器,将信号调整到合适幅值的矩形脉冲,由滤波器进行
16、频率选择,滤除干扰信号,再经整形,送给输出端 7 脚。当接收到与CX20106 滤波器中心频率相符的回波信号时,其输出端 7 脚就输出低电平,而输出端 7 脚直接接到 SST89E564 的 INT0 引脚上,以触发中断。若频率有一些误差,可调节芯片引脚 5的外接电阻 R7,将滤波器的中心频率设置在 40 kHz,就可达到理想的效果。4 、串口通信与蜂鸣器电路设计由于 MCS51 使用的是正逻辑的 TTL 电平,为了达到电平匹配,在 MCS51 组成系统板上的 RS 口必须经电平转化后输出,可以使用美信 MAX232ECA 芯片,外围电路非常简单,只需要 4 个 0.1F 的电容器,可以实现与
17、计算机的通信,电路如图 6-5 所示。9C?E123456780JDB口R.TV+GN-图 6-5 串口通信电路如图 6-6 所示,蜂鸣器的正极接到 VCC(+5v)电源上面,蜂鸣器的负极接到三极管的集电极,三极管的基极经过限流电阻 R20 后由单片机的 P1.1 引脚控制,当 P1.1 输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音。因此,我们可以通过程序控制 P1.1 脚的电平来使蜂鸣器发出声音。当 P1.1 输出高电平时,三极管截止,没有电流通过线圈,蜂鸣器不发声。我们在测距过程中,当与障碍物的距离过近,蜂鸣器就可以发出报警音,起到提示的作用。 LSpeakrQP图 6-6
18、 蜂鸣器电路七、 软件设计与系统调试系统软件设计采用模块化设计,主要包括中断主程序、入口程序、定时器 0 中断程序、显示子程序、超声波发射子程序、延时子程序、距离计算子程序和报警子程序设计等。1、 主程序流程图10主程序首先要对系统环境初始化,设置定时器 T0 工作模式为 16 位定时/计数器模式,置位总中断允许位 EA 并清计数器,然后调用超声波发生子程序送出一个超声波脉冲。为了避免超声波从发射器直接传到接收器引起的直射波,需要延时 0.1ms(这也就是超声波测距系统会有一个最小可测距离的原因)后才可打开外部中断 0 接收返回的超声波信号。由于采用的是 24MHz 的晶振,计数器每计一个数就
19、是 0.5s,所以当当主程序检测到接收成功的标志位后,调用测距子程序,即可算得被测物与测距器之间的距离,最后显示在 LED上,主程序流程图如图 7-1 所示。开始单片机初始化判断是否有回波发射脉冲显示计算距离接收脉冲NY图 7-1 主程序流程图1.1 发射程序与接收流程图系统软件编制时应考虑相关硬件的连线,同时还要进行存储空间、寄存器以及定时器和外部中断引脚的分配和使用。本设计中 P1.0 引脚连接到推挽放大电路再连接到超声波发射传感器,P1.0 引脚输出的将是软件方式产生的 40 kHz 方波,而 P3.2(INT0)则被用来接收回波。定时器 T1,T0 均工作在工作方式 1,为 16 位计
20、数,T1 定时器被用来开启一次测距过程以它的溢出为标志开始一个发射测量循环,T0 定时器是用来计算脉冲往返时间,它们的初值均设为 0。超声波的接收由接收子程序来执行,接收子程序如图 4-2 所示。首先初始化,其次发射超声波,接收端判断是否有回波,若时间大于 30ms 仍没检测到回波则重新发射超声波;11若有回波,通过软件滤波,判断是否为回波信号,是回波,则读取时间,继续调用计算距离子程序,最后显示出测量的距离。初始化超声波发射有回波 ?读取时间显示特殊字符 E软件滤波时间 3 0 m s 是回波信号 ?显示YNNNY图 7-2 接收子程序流程图1.2 中断子程序及流程图当超声波接收器收到返回的
21、信号会给单片机一个外部中断,在程序中定义为外部中断0,INT0 中断在程序中的作用是形成中断进行跳转进入中断子程序,能够实现我在程序设计上的思维,使整个程序符合逻辑设计。中断子程序流程图如图 4-3 所示。在程序中应注意进中断时变量的保存及出中断时变量的恢复。当有外部中断时,将由硬件置位中断标志寄存器的 EXINTF0 或 EXINTF1 位(EXINTF0 或 EXINTF1 位由硬件置位,由软件清零),为避免进入中断死循环,必须在退出中断子程序时用软件清除该标志位。系统在进入中断时会自动关中断,之后进入处理子程序。接收中断后,读取定时器值,设置标志位。12关闭定时器关闭中断读取定时器值设置
22、标志位返回图 7-3 中断子程序流程图1.3 距离计算与显示子程序由于超声波测距的原理为超声波发生器 T 在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器 R 所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。在启动发射电路的同时启动单片机内部的定时器 T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在 INT0 端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。13开始取数据软件译码(查表)
23、送位选数据到 P0送段选数据到 P2显示图 7-4 显示流程图八、设计中的问题及解决方法在这次的设计后我了解到,无接触测量在当今的社会发展当中已经变得十分重要,而超声波作为非接触测量的一种方法,已经在很多领域得到应用。尽管本设计成功完成,但其中仍然存在着很大的改进空间。系统中仍有可以提高的方面,如考虑进去温度补偿的问题,以及提高精度的方法,显示部分可以改用效果更好的液晶屏显示,希望这些方面在之后的设计中能够得到进一步解决。设计过程中还遇到了许多问题,比如发射电路和接收电路连接有不懂的地方,有时候不知道该用什么器件更好,此时我就会去图书馆或者网上查找资料,实在查不到的就会问指导老师或者同学,老师都会耐心的帮我解决,最后就顺利完成了。14九、参考文献1 传感器及检测技术 高等教育出版社2 74 系列 TTL 资料3 4000 系列 CMOS 资料4 555 常用电路图集5 超声波传感器相关资料6 霍尔元件和磁敏传感器相关资料7 单片微型计算机接口技术及其应用