利用超声波实现躲避障碍物——小车(编辑修改稿)内容摘要:
路况检测模块的硬件设计 路况检测模块 用的是超声波检测。 超声波是一种振动频率超过 20 kHz 的机械波,它可以沿直线方向传播,而且传播的方向性好,传播的距离也较远,在介质 中传播时遇到障碍物在入射到它的反射面上就会产生反射波。 由于超声波的以上几个特点,所以超声波被广泛地应用于物体距离的测量、厚度等方面。 而且,超声波的测量是一种比较理想的的非接触式的测距方法。 当进行距离的测量时,由安装在同一水平线上的超声波发射器和接收器完成超声波的发射与接收,并且同时启动定时器进行计数。 首先由超声波发射探头 发射超声波并同时启动定时器计时,超声波在空气中传播的途中一旦遇到障碍物后就会被反射回来,当接收探头收到反射波后就会给负脉冲到单片机使其立刻停止计时。 这样,定时器就能够准确的记录下了超声波发射 点至障碍物之间往返传播所用的时间 t( s)。 由于在常温下超声波在空气中的传播速度大约为 340 m/s[7],所以障碍物到发射探头之间的距离为: S=340t/2=170t 因为单片机内部定时器的计时实际上就是对机器周期 T 的计数,而本设计中时钟频率 fosc 取 12 MHz,设计数值 N,则: T= 12/fosc=1μ s t=N T= N ( s) S= 170 N T= 170 N/1000000( m) 在程序中按式 S= 170 N T= 170 N/1000000 计算距离。 而超声波发射电路经过一番设计如下, 超声波发射电路是由超声波探头和超声波放大器组成。 超声波探头将电信号转换为机械波发射出去,而单片机所产生的 40 kHz 的方波脉冲需要进行放大才能将超声波探头驱动将超声波发射出去,所以发射驱动实际上就是一个信号的放大电路,本设计选用 74LS04 芯片进行信号放大,超声波发射电路如下图所示: 工作时,由单片机产生 40 kHz 的脉冲从 口向超声波 的发射电路部分发出信号,再经 74LS04 放大电路放大后,驱动超声波探头将超声波 发射 出去。 同样,对于超声波接收电路, 由于超声波在空气中的传播过程中是有衰减的,如果距离较远,那么超声波接收电路所接收到的超声波信号就会比较微弱,因此需要对接收到的信号进行放大而且放大的倍数也要比较大。 超声波接收电路主要是由集成电路 CX20206A 芯片电路构成的, CX20206A 芯片电路可以对超声波信号进行放大、限幅、带通滤波、峰值检波、整形、比较等功能,比较完之后超声波接收电路会输出一个低电平到单片机去请求中断,当即单片机停止计时,并开始去进行数据的处理。 CX20206A 芯片的前置放大器具有自动增益控制的功能,当测量的距离比较近时,放大器不会过载;而当测量距离比较远时,超声波信号微弱,前置放大器就有较大的放大增益效果。 CX20206A 芯片的 5 脚在外接电阻对它的带通滤波器的频率进行调节,而且不用再外接其他的电感,能够很好地避免外加磁场对芯片电 路的干扰,而且它的可靠性也是比较高的。 CX20206A 芯片电路本身就具有很高的抗干扰的能力,而且灵敏度也比较高,所以,能满足本设计的要求。 超声波接收电路如 下图所示。 综合两个电路,将超声波发射部分和超声波接收部分的电路做成一个较小的模块,并且为了让超声波接收更加灵敏,设计 PCB 的时候,要注意 时 将两个超声波探头设计 保持中心轴线平行并相距 4~8cm。 总电路图如下图: 而超声波模块的 PCB 图 如 下 图 : 而经过焊接、安装元器件后的超声波模块成品图如下: 第五章 躲避障碍物小车软件设计 躲避障碍物小车的软件控制用的是 AT89S52 单片机。 我们开始的设想是用单片机的多通道串口来控制三个超声波检测模块的,因为单片机多通道这方面比较少人用。 当我们完成了一块的时候,老师建议说用分时扫描的方法也能实现超声波多模块的检测,而且效果也不会差。 通过讨论,我们决定用两块单片机来控制三个超声波模块,一块单片机作为系统主机,另一块作从机。 主机用分时扫描的方法控制两块超声波和接受从机发送的数据,并 且控制直流电机的转向,从而使小车避开障碍物。 从机控制一块超声波模块并与主机进行串口通信,发送数据。 主机的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序、串口接收中断程序和直流电机控制程序组成。 从机主要由主程序、超声波发生子程序、超声波接收中断程序、串口发送子程序组成。 从机的超声波模块程序和主机的一样,在这就不重复了。 主程序流程图 N N Y Y Y 定时器子程序 主程序 N Y 开始 单片机初始化 定时中断子程序 回波。 串口接收。 外部中断 串口中断 定时器中断入口 定时器初始化 发射超声波 两方向发射完。 停止发射 返回 计算距离 外部中断入口 关闭外部中断 读取时间 输出结果 开始 单片机初始化 定时中断子程序 定时器发射超声波 回波。 外部中断 外部中断子程序 N 从机流程图 N Y Y Y Y Y 直流电机控制 两块超声波模块的发生、接收和计算的设计 AT89S52 单片机的 I/0 口都可以用来做超声波的发生,只要给一个高低电平就能产生脉冲方波。 我们定义了 TX1( P14)和 TX2( P15)作为超声波发射端口, RX1( P32)和 RX2( P33)既是外部中断 INT0和 INT1 作为判断回波的端口,并且读取定时器的数据进行计算。利用超声波实现躲避障碍物——小车(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。