电动车跷跷板本科毕业设计论文_第1页
电动车跷跷板本科毕业设计论文_第2页
电动车跷跷板本科毕业设计论文_第3页
电动车跷跷板本科毕业设计论文_第4页
电动车跷跷板本科毕业设计论文_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1电动车跷跷板摘要本方案以MSP430(MSP430F22X4)单片机、直流电机驱动电路、倾角传感器、反射式红外传感器、LED、蜂鸣器等电路构成。小车采用前后两对反射式红外传感器,能沿着黑线在跷跷板上往返行驶,并始终保持在跷跷板上;同时,利用倾角传感器对小车当前所在位置的倾斜角进行测量。小车控制程序主要对采集信号分析转换,结合PWM调速控制电机转速和转向,从而使小车快速在跷跷板上取得平衡;小车通过LED和蜂鸣器来实现平衡指示以及实时显示,从而完成整个设计过程。关键词MSP430F22X4闭环控制倾角传感器PWM调速ABSTRACTTHEPROGRAMMETOMSP430MSP430F22X4MICROCONTROLLER,MOTORDRIVECIRCUIT,ANGLESENSOR,REFLECTINGINFRAREDSENSORS,LED,BUZZER,ANDOTHERCIRCUITVEHICLESUSEDBEFOREANDAFTERTHETWOPAIRSOFREFLECTINGINFRAREDSENSORS,ALONGTHEBLACKLINEINTHECANONTHESEESAWFROMTRAVELLING,ANDALWAYSMAINTAINTHESEESAWONTHESAMETIME,USINGANGLESENSORONTHECURRENTLOCATIONOFTHECARTILTANGLEMEASUREMENTTROLLEYCONTROLPROCEDURESFORCOLLECTINGTHEMAINSIGNALOFCONVERSION,WITHPWMSPEEDCONTROLMOTORSPEEDANDSTEERING,THUSMAKINGTHECARFASTTOSTRIKEABALANCEONTHESEESAWCARTHROUGHTHELEDANDBUZZERTOACHIEVEBALANCEDINSTRUCTIONANDREALTIMEDISPLAY,THUSCOMPLETINGTHEENTIREDESIGNPROCESSKEYWORDMSP430F22X4CLOSEDLOOPCONTROLANGLESENSORPWMSPEED一、方案比较与论证整个系统可划分为控制模块、AD转换模块、电源模块、显示模块,测量模块,驱动模块。系统框图如图1所示2控制器MSP430F22X4电源模块测量模块显示模块驱动模块图1系统框图为实现各模块的功能,设计了几种不同的方案进行论证。1控制模块采用MSP430单片机作为系统控制的方案。该单片机具有高速的运算能力以及含有丰富的功能模块,例如多通道1014位AD转换器,双路12位DA转换器,比较器,看门狗定时器和多个16位,8位定时器可进行捕获,比较,PWM输出以及FALASH存储器,他可以在运行过程中由程序控制写操作和段擦除INSYSTEMPROGRAMMABLE,不需要额外的高电压等,软件编程灵活,自由度大,可用软件编程实现各种算法和逻辑控制。2电源模块采用两个干电池供电。将电机驱动电源与单片机以及其他电路完全隔离开,利用光电耦合器传输信号,这样可将电机的干扰消除,提高系统的稳定性。3驱动模块方案一采用由大功率达林顿管组成的H型驱动电路。该电路承载电流大,但电路复杂,体积大。方案二采用L298N组成的驱动电路,驱动芯片L298N是驱动二相或四相步进电机的专用芯片,电路实现容易,与单片机接口方便,控制比较简单。考虑到我们选用的是直流电机,工作稳定,且小车不宜过重,故选择方案二。4测量模块寻迹系统方案一用光敏电阻组成光敏探测器。光敏电阻的阻值可以跟随周围环境光线的变化而变化。当光线照射到跷跷板上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。因此光敏电阻在跷跷板和黑线上方时,阻值会发生明显的变化。将阻值的变化值经过比较器就可以输出高低电平。但是这种方案受光照影响很大,并且不能够稳定的工作。因此我们考虑其他更加稳定的方案。方案二用红外光电对管寻迹传感器。现有的封装好的红外对管应用电路简单,工作稳定,再加上控制芯片的电压比器功能模块处理采集信号,容易实现题目要求。经比较,本系统选择方案二。在平衡系统中,根据要求,只要跷跷板两端与地面的距离差小于40MM即可认为平衡,本设计通过倾角传感器检测跷跷板水平倾角,所以只要水平倾角保持在0附近的某个角度范围之内即认为跷跷板达到平衡状态。3其闭环结构框图如图2所示。控制器直流电机小车跷跷板倾角传感器给定跷跷板倾角实际倾角图2闭环控制系统结构图该系统的工作原理是小车驶上跷跷板后,通过倾角传感器不断测量跷跷板的倾角即实际倾角,该实际倾角与给定倾角作比较,形成倾角偏差,通过直流电机控制小车前后微移,不断修正该倾角偏差,最终使倾角保持在给定范围之内,此时跷跷板便达到平衡状态。二、主要电路设计分别在小车的四个角位置上安装反射红外光电传感器,在跷跷板的四周距离板边贴上34厘米的黑胶线,一旦车底遇到黑线便开始寻迹,使小车保持在跷跷板上运动。电机驱动模块采用L298N,其内部集成两个桥式电路驱动器,OUTL、OUT2和OUT3、OUT4之间分别接2个电动机。5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的启停。如下图所示,单片机P40、P41输出的信号控制右边直流电机,P42、P43输出的信号控制左边直流电机。信号包括二组PWM波,每一组PWM波用来控制一个电机的转速。因此结合PWM波就能控制电机的转速和方向了。为了防止由于电机部分大电流对单片机的影响,我们改善了电路,在单片机和L298N之间加上了光电耦合器,将控制部分电路和电动机电路隔离,使电机在转动和调制过程中稳定正常。小车上跷跷板寻找平衡点,测得平衡时倾角传感器输出的模拟量,以此来4作为一个平衡校验的基准。当小车被放置于跷跷板一端时,倾角传感器与地面产生了一个角度,且随着小车的行驶不断地变化。小车内部单片机对传感器输出的模拟量进行采样,然后与基准值进行比较。接着单片机采用预先设定好的算法对电机进行控制,使其小车在平衡点徘徊,维持平衡。三、系统软件设计1、软件流程图通过对单片机的编程,利用它的中断定时功能,由外部采集的数据,实现软件对小车行驶时间的计算,以及对电机一系列动作的控制等。主要是软件编程达到对硬件控制的目的。主要程序流程图4所示开始延时5S调电机前进子程序是否到达A点调电机前进子程序启动数码管显示是否到达C点调平衡子程序是否平衡调提示子程序电机子程序是否到达B点延时5S返回A点YNYNNNYY图4程序流程图2、软件所实现的功能检测小车的行驶状态并及时纠正行驶路径;控制小车的行驶速度(PWM调速);显示小车的行驶时间并储存;5控制小车寻找平衡点;在平衡状态时产生声光报警;四、数据测试1测试设备自制跷跷板长1600MM、宽300MM,秒表,卷尺。2测试结果1不加配重情况下表1从A点到C点的时间测试测试项目第1次第2次第3次第4次AC所用时间/S6666表2平衡点测试测试项目第1次第2次第3次第4次寻找平衡点时间/S3475375634753567DDADB/MM123205128147表3平衡点到B的时间测试测试项目第1次第2次第3次第4次平衡点B所用时间/S9888车头到B点的距离/MM15201931表4平衡点倒退回A点的时间测试测试项目第1次第2次第3次第4次B点停止时间/S5555BA所用时间/S151515152加配重情况下表5从地面指定位置驶上跷跷板测试测试项目第1次第2次第3次第4次时间/S19201920表6加重后寻找平衡点时间测试测试项目第1次第2次第3次第4次平衡时间/S29344518DDADB/MM20510695158表7加另一重物后平衡点测试测试项目第1次第2次第3次第4次平衡时间/S1132916DDADB/MM146158112125根据测量,完成全过程的总时间均小于180秒。五、总结在本次课题训练中,我们基本完成了题目各项要求。从本次设计中我们体会到,对小车实施控制不仅是电子控制问题,其中也涉及到了力学和光学等方6面的知识。在有限的时间里未能完美的解决小车寻找平衡点的的问题。在对直流电机的调速和精确控制上还不是很灵活,在以后的训练中应该多加学习和锻炼。参考文献1魏小龙MSP430系列单片机接口技术及系统设计实例北京航空航天大学出版社2002112全国大学生电子设计竞赛组委会全国大学生电子设计竞赛获奖作品选编(2005)北京理工大学出版社2007023康华光电子技术基础(模拟部分)高等教育出版社2006014谢自美电子线路设计实验测试(第三版)华中科技大学出版社200708附录1、总电路图72、源程序/8电动车跷跷板软件设计主控程序功能描述(1)主程序调度所有消息,初始化系统;(2)电机驱动模块包含所有与电机驱动有关的函数,接受不同的控制命令及速度控制,并付诸实施;(3)轨迹采样模块包含所有与轨迹采样有关的函数,并进行相关处理,输出结果;(4)平衡测量模块包含小车在跷跷板上寻找平衡的所有函数,并进行相关处理,出入单片机中,最终用来控制小车的前进和后退,达到跷跷板平衡。(5)显示模块分阶段显示电机行驶所用的时间;(6)报警提示模块在小车起步、平衡、到达终点及返回原点停止时做出提示;/主函数部分“MAINC”INCLUDEINCLUDE“SYSTEMSH“UNSIGNEDCHARSTARTDISPLAY,COUNT,DAOJISHITIMEFLAGUNSIGNEDINTRUNTIME,CHONGJIUNSIGNEDCHARTABLE0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F/数码管用变量UNSIGNEDCHARGE,SHI,BAI,QIANMAINVOIDUNSIGNEDINTNWDTCTLWDTPWWDTHOLD/关看门狗BCSCTL1CALBC1_1MHZ/设定DCO为1MHZDCOCTLCALBC1_1MHZDO/等待晶振稳定IFG1FORN5000N0NWHILEOFIFGINITSYSTEMS/系统初始化XIANSHI_DAOJISHI/第一阶段AC/WHILE1GOFORWARD9IFP4INP2OUTFORCHONGJI5000CHONGJI0CHONGJIP2OUT/方向直流电机停止P2OUTBREAK/第二阶段C点平衡/BALANCEP2OUT|BIT2/电机正转前进P2OUTFORCHONGJI50000CHONGJI0CHONGJI/第三阶段CB/WHILE1GOSLOWFORWARDIFP4INP2OUTFORCHONGJI40000CHONGJI0CHONGJIP2OUTP2OUTXIANSHI_DAOJISHIBREAK/第四阶段BA/WHILE1/NUMBERAYFILTERBACKFORWARDIFP4INP2OUTFORCHONGJI10000CHONGJI0CHONGJIP2OUT|BIT3P2OUT10FORCHONGJI20000CHONGJI0CHONGJIWHILE1BACKSLOWFORWARDIFP4INBREAK/完成停车/STOPWHILE1STARTDISPLAY0CHULIXIANSHIP2OUTP2OUTVOIDINITSYSTEMSP2DIR|BIT0BIT1BIT2BIT3/接电机P2OUT0X00P3DIR0XFF/P3口接数码管P3OUT0X00P1DIR0XFF/P1口低4位接数码管段选P4DIR0X07/P47接MISOP43P46红外输入/定时器初始化部分TACTLTASSEL1TACLR/定时器A时钟源为SMCLK,并清TARCCTL0|CCIE/CCR0中断使能CCR050000/计数值为50000个SMCLK周期,50MSTACTL|MC0/启动定时器A为增计数模式_BIS_SRGIE/打开总中断/数码管显示倒计时/VOIDXIANSHI_DAOJISHIUNSIGNEDCHARDAOJISHI_TIME6STARTDISPLAY0/在显示倒计时时,路程行驶时间停止11P1OUT/选通个位P1OUT|BIT1BIT2BIT3/防止其他位被选COUNT0WHILEDAOJISHI_TIME0P3OUTTABLEDAOJISHI_TIME/数据给数码管IFDAOJISHITIMEFLAGDAOJISHI_TIMEDAOJISHITIMEFLAG0P1OUT0X0FSTARTDISPLAY1/定时器中断服务/PRAGMAVECTORTIMERA0_VECTOR/CCR0中断服务_INTERRUPTVOIDTA0_ISRVOIDCOUNT/秒计数IFCOUNT20DAOJISHITIMEFLAG1COUNT0IFSTARTDISPLAY1RUNTIMEIFRUNTIME999RUNTIME0/路程显示部分函数/VOIDCHULIGERUNTIME10SHIRUNTIME100/1012BAIRUNTIME1000/100QIANRUNTIME/1000VOIDXIANSHIP1OUT0X0E/P10用作个位显示P3OUTTABLEGEDELAYP1OUT0X0D/P11用作十位选择P3OUTTABLESHIDELAYP1OUT0X0B/P12用作百位选择P3OUTTABLEBAIDELAYP1OUT0X07/P13用作千位选择P3OUTTABLEQIANDELAYVOIDDELAY/数码管延时UNSIGNEDIFORI100I0I/NAMESYSTEMSHDESCRIPTION主函数MAINC包含H文件。/IFNDEF_SYSTEMSDEFINE_SYSTEMSINCLUDEVOIDINITSYSTEMSVOIDXIANSHI_DAOJISHIVOIDCHULIVOIDXIANSHIVOIDDELAY13EXTERNSTOPEXTERNBACKFORWARDEXTERNBACKSLOWFORWARDEXTERNAYFILTEREXTERNAXFILTEREXTERNGOSLOWFORWARDEXTERNGOFORWARDEXTERNBALANCEENDIF电机驱动部分“MOTORC”INCLUDEINCLUDE“MOTORCONTROLH“/小车前进上坡/VOIDGOFORWARDP2OUT|BIT2/电机正转前进P2OUTIFP4IN/右边偏离,向左转P2OUTIFP4IN/左边偏离,向右转P2OUTELSE/未偏离位置P2OUT/方向直流电机停止P2OUT/小车前进下坡/VOIDGOSLOWFORWARDUNSIGNEDINTPWM_COUNT14P2OUT/电机反转P2OUT|BIT3FORPWM_COUNT10000PWM_COUNT0PWM_COUNTP2OUT|BIT2/电机正转前进P2OUTFORPWM_COUNT12000PWM_COUNT0PWM_COUNTIFP4IN/右边偏离,向左转P2OUTIFP4IN/左边偏离,向右转P2OUTELSE/未偏离位置P2OUT/方向直流电机停止P2OUT/小车倒退上坡/VOIDBACKFORWARDP2OUT/方向直流电机停止P2OUTP2OUT|BIT3/电机反转后退P2OUT/IFP4IN/右边偏离,向左转P2OUTIFP4IN/左边偏离,向右转P2OUTELSE/未偏离位置P2OUT/方向直流电机停止P2OUT/小车倒退下坡/VOIDBACKSLOWFORWARDUNSIGNEDINTPWM_COUNT,PWM_LOOPP2OUT/电机正转前进P2OUT|BIT2FORPWM_COUNT10000PWM_COUNT0PWM_COUNTP2OUT|BIT3/电机反转P2OUTFORPWM_COUNT13000PWM_COUNT0PWM_COUNTIFP4IN/右边偏离,向左转P2OUTP2OUT|BIT2P2OUTFORPWM_LOOP5PWM_LOOP0PWM_LOOPFORPWM_COUNT60000PWM_COUNT0PWM_COUNTP2OUTP2OUT|BIT3FORPWM_COUNT60000PWM_COUNT0PWM_COUNTIFP4IN/左边偏离,向右转16P2OUTP2OUT|BIT2P2OUTFORPWM_LOOP5PWM_LOOP0PWM_LOOPFORPWM_COUNT60000PWM_COUNT0PWM_COUNTP2OUTP2OUT|BIT3FORPWM_COUNT60000PWM_COUNT0PWM_COUNTELSE/未偏离位置P2OUT/方向直流电机停止P2OUTVOIDBALANCEUNSIGNEDINTNUMBER,PWM_LOOP,PWM_TIME,XIAODOUWHILE1NUMBERAYFILTERIFNUMBER1403P2OUT/方向直流电机停止P2OUTP2OUT|BIT2/电机正转前进P2OUTFORPWM_TIME40000PWM_TIME0PWM_TIMEP2OUT|BIT0/方向直流电机停止P2OUTP2OUT/电机反转制动P2OUT|BIT3FORPWM_TIME500PWM_TIME0PWM_TIMEP2OUT/电机先停止P2OUT17FORXIAODOU15XIAODOU0XIAODOU/等待板平稳FORPWM_TIME60000PWM_TIME0PWM_TIMEELSEIFNUMBER0PWM_TIMEP2OUT/方向直流电机停止P2OUT|BIT1P2OUT/电机正转制动P2OUT|BIT2FORPWM_TIME500PWM_TIME0PWM_TIMEP2OUT/电机先停止P2OUTFORXIAODOU15XIAODOU0XIAODOU/等待板平稳FORPWM_TIME60000PWM_TIME0PWM_TIMEELSEP2OUTP2OUT/平衡,电机停止P2OUT/方向直流电机停止P2OUTFORPWM_LOOP3PWM_LOOP0PWM_LOOPFORPWM_TIME60000PWM_TIME0PWM_TIMEXIANSHI_DAOJISHIBREAKVOIDSTOPUNSIGNEDINTPWM_COUNT,PWM_LOOPFORPWM_LOOP4PWM_LOOP0PWM_LOOP18MOTORDRIVEGO_GND_AND_LOWMOTORDRIVEBACK_VCC_AND_HIGHP2OUTP2OUT|BIT2FORPWM_COUNT8000PWM_COUNT0PWM_COUNTP2OUTP2OUT/NAMEMOTORCONTROLHDESCRIPTION电机驱动部分MOTORC包含H文件。/IFNDEF_MOTORCONTROLDEFINE_MOTORCONTROLINCLUDEVOIDGOFORWARDVOIDGOSLOWFORWARDVOIDBACKFORWARDVOIDBACKSLOWFORWARDVOIDBALANCEVOIDSTOPEXTERNXIANSHI_DAOJISHIEXTERNAYFILTERENDIF平衡测量与控制部分“QINGJIAOC“INCLUDEINCLUDE“QINGJIAOH“VOIDDELAYUNSIGNEDINTTIME/倾角延时FORTIME0TIMEUNSIGNEDINTGE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论