《本设计以凌阳16位单片机SPCE061为控制核心加以电源、电机驱动、语音发声、无线收发、声光显示等模块组成声音导引系统.docx》由会员分享,可在线阅读,更多相关《本设计以凌阳16位单片机SPCE061为控制核心加以电源、电机驱动、语音发声、无线收发、声光显示等模块组成声音导引系统.docx(36页珍藏版)》请在第一文库网上搜索。
1、【摘要】本设计以凌阳16位单片机SPCE061为控制核心,加以电源、电机驱动、语音发声、无线收发、声光显示等模块组成声音导引系统。用NEC公司的MMC-I芯片桥接1298N芯片做驱动,MMC-I产生的PWM信号可以动态控制电机的转向和转速。用蜂鸣器做声源,A、B、C为三个声源接受器,通过检测电路采集高低电平形成编码,确定小车位置,由无线传输模组nRF2401A与主控MCU通信,进而控制小车的运动,完成小车即声源的定位。利用凌阳单片机自带语音功能实现小车定位时的声光提示。高效完成了题目中的所有要求,行进流畅,系统完全达到了设计要求,完成了所有基本要求及发挥部分要求。关键词:SPCE061单片机;
2、MMC-I;PWM调速;编码;无线传输模组Abstract:Thedesignofse1f-mademotorcariscontro11edbysunp1us16SCMofSPCE061,carryingmobi1esourcewithbuzzeranddrivenbydirectcurrentgearmotor.Adrivechip1298NHbridgeisexterna11yconnectedasmotordrivermodu1ethroughNEChomemadeD78F1203(MMC-1)withPWMsigna1contro11ingspeed,rea1izingautomati
3、cgoingahead,turningaround,parkingandothervariousbehaviors.Bytwowire1esstransmissionmodu1enRF2401A,themotorcarcandeterminethesourceofthesound,reachtothedestinationa1ongwithregu1atedpathfromany1ocationandachievethepositioningofcar.Thecar,sgoingsmooth1ymeetsthemostrequirementsofthedesign,anda1sofu11ydi
4、sp1ayedrunningtimeandspeedaswe11aswiththefunctionofvoicebroadcasting.Keywords:SPCE061microcontro11er;MMC-1;PWMspeedcontro1;codingwire1esstransmissionmodu1e;目录一、系统总体方案的设计111设计任务11.2 系统设计及方案论证21.2.1 1控制器模块21.2.2 电机的选择21.2.3 电机驱动控制的选择31.2.4 无线收发模块41.2.5 电源模块41.2.6 语音发声模块51.2.7 声光显示模块51.3 系统组成5二、单元设计62.
5、1 车体运动控制62.2 语音收发102.2.2 参数计算122.2.3 无线收发132.2.3.1 无线收发模组系统原理13223.2接口电路142.4声光显示14三、.软件设计153.1 软件平台介绍153.2 算法及流程图153.2.1 声音信号频率的算法153.2.2 小车到达OX线的算法16323接受信号编码算法163.2.4 响应时间的算法183.2.5 小车运动到W点的算法183.2.6 系统主程序的设计183.2.7 模块程序流程图193.3 程序设计20四、系统测试214.1 硬件测试214.2 软件调试214.3 功能测试214.3.2 声源测试214.3.3 移动声源速度
6、测试224.3.4 基本要求测试234.3.5 发挥部分测试234.3.6 相位差测试24五、结论27六、参考文献27七、附录27一、系统总体方案的设计11设计任务设计并制作一声音导引系统,示意图如图1所示。图中,AB与AC垂直,OX是AB的中垂线,0y是AC的中垂线,W是Ox和OT的交点。声音导引系统有一个可移动声源S,三个声音接收器A、B和C,声音接收器之间可以有线连接。声音接收器能利用可移动声源和接收器之间的不同距离,产生一个可移动声源离OX线(或0y线)的误差信号,并用无线方式将此误差信号传输至可移动声源,引导其运动。可移动声源运动的起始点必须在OX线右侧,位置可以任意指定。1.2.1
7、 控制器模块方案一:采用ATME1公司的AT89C51。51单片机价格便宜,应用广泛,但是功能单一,但其运算速度低,RAM、ROM空间小,如果系统需要增加语音播报功能,还需外接语音芯片,实现较为复杂;另外51单片机需要仿真器来实现软硬件调试,较为烦琐。方案二:采用凌阳公司的SPCE061A单片机作为控制模块。该单片机I/O资源丰富,RAM,ROM空间大、指令周期短、低功耗、低电压、可编程音频处理,易于编写和调试,并集成了语音功能。芯片内置JTAG电路,可在线仿真调试,大大简化了系统开发调试的复杂度。鉴于SPCEO61A的以上优点,采用方案二。1.2.2 电机的选择对于小车控制来说,电机的选择显
8、得十分重要。按照题目的要求我们综合考虑以下三种方案:方案一:采用步进电机作为驱动电机。步进电机可以精确地控制角度和距离,其输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统,并且它的体积大,价格高,质量大。用步进电机的编程复杂,增加了编程的难度。方案二:采用12V的直流减速电机。直流减速电机转动力矩较大,体积小,重量轻,装备简单,使用很方便。由高速电动机提供原始动力,带动变速(减速)齿轮组,产生大钮力。但是在使用过程中我们发现,电机的驱动电压12V对小车来说太高,只能用直流稳压电源驱动,普通干电池很难驱动。因此我们放弃了此方案。方案三:采
9、用6V的直流减速电机。6V的直流减速电机,通过齿轮减速,产生大力矩带动车轮。改变电机绕组两端的电压方向就可以改变电机的转向,控制容易方便。且由于供电电压较小,可以用普通干电池驱动,实际使用效果很好。直流电机控制的精确度虽然没有步进电机那样高,但完全可以满足本题目的要求。考虑到性价比和简单易行的策略,我们选择方案三。123电机驱动控制的选择根据小车的机械驱动方式,我们提出的电机控制方案如下:方案一:采用继电器对电机的开关进行控制,可以完成电机的正转,反转,调速,但继电器响应时间慢,使小车运动灵敏度降低,增加了避障的难度。而且机械结构易磨损,可靠性不高。它适用于大功率电机的驱动,对于中小功率的电机
10、则极不经济。方案二:利用1298构成电机驱动电路。1298是SGS公司的产品,内部含4通道逻辑驱动电路,是一种二相和四相电机的专用驱动器,即内含两个H桥的高电压大电流双全桥式驱动器,接收标准TT1逻辑电平信号,可驱动46V、2A以下的电机。采用专用集成驱动芯片,占用空间小,可靠性安全性高,抗干扰能力强,有较大的电流驱动能力,连接方便,简单,适合控制智能小车的运动。综上,我们采用方案二用MMC-I外接一个全桥驱动芯片1298控制电机。124无线收发模块方案一:采用无线传输模组nRF905o但是占用太多的SPC061A的单片机的I/OB的接口,与NEC的MMC-I的引脚接口有冲突。方案二:采用无线
11、传输模组nRF2401Ao无线传输模组以nRF2401A芯片为核心,提供了一路的无线发射和两路的无线接受功能,该模组通过一个IOPin接口直接插接到凌阳62板上,它是凌阳自带的模组,有完整的收发程序,使用方便,且nRF2401A是低电压低功耗芯片。考虑到主控芯片是采用凌阳SPCE061A单片机系统,虽然nRF905也能进行无线收发,但更适合于AT89S52,而且没有nRF2401模组控制简单,且nRF2401A模组的引脚与单片机连接时与MMC-I的接口没有冲突,故选择方案O125电源模块方案一:所有器件采用单一电源(5节五号电池)。这样供电比较简单,但是由于电动机启动瞬间电流很大,会造成电压不
12、稳、有毛剌等干扰,严重时可能会造成单片机系统掉电,使之不能完成预定行程。方案二:双电源供电。电动机驱动电源采用锂电池,单片机及其外围电路电源采用3节五号电池供电,两路电源完全分开,这样做虽然不如单电源方便灵活,但可以将电动机驱动所造成的干扰彻底消除,提高了系统稳定性。我们认为本设计的稳定可靠性更为重要,故采用方案二。126语音发声模块方案一:通过单片机来控制语音芯片来实现提示信息的播报。但是由于语音芯片成本比较高,而且扩展起来比较复杂,增加焊接难度和设计成本。方案二:采用SPCE061A自带的语言模块,简单方便,成本低只需在相应的排针上接蜂鸣器即可。方案三:采用压电式陶瓷电容,设计一个简单的电
13、路,,且压电式陶瓷的谐振频率比普通的蜂鸣器要高IKHZ左右,经比较我们采用方案三。1.2.7声光显示模块方案一:凌阳SPCE061A本身自带DAC语音播放功能,利用上述语音发声模块的蜂鸣器就可以实现定位声音的提示,,充分利用了单片机自身的资源。方案二:用发声模块的蜂鸣器发声提示。在小车定位时,改变蜂鸣器的频率使其发音提示。我们采用方案二,不再做多余的模块扩展。至于闪烁光的提示部分,只用一个发光二极管就可以实现,在小车定位停止后,令其闪烁发光作为提示信号。1.3系统组成根据上述方案论证,我们最终确定了以凌阳单片机SPCE061A为控制核心,接收器A、B、C的控制模块同样以一块凌阳单片机最小系统为
14、核心,两个单片机最小系统分别外接无线传输模组RF2401At从而实现无线传输。采用两个直流电机控制小车运动形成可移动声源,用MMC-I芯片桥接1298作为电机驱动模块,通过无线传输模组nRF2401A,确定小车的位置,与主控MCU收发数据进而控制小车的运动,使其定位,最终还利用凌阳单片机SPCE061A自带语音功能实现小车定位时语音播报。系统总体结构框图如图1所示:图1.1系统总体结构框图二、单元设计2.1 车体运动控制MMC-I芯片外接H桥式驱动芯片1298作为电机驱动模块,基本原理图如图2.1主控MCUVddI/OTXDRXDR叩vddCH1DCPWMUARTSP1CHDCDIRRESET
15、CHZDCPWMRXD/SICH2DCDIRTXD/SOPrPCH3DCPWMVssCH3DCD1RMMC-I图2.1刘桥舞动IC匚二直流电机1匚。直流电机2Zk=直流电机3如图2.1,每一路直流电机需要CHnDCPWM和CHnDCDIR两个引脚(n=13),其中CHnDCPWM用于PWM输出,CHnDCDIR用于指定电机转向,外接一个全桥驱动芯片就可以控制直流电机工作。输出频率固定16KHz,通过调节占空比控制电机转速。本次设计中,我们用到两个直流电机,所以只用到电机通道1、2。直流电机基本输出时序如下:62.5us(1)正向输出时序:CHnDCPWMCHnDCDIRn=13图2.2(2)反向输出时序:62.5usCHnDCPWjCHnDCDIR、H”n=13图2.3具体电路图2.4如下:图2.4a图2.4bMMC-I芯片的13、14引脚与主控MCU的TRX、RXD引脚相接,由于只有两个直流电机,所以只选择电机通道1、2。MMC-I输出的两路D/R信号分别通过一个或非门产生一个