APP下载

高精度风力摆控制系统设计

2016-12-19谢景卫柳文强

电子科技 2016年11期
关键词:摆杆控制算法风力

谢景卫,柳文强

(1.大连大学 国家大学生文化素质教育基地,辽宁 大连 116622;2.大连大学 信息工程学院,辽宁 大连 116622)



高精度风力摆控制系统设计

谢景卫1,柳文强2

(1.大连大学 国家大学生文化素质教育基地,辽宁 大连 116622;2.大连大学 信息工程学院,辽宁 大连 116622)

本系统设计制作一套由轴流风机为动力源的单片机精准控制系统。系统采用MC9S12XS128微控制器作为主控芯片,选用MPU6050六轴运动传感器及WDD35精密导电塑料电位器作为摆杆的角度检测模块,并采用四个空心杯电机作为系统的执行机构。该系统采用PID控制算法,控制摆杆做摆动方向和摆动幅度均可设定的平面单摆运动及摆动半径可设定的圆锥摆运动。实验结果表明,该风力摆控制系统摆动方向角度误差<3°,摆动幅度误差<5 mm,圆锥摆圆度误差<5 mm。

风力摆;MC9S12XS128;MPU6050;WDD35;PID

风力摆控制系统是一套完整的单片机控制应用系统。该系统要求将一根长约60~70 cm 的细管上端用万向节固定在支架上,下方悬挂一组(2~4只)直流风机,构成一个风力摆。风力摆上安装一个向下的激光笔,静止时激光笔的下端距地面不超过20 cm。控制驱动各风机使风力摆按照一定规律运动,激光笔在地面画出长度、方向可控的直线轨迹和半径可控的圆型轨迹[1],并具有较强的抗干扰能力。本文将从风力摆控制系统的机械结构、电路系统及控制算法等方面,详细介绍整个系统的实现过程。

1 机械结构

机械结构是风力摆控制系统的重要组成部分。良好的机械结构不仅是系统能够实现精确控制的基础,还能为后来的控制算法提供有效途径,更是系统能够稳定运行的有力保障。本系统机械结构的设计目标是:稳固、巧妙、轻便、灵活。

1.1 整体框架

系统的机械结构部件包括:底板、龙门框架、角度检测装置、摆杆、4个轴流风机组成的执行机构以及一些辅助支架等,整体结构如图1所示。将龙门框架用法兰盘和辅助支架固定在正方形木质底板上,龙门框架上固定一个采用3D打印制作[4]的具有两个自由度的摇杆机构,配合两个WDD35精密导电塑料电位器(WDD35 Precision Conductive Plastic Potentiometer,WDD35)构成摆杆的角度检测模块。用碳素杆作为摆杆,摆杆下方固定4个空心杯电机和桨叶构成的直流风机,并作为系统唯一的动力来源。碳素杆质量轻且强度高,能够减小摆杆的质量,从而减小系统的滞后性,使系统变得更加灵活、轻便。龙门框架结构能够让摆杆变得更加牢固,不会使摆杆在摆动的过程中因框架晃动而带来误差。

图1 整体框架图

1.2 角度检测模块

角度检测模块设计是本系统的一大亮点。模块由两个WDD35、两个轴承和一些辅助支架构成。如图2所示。WDD35具有线性度高、理论上无限的分辨力、平滑性优良、动态噪声小、机械寿命长等优良性能[2],广泛使用于军事、航空、汽车、医药、测量、机器人、原子能等领域。正交的两个WDD35分别测量摆杆x轴方向和y轴方向的角度,最小测量角度达0.1°。轴承则大幅减小了辅助支架及各个部件之间的摩擦力,不仅让摆杆摆动所需力矩更加均匀、平滑,使系统更易于控制,同时也减小了误差。

图2 角度检测模块

1.3 执行机构

系统的执行机构由4个相互垂直放置的直流风机及其固定装置构成,如图3所示。直流风机由空心杯电机及桨叶组装而成。空心杯电机具有突出的节能特性、灵敏方便的控制特性和稳定的运行特性[3]。另外,其能量密度大幅度提高,与同等功率的铁芯电动机相比[5],其重量、体积均减轻了1/3~1/2,这在较大程度上减小了摆杆摆起所需的风力,解决了摆杆因电机质量太大而摆起困难的问题,给系统的灵活控制带来了便利。此外,为电机量身定制的固定装置确保4个空心杯电机是相互垂直的,且较为稳固,使系统角度控制更加精确,也在一定程度上提高了系统的稳定性[6]。

图3 执行机构

2 电路系统

控制系统的电路主要由单片机最小系统、电源模块、六轴运动传感器模块、电位器电压采集电路和电机驱动模块等构成。

单片机最小系统以飞思卡尔(Freescale)半导体公司的MC9S12XS128MAA单片机为主控芯片,该芯片由16位中央处理单元(CPU12X)、128 kB程序Flash、8 kB RAM、8 kB数据Flash组成片内存储器[7],还集成了模拟数字转换器(A/D)、串行通讯接口(SCI)、串行外设接口(SPI)、定时器模块(TIM)和脉冲调制模块(PWM)等丰富的片上资源,完全能够满足本控制系统所需要的所有功能模块。

为简化电路,系统电源采用常州市创联电源有限公司生产的开关电源模块[8],该模块能将220 V的交流电转化成5 V的直流电,最大输出电流达40 A,最大纹波100 mV,既能保证电机在高速转动时的电流供应,又能保证精密电位器在采集电位时的电压稳定,提高了A/D采集的准确度。

本系统的角度测量模块采用WDD35精密电位器与MPU6050六轴运动传感器相结合的方式,用WDD35的测量值对MPU6050的测量值进行校正,通过融合算法计算出更加精确的角度值,即保留了MPU6050灵敏的动态性能,又不失WDD35精确的静态性能。MPU6050为全球首例整合性6轴运动处理组件,与其他多组件方案相比,消除了组合陀螺仪与加速器轴间差的问题,减少了大量的封装空间[9]。

电机驱动模块采用的是由国际整流器公司(IR)生产的IR2104S及IRLR7843构成的MOSFET半桥电机驱动。IRLR7843具有导通内阻小、导通电压低等特点,持续电流最大能达到161 A,即使电机频繁加速减速,也能响应自如,在较短的时间内达到设定的转速,而且不会出现驱动发烫的情况,使系统能够持续高效运作。

3 控制算法

控制算法是风力摆控制系统的核心部分。由于摆杆在非理想情况下运作,虽在机械结构上做了许多减小各种摩擦的设计,但在摆动过程中依然会有摩擦阻力和空气阻力等,这些阻力会使摆杆的摆动幅度逐渐减小。甚至由于阻力大小、方向不均一,导致摆杆在摆动过程中摆动轨迹也发生了变化。为解决这些问题,系统通过角度检测模块检测摆杆当前x轴方向和y轴方向的角度,根据其与目标角度的偏差,用PID控制算法,计算出各个电机的输出量,进行实时调整,形成一个具有位置反馈的闭环控制系统。

3.1 系统功能图

如图4所示,整个系统以微控制器为核心。通过4位拨码开关来选择系统的工作模式,如画指定长度的直线,沿指定方向画直线或画指定半径的圆等。4×4的矩阵按键用于输入系统的参数,如所画直线的长度、方向角,圆的半径等。角度检测模块用于测量摆杆x轴方向和y轴方向的角度。单片机根据输入的系统参数和检测出的当前角度值来计算出各个电机的输出量,并通过PWM模块输出给电机驱动,电机驱动带动4个空心杯电机转动,使之产生一定的风力,不同的电机转动会产生不同方向的风力,且方向相互垂直,由此便可以任一方向调整摆杆位置,使摆杆达到目标位置。摆杆位置的变化又作用于角度检测模块,使角度检测模块的测量值发生变化[10],从而形成了一个闭环控制系统。OLED液晶屏则用来显示系统的各项参数,并提供简单的UI界面,方便操作及调试。LED指示灯和蜂鸣器用来指示是否达到设定的状态。通过单片机上的UART模块将x轴及y轴方向角和一些调试信息发送到上位机,用计算机将其处理成可视化的图形图像,用于实时监测,给后期调试带来便利。

图4 统功能图

3.2 控制算法分析

图5 风力摆模型

将风力摆建立如图5所示的数学模型,设摆杆的旋转支点到重物(执行机构)重心的长度为L,重物重心到底板的高度为h。以摆杆自然下垂时,激光笔照射在底板上的点为原点O,以底板所在平面的正右方为x轴正方向[11],以底板所在平面的正上方为y轴正方向。则单摆的周期为

(1)

当摆杆沿某一方向摆起角度θ时,激光笔在底板上的照射点到原点距离

d=(L+h)tanθ

(2)

即若要控制激光笔照射在点Px(x,0)时,则需控制摆杆在x轴方向的目标角度[12]

(3)

若要控制激光笔照射在点Py(0,y)时,则需要控制摆杆在y轴方向的目标角度

(4)

当同时控制摆杆在x轴和y轴方向角度分别为θx、θy时,则激光笔照射的点的坐标即为P(x,y)。

在理想情况下,摆杆在摆动过程中角度与时间具有较强的耦合关系,且某一时刻摆杆角度在x轴方向与y轴方向的分量与时间t的关系分别为

(5)

其中,T为摆杆自由摆动时的周期;α和β分别为x轴方向和y轴方向摆动的最大角度;φx和φy为摆杆刚开始摆动时x轴方向和y轴方向的初相位。

3.3 控制算法设计

3.3.1 沿x轴方向的定长摆动

当激光照射点的轨迹长度设定为2d时,根据式(2)和式(3)计算出x轴方向最大摆角α。根据式(5),为方便控制及计算,将初相φx设为0,将y轴方向的目标角度θy设为0,系统时间t由微控制器的定时器模块产生,则可计算出每一时刻x轴方向的目标角度θx。此时,摆杆目标角度在x轴及y轴方向上的分量与时间t的关系分别为

(6)

3.3.2 沿设定方向的定长摆动

当轨迹长度设定为2d,摆动方向设定为γ时,则摆起最大角度θ、x轴方向最大角度α、y轴方向最大角度β应满足方程

(7)

根据式(2)~式(5),将初相φx、φy均设为0,则摆杆目标角度在x轴及y轴方向上的分量与时间t的关系分别为

(8)

3.3.3 设定轨迹半径的圆锥摆运动

摆杆做圆锥摆运动时,x轴方向和y轴方向的最大摆角α和β相同,但初相位φx和φy相差π/2,当圆形轨迹半径设定为d时[13],根据式(5),将x轴方向初相位φx设为0,则摆杆目标角度在x轴及y轴方向上的分量与时间t的关系分别为

(9)

4 测试结果与分析

4.1 沿设定方向的定长摆动

4.1.1 测试方法

从静止开始,控制摆杆摆动幅度,分别使激光笔照射点在底板上沿x轴方向、30°方向和-45°方向画出长度为50 cm的直线轨迹,达到稳定后,再分别用刻度尺和量角器测量连续5个周期的各轨迹长度及方向,并用上位机记录这5个周期中控制系统测量出的x轴方向和y轴方向的角度值。

4.1.2 结果与分析

图6 x轴与y轴角度曲线

测试结果如表1,表2及图6(a)~图6(c)所示。表1数据显示了连续5个周期中激光照射点在所测量的3个方向上扫过的轨迹长度。从表中数据可看出,轨迹长度都在50 cm上下浮动,且误差不超过±5 mm。表2显示的是连续5个周期中,3种设定角度下激光照射点扫过轨迹的方向角。可以看出,方向角的误差也不超过±3°。图6显示了摆杆在摆动过程中x轴方向和y轴方向的实时角度值。其中实线为x轴方向角度,虚线为y轴方向角度,点线为目标角度的参考线。图6(a)中,y轴角度一直在0°上下小范围内浮动,而x轴角度呈正弦函数曲线形状,且幅度和目标最大角度基本一致,这与算法分析中式(6)基本吻合。其中最大目标角度θx=17.354°,即点线位置对应的角度值,此数值是根据摆长L=0.67 m及高度h=0.13 m,再通过式(3)计算得出。同样,图6(b)、图6(c)中测量值与计算值基本一致,且与式(8)和式(9)基本吻合。可看出摆杆在摆动过程中有良好的线性度及精度。

表1 设定方向上每个周期轨迹长度

表2 设定方向上每个周期轨迹角度

4.2 设定轨迹半径的圆锥摆运动

4.2.1 测试方法

先在底板上从0°方向开始,每60°作一个到原点距离为25 cm的参考点,用黑色标记标出,并沿这一方向以黑色标记为零点做出一段长度为20 mm刻度尺。然后从静止开始,控制摆杆摆动幅度,使激光笔照射点在底板上画出半径为25 cm的圆形轨迹。达到稳定后,分别记录每个周期中照射点扫过的轨迹在上述6个测量方向上相对于黑色标记的偏移量。连续测量5个周期,并用上位机记录这5个周期中控制系统计算出的x轴方向和y轴方向的角度值。

4.2.2 结果与分析

测试结果如表3及图6(d)所示。从表3可以看出,连续5个周期内测量的30次偏移量都在±5 mm以内,说明所画的圆型轨迹圆度误差<5 mm。图6(d)中,x轴角度与y轴角度都呈正弦函数曲线形状,且最大值都在最大目标角度17.354°附近,只不过x轴角度曲线比y轴角度曲线落后了T/4,即初相落后了π/2。此曲线与算法分析中式(9)基本吻合。

表3 每个周期轨迹在测量方向上偏移量

5 结束语

实验表明,本高精度风力摆控制系统能控制摆杆的摆动方向角度误差<3°,摆动幅度误差<5 mm,圆锥摆圆度误差<5 mm,符合预期要求。本系统在机械结构、电路以及PID控制算法[14]上均做了众多提高控制精度的设计。在机械结构设计中有许多创新之处,特别是角度检测模块的设计、执行机构的设计等。在算法设计中也提供了一些方法和思路供读者参考。通过硬件和软件整体设计制作了一套结构完整、功能模块化、反应灵敏的风力摆控制系统[15]。

[1] 张皓博,刘兰波.基于单片机设计的风力摆系统[J].鸡西大学学报,2016(2):29-33.

[2] 戎海荣.船舶耙臂指示系统原理和误差分析[J].中国水运月刊,2013(8):34-35.

[3] 杜永红,邵定国,许路,等.基于三角形连接的空心杯电机无位置传感器控制方案[J].电机与控制应用,2008, 35(6):20-23.

[4] 李智康,赵力,袁梅.基于姿态控制的自平衡独轮车设计[J].测控技术,2016(1):81-82.

[5] 丁宁新.性能卓越的驱动元件——空心杯电动机[J].中国科技信息,2001(21):68-68.

[6] 张念发,滕建民,李璐璐,等.坦克通信仿真训练系统体系结构构建研究[J].河北软件职业技术学院学报,2012, 14(1):49-52.

[7] 徐航,王立峰,徐振锋,等.基于XS128系统的智能床头灯的设计[J].照明工程学报,2013,24(4):133-136.

[8] 王建红,陈耀忠,陆宝春,等.基于模糊 PID 控制的微位移平台监控系统设计[J].机械设计与制造工程, 2013(11):72-75.

[9] 李慧君,张宇鑫,姚旭.基于单片机的风摆控制系统研究与设计[J].电力学报,2015(5):426-427.

[10] 涂如松.利用PLC对丝束调速装置的改造[J].石油化工自动化, 2003(6):85-86.

[11] 矣昕宝,全海燕,许伶俐.一种基于OpenCV的多扇区圆检测方法[J].科学技术与工程,2011,11(16):3698-3702.

[12] 段世华.四旋翼飞行器控制系统的设计和实现[D].成都:电子科技大学,2012.

[13] 廖柏林,梁平元,杨喜.基于伪逆的冗余机械臂运动控制的优化方案[J].信息与控制,2013,42(5):645-651.

[14] 李华琳.基于模糊PID的磁流变减振控制系统的设计与实现[D].成都:电子科技大学,2010.

[15] 孙畅,付超.基于AVR单片机的风力摆控制系统研究[J].科技传播,2015(17):123-128.

Design of High Accuracy Pneumatic Pendulum Control System

XIE Jingwei1,LIU Wenqiang2

(1. National University Students Cultural Quality Education Base, Dalian University, Dalian 116622, China;2.School of Electronical and Information Engineering, Dalian University, Dalian 116622, China)

The system is designed to produce a set of precision control system of the single chip microcomputer as power source. using MC9S12XS28 microcontroller as the main control chip, choose MPU6050 six-axis motion sensor and WDD35 precision conductive plastic potentiometer for the pendulum angle detection modules,and uses four coreless motors as the actuatorof the system, designed and implemented this pneumatic pendulum control system.The system uses PID control algorithm, can control the pendulum does pendulum movement, which both swing direction and swing amplitude can be set and does conical pendulum movement, which swing radius can be set. Experimental results showed that the deviation of swing direction angleof the system is less than 3°,deviation of swing amplitude length is less than 5mm and deviation of conical pendulum roundness is less than 5mm.

pneumatic pendulum; MC9S12XS28; MPU6050; WDD35; PID

2016- 01- 26

谢景卫(1980-),男,硕士,讲师。研究方向:计算机控制技术。

10.16180/j.cnki.issn1007-7820.2016.11.024

TP272

A

1007-7820(2016)11-081-05

猜你喜欢

摆杆控制算法风力
限位条件下直轨倒立摆摆起控制量的分析研究
走进风力发电
一种圆织机摆杆装置
磁浮列车Z 向支撑摆杆断裂失效成因分析
发射平台摆杆机构可靠性分析
基于ARM+FPGA的模块化同步控制算法研究
大型风力发电设备润滑概要
一种优化的基于ARM Cortex-M3电池组均衡控制算法应用
一种非圆旋转工件支撑装置控制算法
你会测量风力吗