简易旋转倒立摆及控制装置电子设计_第1页
简易旋转倒立摆及控制装置电子设计_第2页
简易旋转倒立摆及控制装置电子设计_第3页
简易旋转倒立摆及控制装置电子设计_第4页
简易旋转倒立摆及控制装置电子设计_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、2013年全国大学生电子设计竞赛 简易旋转倒立摆及控制装置(c题)【本科组】2013年9月7日 简易旋转倒立摆及控制装置(c题)摘 要 本设计根据选题要求搭建制作一台简易平面圆周倒立摆控制装置,系统基本功能要实现:摆杆的正负60°以上大角度摆动、摆杆圆周运动以及摆杆倒立自平衡等功能。基于这些要求,经过队员讨论并依据现有条件,决定分别采用双向编码器和陀螺仪-加速度计模块来分别测量旋转臂转角和摆杆摆角,使用直流减速电机控制旋转臂动作,以此搭建系统硬件结构。控制方案采用两个pid控制器分别控制旋转臂转角和摆杆摆角,通过对pid参数的整定来实现对摆杆姿态的控制。另外,为了系统调试方便,还设计

2、了液晶显示+键盘的辅助调试模块,借助该模块可实现实时显示摆杆摆角及摆臂旋转角度,pid参数修订,摆杆动作切换等附加功能。关键字:旋转倒立摆 pid控制 陀螺仪-加速度计 目 录1系统方案11.1 任务及要求.11.2 系统结构.21.3 方案比较与选择.22系统理论分析与计算.42.1 电机选型.42.2 摆杆状态检测.42.3 驱动与控制算法.53电路与程序设计.63.1电路设计.73.1.1 系统总体框图.73.1.2 电动机驱动模块子系统电路原理图.83.1.3 电源模块电路原理图.83.2程序设计.93.2.1 程序功能描述与设计思路.93.2.2 程序流程图.94系统测试.134.1

3、 测试条件与仪器.134.2 测试方法与结果分析.14附录1:电路原理图.16简易倒立摆及控制装置【c题】【本科组】1系统设计要求与设计方案1.1任务及要求设计并制作一套简易旋转倒立摆及其控制装置。旋转倒立摆的结构如图1所示。电动机a固定在支架b上,通过转轴f驱动旋转臂c旋转。摆杆e通过转轴d固定在旋转臂c的一端,当旋转臂c在电动机a驱动下作往复旋转运动时,带动摆杆e在垂直于旋转臂c的平面作自由旋转。1基本要求(1)摆杆从处于自然下垂状态(摆角0°)开始,驱动电机带动旋转臂作往复旋转使摆杆摆动,并尽快使摆角达到或超过-60° +60°;(2)从摆杆处于自然下垂状态

4、开始,尽快增大摆杆的摆动幅度,直至完成圆周运动;(3)在摆杆处于自然下垂状态下,外力拉起摆杆至接近165°位置,外力撤除同时,启动控制旋转臂使摆杆保持倒立状态时间不少于5s;期间,旋转臂的转动角度不大于90°。2发挥部分(1)从摆杆处于自然下垂状态开始,控制旋转臂作往复旋转运动,尽快使摆杆摆起倒立,保持倒立状态时间不少于10s;(2)在摆杆保持倒立状态下,施加干扰后摆杆能继续保持倒立或2s内恢复倒立状态;(3)在摆杆保持倒立状态的前提下,旋转臂作圆周运动,并尽快使单方向转过角度达到或超过360°;(4)其他。1.2系统结构 根据题目要求,系统可分为摆杆与悬臂模块、

5、支架模块、电机与驱动模块、传感器采集模块、单片机控制模块、电源模块等六部分。通过传感器测量旋转臂角度信息和摆杆角度信息,单片机通过一定的控制算法驱动电机转动,带动悬臂及摆杆运动,达到控制摆杆完成题目要求的各项动作。图2 系统结构总图以下是我们的具体设计方案。摆杆与支架的连接可以通过电机带动减速齿轮机构进行连接,这样可以增大电机转动时的力矩,使得摆杆对悬臂动作的响应加快,提高控制性能。另一方面,对于摆杆我们选择了轻质铝合金,这样可以减小摆杆惯性,加快系统动态响应。对于控制量的检测,我们准备选取两个可以测量角度的传感器,其一用于检测旋转臂转角及其角速度,通过一定的控制方法将旋转臂转角控制在一定的范

6、围内,而另一个角度传感器固定于旋转附近,测量摆杆的角度信息,从而控制摆杆的平衡。摆杆通过轴承与旋转臂相连,这样既可以使用编码器测量摆杆的角度、角速度等参数,同时又能保证摆杆自由灵活地旋转。另外,我们还需要搭建一个稳定的底座来固定系统,减少系统的振动,搭建一个支架,用于解决摆杆、旋转臂圆周运动时的绕线问题。1.3方案比较与选择主控芯片方案的选择:方案1:采用stc15系列8051内核单片机。这种单片机操作简单,同时处理速度远快于传统51单片机,内部数据与程序存储空间较大,ad、pwm等各种外设齐全,基本可以满足要求。另一方面,其i/o接口有限,同时处理速度相对较慢,中断系统不是非常稳定。方案2:

7、采用飞思卡尔k60单片机作为主控芯片。其工作电压较低,频率可达200mhz,系统稳定,外设功能丰富,i/o接口数可以满足设计要求。同时,参赛成员对其具有一定的使用经验。综上所述,我们采用飞思卡尔k60作为主控芯片。电动机的选择:方案1:使用伺服电机。伺服电机响应速度快,线性度好,非常适宜此类问题,由于条件所限,放弃此种方案。方案2:使用直流减速电机作为控制电机。直流电机控制方便,使用单片机的pwm接口配合电机驱动即可方便控制。由于直流电机转速很大,所以负载工作时需要配合减速器一起使用。减速器可以降低电机转速,增大力矩,方便控制。同时,这种电机也较为常见,成本较低。方案3:采用步进电机。步进电机

8、控制精确,可以方便地控制电机的转角,非常适合精准的控制应用场合。但是步进电机的扭矩较小,同时如果高速运行还可能产生振动,这样反而不利于进行控制。综上,我们选择了直流减速电机。角度测量方案的选择:方案1:采用专用角度传感器。这种传感器可以将角度量转换为电平值,我们可以直接从ad中读取角度值,非常便于角度测定。但是由于实验室条件限制,无法采取此种方式。方案2:旋转臂与电机连接处使用双向编码器,摆杆与转轴之间也采用双向编码器。这样,通过读取单片机的计数模块再经过简单的正负判断处理就可以很容易测得两转轴处的角度变化。但是我们使用的编码器只有500线。在实际应用中,我们发现摆杆转轴处角度的检测精度无法满

9、足摆杆的控制要求。综合考虑实验室现有条件,我们设计了方案3。方案3:旋转臂与电机连接处使用双向编码器,摆杆上固定陀螺仪-加速度计模块,陀螺仪可以直接测得角速度,而其对时间的积分即为当前偏离角度。由于陀螺仪在运行过程中容易受到温度的影响,使得积分值变得不准确,所以需要引入加速度计的值来对陀螺仪积分产生的角度进行纠正。通过陀螺仪角速度的积分值与加速度计互补融合,配置合理的参数,即可测得反应当前角度的量。这样,就可以比较精确地检测出摆杆当前的角度了。2系统理论分析与计算2.1 电动机选型由于条件限制,在没有伺服电机的情况下,我们使用了带减速齿轮的rs385s直流电机。相比伺服电机,直流减速电机定位性

10、能稍差。rs385s直流电机负载转速为15000rpm±10%,可以较快地响应控制。其负载电流为3.9a,两片btn7971b搭成的h桥驱动模块可以满足其电流需求,同时实验中我们发现如果堵转,电流增大,驱动芯片电路也可以自动断电,使电机得到保护。另外,rs385s直流电机带减速器后力矩很大,可以快速带动一定质量的负载,使得系统的响应速度可以满足要求。2.2 摆杆状态检测摆杆状态检测我们采用了加速度计与陀螺仪配合的方式进行测量。我们在摆杆上固定陀螺仪-加速度计模块,陀螺仪可以直接测出角速度,也就是说我们可以通过对陀螺仪速度的累加而感知摆杆角度的变化情况。但是陀螺仪在累加过程中累积值会受

11、温度影响而变化,这就需要我们使用加速度计进行校正,即在陀螺仪积分的过程中定期与加速度计测量值进行比较,不断纠正陀螺仪数据的飘移。对于加速度计来说,它的值不够平滑,所以不能准确反映当前角度值,但是加速计值不会产生较大的飘移。两者融合我们采用了较为简单的互补滤波,从而得到摆杆角度变化信息。同时我们知道角速度就是角度的微分,这样,在求对摆杆控制的pid运算的微分值时,我们可以直接使用陀螺仪采集回来的摆杆的角速度值。实验中我们发现这种方式可以比较灵敏而准确地反应摆杆角度信息。图3 陀螺仪-加速度计测角度方法2.3驱动与控制算法根据所学经典控制理论与现代控制理论方面的知识,我们选定了两种基本控制方案。方

12、案1:采用pid控制方案。经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型。pid控制器因其结构简单,容易调节,且不需要对系统建立精确的模型,在实际控制中应用较广。在控制理论和技术高速发展的今天,工业过程控制中95%以上的控制回路都具有pid结构,并且许多高级控制都是以pid控制为基础的。实现算法时,我们可以测量摆杆的偏角,将其信息反馈给微处理器,通过pid算法校正消除输出与给定值的偏差,实现对摆杆运动的控制。另外,由于pid是单输入单输出系统,所以只能控制摆杆平衡而无法控制旋转臂的旋转角度,这样摆杆在运动时会出现一直向一个方向转动的情况,所以我们还

13、需要设计一个旋转臂角度控制闭环和旋转角速度闭环,这样我们就可以控制摆杆定位和匀速运动。方案2:采用状态空间极点配置控制方案。经典控制理论的研究对象是单输入单输出系统,需要较为精确的数学模型,而现代控制理论则是将经典控制理论扩展到多输入、多输出系统。通过状态反馈可以改变闭环系统的极点,而极点位置与系统性能密切相关。极点配置法通过状态反馈控制器将多变量系统的极点配置到我们所期望的位置上,使系统满足稳态和瞬态要求。以下是我们根据直线倒立摆的状态反馈推测出的圆形平面倒立摆的极点配置原理图。 图4 推测平面圆形倒立摆极点配置图综合考虑对于算法的熟悉程度以及现有条件下控制模型无法精确建立,我们使用了pid

14、控制方案。在模拟系统中,pid算法表达式为:在数字系统中,我们需要将pid离散化,pid算法离散化表达式如下: 这样我们就可以将连续的pid公式转化为差分方程,从而方便地用程序实现算法。在这里我们使用了位置式pid。 图5 pid控制方法示意框图在设计完控制程序后,我们首先将旋转臂开环,整定旋转臂的pid参数,即上式中kp、ki、kd。然后再将旋转臂闭环,整定整体参数。由于积分对系统有滞后的作用,会影响到摆杆的稳定,所以在整定参数时需要尽可减少积分系数。微分具有超前的作用,适量加入微分量可以减小震荡,加快跟随。3电路与程序设计3.1电路的设计电路部分主要分为核心控制板,驱动模块和电源模块几部分

15、。其中核心控制板使用k60芯片,外接按键,拨码开关,传感器等设备。电源模块采用tps7350作为稳压芯片,将7,.2v的电源转换为5v用于控制板供电。 同时由于主控芯片和部分设备要求3.3v供电,我们使用了asm1117作为电压转换芯片。另外我们还设计了电池电量检测模块,使用运放作为比较器来检测电压值,这样当电池电量不足时即可及时更换,这对调节控制参数非常有用(实验发现电量的不同常常会影响参数的选择)。 我们可以通过液晶显示器的提示,使用按键控制倒立摆的运动方式和传感器参数。关于角度传感器,由于可能采用不同的传感器,我们引出了计数器和ad转换接口。这样,如果使用编码器就可以用计数器进行测量,如

16、果使用陀螺仪-加速度计或者角度传感器,则可以切换到ad接口。最后为了方便调试,我们将单片机的串行通信接口引出,利用无线串口与上位机直接通信,大大提高了调试效率。 3.1.1电路总体框图图6 电路总体框图3.1.2电机驱动模块子系统电路原理图 图7 电机驱动模块子电路原理示意图电机驱动模块采用btn7971b芯片。两片btn7971b芯片搭成h桥电路,这样只需通过两路pwm就可控制电机的转速。同时,电路还可以提供较大的驱动电流,可以方便地驱动直流减速电机。3.1.3电源模块电路原理图 图8 电源稳压模块子系统电路图7.2v电压转换为5v,用于核心板供电。图9 3.3v稳压模块子系统电路图用于给k

17、60芯片供电的3.3v稳压电路。 图10电压检测模块子系统电路图3.2程序的设计3.2.1程序功能描述与设计思路在主函数中初始化硬件和变量参数,进入大循环。程序每隔1ms进一次中断,分别作数据采集,数据处理及电机控制。键盘扫描和调试信息在主循环中,可以选择倒立摆动作和修改pid参数。3.2.2程序流程图1、主程序流程图图11 主程序流程图2、中断服务子程序流程图图12 1ms定时中断中断函数流程图3、 摆杆控制pid子程序流程图图13 摆杆pid控制算法流程图 图14 摆角位置控制pid算法流程图4系统测试4.1 测试条件与仪器测试条件:硬件电路和机械构造已经成型。测试仪器:量角器,无线串口,

18、计算机,5g砝码。4.2 测试结果及分析 测量摆角时间/s246810121416摆臂/度1030404560809080时间/s1820222426283032摆臂/度1201301507090908090 圆周运动时间/s48121620242832摆臂/度3060150完成圆周运动 由165度直立时间/s123456789摆臂/度±30±30±30±30±25±25±25±15±15摆杆/度180±10180±5180±3180180180180180180时间/s101112131415161718摆臂/度±15±10 ±10±10±10±5平衡点平衡点平衡点摆杆/度180180180180180180180180180砝码干扰时间/s0246810121416摆臂/度±30±10±5±5±5±5±5±

温馨提示

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

评论

0/150

提交评论