基于STM32的单级旋转倒立摆控制系统的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于STM32的单级旋转倒立摆控制系统的设计与实现
对单级旋转倒立摆的控制系统进行了研究,提出了以STM32为核心的控制器设计,在控制策略上采用经典控制理论PID的控制算法,实现对单级旋转倒立摆旋转臂及摆杆的同时闭环控制,最终测试结果表明系统控制策略有效。
标签:STM32;倒立摆;闭环控制
引言
倒立摆控制系统是自动控制理论的重要研究平台,可对应于火箭垂直发射控制技术,因此对它的研究具有重大的实践意义和价值。目前对倒立摆的研究主要分为系统力学分析及建模,控制算法及仿真,而对实现手段少有研究。文章讨论了以STM32为核心的倒立摆控制器的设计与实现,它实现了经典双回路PID控制算法对旋转单级倒立摆的控制策略。
1 控制系统硬件设计
倒立摆的系统主要由四部分构成:控制器,驱动系统,检测装置及机械部分。其中由于控制器需要完成复杂的PID运算,要求系统反馈控制速度快,因此以具有ARM核的32位STM单片机为核心完成控制算法;检测装置由光电码盘构成,主要用于检测电机转动速度及摆杆的角加速度,本系统中采用200P/R的欧姆龙光电编码器。驱动部分采用飞思卡尔公司生产的电机驱动芯片mc33886,其输出电流可以达到5A,可以实现电机PWM 调速,正反转,制动等实时控制功能。红外遥控及键盘为系统调试辅助装置,可以在系统运动过程中对程序中的P,I,D参数进行微调。控制系统部分硬件电路结构如图1所示。
图1 控制系统结构框图
系统中以STM32为核心的控制器控制电机正反转带动旋转臂来回摆动从而带动摆杆做圆周运动至直立状态,直立后迅速切换电机运行模式使摆臂稳摆。系统中由检测装置测得的摆臂位置,摆臂加速度及电机当前转速等参数反馈回STM32进行综合PID计算,输出PWM波进行电机调速从而使系统能处于稳态。控制系统的核心为STM32中对控制算法的实现。
2 控制算法及程序设计
倒立摆系统的控制过程是:通过电机带动旋转臂转动产生合适的力u使得旋转臂和摆杆在某一给定的初始条件下能够快速到达新的动态平衡。本系统是单输入双输出系统,在控制方案上采用采用经典控制理论的双闭环PID控制,系统控制原理方框图如图2所示:
图2 系统控制原理路
在控制策略上采用经典的PID闭环调节算法。常用的PID控制算法有两种:增量式和位置式。增量式算法特点是累计误差小,位置式算法特点是响应速度快。根据系统控制特点,采用位置式PID控制算法。
PID增量式控制算法,其算式为
式中u(k)为控制量,本系统中为电机转向及转速。e(k)为偏差,T为采样周期,k为采样序列,kp为比例系数,KI=KP■为积分系数,KD=Kp■为微分系数。采样周期和采样序列根据对摆杆的力学分析及香农定理得出。具体的P,I,D参数整定则需要在调试过程中通过不断调整来确定。
系统程序设计主要完成了上述PID控制算法及PWM电机调速,完成了系统双闭环控制电机转速,从而实现了倒立摆控制系统。程序由主程序和4个子程序构成,子程序分别完成起摆,稳摆,稳摆并做圆周运动等动作。
为了验证系统软硬件系统是否有效,对系统进行了系列测试,测试中采用精度为1°的360°角度指示板及精度为0.01s的秒表。测试数据如表1:
表1摆动测试数据
从测试数据反映,系统能够在短时间内实现摆臂摆动及稳摆,且摆臂直立后摆动幅度小,在遇外力干扰后能迅速作出反应回到稳态。系统完成动作好,抗干扰能力强。
3 结束语
文章给出了一种倒立摆系统的设计方案,并成功地设计了倒立摆系统的硬件部分和软件部分,最终构建了一个倒立摆系统。为了验证系统的有效性,进行了测试,数据证明设计是成功的。本系统对多种工程问题,如电磁直立行车的直立驾驶实时控制设计提供了的重要的借鉴和参考价值。
参考文献
[1]固高科技(深圳)有限公司.倒立摆与自动控制原理实验[Z].2005.
[3]杨平,徐春梅,曾婧婧,等.PID控制在倒立摆实时控制系通过中的应用[J].微计算机信息,2006(2):83-85.
[3]王继军,孙灵芳.自动化技术与应用[J].2011(30):1-5.
[4]桑英军,范媛媛,徐才千.单级倒立摆控制方法研究[J].控制工程,2010.11(17):43-46.
[5]江晨,王富东.旋转倒立摆系统的算法研究及仿真[J].工业控制计算机,2010(23):54-56.
作者简介:王立谦(1975-),女,四川人,汉族,硕士研究生,现工作于华中科技大学武昌分校自动化教研室,讲师,研究方向:嵌入式系统,EDA技术。