《本系统以单片机AT89C52为核心控制部件运用无线收发技术配合一套缜密的软件算法实现小车循迹、循点、报警以及计时和显示功能.docx》由会员分享,可在线阅读,更多相关《本系统以单片机AT89C52为核心控制部件运用无线收发技术配合一套缜密的软件算法实现小车循迹、循点、报警以及计时和显示功能.docx(20页珍藏版)》请在第一文库网上搜索。
1、目录摘要,3关键词-3一、系统方案,31、方案比较与论证3I .1.1、控制器模块3II 2、电机及驱动模块3113、测速模块4114、音频产生模块,4115、无线收发模块,41.1.6、声音采集处理模块41.2、最终方案4二、电路设计52.1、 系统组成52.2、 电动机驱动电路52.3、 行程测量模块,52.4、 声光报警模块62.5、 周期性音频脉冲信号产生模块62.6、 无线收发模块设计62.7、 声音采集计算系统6三、软件设计,71.1、 电机驱动部分流程图71.2、 主程序流程图73. 3单片机控制MMCT芯片的程序.73. 4无线接收模块程序7四、系统测试83.1、 测试仪器,8
2、3.2、 调试,84. 2.1速度调试,84. 2.2功率放大测试84. 2.3声源频率测试85. 2.4声音接收测试8五、总结,95.1、 结论95.2、 结束语9六、参考文献9七、附录9附录一、部分电路原理图9附录二、主程序流程图,口附录三、部分程序附录13摘要:本课题设计制作小组本着简单、准确、可靠、稳定、通用、性价比低的原则,采用STC89C52作为声源系统的控制核心,使用凌阳SPCE061作为音频信号分析处理系统核心,应用电机控制ASSP芯片MMCT驱动电机。本系统电路分为声源移动模块,声音产生模块,声音采集处理模块,无线控制模块和显示报警模块。声音收发和无线传输模块测量声源与声音接
3、收器之间的距离,控制声源移动。首先测量声源S距A、B的距离差,距离差为零表示小车已运动到OX线,然后测量S距A、C的距离差,距离差为零表示小车寻找到W点。小车在OX线上运动时,利用S距A、B的距离差校正路线,同时声光报警,1CD液晶显示屏显示小车运行路程和时间。关键词:STC89C52;电机控制芯片MMC-I;PT2262/2272无线收发;周期性音频脉冲信号;TEA2025B音频放大一、系统方案1.1 方案比较与论证根据题目要求,本系统主要由控制器模块、直流电机及其驱动模块、声音产生模块,声音采集处理模块和无线控制模块、声光报警模块等构成。为较好的实现各模块的功能,我们分别设计了几种方案并分
4、别进行了论证。1.1.1 控制器模块方案一:采用大规模可编程逻辑器件(如FPGA)作为系统的控制中心,目前,大规模可编程逻辑器件容量不断增大,速度不断提高,且多具有ISP功能,也可以在不改变硬件电路的情况下改变功能,但在本系统中,它的高处理功能得不到从分利用,还考虑到VHI)1语言描述也没有单片机语言那么方便,所以这个方案不采用。方案二:采用单片机STC89C52作为中心控制器。STC89C52单片机算数运算功能强,软件编程灵活,自由度大,具有超低功耗,抗干扰能力强等特点。还具有ISP在线编程功能,在改写单片机存储内部的程序时不需要将单片机从工作环境中取出,方便快捷。在后来的实验中我们发现,S
5、TC89C52精确度和运算速度也都完全符合我们系统的要求。故采用STC89C52单片机为我们整个系统的控制核心。1.1.2 电机及驱动模块采用电机控制ASSP芯片MMCT驱动(实物图如图1)。MMCT为多通道两相四线式步进电机/直流电机控制芯片,基于NEC电子16位通用MCU(PD78F1203)固化专用程序实现,支持UART和SP1串行接口。MMC-I共有三个通道电机控制单元,通过设置寄存器可分别设置工作模式,实现不同功能。可以用来驱动直流电机和步进电机。方案一:采用步进电机。步进电机是数字控制电机,不但控制精度高,而且简单可靠,但价格过高,重量大,占用端口资源多且控制复杂,不予采用。方案二
6、:采用直流减速电机。直流电机具有优良的调速特性,调整范围广,过载能力强,能承受较大重物,速度均匀性好,且用MMCT驱动直流电机时,只需外接一个全桥驱动芯片1293D就可以了,控制简单,电源要求低,易于实现,因此我们选择了此方案。反面正面Oooooooooooo-,随唱碧S口OOOOoOOo(二二二二三图1MMC-1驱动实物图1.1.3 测速模块方案一:采用霍尔开关元器件A44E检测轮子上的磁钢从而给单片机中断脉冲,达到测量速度的作用。霍尔元件具有体积小,频率响应宽度大,对外围电路要求简单,价格低廉,抗干扰能力强等优点。电源要求不高,安装也较为方便。方案二:采用红外传感器进行测速。但无论是反射式
7、红外传感器还是对射式红外传感器,他们对都对外围环境要求较高,易受外部环境的影响,稳定性不高,且价格较为昂贵。通过对方案一、方案二的比较其优缺点,综合多方面因素决定选用方案一。1.1.4 音频产生模块方案一:采用锁相环式频率合成器。这种频率合成器具有很好的窄带跟踪特性,可以很好地选择所需要频率信号。但由于锁相环本身是一个惰性环节,锁定时间和频率转换时间较长。而且,由模拟方法合成的正弦波的参数很难控制。方案二:采用555振荡器,产生方波,然后利用音频放大器TEA2025,放大声音信号,再利用扬声器发出声音。该方案不仅能产生有效声源,而且设计简单,是本设计的最佳选择。方案一:采用自制的无线电发射和接
8、收电路进行无线接收。这个方案虽然思路简单,但是硬件电路的连接与调试十分复杂,装置工作时的稳定性难以保证。方案二:采用集成的无线收发编解码芯片,例如PT2262/PT227。这种芯片功耗低,外围电路简单,工作电压范围宽,数据位可达六位,完全可以达到设计要求。1.1.6 声音采集处理模块方案一:采用凌阳SPCE061A单片机自带的音频采集模块,虽然可以使硬件连接简单,但是A、B、C三点各需要一个单片机,造成资源浪费。方案二:采用麦克接收并用音频放大芯片TEA2025放大信号。该放大电路不仅连接简单,价格便宜,而且放大效果好,简单易学。综合考虑,我们选择方案二。1.2 最终方案经过反复论证,我们最终
9、确定了如下方案:(1)采用STC89C52单片机作为主控制器。(2)采用555振荡器作信号发生器。(3)采用PT2262/2272集成无线收发编码芯片制作无线收发。(4)电机控制ASSP芯片MMC-I作为直流电机的驱动芯片。(5)采用Mz1H04-12864液晶屏显示小车运行时间与路程。(6)霍尔传感器检测小车运行路程。(7)利用麦克和音频放大芯片TEA2025做声音采集处理系统电路设计系统的硬件电路由发声系统、声音采集系统、单片机控制系统、无线收发等系统组成。本系统的方框图如图2所示:图2系统组成方框图2.2电动机驱动电路电机控制部分,我们采用电机控制ASSP芯片MMCT作为驱动芯片。每一路
10、直流电机需要CHnDCPWM和CHnDCDIR两个引脚,CHnDCPWM用于PWM输出,CHnDCDIR用于指定电机转向,外接一个H桥驱动芯片就可以控制直流电机工作。输出频率固定16KHz,通过调节占空比控制电机转速。驱动电路的设计如图3:主控MCU4,jjMMC-I图3电机驱动电路2.3行程测量模块通过霍尔传感器测量小车速度和路程。在非磁材料的圆盘边上粘贴一块磁钢,霍尔传感器固定在圆盘外缘附近。圆盘每转动一圈,霍尔传感器便输出一个脉冲。通过单片机测量产生脉冲的频率,就可以得出圆盘的转速。根据圆盘(车轮)的转速,再结合圆盘的周长就是计算出物体的位移。车轮的半径R为1.9cm,所以车轮的周长为1
11、=2*R=2*3.14*1.9=12cm由计数器可得IS内转盘所转的圈数为30,即转速:30转/秒。由齿轮的减速比及车轮周长得一秒钟小车全速前进的距离为:30*(8/250)*12=11.52Cm2. 4声光报警模块题目要求小车可移动声源到达Ox线和W点后,必须有明显的光和声指示。我们决定采用蜂鸣器和发光二极管实现声光报警。电路图如下:图4声光报警电路2.5 周期性音频脉冲信号产生模块跟据本题设计方案,周期性音频脉冲信号产生比较简单,主要就是利用555振荡器,产生方波,再利用音频放大器TEA2025把信号放大发声。TEA202是双声道功率放大集成电路,集成块内部主要由两路功能相同的音频预放、功
12、放、去耦、驱动电路、供电电路等组成。发音原理是:音频信号经电容祸合从TEA2025的、脚输入,先经预放大后加到功率放大器,放大后的音频信号从、15脚输出,由输出祸合电容耦合去驱动喇叭发声。其电路连接图和音频放大器TEA2025应用电路见附录一(7.1.4、7.1.5)oPT2262/2272是一对带地址、数据编码功能的无线遥控发射/接收芯片。其中发射芯片PT2262将载波振荡器、编码器和发射单元集成于一身,使发射电路变得非常简洁。它发射12位数据,以VT为标志位,每4位一组,且在每一组的上升沿触发。PT2262具有8位地址编码,能够防止各个无线模块之间的干扰。接收芯片PT2272是非锁存型4位
13、数据输出,接收PT2262发射的12位数据,也是每4位为一组,也具有8位地址编码,有效防止了各个无线模块之间的干扰。该模块的硬件电路连接图见附录一(7.1.3)2.7 声音采集计算系统在声音接收器A、BsC、三点分别用麦克采集声音,然后经音频放大芯片TEA2025将声音信号放大输出,送给单片机处理中断,单片机再利用信号下降沿中断触发计算声源S距A、B或S距A、C得时间差,向无线发射系统传递信号,最终控制声源移动。具体算法如下:因为音频信号为周期性脉冲信号(如图5所示),所以我们在一个信号的下降沿开中断计时一个脉冲,对于A来说,声源发出声音,当A接收到一个脉冲信号时,在该脉冲的下降沿到达时,开T
14、I定时器,当下一个脉冲的下降沿到达时,关口定时器,由此得到一个时间t1;同时对于B来说,B也执行同样的步骤,也得到一个时间t2,令t=t1T2,那么时间t与声速(340ms)的乘积就是声源S距离A点与B点的距离差。当该距离差大于零时,表示声源离A点的距离较远,当该距离差等于零时,表示声源离A点的距离与B相等。利用同样的原理计算S与A和C之间的距离差。三、软件设计3.1 电机驱动部分流程图先给MMCT上电,RESET和S1EEP管脚接高电平。然后再用C语言编写程序,让单片机控制电机驱动芯片。电机驱动部分流程图如图所示:I设置通道电机I运行模式图6电机驱动部分流程图3.2 主程序流程图(见附录一)
15、3.3 单片机控制MMC-I芯片的程序见附录三(7.3.1)3.4 无线接收模块程序附录三(7.3.2)四、系统测试4.1 测试仪器秒表,米尺,双踪示波器,万用电压表,4.2 调试4.3 2.1速度调试我们把声源放在不同的初始位置,让接收器接收其信号,然后发出控制信号控制小车运动,测量出S点到OX轴的时间和距离,根据方1:幻率二盾的杆代7一列CV处的壬古西南SZMi二由117RvFq1的计算公式计算出声源S移动到OX的平均速度。话左CV站一好白口!布害到核在位示占66站丽宜根据五巧;由声一甫力*g1的计算公式计算出声源S移动到W点的平均速度。测试结果如下表:表1速度测试表S初始位置在D点OY上半平面OY下半平面在B点BD线右侧到OX时间7.Is6.Os1.9s8.Os8.IsS距OX距离50cm39cm14cm50cm55c