直线型一阶倒立摆毕业设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
直线型一阶倒立摆毕业设计说明书
本科学生毕业设计
直线型一阶倒立摆设计与制作
(控制部分)
院系名称:机电工程学院
专业班级:机械电子09-2
学生姓名:王兴隆
指导教师:齐建家
职称:讲师
黑龙江工程学院二○一三年六月
The Graduation Design for Bachelor's Degree
Linear 1--Stage Inverted Pendulum Design and Manufacture
(Control Section)
Candidate:Wang Xinglong
Specialty:Mechanical and Electronic
Engineering
Class:09-2
Supervisor:Lecturer Qi Jianjia
Heilongjiang Institute of Technology
2013-06·Harbin
摘要
本文首先对倒立摆现阶段的种类、反应的主要控制问题、各个领域上的应用、国内外现状以及现阶段的主要控制方法做了简要的介绍,进而提出了本次设计的任务与要求。
其次是倒立摆系统设计制作。
在硬件设计制作中在能满足控制要求的前提下,主要按照结构简单,价格低廉,功耗低的标准,选择小车各个功能模块的芯片,设计各部分电路的。
本次设计采用ATMEGA16单片机作为小车的控制核心;采用能耗低、性能优越的直流减速电机;采用全球首例整合性6轴运动处理组件MPU6050测量角速度和角加速度。
在此基础上,结合卡尔曼滤波与PID控制算法进行软件程序设计。
最后,小车的软件硬件结合,进行系统的调试,数据记录,结果分析,实现了两轮小车系统的动态自平衡功能。
在车身35cm以下的情况下,整个系统的抗干扰能力很强。
关键词:一阶倒立摆;Atmega16;MPU6050;PID;卡尔曼滤波
ABSTRACT
In this article, firstly the brief introduction of the types of inverted pendulum , the main control problems of the reaction, application in varies fields, o verseas and domestic research status and different control ways of inverted pendulum were given. And then the task and the requirement of the design were promoted.
Secondly, it is linear 1--stage inverted pendulum design and manufacture. I t could satisfy the control requirements on the premise.It depended on if the structure is simple, the price is low, low power
consumption when we chose the chips and design each part of the circuits i n the hardware design and production. In this design we use the ATMEAGA16 MCU as the control core and low power consumption better property DC geared motor. We use the world's first integrated 6 axis motion processing components MPU6050 measuring angular velocity and angular acceleration. Based on the hardware, we combined with kalman filter and PID control algorithm and operate in the software design.
Finally, we combine the software and hardware, debug the system, and analyze
the results.It realized the balancing function of the two rounds car system.The anti-interference ability of the whole system is very strong under 35cm height.
Key words:1--Stage Inverted Pendulum; Atmega16; MPU6050;PID;Kalman
目录
摘要..................................................................................................................................... Abstract (I)
目录 (II)
第1章绪论 0
1.1 概述 0
1.2 倒立摆系统的种类 0
1.3 倒立摆系统的研究集中地 0
1.4 倒立摆系统反应的主要控制问题 0
1.5 倒立摆系统在各个领域的应用 (1)
1.6 倒立摆系统的研究现状 (1)
1.7 倒立摆系统的主要控制方法 (2)
1.8 设计内容 (2)
第2章总体方案设计 (3)
2.1 设计任务 (3)
2.2 基本原理(控制部分) (3)
2.3 设计要求 (3)
2.4 系统功能框图 (3)
2.5 本章小结 (4)
第3章倒立摆系统原理篇 (5)
3.1 车模平衡控制 (5)
3.2 车模角度和角速度测量 (6)
3.3 车模速度控制 (7)
3.4 本章小结 (11)
第4章倒立摆车控制系统设计 (12)
4.1 最小系统要求 (12)
4.2 芯片选型 (12)
4.2.1 芯片特点 (12)
4.2.2 引脚说明 (14)
4.3 I/O接口分配 (15)
4.3 驱动模块 (15)
4.5 MPU6050模块 (16)
4.6 电源模块 (17)
4.7 系统原理图 (17)
4.8 本章小结 (17)
第5章倒立摆控制程序与算法设计 (19)
5.1 系统软件设计说明 (19)
5.2 PID控制算法 (19)
5.2.1 PID控制算法简介 (19)
5.2.2 PID控制算法特点 (19)
5.2.3 电机控制算法程序 (20)
5.3 卡尔曼滤波 (21)
5.3.1 卡尔曼滤波的介绍 (21)
5.3.2 卡尔曼滤波在倒立摆系统上的应用 (21)
5.4 主程序设计软件流程 (22)
5.4 显示子程序设计 (24)
5.5 本章小结 (25)
第6章系统调试与结果分析 (26)
6.1 硬件测试 (26)
6.2 联机调试 (26)
6.2.1 参数设置 (26)
6.2.2角度参数整定 (27)
6.2.3速度参数整定 (27)
6.3 测试仪器与方法 (28)
6.5 本章小结 (28)
结论 (29)
参考文献 (30)
附录1 (33)
材料清单 (33)
附录 2 (343)
原理图 (34)
附录3 (35)
主程序 (35)
子程序 (43)
第1章绪论
1.1 概述
倒立摆是进行控制理论研究的典型平台。
是计算机控制、控制理论、机器人技术等多个领域、多种控制技术的结合,倒立摆被控系统本身又是一个强耦合、多变量、高阶次、绝对不稳定的非线性系统,是控制领域的研究的一个理想的控制对象。
倒立摆系统是进行控制理论教学及开展各种控制实验的理想平台,倒立摆系统可以表现许多抽象的控制概念,通过倒立摆系统还可以研究摩擦补偿、非线性观测器、混合系统和混沌系统、结构控制、目标定位控制等一般工业应用等方面都具有广阔的应用前景。
而且,近年来,由于新的控制方法不断出现,人们试图通过倒立摆系统这样一个理想的平台,检验新的控制方法是否有较强的处理多变量、非线性和绝对不稳定系统的能力,从而从中找出优秀的控制方法。
因此,倒立摆系统的研究具有重要的理论意义。
1.2 倒立摆系统的种类
倒立摆的种类有很多,按其形式可分为:环形倒立摆、悬挂式倒立摆、平面倒立摆和平行式倒立摆;按阶数又可分为:一阶、二阶、三阶、四阶、多阶等;按其运动轨道可分为:倾斜式与水平式二种;按控制电机又可分为:单电机和多电机。
1.3 倒立摆系统的研究集中地
目前有关倒立摆的研究大部分集中在亚洲,如中国的北京航空航天大学、北京师范大学,日本的东京电机大学、东京大学、东京工业大学,韩国的忠南大学、釜山大学,与此同时,美国的东佛罗伦萨大学、俄罗斯的圣彼得堡大学、俄罗斯科学院、意大利的佛罗伦萨大学、波兰的波兹南技术大学也都对这个领域有持续的研究。
近些年,虽然不断问世的各种新型的倒立摆,但是可以进行自主研发并生产倒立摆装置的厂家并不多。
目前,国内的大学中使用的基本上都是加拿大Quanser公司和香港固高公司生产的系统;还有一些生产商例如:保定航空技术实业有限公司、韩国的奥格斯科技发展有限公司,还有就是近些年郑州微纳科技有限公司和微纳科技直线电机倒立摆的研制取得了成功。
1.4 倒立摆系统反应的主要控制问题
研究倒立摆系统可以有效的反映出控制中的许多经典的问题:如跟踪问题、镇定问题、随动问题、鲁棒性问题、以及非线性问题等等。
例如检验新的控制方法的处理
不稳定行的问题和非线性的能力就可以用倒立摆系统来检验。
1.5 倒立摆系统在各个领域的应用
倒立摆系统其控制方法不论在控制领域还是在机器人、航天、军工等等工业领域中都有着广泛的用途,例如:
1)多级火箭飞行姿态的控制也可以用多级倒立摆系统进行研究。
2)为了确保正确的飞行姿态航天飞机等飞行器的在飞行过程中要不断
进行实时控制。
3)通信卫星要保持其稳定的姿态必须使无限天线时刻指向控制中心,8
并且为使它被垂直照射太阳能电池板必须时刻朝向太阳。
4)为了提高侦察卫星中摄像机的摄像质量必须能自动地保持伺服云台
的稳定消除震动。
5)倒立摆系统是机器人技术、控制理论、计算机控制等多个领域、多种技术
的有机结合。
1.6 倒立摆系统的研究现状
早在十九世纪60年代,倒立摆系统在国外就已经有学者对其进行了系统的研究,并且对于整个系统的机械稳定性问题和可控性问题进行了系统的分析,在分析讨论了稳定控制在多级倒立摆的应用的同时提出了bang.bang的控制理论。
在十九世纪60年代,作为一个严重非线性、不稳定的典型,倒立摆的概念在控制理论界提了出来,由于倒立摆系统可以用来检验控制方法对非线性、快速性和不稳定系统的控制能力,所以受到了来自世界各地的科学家的青睐,也正是因为这个原因使得不同倒立摆系统的各种不同的控制方法,成为了现如今世界很具有挑战性的课题中的一个。
自从十九世纪70年代初期开始,对于不同种类的倒立摆系统的控制问题在状态反馈理论的应用成为那时的一个热门研究话题,而且在很多领域都取得了令人满意的成效。
但是因为过分依靠线性化的数学模型的状态反馈控制,所以对于一般的不清晰的非线性控制对象工业过程更突出的是数学的模型的变化的也表现出差强人意。
但是发现了问题肯定就会有人解决问题,这种状况从十九世纪八十年代后期发生了翻天覆地的变化。
伴着模糊的控制理论概念的逐步发展,和倒立摆系统在模糊控制理论的应用,对研究非线性的问题的处理等各个方面有了极大的提高。
为了考察和检测模糊理论对高速、绝对不稳定的整体系统的各个方面适应能力,倒立摆系统在这个时期在模糊理论的控制和应用取得了质的飞跃。
倒立摆的最新研究成果在模糊控制理论应用,主要是来自北京师范大学数学系教
授李洪兴带领的科研小组,他巧妙的利用自适应模糊控制理论变论域理论,御用神经网络控制算法实现了对四级倒立摆的稳定控制,从十九世纪九十年代开始,倒立摆系统有了较快的发展。
在1963年的时候,神经网络控制算法应用到倒立摆小车的控制Widrow和Smith这两位科学家就开始了研究。
1.7 倒立摆系统的主要控制方法
1)自适应控制,通过设计自适应控制器对倒立摆进行控制:
2)模糊控制,主要是确定模糊规则,克服系统的非线性和不确定性实现对倒
立摆的稳定控制;
3)PID控制,通过对倒立摆物理模型的分析,建立倒立摆系统的动力学
模型,设计出PID控制器实现控制;
4)几种控制算法相结合的控制方式,充分利用各控制算法的优越性,来
实现~种组合式的控制方法,如遗传算法与神经网络结合的方法,神经网络与模糊理论结合的方法,模糊控制与PLD结合的方法等
5)神经网络控制,利用神经网络能够充分逼近复杂的非线性关系,学习
与适应严重不确定系统的动态特性,与其他控制方法结合实现对倒立摆的稳定控制:
6)状态反馈控制,通过对倒立摆物理模型的分析,建立倒立摆系统的动
力学模型,然后利用状态空间理论推导出状态方程和输出方程,利用状态反馈的各种;
1.8 设计内容
1.选择和确定总体设计方案;
2.装置主控电路设计;
3.A VR单片机选型和I/O分配;
4.A VR单片机控制电路设计;
5.A VR单片机控制程序编写与调试。
第2章总体方案设计
2.1 设计任务
整个系统要达到平衡,从控制角度来看,车模做为被控制的对象,两个电极的转动速是它的控制输入量,车模的运动控制任务可以简化为以下两个最基本控制任务:车模的平衡控制:车模的直立平衡状态是通过控制两个电极的正反向运动实现的;
车模的速度控制:车模的速度控制是通过调节车模的倾角来实现的,实际上最后还是演变成通过控制电极的转速来实现车轮速度的控制。
分解后的任务各自独立进行控制,由于最终都是对同一个对象(车模的电机)进行控制,所以它们之间存在着耦合。
为了方便分析其中之一时假设其他的控制对象都已经达到稳定,比如在速度控制时,需要车模保持直立控制;在车模平衡控制时,也需要速度已经到达平稳。
这是保持车模平衡的关键。
由于车模同时受到两种控制的影响,从车模控制的角度来看,另一种控制就成为它的干扰,因此对车模速度的控制应该尽量保持平滑,以减少对于平衡控制的干扰。
2.2 基本原理(控制部分)
开机启动后,系统车模由于是有个两个轮子着地,车体会在轮子滚动的方向上发生倾斜,通过对倾角的检测,反馈给中央CPU,CPU通过控制算法发出信号控制电机使车轮转动,抵消一个维度上倾斜的趋势就可以保持车体平衡了。
好比人让木棒在手尖上保持直立,这需要两个条件:一个是拖着木棒的手掌(车身)可以移动;另一个是眼睛(传感器)可以观察到木棒的倾斜角度和倾斜趋势(角速度)。
通过手掌移动抵消木棒的倾斜角度和趋势,从而保持木棒的直立。
实际上就是控制中的负反馈控制机制。
2.3 设计要求
(1)系统上电以后,小车可以自我调节保持平衡。
(2)系统在接受到外界干扰的条件下,依然可以自我调节保持平衡。
2.4 系统功能框图
根据设计的要求,小车要完成整个过程,修要具备以下几大模块:小车车体部分,控制部分,驱动部分,电源部分,等等,只有这几部分有机的组合在一起,协调的工
作,最终功能才能实现。
图2.1为整车的系统框图:
图2.1 系统框图
系统上电以后,程序正常工作,角度传感器读取当前位置信息传输给中央处理器ATMEGA16
,中央处理器经过运算之后,将控制信号经过电机驱动模块传输到电机,执
行操作命令,光电编码器测量电机转速,经过ATMEGA16的通讯系统反馈给中央处理器。
如此反复循环直到系统渐渐趋向稳定。
2.5
本章小结
本章主要是根据小车的设计任务,分析小车整个过程的原理,提出设计的基本要求:实现小车的自我调节平衡问题,并且在受到外界干扰的情况下,依然能自我调节平衡。
根据各功能列出整个系统方框图。
第3章 倒立摆系统原理篇
3.1 车模平衡控制
车轮如何才能够保持车体的平衡稳定?为了回答这个问题,可以通过建立车模的运动学和动力学数学模型,设计反馈控制保证车模的平衡。
根据基本控制理论讨论车模通过闭环控制保持稳定的条件。
但是如何让其稳定在平衡位置呢?要打到这一个目的只有两个办法,一个是改变重力的方向,另一种就是增加额外的受力。
显然能做到的只要第二种方法。
假设倒立摆车模为高度为L ,质量为m 的简单倒立摆系统的模型,把它安置在可以左右移动的车轮上。
假设在有外力干扰的情况下,设系统产生角加速度x (t ),沿着重心垂直向下方向进行系统的受力分析,可以得到如下的系统倾角与系统加速度a (t )以及外力干扰加速度x (t )之间的运动方程。
如图3.1所示。
图3.1 车模运动图
车模运动方程:)()](cos[)()](sin[)(22t Lx t t a t g dt
t d L +-=θθθ (4-1) 在角度θ很小的,运动方程简化为:)()()()(22t Lx t a t g dt
t d L +-=θθ (4-2) 在系统静止时候:)()()(,0)(2
2t Lx t g dt t d L t a +==θθ (4-3) 此时,系统输入输出的传递函数为:
L g
S s X s s H -==21
)()
()(θ (4-4)
在这个时候系统是具有两个不同的极点的L
g s p ±=.在这其中的一个极点是位于s 平面的右面的那半平面,由于这个原因导致车模不好控制。
系统在引入微分、比例和反馈系统之后如下图3.2所示:
图3.2加入比例微分后的系统框图
系统的传函为:L g k s L k s s X s s H -++=
=1
221)()
()(θ (4-5)
此时系统的2个极点:L
g k L k k s p 2)(41222--±-= (4-6) 系统稳定的条件是要求这2个极点都要位于s 平面的左面的半平面。
为了达到这个要求,需要使得.0,21>>k g k 由此可以得出结论,当.0,21>>k g k 直立车模可以稳定。
在角度反馈控制中,与角度成比例的控制量称为比例控制,与角度成比例的控制量称为微分控制,因此上面系数21,k k 分别称为比例和微分控制参数。
其中微分参数相当于阻尼力,可以有效抑制车模震荡。
通过微分抑制控制震荡的思想在后面的速度和方向控制中也同样适用。
总结控制车模直立稳定的条件如下:
(1)能够精确测量车模倾角θ的大小和角速度θ`的大小;
(2)可以控制车轮的加速度。
3.2 车模角度和角速度测量
在上一节中介绍了控制直立控制算法,通过测量车模的倾角和倾角加速度控制车模车轮的加速度来消除车模的倾角。
因此车模倾角以及倾角速度的测量成为控制车模
直立的关键。
测量车模倾角和倾角加速度可以通过安装陀螺仪来实现。
本次设计采用了MPU6050全球首例整合性6轴运动处理组件,其他的多组件方案比来来,它免除了组合陀螺仪与加速器时之轴间差的问题,大大的减少了包装空间。
具体功能在下一章介绍。
陀螺仪可以测量物体的旋转角速度,在车模上安装陀螺仪可以测量车模倾斜角速度,将角速度进行积分便可以得到车模的倾角。
如图3.3所示
图3.3角速度积分得到角度
由于陀螺仪输出的是车模的加速度,不会受到车体的运动的影响,因此该信号中噪声很小,车模的角度又是通过对角速度的积分而得,这可进一步平滑信号,从而使得角度信号更加稳定。
正是因此车模控制所需的角度和角速度可以使用陀螺仪所得到的信号。
最终可以得到如下车模角度控制方案图。
如图3.4所示。
图3.4车模角度控制方案图
3.3 车模速度控制
对于直立车模速度的控制相对于普通车模的速度控制规则比较复杂。
由于在速度控制控制过程中需要始终保持车模的平衡,不能直接通过改变电机转速来实现。
由于
安装误差,传感器实际测量的角度与车模角度有偏差,因此车模实际不是保持与地面垂直,而是存在一个倾角,在重力的作用下,车模就会朝倾斜的方向加速前进。
控制速度只要控制车模的倾角就可以实现了。
具体需要解决三个问题:
(1)如何测量车模速度?
(2)如何通过车模直立控制车模倾角的改变?
(3)如何根据速度误差控制车模倾角?
第一个问题可以通过安装在电机输出轴上的光码盘来测量得到车模的车轮速度。
如图3.5所示。
利用控制单片机的计数器测量在固定时间间隔内速度的脉冲信号的个数就可以反映电机的转速。
图3.5电机速度检测
第二个问题可以通过角度控制给定值来解决。
给定车模直立的控制的设定值,在角度控制调节下,车模将会维持在一个角度。
通过前面车模直立的算法可以知道,车模倾角最终是跟踪重力加速度Z轴的角度。
因此车模的给定倾角值与重力加速度Z轴角度相减,便可以最终决定车模的倾角。
第三个问题车模角度在直立控制下简化成为一个一阶过渡阶段。
车模倾角是车轮运动产生的,因此车轮速度是倾角变量求导再乘以车模长度。
忽略车模倾角引起车轮加速度,此时由于车模倾角较小,引起的速度变化很小。
系统只进行速度比例负反馈。
车模倾角控制分析图简化模型如图3.6
图3.6车模倾角控制分析
分析简化系统的传递函数,它具有一个一阶极点k
T --21。
如果要保证系统稳定,需要满足2T >k 。
这就要求小车的倾角的调整时间常数2T 要大,调整速度缓慢和平滑,同时速度的感喟比例k 要小。
在程序实现的方法可以通过改变控制周期,减小控制参数,信号进行平滑滤波等方式实现。
在实现上述两点之后,再分析车模运动速度的稳定性。
为了简化分析,首先忽略了由于倾角控制引起的车模速度变化。
车模的速度最终由倾角所产生的加速度决定,因此将倾角进行积分便可以得到车模的运动速度。
如图3.7所示
前面分析可知为了保证系统稳定,往往取的车模倾角控制时间常数2T 很大,这样便会引起系统产生两个共轭极点,而且极点的实部变得很小,使得系统的控制会产生震荡现象。
通过前面车模角度的控制中已经有了经验,那就是在控制反馈张增加速度微分控制。
增加后系统的传递函数的极点实部变大,加快了系统的收敛速度。
图3.7车模运动速度控制简化模型
由于车轮的反馈信号中往往存在着噪声,对速度 进行微分运算会进一步加大噪声的影响。
为此需要对上面的控制方法进行改进。
原系统中倾角调整过程时间常数往往很大因此可以将该系统近似为一个积分环节。
将原来的微分环节和这个积分环节合并,形成一个比例控制环节。
这样可以保持系统控制函数不变,同时避免了微分计算。
但是在反馈控制中,只是使用反馈信号的比例和微分,没有利用误差积分,所以最终这个速度控制是有残差的控制。
但是引入误差积分控制环节,会增加系统的复杂性,为此就不增加积分控制,而是通过与角度控制相结合在进行改进。
最终如图3.8所示:
图3.8最终的速度和角度控制方案
在上图中,角度控制需要两个参数,分别是比例控制参数ANGLE P 和微分控制参数ANGLE D 。
速度控制同样也有两个参数,分别是比例控制参数SPEED P 和微分控制参数SPEED D 。
在这两个控制中都使用了微分控制,目的是增加车模的角度和速度的稳定性,防止控制超调。
此时车模在控制启动的时候,需要保持车模的垂直状态。
此时陀螺仪的积分角度也初始化为0。
如图3.8所示速度控制误差经过积分和比例直接叠加在电机控制量上。
速度在最开始的方案张是通过调整车模倾角来说实现的,通过上面的简化和改进,最后已经演变成为对于电机的直接控制了。
在这方案中,速度控制量的极性是负,和通常速度反馈控制的极性恰好相反,这是由于该控制方案是从调节车模角度反馈进行设
计和改进而得到的。
还有就是两个控制参数分别对应着误差信号的积分和比例值,所以在有的场合也可以称这两个参数为积分和比例控制参数。
3.4 本章小结
本章是对整个系统原理进行详细的介绍,首先介绍通过建立车模的运动学和数学模型,设计反馈控制实现车模的平衡控制。
其次是车模的角度和角加速度的测量问题。
最终对于本次设计最大的难点车模的速度控制进行了详细的分析,通过简化和改进角度和速度控制方案最终演变成为对于电机的直接控制。
第4章倒立摆车控制系统设计
4.1 最小系统要求
设计车模控制系统电路,需要分析系统的输入、输出信号,然后选择合适的控制核心芯片,逐步设计各个电路子模块,最后形成完整的控制电路。
系统的输入输出包括:
1.AD转换接口(至少4路)
(1)陀螺仪:3路一路用于检测车模倾斜角速度,一路用于检车车模转动角度,
一路用于测量Z轴加速度。
(2)辅助调试:(备用)1到3路,用于车模调试、设置作用。
2.PWM接口(2路)
控制左右两个电机运行,由于采用双极性PWM驱动,可以采用两路。
3.定时器接口(2路)
测量两个电机转速,需要两个定时器脉冲输入端口。
4.通讯接口
一路用于程序下载和调试接口。
控制电路划分为如下子模块:
1.单片机最小系统:包括DSC处理器,程序下载调试接口等;
2.陀螺仪:包括三个姿态传感器信号放大滤波电路;
3.速度检测:检测电机光电码盘脉冲频率,实际上只包括了两个光电码盘的传
感
器。
4.电机驱动:驱动两个电极运行功率
5.电路电源:电源电压转转换,稳压,滤波电路
4.2 芯片选型
4.2.1 芯片特点
基于以上最小系统的要求,结合反应速度快,低功耗等原因选择了ATMEGA16主控制芯片。
ATMEGA16芯片相对于其他芯片具有以下特性:
1)131条指令
2)全静态工作。