倒立摆自适应模糊控制系统研究映辉论文.docx
《倒立摆自适应模糊控制系统研究映辉论文.docx》由会员分享,可在线阅读,更多相关《倒立摆自适应模糊控制系统研究映辉论文.docx(38页珍藏版)》请在冰豆网上搜索。
倒立摆自适应模糊控制系统研究映辉论文
贵州航空工业职工大学
毕业论文
标题:
倒立摆自适应模糊控制系统研究
专业:
班级:
学生姓名:
指导教师:
二〇一年月日
倒立摆自适应模糊控制系统研究
摘要:
本课题研究的是以STM32芯片为控制核心,通过其对减速电机JGA25-371的控制来实现倒立摆的功能。
该系统主要由STM32F103VET6嵌入式控制模块、L298电机驱动模块、光耦隔离电路6N137、减速电机JGA25-371、光电编码器OMRONE6A2-CW3C和稳压电路等部分组成。
STM32芯片通过对编码器输出的分析,调节电机的转动,从而使摆杆达到规定的角度。
直流减速电机上的编码器可以测量旋转臂转过的角度,摆杆和旋转臂之间安装的编码器可以测量摆杆转过的角度。
利用测量到的两个角度和角速度,控制核心计算得到驱动直流电机所需的占空比和转动方向,通过旋转臂带动摆杆摆动使摆杆完成要求的动作。
通过对倒立摆的控制,可以检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。
同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。
关键词:
嵌入式减速电机倒立摆平衡控制
Abstract
Thistopicsearchofiswithembeddedchipforcontrolnucleus,throughitcontrolthegearmotorJGA25-371toworkoutthefunctionoftheinvertedpendulum.Thesystemmainlycontainssixcontrolmoldmass,suchastheSTM32F103VET6embeddedcontrolmodule,L298Ndrivermodule,theopto-isolatorcircuit6N137,thegearmotorJGA25-371,theoptical-electricityencoder(OMRON)EA62-CW3Candregulationcircuit.STM32controlleradjustthemotortoworkoutthereservedangleofpendulumthroughanalyzingofencoder’soutput.
Theoptical-electricityencoderofthegearmotorcouldmeasureanglerotatedoftherotatingarm,andtheencoderbetweenpendulumandrotatingarmcouldmeasuretheanglerotatedofthependulum.Throughangularvelocityandanglemeasured,embeddedchipcalculatetothedutyratioandthedirectionofrotationwhichneededbygearmotor,andfinishtherequiredroutinebydrivingpendulum.
Wecantestwhetherthenewcontrolmethodisabletoprocessingtheproblemwhichisnonlinearityandinstability.Thecontrolmethodofpendulumhadthewiderangeofapplicationinmilitaryindustry,spaceflight,roboticsandgeneralindustry,suchastheequilibrium-controlinwalkingrobot,perpendicularity-controlinthelaunchofrocketsandposture-controlintheorbitofsatellite,etc.
Keywords:
InvertedPendulumEmbeddedChipGearMotorEquilibrium-
control
目录
绪论1
1倒立摆设计概述1
1.1倒立摆的主要结构及分类1
1.1.1环形倒立摆的主要结构1
1.1.2倒立摆的主要种类2
1.2控制方法的选择2
2系统结构的方案与设计3
2.1主控芯片的选择与定型3
2.1.1STM32F103的结构3
2.1.2STM32F103的特点5
2.2电机驱动模块的选择与定型5
2.2.1L298-M电机驱动模块的特点6
2.2.2直流电机的调速方法6
2.3电机的选择与定型6
2.4角度传感器的选择与定型7
2.4.1欧姆龙编码器的特点8
2.4.2欧姆龙E6A2-CW3C型增量式编码器的优势8
3系统理论分析与计算9
3.1环形倒立摆物理模型建立9
3.2摆杆位置检测10
3.3旋转臂位置检测10
3.4双环PID控制算法11
4系统硬件电路设计11
4.1总体结构框图11
4.2L298电机驱动模块电路12
4.3TLP521光耦隔离电路12
4.4电源电路设计13
4.5系统电路接线13
4.6倒立摆硬件结构的思考14
5系统软件设计15
5.1软件设计的思路15
5.2程序各模块说明15
5.2.1编码器程序模块15
5.2.2PID算法程序模块17
6系统调试19
6.1各模块调试19
6.2系统整体调试19
结论21
致谢22
参考文献23
绪论
前段时间风靡一时的赛格威自平衡小车,它不仅以时尚的外观和可靠的性能闯入人们视野中,人们还一直好奇的是:
它是如何通过两个并排的两个轮子,是如何让小车和人保持平衡的,并且在灵活的行进过程中保持这么稳定的状态?
到底是小车里安装了什么装置可以让它感应到自己的运动状态,从而调节姿态,让自己始终处于平衡。
随着专业领域对其研究的慢慢公开化,我们也渐渐了解到自平衡小车“不倒”的秘密。
其实自平衡小车的物理机制可简化为一个倒置的倒立摆,也就是人们常称之为倒立摆或一级倒立摆系统。
在控制原理发展的历史中,控制学领域一般通过按一种控制方法建立的控制器去控制一个理想模型,从而验证一种新控制理论的在现实环境中的可靠性和正确性。
倒立摆就是一个满足这种论证方法的理想模型,倒立摆本身是一个自然不稳定体,在控制过程中能显著地突出了控制中的很多关键特性,如非线性问题、系统的鲁棒性、随动性、镇定性及跟踪性问题等。
作为一种控制理论的验证模型,倒立摆有着想象明显,结构直观,形状和指标种类众多,造价低等特点;作为一个经典的被控对象,倒立摆又是一个复杂的系统,它具有阶次高,不稳定,非线性等特点,为了使倒立摆趋于稳定,需要一个完备和成功的控制方法。
如果要判断一个倒立摆系统的稳定性是好是坏,就必须从它的摆角范围、摆杆位移和达到稳定所需最短时间来判断。
理论是工业应用基石,为了对新型控制理论进行论证,倒立摆的发展是非常有实际应用意义的。
航天飞机的飞行姿态控制就类似于一个不断调节姿态的倒立摆,尽管航天飞机已经问世长达几十年,但航天飞行器的控制技术还是不尽完善。
由此而知,对倒立摆的理论研究有着重大并应用广泛的现实意义,同时它更是一个对控制理论进行论证的经久不衰的模型[1]。
本次设计的目的是设计一个基于嵌入式控制器的倒立摆自适应模糊控制系统。
该系统采用STM32F103为主控芯片,控制直流减速电机使倒立摆进行简易旋转,再根据减速直流电机所共轴的编码器和安装在摆杆上的编码器反馈回主控芯片的角度和角速度,通过直流电机驱动模块对转动状态进行调整,从而使倒立摆完成预先要求的动作。
1倒立摆设计概述
1.1倒立摆的主要结构及分类
倒立摆种类很多,研究起来,控制方法也不尽相同。
本课题选取的是环形倒立摆这种模型,即旋转杆和摆杆处于两个相互垂直的平面上,通过旋转杆做圆周运动,带动摆杆起摆。
下面将介绍倒立摆的结构及类型。
1.1.1环形倒立摆的主要结构
该毕业设计所制作的一级旋转倒立摆主要由水平放置的旋转杆、与旋转杆垂直的摆杆、与旋转杆相连的电机、电机与旋转杆之间及旋转杆和摆杆之间安装的角度传感器、和一系列的控制及驱动电路所组成。
其结构简化图如下图1-1所示
图1-1简化结构图
1.1.2倒立摆的主要种类
在现代控制理论的研究中,按照不同特点,倒立摆可以分为以下几种:
(1)依据摆杆数目不同,可以把倒立摆系统分为一级、二级和三级倒立摆等。
(2)依据摆杆间连接形式的不同,可以把倒立摆系统分为并联式倒立摆和串联式倒立摆。
(3)依据运动轨道的不同,可以把倒立摆系统分为倾斜轨道倒立摆和水平轨道的倒立摆。
(4)依据控制电机不同,可以把倒立摆系统分为多电机倒立摆和单电机倒立摆。
(5)依据摆杆与旋转杆连接方式的不同,可以把倒立摆系统分为刚性倒立摆和柔性倒立摆;
(6)依据运动方式不同,可以把倒立摆系统分为平面倒立摆、直线倒立摆和旋转倒立摆[2]。
1.2控制方法的选择
在控制理论的调节作用下,倒立摆系统调节使得摆杆稳定在某一特定位置例如竖直位置,这个过程称作为稳定控制。
为了实现对倒立摆系统的稳定控制,在控制领域,各种控制方法层出不穷,其中最常见和有效的有如下几种控制方法:
(1)PID算法控制
PID算法控制是一种历史悠久、经典的控制方法,它具有原理简明、结构直观、易于理解和工业实现等优点。
PID算法的物理学基础是牛顿定律。
第一步。
对倒立摆进行受力分析,并推导出运动方程;第二步,在平衡点处进行线性化,从而推导出传递函数。
最后,设计其闭环控制器,使得系统的特征方程存在全部左半平面的根[3]。
(2)状态反馈控制
反馈控制器的设计,是基于在满足系统的动态和稳态特性的情况下,将倒立摆系统这个多变量闭环控制系统的极点配置为期望值,所形成的控制器。
(3)自适应控制
在生态学领域,学界一般将生物所具有的可以调节自己的形态和习性以适应环境变化的这种特性称为自适应。
而自适应控制器的主要特点就是,这种控制器能够通过修改系统的参数来适应对象和扰动的不断变化动态特性。
由于所依据系统和扰动的先验性很匮乏,则必须通过倒立摆系统在自身运行的过程中,来取样参数来完善控制器的设计,这是自适应控制器和常规控制器的最大的不同[4]。
(4)模糊控制
众所周知,人的思维方式与程序式执行的控制方法,最大的区别就是,有很多的判断往往是根结经验以及推理做出的,它往往不是有一个确定的条件触发,而是通过模糊计算来做出判断。
于是,这种思想便催生了一种崭新的控制方法—模糊控制。
与一般控制方法不同的是,模糊控制器的建立无需基于被控对象的数学模型,而是建立在操作人员的经验及操作数据,然后运用模糊集理论进行模糊处理计算,得到判断。
模糊控制系统一般由被控对象、模糊控制器、检测仪器、过程输入输出通道和执行机构几部分组成。
它适用于非线性时变大延迟系统的控制[5]。
(5)神经网络控制
随着计算机神经网络学的发展,控制学领域的专家将其思想融入到控制理论中,神经网络控制便诞生了。
这种控制方法融合了几何学、神经学、脑科学、人工智能、计算机科学和自动控制等学科和理论,它具有分布式计算、容错性高和具有自适应性等特点[6]。
由于对众多先进控制方法,我在短时间内不可能有较深掌握和运用,所以我选取了较为容易理解和运用的PID控制方法,并尝试着把模糊控制的思想融入到设计中。
2系统结构的方案与设计
2.1主控芯片的选择与定型
相比较为普遍的主控芯片51单片机,在这次设计中我打算用ST公司生产的采取以ARMCortex-M3为内核的STM32F103VET6为主控芯片。
STM32系列芯片时钟频率高达72MHz具有512K字节SRAM,具有极强的处理计算能力。
较为适合需要快速反应的倒立摆系统[7]。
2.1.1STM32F103的结构
STM32F103增强型系列使用高性能的ARMCortex-M332位的RISC内核,工作频率为72MHZ,内置高速存储器,丰富的增强I/O端口和联接到两条APB总线的外设。
所有型号的器件都包含3个12位的ADC、4个通用16位定时器和2个PWM定时器,还包含标准和先进的通信接口:
多达2个I2C、3个SPI、2个I2S、1个SDIO、5个USART、一个USB和一个CAN[8]。
其内部结构如图2-1所示:
图2-1STM32F103内部结构框图
完整的STM32F103系列芯片包括从64脚至144脚的五种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同。
STM32F103VET6最小系统版外观图如图2-2所示:
图2-2STM32F103VET6最小系统板
2.1.2STM32F103的特点
(1)多达51个快速I/O端口,所有I/O口均可以映像到16个外部中断,几乎所有端口都允许5V信号输入。
每个端口都可以由软件配置成输出(推挽或开漏)、输入(带或不带上拉或下拉)或其它的外设功能口。
(2)2个12位模数转换器,多达16个外部输入通道,转换速率可达lMHz,转换范围为0~3.6V;具有双采样和保持功能;内部嵌入有温度传感器,可方便的测量处理器温度值。
(3)灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输,无须CPU任何干预。
通过DMA可以使数据快速地移动,这就节省CPU的资源来进行其他操作。
DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。
它支持的外设包括:
定时器、ADC、SPI、L2C和USART等。
(4)调试模式:
支持标准的20脚JTAG仿真调试以及针对Cortex-M3内核的串行单线调试(SWD)功能。
通常默认的调试接口是mG接口。
(5)内部包含多达7个定时器。
(6)含有丰富的通信接口:
三个USART异步串行通信接口、两个12C接口、两个SPI接口、一个CAN接口和一个USB接口,为实现数据通信提供了保证[9]。
2.2电机驱动模块的选择与定型
因为所选定的控制芯片为STM32F103VET6,其I/O口的额定输出电压为3.3V,而常用的电机驱动芯片L298的工作电压为5V,为了防止低压的控制电路与驱动高压电路之间,因为有电的直接连接而引起的干扰,所以必须加入光耦隔离电路。
因此我选择了LC公司的L298驱动模块和由TLP521-4组成的光耦隔离电路一起组合使用。
LC公司的L298电机驱动模块,采用ST公司的L298N芯片,可以直接驱动两路直流电机,方便的控制直流电机速度和方向,也可以控制2相步进电机。
驱动模块外观图如下图2-3所示:
图2-3L298N电机驱动模块外观图
2.2.1L298-M电机驱动模块的特点
(1)采用全新原装L298N芯片设计,双H桥能够驱动2路直流或者1路步进电机,峰值驱动电流达4A。
(2)板载78M05电源稳压芯片,可以给L298N提供稳定的工作电压,当VS电压小于7V时,可以不启用78M05,W1跳线短接即可,这时VS=VSS,当VS电压超过7V时,请断开W1,这时芯片的VSS由78M05降压输出5V电压供给[10]。
(3)采用特殊的电路设计,真正兼容5-24V系统,接线简单可靠。
(4)全部输入输出端口均采用旋接形式,5.08mm标准工业接口,模块上无插针,安全可靠,真正为控制电机而设计,特别适合工业应用。
(5)整个模块均采用机器自动焊接,采用加厚PCB设计,品质高。
2.2.2直流电机的调速方法
L298电机驱动模块的使用过程中,有以下特点:
冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。
冲量指窄脉冲的面积。
效果基本相同,是指环节的输出响应波形基本相同。
低频段非常接近仅在高频段略有差异。
在这里,我们使用PWM调速的方法来控制直流电机。
我们可以在ENA、ENB分别通入所需要的PWM波就可以完成电机的调速。
(特别注意的是PWM占空比越高等效的电压越高)
比如,如需要调节电机1的转速可以这样设置:
在IN1和IN2通入通入PWM波控制电机1的转速及转向,在ENA通入高低电平控制电机的转停。
2.3电机的选择与定型
制作倒立摆的电机的选择一般分为直流电机和步进电机,其中直流电机,它具有启动推力大,传动刚度高,动态响应快,形程长度不受限制等优点。
而步进电机有如下特点:
采用步进电机,步进电机是数字控制电动机,它将电脉冲信号转变为角位移,即给一个脉冲,步进电机就转一个角度,在非超载的情况下,电机的转速,停止的位置只取决于脉冲信号的频率和脉冲数[11]。
然而由测试的结果得知,直流电机转速快,难以进行精确控制,而步进电机可以解决这个问题,经过反复实验,发现步进电机抖动大,难以平稳运行。
为了解决两种电机的不足,我采取了一种折中的方案:
使用直流减速电机。
直流减速电机拥有定位精度高的优点,运行平稳。
通过选择合适减速比的电机,使得电机既有足够的扭力,又能精确定位,而且运行平稳不会大幅抖动。
经过一段时间地选择和比较,我选定了ASLONG生产的型号为JGA25-371的直流减速电机,如下图2-4所示:
图2-4ASLONGJGA25-371型直流减速电机
其优势有如下几点:
(1)该型电机的减速比适中,适合倒立摆这种需要电机快速反应同时需要有较大扭力的系统,直流减速电机JGA25-371的详细参数如下表2-1:
表2-1直流电机JGA25-371详细参数
电压
空载
负载转速
减速器
重量
范围
额定
转速
电流
转速
电流
扭矩
功率
减速比
尺寸
Range
V
Rpm
Ma
Rpm
Ma
Kg.cm
W
1:
0
Mm
约g
6-24V
12
126
46
100
250
0.85
1.25
34
21
85
(2)因为直流电机是和旋转杆直接连接连接在一起,而且系统需要测量旋转杆的转动的角度和角速度,因此必须在直流电机下方安装一个与其共轴的光电编码器。
这样的安装方法很难保证电机工作的稳定和编码器测量的精确性,必须要解决。
而ASLONG的JGA25-371的设计很好地满足了这点要求,电机在后方自带了一个共轴的光电码盘,方便实时精确地采集电机及旋转杆转动的角度和角速度。
电机自带的是334线码盘,它保证了测速精度,也就是电机转一圈输出334个脉冲,芯片上已集成了脉冲整形触发电路,输出的是矩形波,用示波器检测相当稳定,直接可以连接STM32F103VET6的I/O口。
2.4角度传感器的选择与定型
为了实时测量摆杆转过的角度和角速度,我需要在旋转杆上安装一个角度传感器,将角度传感器与摆杆相连,直接捕捉摆杆的转动情况。
现有的角度传感器中,光电编码器是一种技术成熟,性价比很高的精确的角度传感器。
经过在各型编码器中的比较,我最终确定使用欧姆龙E6A2-CW3C型光电编码器,如下图2-5所示:
图2-5欧姆龙(OMRON)E6A2-CW3C型光电编码器
2.4.1欧姆龙编码器的特点
光电编码器在结构上主要分为两种:
码盘和码尺;而根据其输出方式,又可分为:
接触式和非接触式。
接触式即使用电刷输出的方式,通过电刷接触导电区和绝然区,来输出分别代表0和1的高低电平。
而非接触式编码器利用的是光敏元件即光栅编码器,当光栅码盘随着轴转动时,光敏元件透过光栅感应到光源是间断的,从而输出代表1和0的高低电平组成的脉冲。
将1和0的二进制编码来将输出来的脉冲信号转换为机器可读取的电信号用以通讯、传输和储存[12]。
欧姆龙光电编码器主要由旋转轴、发光二极管、棱镜、光栅板、固定光栅和光栅板等结构组成,光电式旋转编码器利用光电转换,可将旋转轴的角位移、角速度等机械量转换成相应的电脉冲以数字量输出。
其内部机构如下图2-6所示:
图2-6光电旋转编码器内部结构
2.4.2欧姆龙E6A2-CW3C型增量式编码器的优势
经过检测和资料查询得知,该型增量式光电编码器的优势如下:
(1)E6A2-CW3C型编码器的测量精度为360P/R,即360线输出,当编码器转动一圈时,会输出360个脉冲。
在经过STM32F103VET6芯片的转换,可以达到4倍即1440线的测量精度,这个精度已经充分满足了倒立摆摆杆转动测量的参数要求。
(2)该型编码器为AB相输出。
由于A、B两相脉冲正交输出,通过比较两相的相序先后,可以判断编码器是正转还是反转,而通过零位脉冲,可确定编码器的参考零位。
倒立摆系统需要判断摆杆转动的方向和角度,才能通过控制芯片输出不同的PWM波调整摆杆的转动。
而AB相输出既可以测量转动角度和角速度,又可以通过比较A相和B相测出转动的方向,因此符合了倒立摆的设计要求。
(3)该型编码器的外形尺寸为直径25MM,长28MM的圆柱体,尺寸小且质量较轻。
由于编码器要安装在旋转杆的一端,假如其尺寸和重量过大,则对旋转杆的宽度和强度就有更高的要求。
而且,编码器和旋转杆的尺寸和重量总和如果过大,对直流减速电机的负载能力又需要有更高的要求。
所以,综上原因,这型光电编码器的外形和重量非常符合倒立摆系统的设计标准。
详细参数如表2-2所示:
表2-2欧姆龙E6A2-CW3C型编码器参数
电源电压
分辨率(脉冲/旋转)
输出相
输出形式
输出相位差
最大负载
DC5V-5%~12V+10%
纹波(p-p)5%以下
360
A相B相
NPN集电极开路
AB相相位差90°±45°
横向10N
纵向5N
3系统理论分析与计算
3.1环形倒立摆物理模型建立
在忽略了空气阻力、各种摩擦之后,将环形倒立摆系统抽象成匀质摆杆和旋转杆组成的刚体系统。
环形一级摆的结构如图3-1所示:
图3-1环形一级倒立摆的抽象图
旋转杆与
的夹角:
,摆杆与垂直方向的夹角:
系统的拉格拉日算子:
,其中
为拉格朗日算子、
为系统的广义坐标、
为系统的总动量、
为系统的总势能。
拉格朗日方程:
(3-1)
其中,
、
为系统沿广义坐标
方向上的外力。
在环形一级倒立摆系统中广义坐标:
(3-2)
环形一级倒立摆系统的动能
其中,
为水平杆的动能、
为摆杆动能。
旋转杆的动能:
(3-3)
在距摆杆转动中心距离
处取一小段
,这一段的坐标如下:
(3-4)
则,这一小段的动能:
(3-5)
摆杆的动能:
(3-6)
以旋转杆所在的水平面为零势能面,则系统的势能
即为摆杆的重力势能:
(3-7)
则,拉格朗日方程:
(3-8)
其中,
为施加到旋转杆上的控制力矩。
在倒立