无人飞艇的遥控和自动飞行控制

2018-01-15 06:18
单片机与嵌入式系统应用 2018年1期
关键词:飞艇遥控接收机

(重庆工业职业技术学院 机械工程学院,重庆 401120)

引 言

飞艇是一种由发动机驱动的、轻于空气的、可操纵的航空器。飞艇的静浮力由气囊中的氦气提供,飞艇由气囊、动力装置、起落架、水平尾翼、垂直尾翼、控制系统等组成,可广泛应用于城市交通监控、市政建设航拍、高空大气采样、城市森林火警监控、地质勘探、军事和广告等领域[1]。飞行控制系统作为飞艇机电部分的核心,它的性能决定了飞艇的功能、稳定性、安全性以及遥控和自动飞行的可实现性。

1 控制系统的结构

本人所研究的飞艇是ST-3型无人飞艇,控制系统的核心是dsPIC30F4013及其外围电路。Microchip公司推出的dsPIC30F系列单片机是一种集16位单片机控制特点和DSP功能于一身的新型芯片。飞行控制装置主要包括信号接收装置、信号处理装置、电机驱动装置等几部分,总控制方案原理框图如图1所示[2]。

图1 总控制方案原理图

信号接收装置主要功能是接收遥控接收机传来的各种控制指令、接收GPS接收机发来的信号以及接收参数注入时来自PC机的数据。信号处理装置则是对接收装置传来的数据进行运算处理,然后输出控制信号给动力系统驱动装置,控制各电机按照要求动作,实现各种飞行要求。

2 遥控飞行的实现

2.1 推力转向的控制

推力转向控制是一个开环控制系统,无绝对起始点,手动调“零”。推力转向系统主要由遥控接收机、控制芯片及外围电路、步进电机驱动电路、步进电机及涡轮涡杆传动装置等几部分组成。步进电机是一种将电脉冲转化为角位移的执行机构,可以通过控制脉冲个数来控制角位移量,同时可通过控制脉冲频率来控制电机转动的速度和加速度。步进电机驱动装置为低压驱动的高起动转矩、高运行频率装置。

对推力转向装置的控制是手动遥控的,控制前要将控制状态切换为手动遥控。选择遥控接收机第7通道(CH7)为推力角度控制通道,该通道为比例控制通道,输出PWM信号。经测试,CH7的脉宽为0.8~1.6 ms,故可按表1设定这三个过程,指令由单片机来识别。

表1 脉宽与指令状态的关系

2.1.1 升遥控的实现

当单片机收到地面发来的“上升”遥控指令时,飞控装置即输出“上升”脉冲组控制步进电机正向转动,步进电机带动由涡轮涡杆组成的机构,按照设定的控制规律改变涡杆的角位移量,使发动机正向转动到所要求的位置。当飞艇处于“上升”状态时,可执行的唯一飞行控制命令为“平飞”。遥控器发出“平飞”信号后,由单片机的输出口输出设定好的“-90°”序列脉冲,发动机反转90°,完成由“上升”到“平飞”的任务,并将飞行状态标志置为“平飞”。

2.1.2 下降遥控的实现

当飞控装置收到“下降”指令时,将输出“下降”脉冲组控制步进电机反向转动,使涡轮连杆转动到负的规定位置。当飞艇处于“下降”状态时,可执行的唯一飞行控制命令为“平飞”。遥控器发出“平飞”信号后,由单片机的输出口输出设定好的“+120°”序列脉冲,发动机正转120°,完成由“下降”到“平飞”的任务,并将飞行状态标志置为“平飞”。

2.1.3 平飞控制的实现

在遥控系统停发“上升”和“下降”指令的区间,飞控装置即输出“平飞”控制信号,电动机螺旋桨推力方向保持0°位置,使推力方向保持向前平推。当飞艇处于“平飞”状态时,可执行的遥控指令为“上升”、“下降”以及“自动飞行”。 在自动飞行时,方向舵和升降舵的控制权将交给自动飞行系统,手动遥控失去对方向舵和升降舵的控制权,直到收到“解除自动飞行”命令才可遥控。

2.2 方向舵和升降舵的遥控

对方向舵和升降舵的遥控不经过单片机控制器,“遥控信号”和“自动控制”信号通过继电器进行隔离。伺服电机是飞行控制系统的执行机构,可以通过控制周期性脉冲的正脉冲宽度来控制转角位置。地面遥控发射机可以发出用来控制舵机的脉冲信号,该信号被装在飞艇上的遥控接收机收到,然后通过遥控信号支路的继电器导通去控制伺服电机。

3 自动飞行的实现

3.1 GPS数据的接收与处理

在自动飞行中,定高时需要用到飞艇飞行中实时的高度信息。定向时则需要实时的经纬度信息和飞艇飞行的方向信息。高度、经纬度以及方向这些数据都可以从GPS接收机发来的数据串中找到。

GPS输出数据标准格式为NMEA-0183[3],它是美国国家海洋电子协会为海用电子设备制订的标准格式。每个数据段都是由许多组信息组成,每组信息都以“$”开头作为标志符。这些信息有很多种,以“$”后面紧跟5个字母表明信息的类型,如“$GPGGA”、“$GPVTG”等。“$GPGGA”表明这是GPS定位所需的位置信息,后面内容中包含纬度和经度等数据;“$GPVTG”表明后面的数据是方位角和对地速度信息。知道了GPS接收机发过来的数据格式,就可以编写程序从这些数据串中检取需要的信息。

3.2 定高飞行的实现

当控制系统收到“自动飞行”信号后,升降舵[4]的控制权切换给自动飞行系统,自动飞行包含“定高”和“定向”,两者同时工作。“自动飞行”命令由遥控接收机第5通道CH5提供,CH5也是比例控制口,设定脉宽在0.8~1.2 ms为“自动飞行”命令, 1.2~1.8 ms为“解除自动飞行”命令。

可编写单片机程序从实时GPS数据中检索到“高度”信息,单片机接收到“自动飞行”命令后将设定的飞行高度与实时高度相比较,其差值经PID运算得到控制脉冲。由单片机输出该脉冲,经过放大,经继电器导通去控制升降舵机。当CH5输出的命令为“解除自动飞行”时,遥控器掌握水平舵机的控制权。

在定高飞行时,如果飞艇发生意外故障,自动上升后其高度超过预定上限高度时,高度保险装置即输出检测信号,控制电磁阀放出部分氦气,降低飞艇静浮力后使飞艇自行下降回收。

3.3 定向飞行的实现

在飞行的路径上设置几个关键点,飞艇在两相临点之间按照直线路径自动飞行,多点路径飞行可以看成是两点间路径飞行的扩展。“定向飞行”采用双PID控制,即距离PID和偏角PID控制,最后的控制量是这两个PID控制的合成[5]。

全球各地同一经线上纬度1°的间隔长度都相等,为111.317 km,而各纬线则是从赤道向两极递减。我们研究的飞艇飞行的范围在30 km左右,在这个小范围内飞行,可以把大地经纬网视为平面网,并认为在小范围内各纬线长相同,在平面中解决问题,经纬坐标模型如图2所示。

图2 经纬坐标模型

对于距离PID控制,需要知道飞艇飞行中采样时刻的实时位置距离两点直线路径之间的距离。如图2,ac之间的长度是均匀的,把经纬度坐标原点平移到两点路径的起始点a,很容易求出e 点和f点在坐标平移后的经纬度坐标值,由于经线上单位纬度的间隔长度是已知的,为111.317 km,设d点和f点的纬度分别为w1和w2,那么有|df|=(w1-w2)×111.317。由于ac之间的长度是均匀的,则|ef|=|ac|×(e经-f经)/(c经-a经),其中e经、f经、c经和a经分别为各对应点处在坐标平移后的经度值。|ac|为ac两点间的距离,这个值可以在高级软件中算出后通过串口通信发到dsPIC30F4013相应的寄存器中。则|de|2=|df|2-|ef|2,可以根据这个平方值进行距离PID计算。

对于偏角PID控制,需要知道飞艇飞行的方向信息以及设定飞行路径的方向与正北方向之间的夹角。对于前一个数据,可以从GPS接收机传来的数据中获取飞艇飞行方向相对于正北方向的角度,对于后一个数据,则可以在高级软件中计算出这个角度,然后通过串口发送到芯片相应的寄存器中。通过这两个角度就可以知道实时飞行方向相对于飞行路径的夹角,根据这个角度可以进行偏角PID计算。

为了正确控制伺服电机的转动方向,有必要判断d点位于ac的哪一侧。可以通过比较坐标平移后d点与f点纬度坐标的绝对值大小来判断d点位于哪一侧。需要注意的是,从a到c坐标原点在a,从c到a坐标原点则在c。

当单片机检测到“自动飞行”命令后,在单片机内部对距离和偏角分别进行PID运算,运算的结果进行合成,控制输出PWM脉冲的占空比,得到最终的控制脉冲。该脉冲由单片机输出,经过放大,经继电器导通后控制伺服电机的转动方向和转角大小。

3.4 参数实时注入系统

为了得到实时的点到直线的距离以及实时飞行方向与直线路径间的夹角,用上述方法计算,需离线计算并通过串口通信把结果送到芯片相应寄存器中的数据包括:①路径上关键点上的经纬度坐标;②飞行路径上两关键点之间的距离;③飞行路径所在直线与正北方向的夹角。可以通过建立PC机与dsPIC30F4013芯片之间的串口通信来实时注入这些数据。

结 语

[1] 宗捷,王赤民.从适航审定实践看我国飞艇发展[J].通用航空,2005(60).

[2] 范珉一.小型无人飞艇飞行控制系统设计[D].南京:南京理工大学,2007:17-21.

[3] 田辉. NEMA 0183格式简介[EB/OL].[2017-10].http://www.sgg.whu.edu.cn/isa/php/viewart.php?ID=91.

[4] 姜笃庆.伺服电机(舵机)及其在各领域的应用[J].电子报,2004.

[5] 曲东才.飞艇研制及发展[J].航空科学技术,2005(2).

张新亮(硕士),主要研究方向为智能制造技术、数控技术与数控系统、PLC应用。

猜你喜欢
飞艇遥控接收机
如何遥控引爆的
他是如何遥控引爆的
一种用于调幅接收机AGC的设计与实现
一种面向ADS-B的RNSS/RDSS双模接收机设计
数字接收机故障维修与维护
基于多接收机的圆周SAR欺骗干扰方法
派个飞艇去火星
飞艇的前世今生(下)
飞艇的前世今生(中)
飞艇的前世今生(上)