电气工程及其自动化旋转倒立摆控制演示系统设计与实现.docx_第1页
电气工程及其自动化旋转倒立摆控制演示系统设计与实现.docx_第2页
电气工程及其自动化旋转倒立摆控制演示系统设计与实现.docx_第3页
电气工程及其自动化旋转倒立摆控制演示系统设计与实现.docx_第4页
电气工程及其自动化旋转倒立摆控制演示系统设计与实现.docx_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

本科生毕业论文(设计)中文题目 旋转倒立摆控制演示系统设计与实现 英文题目 design and implementation of rotary inverted pendulum control system for demonstration 学生姓名 白 杨 班级 651006 学号 65100604 学 院 仪器科学与电气工程学院 专 业 电气工程及其自动化 指导教师 随阳轶 职称 副 教 授 摘要 旋转倒立摆是一种复杂的、快速的、不稳定的系统。该类模型的控制方法可以应用于航天,机械制造等多种精密控制的领域。本文主要介绍了旋转倒立摆演示系统的原理分析、设计制作过程和实验结论。在拉格朗日状态空间方程模型的基础上,使用lqr二次型最优控制器的方法。采用区间分布控制,得到期望的控制效果。本设计采用飞思卡尔k60单片机作为处理器,使用光电编码器作为传感器,对系统进行控制和检测。本设计提出了一种新的机械设计方案,提高了旋转倒立摆的机械性能。本文从硬件的选择到软件的程序实现,详细的阐述了旋转倒立摆演示系统的实际制作过程。实现了旋转倒立摆的起摆功能,摆杆可以自行在竖直方向上保持平衡,并且在外界施加一定干扰的情况下能够保证平衡不被破坏。在此基础上实现了通过改变参数研究控制系统特性的功能,适用于教学演示。关键词:旋转倒立摆 lqr控制器 k60 光电编码器title design and implementation of rotary inverted pendulum control system for demonstrationabstractrotational inverted pendulum is a complex and fast, the instability of the system. this kind of control method of the model, which can be applied in aerospace, machinery manufacturing, and other precision control field. this article mainly introduces the principle of rotational inverted pendulum system demonstration analysis, design, manufacture process and the experiment conclusion. the quadratic optimal control is used on the basis of the state-space equations, lagrange model, and lqr method. using interval distribution control, achieve the desired control effect. this design uses a single chip as the processor freescale k60 used as sensors, optical encoders to control and detection systems. this design presents a new mechanical design, improve the mechanical properties of rotational inverted pendulum. this paper, from the choice of the hardware to software program implementation, in detail elaborated the actual production process of rotary inverted pendulum system demonstration. to realize the function of rotational inverted pendulum of the pendulum, swinging rod was able to maintain a balance in the vertical direction, and adding some interference in the outside world to be able to keep the balance from damage. on the basis of the control system realized by changing the parameters of the research characteristics of function, is suitable for the teaching demonstration.keywords:rotational inverted pendulum k60 lqr controller optical encoder目录1 绪论11.1 研究背景与目的11.2国内外研究现状11.3本文研究内容12.物理模型分析以及控制方法研究22.1旋转倒立摆的物理模型建立过程22.2 使用理想lqr控制器设计的控制策略的分析52.3起摆过程分析103 系统设计方案133.1 总体设计框架133.1.1设计方案133.1.2机械结构设计143.2 硬件设计143.2.1电机选型143.2.2控制处理器选择153.2.3传感器选择153.2.4材料选择163.2.5驱动电路选择163.2.6液晶模块的选择173.3 软件设计183.3.1程序总流程概述183.3.2键盘扫描模块编程分析203.3.3串口发送模块203.3.4起摆算法和平衡控制算法的软件实现203.3.5 使用编码器测速程序的设计223.3.6 使用labview软件实现上位机软件通讯234 关键技术244.1 编码器相位差所产生的问题244.2 增量式累积误差的消除方法254.3 采样频率的确定254.4 电机工作频率264.5 串口发送占用时间过长的问题265 成果展示27结论28参考文献29致谢31311 绪论1.1 研究背景与目的 倒立摆模型是自动控制系统研究中的一个经典问题,有关于它的研究始于20世纪50年代。倒立摆主要被用于检验控制方法对于不稳定、快速、非线性系统的控制能力,并在此基础上研究新的控制策略用于航天、机器人、精密加工等各种控制领域1。本文所讨论的旋转倒立摆是在原本直线倒立摆的基础上的进一步拓展研究。由于从原本的二维平面2扩展到三维立体空间,物理模型的建立也更加复杂。系统本身是非线性不稳定的3,在进行对系统的控制时需要考虑能量的传递过程以及系统的瞬态分析,这也是考虑到旋转倒立摆自身的快速、多变量、复杂性所提出的要求。1.2国内外研究现状 对于旋转倒立摆控制系统的控制策略主要有基于经典理论的pid控制法45、状态空间法6、模糊控制策略7、基于神经网络8的控制理论以及遗传算法等。 目前国内外许多厂商都推出了倒立摆系统的相关产品,例如加拿大quanser 公司9和深圳固高科技公司。1.3本文研究内容(1)本文旨在利用拉格朗日状态空间方程以及线性二次最优控制策略,通过对非线性系统的区间线性化,对旋转倒立摆进行控制。在非近似区间采取分段线性化控制方法,从而加大可控范围。通过理论计算建立多级分段lqr控制器进行倒立摆的控制研究。(2)因为旋转倒立摆本身对误差以及阻尼等外界干扰因素极为敏感,本文提出了一种新的机械外形设计方案,从而在机械结构方面最大程度的保证了系统运行的可靠性,同时兼顾成本和质量等因素。(3)实现旋转倒立摆装置的设备化,形成可操作演示的教学实验系统。通过labview编写上位机软件,采用rs232串行总线实现单片机与pc机的数据传送。2.物理模型分析以及控制方法研究2.1旋转倒立摆的物理模型建立过程 图2.1 物理模型图 图2.1描述了旋转倒立摆的运动过程10,由于旋臂在电机的带动下旋转,摆杆随之摆动。摆杆偏离垂直向上的角度为,摆臂转过的角度为,摆杆直立于顶端至摆杆自然下垂的高度差为h,摆杆的集中质量为m,等效长度为l。由图2.1得知摆杆的速度可以在x轴方向与y轴方向上分解为两个分量。vm=-lcosax-lsiny (2.1) 由于摆臂在旋转,其速度表达式为如下,其中r为摆臂长度。vm=r (2.2) 由公式(2.1)和(2.2)可知并结合图2.1可知vx=r-lcos (2.3)vy=-lsin (2.4) 由上述方程我们得知了系统中速度的表达式,下面便可并由此推导系统的动力学过程。 分析得知系统总势能为重力势能。ep=mgh=mglcos (2.5) 系统中动能的总和分以下几个部分:摆臂旋转的动能,集中质量的速度在x轴和y轴的分量所代表的动能,摆杆自身旋转的动能。故系统总动能的表达式为ek=ekm+ekvx+ekvy+ekm (2.6) 摆杆的转动惯量的计算过程如下11:i=x2dm=ml-hl-hx2dx=13ml2-3lh+3h2 当h=l时我们得到摆杆的转动惯量jmjm=13ml2 (2.7) 最后我们得到总动能表达式为ek=12jm2+12mr-lcos2+12m-lsin2+12jm2 (2.8) 定义拉格朗日算符12 la=ek-ep =12jm2+23ml22-mlrcos+12mr22-mglcos (2.9) 由于旋转倒立摆处于平衡状态时在摆杆所在平面力矩平衡,并且电机产生的力矩与摆臂自身产生的力矩平衡。故可以得到如下两个偏微分方程13:tl-l=t-beq (2.10)tl-l=0 (2.11) 当的值很小时对非线性平衡位置进行线性化,近似认为=0。通过改进机械结构,我们可以忽略摆杆旋转时摩擦力产生的影响,并认为beq=0。然后解上述方程组可得:jm+mr2-mlr=t-0 (2.12)43ml2-mlr-mgl=0 (2.13)我们近似的认为直流减速电机工作在线性区,其输出力矩表达式为:t=kv (2.14)注:系数k可以通过查找电机参数表获得。最后我们得到了有关旋转倒立摆系统中各物理量的微分方程组,通过mtalab软件实现该系统由微分方程到状态空间形式的转换。可得如下状态空间:=001000010bde-cke00ade-bke0+00ckbk (2.15)a=jm+mr2 b=mlr c=43ml2 d=mgle=ac-b2至此我们完成了旋转倒立摆平衡时的物理模型的建立。2.2 使用理想lqr控制器设计的控制策略的分析 现如今已经存在大量的对于控制策略参数的调控方法。有些已经被人们所熟知并且工具化以便人们使用。线性二次型调节器(lqr)理论适用于上述状态空间方程所描述的平衡方程的控制过程。由推导我们已经得知了旋转倒立摆系统的状态空间描述。x=ax+bu (2.16)lqr算法的控制任务是使价值函数j 最小, j=0xttqxt+uttrutdt (2.17)矩阵q为状态变量的惩罚矩阵,矩阵r被定义为控制动作的惩罚矩阵。当q较大时,控制器必须提供更多的控制能力使得价值函数的最小化,从而导致了控制增益的增大。我们现在已知状态变量有如下描述:x= t (2.18)图2.2 旋转倒立摆状态反馈平衡控制块图由于这里只有一个变量矩阵14,r为标量所以由控制策略得到的最小化的价值函数j可以表示为u=kxr-x=kp,r-kp,-kd,-kd, (2.19)上述所述的控制策略即状态空间反馈控制法,他等同于对于多个变量的比例微分控制(pd)。由于状态空间方程的计算较为复杂,本文使用matlab软件进行状态反馈矩阵的计算。使用计算所得的控制器以及simulink进行仿真得到如下结果:图2.3 simulink仿真图我们通过软件仿真观察当系统输入为阶跃信号15时系统的响应曲线。图2.4 的阶跃响应曲线图2.5 的阶跃响应曲线图2.6 的响应曲线图2.7 的响应曲线下面所讨论的主要内容是如何使用已经讨论的控制策略对旋转倒立摆进行控制。平衡控制是一种常见的控制任务,为了使摆杆直立于摆臂上,我们需要通过传感器将角度信号,以及对他们进行微分计算后的角速度信号,作为输入传送到控制器中。我们可以根据对不同状态变量的控制目的从而计算合适的反馈矩阵。这里代表摆杆的偏角,代表摆臂转过的角度,考虑到装置并不能360自由旋转我们需要给制定一个角度限制,既能保证控制的顺利进行又不会由于超限对电机以及机械结构造成损坏。我们认为以及,的期望值为0,也就是摆杆保持直立并且静止,摆臂同时为静止状态。由于实现摆杆平衡的控制是建立在区间线性化上的。即根据不同的划分区间,对于不同的区间进行各自的状态反馈控制。所以的可控范围是有限的。加之限幅的存在以及电机和电源所提供的控制能力均有各自的最大值。所以摆杆在扰动过大或者靠近限幅时不可避免的会掉落偏离平衡位置。我们需要进一步考虑如何使得摆杆在掉落后进行恢复平衡状态的控制策略。下一节我们将对该过程进行详细讨论。2.3起摆过程分析当摆臂保持静止而摆杆有一定的初始角度的情况下,摆杆将会摆起一定的幅度。我们通过改进光洁度以及变滑动为滚动的方式尽可能减小摩擦力对于振荡所产生的影响,我们通过控制系统内总的能量来实现摆杆的起摆过程。我们分析得知摆杆的势能有如下表示:ep=mpglp1-cos (2.19) 系统动能表示为:ek=12jp2 (2.20)图2.8 起摆过程物理模型 当为0时势能为0,当摆杆直立时势能为2mpglp。e=ek+ep=12jp2+mpglp1-cos (2.21) 对该式进行微分我们得到e=jp2+mpglpsin (2.22) 将摆杆的运动过程导入后得到jp=-mp g lpsin+mpulpcos (2.23) 方便的我们得到加速度与系统能量的关系e=mpulpcos (2.24) 因为摆臂轴线上的加速度正比于电机的驱动电流,同时也意味着正比于电机的驱动电压,故我们可以得知通过改变电机的电压就可以对系统中的能量进行控制。控制规律如下:u=er-ecos (2.25) 我们注意到该控制规律是非线性的,造成这一现象的原因是控制增益是正比于摆杆偏角的。同样当超过90时,控制量会改变符号。 我们知道当摆杆掉落时需要很大的控制量使得其恢复平衡。故我们使用以下控制方法:u=er-esigncos (2.26) 其中为一个固定不变的控制增益。 由此我们分析得知了旋转倒立摆起摆的物理过程,我们继续讨论如何将该规律应用于起摆的实际控制。 起摆过程与平衡过程,摆杆处于两个不同的物理模型之下。所以我们需要分阶段对倒立摆进行控制。首先是起摆振荡,当摆杆的角度进入平衡可控区间的时候进行模式切换,转而进行平衡控制。考虑到平衡控制的可控范围以及系统的运行稳定,防止系统剧烈震荡,我们使用下列控制方法。根据不同的摆杆角度采取不同的控制策略:u=平衡控制 -20 deg起摆控制 其他情况 (2.27)3 系统设计方案3.1 总体设计框架3.1.1设计方案图3.1 系统硬件框图 使用光电编码器作为系统的传感器输入模块,将角度信号与输入单片机模块进行处理,单片机将计算所得的控制量输出到电机驱动模块。该模块根据单片机所输出的pwm信号给直流减速电机供电。该电机作为直接参与控制行为的唯一变量对系统进行控制。同时单片机将所收集的角度信号以及经过计算的速度信号通过液晶显示模块显示。键盘输入模块可以对单片机的运行模式以及控制参数进行调节。串口通信模块使用rs3232芯片为将装置与pc上位机连接提供接口。系统整体有220v交流,12v直流,以及3.3v直流三个电压等级,均由电源模块统一供电,单点共地连线保证控制电路不受驱动电路的干扰。3.1.2机械结构设计 系统的输入部分由两个光电编码器组成,第一个编码器安装位置在电机轴向正上方,使用联轴器实现电机轴与编码器共轴。这个编码器用来测量摆臂的角度。第二个编码器安装在摆臂上,与摆杆的旋转平面垂直,用来记录摆杆的倾角。转轴安装使用轴承连接,减小摆杆在运动过程中收到的阻力。电机轴与摆杆使用铜轴螺丝进行嵌套连接,从而保证了连接的稳固。 通过使用螺丝将电机固定在铝盘上,将铝盘镶嵌在旋转平台上,使得装置的水平特性得以保证,并且在旋转的过程中减小离心力的影响保持装置稳定。上下平面采用四角立柱内嵌固定的方式,确保装置整体结构稳固,可承受一定程度的外界撞击。3.2 硬件设计3.2.1电机选型 方案一:采用步进电机。步进电机是将电脉冲信号转变为角度偏移的动力源。在额定负载范围内,电机的转速、位置可由控制信号的频率和脉冲个数来控制。但是由于步进电机自身的响应特性的限制,导致其在进行快速频繁的动作时会产生“丢步”的现象,影响控制精度。在对步进电机进行细分控制的时候需要使用步进电机细分器调节,增加了驱动电路的设计制作成本,增大了系统的损耗。 方案二:采用直流减速电机16。直流减速电机自身具有一般直流电机的优点,自身运行可靠,具有良好的动态响应特性便于理论分析和建立物理模型。而直流减速电机相比一般的直流电机增加了减速箱,有效地改善了直流电机启动转矩小,线性控制区间小的特点。使得电机可以提供足够的力矩,并且控制方法简单。 考虑综合特性,我们决定采用之流减速电机,运行可靠性高,而且转矩大,响应特性曲线好。3.2.2控制处理器选择 方案一:采用stc89c52单片机。此系列单片机功耗低,兼容性好,稳定性高,但内存小,自身时钟频率低,i/o口较少,不能独立输出pwm波形,适合初学者使用。 方案二:采用飞思卡尔k60单片机。k60单片机功耗低,功能齐全,能输出多路pwm波,具备处理大量中断信号的能力。并且内存大,处理速度快,能够满足题目的要求。 由于本设计模型复杂运算量大,速度快,需要快速对传感器的变化进行分析处理。飞思卡尔k60具备相应的处理速度,充足的i/o以及灵活的引脚使用规则,所以选择其作为旋转倒立摆的控制芯片。 3.2.3传感器选择 方案一:采用导电塑料角位移传感器。角位移传感器分辨率高,使用简单,它的测量精度取决于与之相连的a/d转换模块。理论上可以达到相当高的精度,但在实际使用过程中,角位移传感器的线性特性并不理想,不能进行360旋转。不能够完成所期望的功能。 方案二:采用加速度传感器。在摆杆上安装上双轴加速度传感器,可以测量动态的加速度,如果使用加速度传感器还需要对采集值进行二次积分才能得到摆杆角度,容易带来累计误差,并且计算量加大,反应速度降低。同时考虑到摆杆的物理模型,会因该传感器而发生改变,造成控制系统的不稳定。 方案三:采用光电编码器。光电编码器一般分为两种,即绝对式和增量式。绝对式17编码器的优点在于他不会产生累积误差,但是由于机械加工的技术限制绝对式编码器的测量精度受体积限制,考虑到装置的便捷性,不能够采用体积太大的传感器。而使用增量式光电编码器虽然不能感应绝对的位置变化信息,但通过输出a、b相脉冲的相位关系可得到旋转轴的转向和转角。并且它自身的z相可以实现单圈矫正零点,消除了累积误差的影响。 比较以上三种传感器,1000线的增量式光电编码器精度可以达到0.36,精度满足要求,反应速度也足够快,所以选取增量式光电编码器。b相a相编码器上升沿中断下降沿中断 i/o输入单片机图3.2 编码器接线图3.2.4材料选择 方案一:使用铝材。金属材铝的硬度较小,便于机械加工。铝板才具有一定的弹性,可应对一定程度的力量冲击。但是由于全金属器件加工过程复杂,粘合性差。考虑氧化腐蚀等因素,不能够使用全铝作为制作材料。 方案二:pvc(polyvinyl chloride polymer)。他具有良好的机械特性,硬度很高。介电特性优异,化学性能稳定,只能溶于少数溶剂。但是耐磨特性比金属差,热稳定性不好。 方案三:结合上述分析,最后确定同时使用铝材和pvc两种材料,充分发挥各自的优点。在不同结构要求中分别使用以上两种材料。3.2.5驱动电路选择 本设计使用btn7971b电源驱动模块。它的最大工作电流可以达到45a,最大工作频率25khz。并且体积小稳定性好,满足旋转倒立摆系统的要求。该驱动的电路连接图如下:图3.3 驱动电路图3.2.6液晶模块的选择 本设计选用nokia5110作为显示设备,由于系统快速性的要求,用于显示的液晶屏幕写速度要求快,这样才不会打断控制过程。nokia5110具有体积小,可靠性高,读写速度快的特点,因而被采用。3.3 软件设计3.3.1程序总流程概述 首先需要对系统进行初始化。其中包括显示模块,键盘模块的i/o配置。为了实现传感器模块与单片机的连接,还需要配置外部中断和定时器中断,以及终端的优先级划分。在与上位机软件进行通讯时需要对串口模块进行初始化,并选择合适的波特率。pwm控制驱动电路时需要用到k60 内部独立的pwm波形输出功能,初始化的同时选定所需的频率和初始值。 完成系统的初始化之后需要对旋转倒立摆的工作模式进行选择。本设计提供的两种可选模式即默认配置参数和手动配置参数。我们知道反馈系数矩阵k是由lqr线性二次最优控制器生成的,即使用默认配置即可完成倒立摆的起摆和平衡动作。但是出于教学演示的需求,我们需要观察每个参数对控制效果的影响。手动配置参数模式下可以对矩阵k中的四个参变量进行手动输入。 选择模式后进入系统的正常运行过程。因为倒立摆初始时处于自然下垂状态。我们认为此时系统处于等待开始的阶段,当有扰动施加在摆杆上时,倒立摆自启动进行调节,之后便不需要额外的人为控制。 首先系统进入起摆程序控制,当摆杆的摆动最大高度达到平衡过程可控范围内时,切换控制方法进入平衡行为控制。并且在液晶显示模块上实时显示当前摆杆的角度、角速度、摆臂转角和摆臂转速。同时通过串口将这些数据发送至上位机软件进行分析。当使用者按下停止指令时返回模式选择界面。控制流程图如下:图3.4程序总流程图3.3.2键盘扫描模块编程分析 由于单片机需要实时监测角度信号,所以不能使用中断编程的方法实现按键功能。我们设计并认为键盘动作重要程度低于平衡控制动作,所以在控制进行的间隙中我们对键盘进行扫描,获取按键信息。由于k60在定义i/o的过程中本身具有设置i/o上拉或下拉的功能,这大大方便了外部电路的连接方式。 当执行列扫描时,输入端进行延时去抖动,然后等待按键弹起,防止单次重复输入。按键弹起后方获得当前键值。3.3.3串口发送模块 飞思卡尔k60芯片自身具备串口发送模块,使用初始化函数进行配置后,我们需要对发送波特率进行设定。考虑到系统的快速性,我们期望串口发送的速度尽可能的快,并且不对控制过程产生影响。所以我们设定尽可能高的波特率。k60自身50mhz的时钟频率为这一方法提供了必要条件。经过实际测试我们选用的波特率为460800。 此外再发送前需要将发送的数据经过字符变换后再送入发送寄存器。以便于上位机对该数据进行处理分析。3.3.4起摆算法和平衡控制算法的软件实现 首先检测当前系统中各变量的值,从而判断当前需要进行起摆或者平衡控制。当摆杆的角度处于起摆控制区间的时候,根据起摆算法计算电机需要提供的额外能量,将该能量进行单位转换从而确定电机所需要的电压。之后我们根据pwm控制法确定单片机向驱动电路所输出的pwm信号。 随着能量的不断累加,最后摆杆终究会进入平衡可控区间。此时切换为平衡控制算法。 根据lqr控制策略,我们将当前的系统变量值与控制矩阵k进行矩阵乘法运算,所得到的数值就是当前为了维持系统平衡所需要的控制输出量。同样的,我们对该值进行单位换算和pwm转化,从而实现了再平衡区间内的控制。是是开始是否安全开始控制复位是否停止停止否否 由于摆杆的转动是360自由转动的,根据增量式编码器的作用原理,所以我们需要确定摆杆旋转的参考方向,以便准确的计算出当前的角度信息。当角度确定之后我们用控制算法便可以获得当前所需的控制量18。由3.2.5节驱动电路原理我们得知,根据该控制量的正负我们可以判断电机驱动pwm的传输方向,从而电机的旋转方向也随之确定。因为机械结构的限制,摆臂的旋转范围被限制,所以必须进行限幅措施防止摆臂被卡住导致电机堵转,电流过大从而损坏电机线圈。根据实际测试,我们限定144为摆臂旋转的最大范围。一旦摆臂发生越界现象,系统随之控制电机停止控制动作,并且进行摆臂的复位。当摆臂回到零点后,根据当前状态继续进行起摆或平衡控制,从而保证了系统运行的安全稳定。实现算法的软件流程图如下:图3.5电机控制以及安全措施流程图3.3.5 使用编码器测速程序的设计 方案一:使用dma(direct memory access)控制器。 dma属于外部设备,工作时不占用处理器线程。可以实现数据的记录与处理同时进行的功能,适用于大量数据通讯。但是由于倒立摆本身具有单帧数据量不大,帧速快的特点。因此dma不适合用来测量光电编码器的转速。 方案二:使用k60自身具备的lptmr模块。lptmr模块式k60芯片内部的定时脉冲计数模块,他同样可以实现不占用线程进行编码器计数的功能。但是因为安装在倒立摆的摆杆上的编码器的运动特点是快速正反切换,所以一般的脉冲技术方法并不适用,该模块不能用于倒立摆物理模型的测量。 方案三:使用外部中断。k60芯片的外部中断使用方法非常灵活。有两种触发方式:电平触发、延边触发,同时还可以在芯片内部对外部中的进行上拉或下拉,从而简化了电路减少了能耗。我们使用其中的延边触发方式对编码器a,b相输出的相位差进行判断,从而可以确定编码器转轴的旋转方向。本文所介绍的设计方案就是使用外部中断触发的方式检测角度位置信息。详细的检测方法我们将在下一章进行详细叙述。 根据我的物理模型进行分析所得出的结果,仅仅知道摆杆和摆臂的偏角是不够的。同时我们还需要测量他们的角速度。由此我们还需要使用芯片的定时器功能。大多数单片机内部都会有自己的定时器模块,在这部不详细介绍k60的定时器使用法方法。只对定时器中断在程序中的位置和地位进行分析。 由上一节我们知道,编码器的位置信息通过单片机响应外部中断获得。所以不得不考虑中断的优先级问题。k60在不进行手动配置优先级的情况下,根据飞思卡尔官方给出的开源代码分析,外部中断和定时器中断的优先顺序是按照中断向量表中的序号排列的,即外部中断优先级高于定时器中断。但是为了保证定时器的正常工作,我们需要对其优先级进行手动配置。 k60的优先级分为抢断优先级和非抢断优先级。通过对寄存器的值的调整我们可以为外部中断和定时器中断划分抢断优先级,并且将定时器中断的优先级拉高,这样就可以保证定时器的正常工作。3.3.6 使用labview软件实现上位机软件通讯 考虑到嵌入式系统处理能力的局限性,我们为了更好的分析旋转倒立摆的物理过程,需要了解系统的动态响应。这是控制系统分析过程中常见的手段。我们使用串口使单片机和pc进行通讯,将倒立摆在运动调整过程中的角度以及角速度等信息发送至pc,然后利用labview对该数据流进行解析,从而得到相应的测试数据和结果。图3.6 上位机界面4 关键技术4.1 编码器相位差所产生的问题 光电编码器之所以能够进行计数是因为光电编码器的码盘上有两圈相位差为九十度的通光孔。过传感器的内部电路,我们将旋转时所产生的效果转化为周期方波的输出19。同时由于两盘通光孔的存在我们在输出端就可以检测到两列相位正好相差九十度的方波。当输出a的相位超前时我们认为编码器正转,相反的。当输出b的相位超前时编码器反转。原理图如下:图4.1 编码器原理图 但是当编码器在正转与反转之间快速切换时就会产生错误的判断。因为此时a,b相产生的方波非常不规则,用简单的相位分析方法不能正确的判断编码器旋转的方向。为此我们可以使用鉴相器20来对编码器的输出进行处理。 同样的为了简化电路,调节方便,提高系统的灵活性。我们使用软件编程的方法实现硬件电路鉴相器的功能。这是我们就用到了外部中断的多种触发方式。编程思路如下:在检测到上升沿的时候进行第一次判断,因为有可能此时编码器正在进行改变方向的动作。直到单片机检测到下降沿的时候,转而进行二次判断。当两次判断均显示为同一结果,才能确定编码器到底是正传还是反转。如果判断为扰动,那么我们认为此时编码器的位置不改变,他只是在很小的范围内震动。4.2 增量式累积误差的消除方法 我们知道对于一个增量式累加的过程,累积误差时不可避免的。而增量式光电编码器正具有这样的一个特点。为此我们必须提出一个校准方案,保证在系统运动一段时间以后误差仍保持在一定范围内,不会对系统的稳定造成影响。 考虑到旋转倒立摆的初始状态为自然下垂,所以选择该处为参考位置,即控制过程启动之前的零点。当系统运行超过一段时间以后,系统停止控制让摆杆自然震荡至最低点,此时重新校准零点位置,然后再开始新一次的控制过程。通过这样的方法,我们就可以有效的消除累积误差的影响。4.3 采样频率的确定 根据奈奎斯特采样定律我们知道,为了避免发生采样信号的混叠或者失真,采样频率必须大于信号自身最大频率的2倍。但是我们根据该旋转倒立摆系统建立过程的具体分析得知,采样频率并非越快越好。尽管k60自身的时钟频率很快,但是我们必须考虑在数字系统中测量角速度的方法。 首先我们只能够得到摆杆和摆臂的角度信号。为了得到角度的微分即速度,我们使用差分近似微分的方式对角度进行处理。根据计算方法的相关知识我们知道,此时需要选择合适的采样区间。所以当采样频率过大,采样区间很小时,我们就不能根据差分的方法计算出速度。所以我们需要根据旋转倒立摆在摆动过程中角度的变动规律选择合适的采样频率。4.4 电机工作频率 电机的工作频率往往是交流电机需要考虑的问题,因为不同频率和相位的电流对电枢线圈和磁感应线圈有较大的影响。一般的直流电机不考虑这一过程,但是根据pwm直流调速原理,我们需要对控制脉冲的宽度进行调制。这是我们就考虑到频率的问题。显然不同的占空比决定了电机的平均电压,但是电机内线圈的电感和电抗不可忽略。大多数直流电机在设计和制作过程中一般仅考虑在额定工作状态,即直流电压输入。 如果pwm的频率高,那么电抗随之增高,那么将有一部分能量转变为电磁辐射能留在电机内,甚至导致电机不能启动。相反的如果频率太低,电压就会表现出振荡不平滑的特点,从而给旋转倒立摆的精度控制带来影响。所以我们必须根据不同电机的电抗,以及电枢绕组选择合适的pwm频率。4.5 串口发送占用时间过长的问题 由上文所提及的上位机软件的要求,单片机需要将实时数据传送进入pc。但是串口发送不可避免的会对控制过程产生干扰,尤其是发送的字符数较长的时候,系统很可能捕捉不到控制过程中的关键控制点,从而导致控制算法不强壮,容易出现控制系统混乱,或者不能控制的情况。 为了解决这一问题,我们选择使用在空闲时段进行发送的方式。首先将要发送的数据暂存在单片机中,当系统运行一段时间后随即放弃平衡控制,让单片机处于闲置状态。此时,将这段时间储存的数据发送至pc。该过程与编码器累积误差校准同时进行,这样既有效利用了系统的空闲时间又解决了误差和数据发送的矛盾。5 测试结果图5.1 毕业设计实物图 经过上位机软件与装置的联调测试,我们得到了旋转倒立摆装置的摆角随时间的变化实际测试图象。由图5.2 我们可以得,当系统受到外间干扰时系统经过自动控制可以实现在较短的时间内使摆杆恢复平衡状态。图5.2 labview分析图结论本文提出了对于旋转倒立摆的控制过程使用划分区间的lqr控制器的控制方法。可以有效地的控制旋转倒立摆的倒立过程。同时,对于编码器在振荡运动的情况下的测量提出了通过软件编程实现鉴相的方法。解决了增量式编码器在该测量领域的缺陷。经实验证明该方法可以有效的保证在旋转倒立摆的控制过程中的稳定运行。本文构建旋了转倒立摆机械系统的机械结构。该结构可以使倒立摆装置的能够长时间稳定运行,同时具有较高的可靠性。使用本文所设计制作的演示装置可以实现从起摆,倒立,失衡,回复的全过程。经过多次试验,我们发现装置本身还具有不能自由角度旋转,体积重量较大,起摆过程耗时较长等弱点。本文所述的旋转倒立摆演示装置,在制作前进行了严格的理论分析,并进行了大量的模拟仿真。在选择硬件方面特别是电机类型的选取和单片机的选用,都进行了充分的考虑。在毕业设计的制作过程中我学习到了很多,特别是研究问题的思路和方法,对我有很大的裨益。参考文献1陈奎.吴爱国 基于模糊策略的单级旋转倒立摆控制j实验室研究与探索 2006.2j.yi n. yubazaki stabilization fuzzy control of inverted pendulum systemsjartificial intelligence in engineering 2000.3贺占武 贺敏佳 非线性旋转倒立摆智能控制的实验研究j机械设计与制造 20094吴爱国 张小明 基于lagrange方程建模的单级旋转倒立摆控制j中国工程科学 20055胡即明 楼旭阳 基于线性二次型调机器的神经网络pid控制系统j应用科技 20056张姝 朱善安 基于lagrange方程建模的旋转倒立摆的分析控制j工业控制计算机 20037王春生 侯云海 采用模糊控制的垂直型旋转倒立摆系统j长春理工大学学报 20118王刚 基于bvp算法的旋转倒立摆自动起摆及稳摆控制d哈尔冰工程大学 20129quanser srv02-series rotary inverted pendulum student handoutz10quanser srv02-series rotary experiment # 7 inverted pendulum instructor manualz11hugh d.young roger a.freedman sear

温馨提示

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

评论

0/150

提交评论