《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于AVR单片机的机载惯性稳定云台设计
基于AVR单片机的机载惯性稳定云台设计
2015年电子技术应用第11期
安鹤男,陈 阳,张 军,潘娇娇
(深圳大学 电子科学与技术学院,广东 深圳518060)
摘要: 针对多旋翼无人机在航拍时,画面会随着巡航时俯仰、横滚等飞行动作而变得不稳定的问题,设计了一种基于AVR单片机和MEMS陀螺仪的机载惯性稳定云台。该云台利用经卡尔曼滤波(Kalman Filtering)的陀螺仪输出数据对飞机在三个轴向上的角速度变化进行监测和判断,驱动步进电机对云台姿态进行实时反向补偿,实现这一系统使摄影机拍摄的画面能够时刻保持稳定。实验结果表明,系统稳定、可靠、性能良好。
中图分类号: TP23
文献标识码: A
DOI:10.16157/j.issn.0258-7998.2015.11.011

中文引用格式: 安鹤男,陈阳,张军,等. 基于AVR单片机的机载惯性稳定云台设计[J].电子技术应用,2015,41(11):41-44.
英文引用格式: An Henan,Chen Yang,Zhang Jun,et al. Design of airborne inertial stabilization camera platform based on AVR microcontroller[J].Application of Electronic Technique,2015,41(11):41-44.
Design of airborne inertial stabilization camera platform based on AVR microcontroller
An Henan,Chen Yang,Zhang Jun,Pan Jiaojiao
College of Electronic Science and Technology, Shenzhen University, Shenzhen 518060,China
Abstract: Aiming at the shortcomings and deficiencies that existed in multirotor UAV aerial photography system, whose camera will be shaking if the UAV has to change the flight attitude, an airborne inertial stabilization camera platform based on AVR microcontroller and MEMS gyro is designed. The system uses Kalman filtered gyro output data to monitor and judge the change of angular velocity in the three axes of the UAV, drives the stepper motors to adjust the attitude of the camera platform, and finally achieve the system, so that the pictures captured by the camera upon the platform are stable all the time. The experimental results show that the system is stable, reliable and well-performanced.
Key words : microcontroller;gyro;Kalman filtering;inertial stabilization platform;UAV;camera platform

 

0 引言

  近年来,随着自动化技术、计算机技术和微电子技术的飞速发展,多旋翼无人机如雨后春笋般出现,并以航空摄影为核心,在遥感测绘、地质勘查、反恐防暴、抗灾救援、城市服务等多个领域发挥着重要作用[1]。

  在传统的无人机航拍系统结构中,摄像头往往直接固定于无人机机身或安装在一个仅能对摄像头姿态进行手动调整的云台上。这类系统虽然结构简单,成本低廉,但却具有较大的不足。当无人机在巡航过程中需要改变飞行姿态时,摄像头拍摄出来的画面往往非常不稳定。

  为了解决这一问题,本文设计并实现了一种基于AVR单片机和MEMS陀螺仪的无人机载三轴惯性稳定云台。该云台能够在无人机飞行姿态发生变化时对摄像头姿态进行实时调整,保证了拍摄画面的稳定。经过实验验证了该系统的稳定性和可靠性。

1 系统硬件电路设计

  1.1 系统总体方案设计


001.jpg

  如图1所示,系统由一个中央控制单元和三个运动控制单元组成。中央控制单元的主要功能是根据上位机的指令对整个系统进行控制和调度,同时对系统各部分的运行状态进行实时监测和调整。三个运动控制单元分别在三个轴向上对经卡尔曼滤波的陀螺仪输出数据进行实时监测,在云台姿态发生变化时驱动步进电机,稳定现有姿态。三个运动控制单元在系统进入自稳定状态后同时开始工作,协同运行,提高了系统的实时性和可靠性。此外,系统还在三个轴向上分别设置了一个行程限位开关,用于云台姿态的上电复位。

  本系统各控制单元均采用ATmega系列AVR单片机作为控制器。该系列单片机具有高效、稳定、外围电路简单、性价比高等优点,内置10位高精度A/D转换器,非常适合本系统的设计使用。另外,本系统采用层次化、模块化的设计架构,有利于系统的测试及维护,可靠性与稳定性好。

  1.2 中央控制单元设计


002.jpg


  在本系统中,中央控制单元基于Atmel公司的ATmega1280单片机开发。如图2所示,ATmega1280单片机具有4个异步串口。在本系统中,这4个异步串口分别连接上位机和3个轴向的运动控制单元,用于系统控制指令和状态数据的双向传递。

  中央控制单元的主要功能是负责接收上位机发来的指令,并根据指令对相应轴向的运动控制单元发出二级指令,调度和控制各运动控制单元,使之能够协调地完成云台姿态的实时稳定保持以及手动控制操作。此外,中央控制单元还负责对系统各部分的运行状态进行实时监控并适时做出调整。

  1.3 运动控制单元设计

  系统设有3个运动控制单元,分别与云台航向、俯仰和横滚3个轴向上的陀螺仪和步进电机驱动模块相连,用于云台的实时姿态调整。当云台在相应轴向上发生姿态变化时,陀螺仪的输出电压也会跟随着发生线性变化。运动控制单元检测到这一变化后,向步进电机驱动模块发出控制信号和驱动脉冲,驱动相应轴向上的步进电机对云台姿态进行实时反向补偿,消除外界振动或飞行姿态的变化对云台产生的影响,使云台保持稳定。

  3个运动控制单元的硬件结构相同,都是由ATmega32单片机和外围电路构成。运动控制单元的电路原理图如图3所示。

003.jpg

  电源VCC的电压为直流5 V;U1是ATmega32单片机,内置10位高精度A/D转换器,量程为0~5 V,分辨率约4.88 mV;U2是Silicon Sensing公司的CRS03-02型MEMS陀螺仪,该陀螺仪能够以电压模拟量的方式输出其安装位置的轴角角速度,量程0~±100°/s,其输出端直接与单片机U1的A/D转换器模拟量输入引脚相连;J1和J3分别是运动控制单元与中央控制单元同步进电机驱动模块的通信接口。

  此外,运动控制单元还设置了一个行程限位开关S1与U1单片机的中断0引脚连接。当系统上电时,运动控制单元会将U1中断0引脚置高电平并驱动步进电机,让云台平面以较低的角速度向有限位开关的一侧运动。当云台触碰到限位开关后,U1中断0引脚与地接通,U1的低电平中断被触发。由于云台平面在各轴向上的最大旋转角度在机械结构设计完成后就是一个固定的参数,因此,运动控制单元接着驱动步进电机,将云台平面旋转到中间的平衡位置,完成云台姿态的上电复位。

  1.4 步进电机驱动模块设计


004.jpg

  本云台系统的步进电机驱动模块基于Toshiba公司的TA8435H步进电机驱动芯片开发。图4是步进电机驱动模块的电路原理图,供电电压VDD为直流24 V,VCC为直流5 V。

  图中M1是两相步进电机,整步的步距角为1.8°;U1是步进电机驱动芯片TA8435H,细分设置为1/8,这使得步进电机每步的步距角缩小至0.225°,大大增加了系统的运行精度和稳定性。

  图中J1是模块与运动控制单元连接的数据接口,其中引脚2为步进电机的正反转控制引脚,当该引脚的输入为低电平时,步进电机按顺时针方向转动,当输入为高电平时,步进电机按逆时针方向转动;引脚3为步进电机转速控制引脚,向该引脚每输入一个上升沿,步进电机能够向指定方向转动0.225°,通过改变输入信号中每两个上升沿之间的时间间隔,即可控制步进电机的转速。

2 系统软件设计

  2.1 中央控制单元软件设计

  系统中央控制单元的主要功能是完成上位机指令的判别与传递以及系统各运动控制单元的综合调度,软件工作流程如图5所示。

005.jpg

  2.2 运动控制单元云台姿态自稳定算法设计

  2.2.1 卡尔曼滤波

  当运动控制单元收到来自上位机的自稳定指令并进入惯性稳定状态后就开始不断对陀螺仪输出的模拟量进行采样和模数转换,将陀螺仪输出的模拟量转化为数字量并进行读取和处理。

  由于陀螺输出的原始数据中包含一系列干扰和噪声,因而需要对原始数据进行预处理,降低这些干扰和噪声。本系统选用卡尔曼滤波算法对原始数据进行去噪处理。

  卡尔曼滤波是一种利用线性系统状态方程和测量方程,通过观测数据对系统自身状态进行估计,使估计的均方误差达到最小的滤波算法[2]。

  设系统的状态方程为:

  Xk=Ak,k-1 Xk-1+Bk,k-1 Wk(1)

  测量方程为:

  Yk=Ck Xk+Vk(2)

  其中,Xk为k时刻系统的状态向量;Ak,k-1为k到(k-1)时刻的状态转移矩阵;Bk,k-1为k到(k-1)时刻的过程噪声驱动矩阵;Yk为k时刻系统的输出向量;Ck为测量矩阵;Wk和Vk分别为过程噪声和测量噪声,并且被假设为高斯白噪声[2-3]和随机数噪声[4]。

  根据状态方程和测量方程,有卡尔曼滤波的五个递推公式:

  状态一步预测:

  15.png

  其中,yk是k时刻卡尔曼滤波前的数据。根据上述5个方程,只要给定初值X0和P0,即可根据k时刻的观测值Yk计算出k时刻的状态估计k。为达到最佳效果,选取[2]:

  6B$KNPA9TT2C5K(4C{SO0~X.png

  2.2.2 云台姿态自稳定算法设计

  系统进入自稳定状态后,3个轴向的运动控制单元同时对云台在各自轴向上的姿态进行实时姿态保持。各轴向的运动控制单元软件工作流程如图6所示。

006.jpg

3 系统测试及分析

  3.1 卡尔曼滤波性能测试及分析

  为了验证2.2.1节所述卡尔曼滤波算法的有效性,以运动控制单元中的MEMS陀螺仪在平衡状态下的输出量作为卡尔曼滤波器的输入,其处理结果及滤波前后对比如图7所示。滤波前后的数据特征对比如表1所示。

  从图7可以直观地看出,卡尔曼滤波对陀螺输出数据的作用明显。滤波前,陀螺输出信号中含有较多白噪声,滤波后,这部分白噪声被很大程度地削弱了且均值保持不变,滤波前后数据特征对比见表1。这说明本文2.2.1节所述的卡尔曼滤波算法对消除MEMS陀螺输出信号中的噪声有效。

  3.2 云台姿态自稳定算法性能测试及分析

  本文2.2.2节提出了无人机载云台姿态的自稳定算法。为了验证这一算法的实际性能,云台上安装了一个3轴角速度传感器,当云台处于惯性稳定的状态下,在云台的3个轴向上同时以0~±100°/s范围内的任意角速度对云台基座进行变速晃动。每次实验持续1分钟,每隔5 s记录一次云台稳定平面在3个轴向上的角速度值,以判断云台平面在自稳定状态下的精度和误差,实验共重复20次。

  根据20次实验的结果,方位轴角速度均值为0.025 °/s,方差均值为0.001 6,俯仰轴角速度均值为0.013 °/s,方差均值为0.000 8,横滚轴角速度均值为0.016 °/s,方差均值为0.001 0。

  以上试验数据表明,云台在惯性稳定状态下能够较好地保持云台姿态。云台角速度样本方差较表1所示静止状态下的角速度方差略大,可能的原因是步进电机在运行过程中,步与步之间产生了轻微的机械振动。

4 结论

  本文所提出的基于ATmega单片机的无人机载三轴惯性稳定云台系统,能够有效地在每轴向0~±100 °/s的角速度变化范围内实现无人机在飞行过程中云台的姿态保持,确保了无人机在进行航空拍摄时画面的稳定。

  与其他机载惯性稳定云台相比,本系统具有3个彼此独立的运动控制单元,并且由中央控制单元统一进行调度和管理,而其他机载惯性稳定云台系统往往只有一个负责云台姿态自稳定的处理芯片。

  当系统进入惯性自稳定状态后,一般的机载惯性稳定云台系统往往只能以时间片轮询的方式来实现各个轴向姿态稳定功能的同时进行运行,实时性和可靠性较低;本系统具有3个独立的运动控制单元,能够对3个轴向的状态进行实时并行处理,有效地缩短了系统的响应时间,提高了系统的实时性和可靠性。

  另外,相较于其他一些基于FPGA等类型嵌入式处理器开发的惯性平台[5],本系统在成本上具有较大优势。经过大量验证,本系统稳定、可靠、精度高,具有较高的应用价值。

参考文献

  [1] 辛哲奎,方勇纯,张雪波.小型无人机地面目标跟踪系统机载云台自适应跟踪控制[J].控制理论与应用,2010,27(8):1001-1006.

  [2] 杨庆辉,杜红英,陈雄,等.微机电陀螺随机漂移建模与卡尔曼滤波[J].计算机仿真,2015,32(3):68-72.

  [3] 王正生,仇雅芳,王琳,等.卡尔曼滤波算法在单站无源定位中的应用[J].舰船电子对抗,2014,37(5):27-30.

  [4] 关吉.卡尔曼滤波器的MATLAB仿真实现[J].东南传播,2014(6):178-180.

  [5] 高迎彬,胡昌华,何华锋,等.基于FPGA的惯性平台嵌入式调平系统设计[J].电子测量技术,2011,34(6):60-63.


此内容为AET网站原创,未经授权禁止转载。