课程报告课程名称:嵌入式系统与应用项目名称:自动循迹小车院系:理学院专业:自动化1401学号:xxxxxxxxxxxxxxxxxxxxx姓名:xxxxxxxx指导导师:xxxxxxxx2017年05月23日西京学院理学院制摘要本次课程设计主要完成基于STM32F103微处理器的智能小车控制系统的系统设计。此智能小车系统的组成主要包括STM32F103控制器、电机驱动电路、红外探测电路。本次试验采用STM32F103微处理器为核心芯片,利用PWM技术对速度进行控制,循迹模块进行黑白检测,其他外围扩展电路实现系统整体功能。实现了智能小车能够自动跟踪地面上的黑色轨迹的任务。关键字:STM32;红外探测;PWM;电机控制AbstractThiscoursedesignmainlycompletesthesystemdesignofintelligentcarcontrolsystembasedonSTM32F103microprocessor.ThecompositionofthisintelligentcarsystemmainlyincludesSTM32F103controller,motordrivecircuit,infrareddetectioncircuit.ThistestusesSTM32F103microprocessorasthecorechip,theuseofPWMtechnologytocontrolthespeed,trackingmoduleforblackandwhitedetection,otherperipheralexpansioncircuittoachievetheoverallfunctionofthesystem.Toachievethesmartcarcanautomaticallytracktheblacktrackonthegroundtask.Keywords:STM32;infrareddetection;PWM;motorcontrol目录1设计任务要求...........................................................12方案设计及选型.........................................................12.1总体方案选择........................................................12.2车型选型............................................................12.3器件选型............................................................23系统电路设计...........................................................23.1循迹模块接口电路设计................................................23.2电机驱动模块接口电路设计............................................33.3电源设计............................................................43.4STM32小系统.........................................................54系统软件设计...........................................................64.1主程序设计..........................................................64.2功能函数设计........................................................65系统测试...............................................................66结束语.................................................................7参考文献................................................................8附录一:系统总体电路图..................................................9附录二:部分程序.......................................................10附录三:作品实物图.....................................................111设计任务要求本设计通过对轨迹跟踪问题的分析,制作了一辆能够自动跟踪地面上的黑色轨迹的智能小车。(1)设计搭建小车结构框架,两驱或四驱不限,机械转向灵活。(2)设计选型电源、电机、传感器、STM32控制器板等电路模块,完成方案设计和电路图绘制。(3)设计功能函数和软件流程图。2方案设计及选型2.1总体方案选择基于对小车循迹准确性以及速度的综合考虑,我们最终选择的系统框图如图2-1所示:STM32L298N左侧电机右侧电机信号处理三对红外发收对管图2-1总体方案框图2.2车型选型基于在循迹小车设计报告的实际完成情况,我们考虑到小车调试频繁的问题、电池使用时间长短以及小车的灵活性,我么们选择了由俩个电机与一个万向轮组成的俩驱小车。车架使用市面上的合成简易车架。2.3器件选型(1)循迹模块选型方案一:采用红外对管对黑带进行高频率扫描,并将扫描结果串行输出,用斯密特触发器对波形整形后,将数据送入STM32进行分析判断。优点:节省系统消耗的功率,节约STM32的I/O,硬件电路的接线变得简洁。缺点:信息处理速度相对于并行输出慢,相邻红外会产生干扰。方案二:采用多路反射型的光电传感器TCRT5000对地面进行检测,将所采集到的信息并行输入比较器比较后,再将数据送入STM32处理。优点:信息处理速度快,相邻传感器不会相互干扰,操作方便,结构简单。缺点:占用STM32的I/O较多,连线相对繁琐。方案选择:考虑到小车对信息的采集速度及检测的准确性,我们最终选用了方案二。(2)驱动及电机选择①驱动选择:由于L298N驱动有以下优点:a.可实现电机正反转;b.启动性能好,启动转矩大;c.可同时驱动两台直流电机;所以我们最终选择了L298N驱动。②电机选择:直流减速电机转速平稳,速度快,功耗低,又因为本设计是用电池供电,所以我们最终选择了6V的直流减速电机作为小车的驱动电机。3系统电路设计3.1循迹模块接口电路设计小车在白色地面行驶时,红外发射管发出的红外信号被反射,接收管接收到信号后,输出端为低电平。红外传感器的三个输出端口分别与控制模块的PA4-PA6依次相连,而当红外信号遇到黑色导轨时,红外信号被吸收,接收管不能接收到信号,输出端为高电平。单片机通过采集每个红外接收管的输出信号,便可以检测出所处位置,从而控制小车的转向。我们采用的传感器为红外避障模块传感器,它是采用高发射功率红外光电二极管和高度灵敏光电晶体管组成。红外避障传感器的发射管和接收管是一起封装在矩形塑料壳中,为了使检测更加准确,我们用了红外避障传感器检测黑线,其中一只放在黑线上方其余2只对称分布在黑线的两侧。循迹模块实物如图3-1所示:图3-1红外避障模块传感器实物图图3-2循迹模块原理图3.2电机驱动模块接口电路设计对于小车车轮的两个直流电机,我们采用了一片电机驱动芯片L298N对其进行驱动。STM32为芯片提供驱动信号,传至PWM控制各个电机的转速,从而调整小车的前进速度和转向。其实物模块如图3-2所示。其中左前电机:PB12(方向)+PA8(PWM),右前电机:PB13(方向)+PA9(PWM)。图3-3电机驱动实物模块图图3-4电机驱动模块原理图3.3电源设计本设计中采用的是6V电池供电,因为主控芯片以及其余模块均采用的3.3V供电,直流减速电机采用6V供电,传感器采用5V供电,其实物图如3-3所示。图3-5电源模块实物图3.4STM32小系统本设计采用了一片STM32单片机为控制核心。通过循迹模块、驱动模块的应用,实现了小车转速调节、自动循迹的任务。其原理图如图3-4所示:图3-6主控制模块原理图4系统软件设计4.1主程序设计当开机时,系统复位,然后进入自动运行状态。使小车沿黑线行进,并且在小车偏离轨道后自动调整走向使之返回预定路线。该模块的具体设计流程框图如图4-1所示。开始读入模式状态黑线在中间吗?直行控制左右电机按循迹判断转向是否图4-1系统软件设计框图4.2功能函数设计(1)方向判断由if..elseif函数书写;(2)用定时器来生成PWM的占空比;(3)定时器初始化函数Tim1_Init();5系统测试(1)测试仪器:示波器,电源,万用表。测试方法:采用模拟电路由前端到后段,数字电路先仿真再试测,先逐个模块测试再整体调试的办法。(2)循迹模块测试连接好电路,调好灵敏度,然后用万用表分别测量光电传感器接收端的输出电压值,其值如表5-1所示:表5-1光电传感器输出电压测量光电传感器编号1234光电传感器接收端电压(V)白线(V)4.834.814.834.87黑线(V)0.420.430.450.45(3)占空比与小车运行速度测试表5-2占空比与小车运行速度对应表占空比前进速度(cm/s)后退(cm/s)20%0050%30.530.370%36.736.5100%45.945.76结束语首先谢谢老师对我门的指导,谢谢同学给我们的帮助。在以后的学习工作中,我们一定会将今天所学习到的知识应用于生产实践中。当然,该小车还存在着一些缺陷,比如:功耗较大、外型不够美观等。导致我们的小车出现那好多问题。总之,我们的设计还有很大的提升空间。本次设计我们无论是在硬件还是软件上的能力都有很大的提高,比如,接线端口有误,没有检查仔细是我们的进程有了延误。这使我们经历了一个设计从方案提出到确定,到最后的调试出实物,看到效果。在这个过程中收获巨大。通过竞赛,我们提高了自学能力以及团队协作能力,并进一步提高了对本专业的兴趣。本次竞赛对自己的信心也有很大提高,在以后的学习中,我们会再接再厉。参考文献[1]刘军,张洋.原子教你玩STM32[M].北京:北京航空航天大学出版社,2013-05-01[2]李亚巨,樊东.基于stm32f103zet6的智能小车的制作[J].电子制作,2013-11[3]李婕.基于STM32的智能小车的制无线视频监控智能小车设计[D].兰州:兰州理工大学出版社,2014-4[4]刘火良,杨森.电子与嵌入式系统设计丛书.机械工业出版社,2017-2[5]蒋建春,曾素华.嵌入式系统原理及应用.高等教育出版社,2014-01-01[6]刘彦文.基于ARM的嵌入式系统原理及应用,清华大学出版社,2017-02-01[7]谭会生.ARM嵌入式系统原理及应用开发,西安电子科技大学出版社,2017-02-01附录一:系统总体电路图VCC3GND1P2TCRT1TCRT500VCC3GND1P2TCRT2TCRT500VCC3GND1P2TCRT3TCRT500PA1PA2PA3PA4PA5PA6PA7PB1PB12PB13PB14PA15PA8PA9PA10PA11U1STM32IN15IN27ENA6OUT12OUT23ENB11OUT313OUT414IN310IN412SENSA1SENSB15GND8VS4VCC9U1L2983.3V6V光电传感器光电传感器光电传感器前左电机前右电机电机驱动附录二:部