悬挂运动控制系统——论文_第1页
悬挂运动控制系统——论文_第2页
悬挂运动控制系统——论文_第3页
悬挂运动控制系统——论文_第4页
免费预览已结束,剩余16页可下载查看

下载本文档

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

文档简介

悬挂运动控制系统 摘 要本文论述了悬挂运动控制系统各单元方案的比较与论证,最终确定该系统采用STM32微控制器作为控制中心,用步进电机细分电路控制步进电机并且通过计算测量绳子所绕长度,计算得到物体的具体坐标,并且能对该系统实现流畅精确的控制。该系统为半闭环控制系统,并且该系统能够和我们开发的遥控进行双向通信、实现人机交互。一方面可以通过遥控向系统初始化物体所在的即时坐标,另一方面系统也可以向遥控发送物体的坐标等反馈的信息,让操作非常形象直观。本系统在原题目的基础上,还添加了无线通信以及遥控作图的功能。关键词: 悬挂运动控制 STM32 无线通信 坐标定位AbstractThis article discusses the suspension motion control system units and demonstration programs compare to finalize the system uses STM32 microcontroller as a control center, with the stepper motor and stepper motor control sub-circuit measurements by calculating the length of the rope are wound, the calculated the specific coordinates of objects, and the system can achieve smooth precise control. The system is semi-closed loop control system, and the system is capable of and we have developed a remote control for two-way communication, to achieve human-computer interaction. On the one hand to the system by remote control where the real coordinates of the object initialization, other systems can be transmitted to the remote objects coordinates for the feedback information, so that the operation is very visual image. The system is based on the original subject, also added a wireless communication function.Keywords: suspension motion control STM32 wireless communication positioning coordinates 目 录1系统方案11.1系统结构 11.2方案比较与选择 11.2.1 电机的论证与选择 11.2.2 测距模块的论证与选择11.2.3 主控芯片的论证与选择21.2.4 无线通信模块的论证与选择22系统理论分析与计算22.1系统确定坐标点的计算方法22.2 系统实现两点间运动方法32.3 系统实现自设轨迹的运动方法52.4 系统实现圆周运动方法52.5 系统循迹方法53电路与程序设计73.1电路的设计 73.1.1 系统总体框图73.1.2主控制器的介绍 73.1.3 步进电机的介绍73.1.4 基于THB6064H的步进电机驱动器介绍 83.1.5遥控原理103.2程序的设计 113.2.1程序功能描述与设计思路113.2.2程序流程图(部分源程序见附录N)113.2.2.1定点模式流程图4测试方案与测试结果113.2.2.2预设轨迹模式流程图123.2.2.3画圆模式流程图.123.2.2.4红外循迹模式流程图124 系统测试 134.1测试方案134.2测试仪器134.3 测试结果(完整测试结果见附录3)134.3.1 定点模式测试结果与分析 134.3.2预设轨迹模式测试结果与分析144.3.3画圆模式测试结果与分析144.3.4红外循迹模式测试结果与分析144.3.5测试结论5总结145 总结 146 参考文献 14附录1:电路原理图 14附录2 部分源程序15附录3 PCB图 17悬挂运动控制系统(C题)【本科组】1系统方案1.1系统结构 图1 悬挂控制系统结构图如图所示,本系统STM32103FZET6为主控芯片,配合步进电机电机细分电路、步进电机,通过迅速地采集物体运动实时信息进行闭环控制。并且主控芯片还通过无线模块与遥控双向通信,能够通过遥控输入控制物体运动的信息、预设的运动轨迹,也能通过主控芯片向遥控发送物体坐标等信息。下面分别论证这几个模块的选择。1.2方案比较与选择1.2.1 电机的论证与选择方案一:步进电机方案二:直流电机方案分析:步进电机是将点脉冲信号转换成角位移或者线位移的开环控制元步进电机件。步进电机的转速和停止的位置只取决于脉冲信号的频率和脉冲数,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按照设定的方向转动一个步距角。步进电机的控制非常精确。而直流电机的驱动非常简单,它将直流电能转化为机械能,只需在直流电机加入所需的直流电压即可驱动直流电机。而本题目要求在垂直的系统上控制悬挂物体进行运动,题目本身对物体的运动精度有较高的要求。而直流电机往往不同的电机之间差异较大,并且无法很难精确测量所转过的距离,故我们选用方案一,即步进电机。1.2.2 测距模块的论证与选择方案一:红外光电对管以及测速码盘配合直流电机 1方案二:步进电机配合步进电机细分电路方案论证:红外光电对管和测速码盘的使用在智能小车的测速方案中运用得非常广泛。其原理是测速码盘的光栅在转动的时候给红外光电对管一个个脉冲信号,通过单片机测得脉冲信号的个数即可推算转动的速度。而若运用步进电机,只需要知道最小转过的角度通过计算步进电机上所连接的转轴的周长就可以计算出步进电机每转一个最小角度所拉动绳子的距离,并且通过步进电机细分电路就可以把精度提高。由于直流电机测速码盘有几十线到几百线不等,而题目本身对精度要求很高,故需要上百线的码盘。而在手动安装码盘的过程中经常由于安装位置不当使光电对管测得的脉冲信号不稳定或者出现丢失脉冲的情况。故为了系统的稳定可靠性,故我们选择方案二,系统采用了两个步进电机和步进电机细分电路模块来计算得到拉线的长度。1.2.3 主控芯片的论证与选择方案一:STM32103FZET6方案二:STC89C52方案论证:STM32103FZET6 最高工作频率为72MHZ,属于中等容量增强型,32位基于ARM核心的微控制器。其内部资源丰富,具有7个定时器,3个AD通道。而STC89C52相对而言资源较少,并且速度就只有11.592MHZ,而在光电编码器的数据的处理上需要相对高的速度和精度,所以我们选择方案一,使用更加精确便捷的主控芯片STM32103FZET6。1.2.4 无线通信模块的论证与选择方案一:蓝牙模块方案二:NRF24L01模块方案论证:蓝牙是一种取代数据电缆的短距离无线通信技术,能够实现点对多点以及与手机的互连,使用起来较为方便。而NRF24L01无线模块是工作在2.4GHZ-2.5GHZ的无线收发器件,输出功率频道选择和协议的设置可以通过SPI接口进行设置,适用于几乎所有的单片机芯片。而在系统设计上,由于我们是主控芯片与遥控进行通信。而蓝牙模块对电流量的要求较高,用一般的电池无法驱动,故我们选择方案二,NRF24L01模块。2系统理论分析与计算2.1系统确定坐标点的计算方法如图所示(图2 坐标确定方法示意图),我们系统设计的原因,悬挂的物体是一个圆形,物体上方有3个间隔1.5CM的孔,中间的孔用来插笔,两边的孔用来悬挂丝线,而我们的坐标是以笔的坐标为基准的。若设最左边的孔的坐标为(X,Y),则笔的坐标为(X+1.5,Y)。又由于我们控制悬挂物体的方法是通过控制两遍悬线的长度,若已知两边悬线的长度分别为M、N,则如图所示,可以通过计算得: 2联立求解,得求得X之后,根据,即可求得Y坐标。由于笔的坐标为(X+1.5,Y),则笔的坐标也可以求出。图2 坐标确定方法示意图2.2 系统实现两点间运动方法本系统实现两点间的运动,是将曲线或直线进行分段化,并且为了轨迹的光滑性,尽可能地把轨迹细分,并且在直线部分用直线插补法进行调节。具体放线方法如图所示(图3 拉线示意图),根据a1,b1 与a2 ,b2长短的比较来判断是拉线还是放线。具体方式如下表( 表1 线的长度与拉线关系表)。 表1 线的长度与拉线关系表长度关系拉线方向长度关系拉线方向a 1a2收线b 1b2收线a 1=a2静止b 1=b2静止a 1a2放线b 1X1时,A=1;当X2Y1时,B=1;当Y2Y1时,B= -1;当Y2=Y1时,B=0; 图4 直线插补法示意图 42.3 系统实现自设轨迹的运动方法系统实现自设轨迹,只需在程序内储存一段特定轨迹的坐标点即可。系统可以根据坐标点一一连接,从而形成想要表达的图案。2.4 系统实现圆周运动方法 图5 圆周运动分解示意图如图所示(图5 圆周运动分解示意图),圆心坐标为(X0,Y0),半径为R,笔的运动坐标为(X,Y),则根据圆的特性,可得:得到参数方程:将圆周分成N份,用微分方程逼近,即每一段走的角度为2/N,根据上述公式将曲线折线化,即可在图纸上画出圆形。2.5 系统循迹方法如图6所示,我们在悬挂物体上安装了一个牛眼万向轮,方便其在白纸上的运动。在牛眼万向轮的四周安装了八个红外光电对管。红外光电对管在遇到白色的纸时,对管中的红外发射管发出的红外线将反射到对管中的红外接收二级管,从而使红外接收管导通,引脚输出低电平同时指示灯亮,若遇到黑线则红外光被黑线吸收,红外接收二级管保持断开状态,指示灯灭。如图所示(图N 悬挂物体循迹原理图),对红外光电对管进行编号,根据悬挂物体指示灯灭的方向即可判断黑线的方向。并且在黑线不连续或者黑线为直角边的情况下也能准确判断。判断黑线的方向的时候,先用遥控向系统发送一个线的趋势,告诉系统线的朝向是向上还是向下。如果是向上,则系统根据红外光电对管1-3,7、8的指示信 5号指挥悬挂物运动。若运动趋势是向下,则系统根据红外光电对管3-7的指示信号指挥悬挂物运动。如图所示(图7 悬挂物体循迹原理图),若此时运动趋势是向上,则系统根据2号红外光电对管的信号,让物体上右上方45运动。若此时运动趋势向下,则系统根据7号红外光电对管的信号,让物体上左方水平运动。 图6 悬挂物体装置说明 图7 悬挂物体循迹原理图 63电路与程序设计3.1电路的设计3.1.1 系统总体框图本系统主芯片采用STM32,外围电路有光电编码器,无线模块NRF24L01,直流电机驱动模块,降压模块,并且能够与我们制作的无线遥控进行双向通信。总体设计框图如图所示(图8 悬挂运动控制系统系统框图)。 图8 悬挂运动控制系统系统框图3.1.2主控制器的介绍STM32F103ZET6是STM公司以CORTEX-M3为内核开发的芯片,相比于传统的51或者AVR单片机,STM32F103ZET6运行稳定度高,运算速度快,内部资源丰富,片内集成512KBFlash、64KBRAM、1个USB、1个CAN、8个定时器、5个USART、3个ADC、2个DAC、3个SPI、2个I2C、2个I2S、1个SDIO、112个GPIO、FSMC总线(支持NOR,NAND,SRAM)。CPU主频为72MHz,广泛适用于各种8位机或16位机的应用场合。而我们的系统需要比较高的速度,运算量较大,需要定时器等进行运算和数据采集,故使用此主控芯片能很好地满足系统的需求。3.1.3 步进电机的介绍 步进电动机是一种将电脉冲信号转换成角位移或线位移的机电元件。步进电动机的输入量是脉冲序列,输出量则为相应的增量位移或步进运动。正常运动情况下,它每转一周具有固定的步数;做连续步进运动时,其旋转转速与输入脉冲的频率保持严格的对应关系,不受电压波动和负载变化的影响。 如图所示(图 79 两相四线步进电机原理图)电机中间的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A),双(双相绕组通电)四拍(AB-BC-CD-DA-AB),八拍(A-AB-B-BC-C-CD-D-DA-A);此次设计采用八拍控制,控制时序如下表。反转的控制时序与之相反。表2 步进电机正转控制时序黑绿红蓝十六进制10000x0811000x0c01000x0401100x0600100x0200110x0300010x0110010x09图9 两相四线步进电机原理图3.1.4 基于THB6064H的步进电机驱动器介绍THB6064H是大功率、高细分两相混合式步进电机芯片式驱动器。它采用双全桥MOSFET驱动,低导通电阻。通过设定M1、M2、M3的值来设定细分数(图10)。由于步进电机细分的方式是电流细分法,将相电流按正弦波相切得到的电流点作为细分点。在相电流达到细分点时就要控制电流进行控制衰减,否则得话就会出现角度过冲也就无法准确的停留在细分角度上。电机的速度不同选择的衰减模式不同。高速时快衰减、低速时慢衰减。高速时慢衰减就会出现震动大、噪音高等问题。通过设定适当的相电流和衰减方式配合细分数设定,能控制步进电机更好地工作。 8 图10 THB6064H细分数控制表图 11 基于THB6064H的步进电机驱动器原理框图图12 基于THB6064H的步进电机驱动器电路图 93.1.5遥控原理这个遥控器(图13 遥控原理框图)是我们队伍自己研发制作的。主要有以下几个部分组成:主控芯片为贴片STC89C52,12864液晶显示屏,蜂鸣器,无线模块NRF24L01,编码开关,44键盘,电源模块可提供5V到3.3V的电压。可以用电池供电。我们可以利用编码开关和键盘进行信号输入与控制,通过液晶显示屏观测实时参数情况,蜂鸣器进行状态提醒,无线模块NRF24L01进行信号的稳定接收与发送。在该系统中遥控通过无线模块发送数据,确定物体所在坐标,主控芯片通过无线模块进行接收并且将物体坐标采集再发送回遥控,显示在液晶屏上,非常形象直观,也实现了系统的人机交互功能。图13 遥控原理框图 图14 遥控原理图 103.1.5电源模块电源模块采用双电源,将电机控制的电源和主控芯片的电源分割开来,经过降压模块为微控制器和电机驱动模块提供5V电压,确保电路的正常稳定工作。另外采用了电池为遥控进行供电。电路图见附录N图N、图N。3.2程序的设计3.2.1程序功能描述与设计思路1、程序功能描述根据题目要求软件部分主要实现对步进电机的精确控制。2、程序设计思路根据题目要求,程序设计分成4个模式(图N 系统模式选择示意图),分别为定点模式、预设轨迹模式、画圆模式、红外循迹模式和遥控作图模式。当系统开始启动时,可以人为地对四种模式进行选择,系统则根据模式选择不同的运动方法,计算并建立数学模型计算出步进电机转动角度并据此使悬挂物体画出不同的图案。 图15系统模式选择示意图3.2.2程序流程图(部分源程序见附录N)3.2.2.1定点模式流程图 11图16 定点模式流程图3.2.2.2预设轨迹模式流程图图17预设轨迹模式流程图3.2.2.3画圆模式流程图图18画圆模式流程图3.2.2.4红外循迹模式流程图 12图19红外循迹模式流程图4测试方案与测试结果4.1测试方案本系统测试分为四个模式来进行测试。分别是定点模式、预设轨迹模式、画圆模式、红外循迹模式。通过统计和测量预设坐标与系统实际所走的坐标的差值来判断系统的精确程度。4.2测试仪器直尺4.3测试结果4.3.1 定点模式测试结果与分析 该模式测试为统计法,统计系统实际到达坐标与预设坐标的差值,并且与题目要求进行比较,判断是否达到题目的要求。 表3 定点模式测试结果表起始坐标预设终点坐标实际终点坐标误差绝对距离/cm(0,0)(60,80)(60,77)3(60,7)(40,80)(39,77.5)1.11(20,68)(50,70)(50,69)1(50,69)(70,10)(71,10)1(30,34)(60,20)(60,19.5)0.5(60,19.5)(40,80)(38.5,79)1.8(19.5,40.5)(70,90)(68.5,88)2.5 7次随机测试结果统计平均误差为:1.56CM,没有任何一次超出了4CM,系统定位精确可靠。 134.3.2预设轨迹模式测试结果与分析预设轨迹为一个L型,长度超过50CM。系统可以控制悬挂物体进行稳定运行。4.3.3画圆模式测试结果与分析经过测试,系统可以完成任意圆心,任意半径的画圆运动。并且圆周比较平整。4.3.4红外循迹模式测试结果与分析在板上有测试用轨迹。系统可以控制悬挂物体沿着线运动,并且在虚线部分也可以跨越。整体稳定。4.3.5测试结论由以上测试结果的统计分析,本系统定位精准可靠,已经满足了题目要求的基本部分和发挥部分的全部要求。5总结这次模拟赛已经找到了比赛的紧张感觉,有了上一次的经验,我们这次团队分工合作得非常合理。并且在比赛结束前8个小时已经实现了所有的功能。这次事件仅仅有四天三夜,虽然比赛的道具是前一天晚上采购的,但是应该也不会对正式比赛的节奏有太大影响。这次比赛选择方案有些许曲折,有时候我们为了图迅速,没有采用最基础的方案。等到我们绕了一圈回来才发现最基础简单的就是最好的方案。这次比赛我们较大幅度地换了一次方案。并且我们深刻地意识到,硬件是完美实现功能的基础,搭建系统的时候一定要用最稳妥的方案,才能保证软件调试时候的稳定性和精确性。这次我们队睡了两天晚上的124,这次我们没有太多的争论和抱怨,我们在成长。6 参考文献 1库少平; 刘晶 基于STM32F10x和MDK的步进电机控制系统设计N武汉:武汉理工大学学报 2009年03期2何哲 基于nRF24L01和STM32的无线文件收发系统 J 广东可编程控制器与工厂自动化2011年04期3时志云; 盖建平; 王代华; 张志杰新型高速无线射频器件nRF24L01及其应用 J 西安 国外电子元器件2007年08期4贺天柱; 兰羽; 基于光电传感器RPR-220转速计的设计J 黑龙江信息技术 2013年03期5 黄智伟.全国大学生电子设计竞赛训练教程(修订版)M 北京 电子工业出版社,20106 刘军 例说STM32 M 北京 北京航空航天大学出版社 20117 郭天祥 新概念51单片机C语言教程 M 北京 电子工业出版社 2009附录1 电源模块原理图 14图20 降压稳压电路附录2 部分源程序* *函数名:Linear_Interpolation *描述 :控制物体由当前坐标移动到目标坐标 * 采用直线插补法,对直线进行分割 * 物体由当前坐标移动到目标坐标 *输入 :无 *输出 :无 *调用 :外部调用*/void Linear_Interpolation(float x_target,float y_target)float length = 0;float value_x = 0; /当前点与目标点的x,y距离float value_y = 0;/*下一刻线坐标位置*/float x_next = 0;float y_next = 0;float k; /直线斜率int x_sign =1;/符号int y_sign =1;/*计算轴方向距离*/value_x = fabs(x_now-x_target);value_y = fabs(y_now-y_target);

温馨提示

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

评论

0/150

提交评论