无人机课程姿态解算教学难点突破

2020-12-23 04:19高国刚宋强闫景富姚彦博
教育教学论坛 2020年47期

高国刚 宋强 闫景富 姚彦博

[摘 要]在无人机课程教学中,姿态解算是教学重点之一。但由于基本概念多、数学推导繁复、内容枯燥、学生理解吃力,这使其教学变得非常困难。为使学生更好的学习和掌握无人机姿态解算和姿态变化过程,文章以自主开发的模拟仿真平台为基础,与数学教育软件GeoGebra相配合,实现了算法可视化教学,有效地帮助学生理解了相关算法在实际工程中的物理意义,成功突破了这个难点。

[关键词]无人机课程教学;姿态解算;算法可视化

[基金项目]2020年中国石油大学(北京)克拉玛依校区教育教学改革项目“基于虚拟仪器的电工电子学实验教学改革”(JG2020013);2017年新疆维吾尔自治区综合教改项目“政校企协同育人机制下的机械专业创新创业人才培养新模式”(2017JG027);2017年教育部产学合作协同育人项目“虚拟仪器机电联合实验室建设”(201702008089)

[作者简介]高国刚(1988—),男,甘肃酒泉人,硕士,中国石油大学(北京)克拉玛依校区工学院实验师,主要从事自动控制、无损检测等研究。

[中图分类号] G642[文献标识码] A[文章编号] 1674-9324(2020)47-0-03[收稿日期] 2020-08-15

一、引言

近年来,随着无人机技术和产业的快速发展,以及我国对“新工科”“双创”等政策的大力支持,各种电子设计大赛、创新创业项目中涉及无人机的课题越来越多,大学生对无人机的关注度也持续攀升[1-2]。为了更好地提高高校学生对前沿科技的了解,增强学生的创新能力和实际应用能力,一些高校已经针对无人机展开了项目式教学[3-6]。姿态解算是无人机教学中的重点内容,其中需要理解的知识点较多、理论推导和计算繁复,学生通过阅读文献较难理解飞行器的姿态变化和解算过程,因此在课堂讲授中时常会出现教师难教、学生难学的现象。鉴于此,笔者结合自身教学实践和科研经历,以自主开发的无人机姿态解算模拟仿真平台为基础,对教学方法和手段进行了改革探索,目的是使学生能够直观的了解和学习相关算法,激发学生思考数学公式所表达的实际工程意义,培养学生的求知能力,进而突破教学难点,改善教学效果。

二、教学工具简介

目前国内用于教学的无人机平台不多,大疆等公司生产的无人机功能多,种类齐全,性能稳定,但代码不开源,无法在教学中使用;以PX4、APM或STM32为核心开源飞控,采用C语言编程,结合Matlab/Simulink软件平台进行仿真验证,入门起点较高,不利于初学快速更改控制算法和参数。

LabVIEW是一款用图形化符号代替文本编程语言的虚拟仪器开发平台,具有操作简单,易于理解和掌握等特点。myRIO是NI公司針对教学和学生创新应用推出的嵌入式系统开发平台,其作为可重复配置和使用的教学工具,具有以下特点:①编程简单,代码开源,易于上手使用;②板载资源丰富,硬件交互扩展能力强;③安全便捷,容易携带。利用LabVIEW和myRIO开发飞行器姿态解算仿真平台,把相关算法集成到平台中,软件架构简单易懂,计算结果实时可见。学生在熟悉相关算法后,可以利用平台验证不同参数对姿态解算结果的影响,进而加深对相关算法的理解。

教具由上位机和下位机组成。其中,惯性测量单元MPU6050模块和myRIO-1900构成下位机,其任务是采集原始数据采集和计算飞行器姿态,计算结果通过用户数据报协议通信(UDP,User Datagram Protocol)发送至上位机。上位机是一台装有LabVIEW软件的PC机,其功能是实时显示飞行器姿态数据和飞行器模型在3D场景中的位置。

另外,考虑到学生的数学基础良莠不齐,可在教学中利用Geogebra软件进行辅助教学。GeoGebra是一款集数值计算、符号计算、函数绘图等功能的数学教育软件,具有界面简洁化、命令可视化等优点,能够轻松实现函数表达式和图像的同步变化,从而提升学生对知识点的理解能力。

三、教学内容概述及教学过程

无人机姿态解算内容广泛、概念庞杂,但核心问题是要理解旋转矩阵、欧拉角和四元数三种姿态表示的变化与机体角速度的关系。课程内容由浅入深,可分为3个部分:①基本概念;②坐标变换及其实现;③姿态解算与仿真。每部分内容都将以前续内容为基础不断增加难度,旨在培养学生对算法的理解能力。

(一)基本概念讲解

在教学开始时,教师务必要把一些基本概念介绍清楚,否则学生容易在学习过程中感到理解困难,体会不到知识的实际作用。在讲解基本概念时,应适当加以归纳整合,形成一个简明的理论体系,可以从实际生活案例出发,增加学生的感性认识,并以此为基点开展相关概念讲述[7]。教师需讲述的基本概念如下:

右手定则:右手拇指指向X轴正方向,食指指向Y轴正方向,中指所指的方向即是Z轴正方向。要确定旋转正方向,用右手的大拇指指向轴的正方向,弯曲四指,则四指的指向即是旋转正方向。

惯性坐标系(i系):原点位于地球中心,坐标轴相对于恒星无转动,轴向定义为OXi,OYi,OZi。其中OZi的方向与地球极轴的方向一致。

载体坐标系(b系):它是一个与特定物体相关联的独立正交坐标系,并随物体姿态的变化而改变。为了便于理解和计算,在选择坐标系时,教师可以引导学生将i系和b系的坐标轴方向保持一致。

欧拉角:假定载体的初始状态为标准方位,即b系与i系重合,某一时刻载体相对于参考坐标系的姿态,可以通过绕不同坐标的3次连续转动来确定。因此,从i系到b系的转换关系可表示为:绕Z轴转动ψ角;绕新坐标系的Y轴转动θ角;绕新坐标系的X轴转动φ角。

(二)坐标变换教学

坐标变换的讲解可先从简单的2D环境中物体绕原点的旋转讲起,循序渐进过度至3D环境中,使学生了解在不同环境中进行坐标变换的逻辑性关系。在3D空间中,要确定或描述一个物体的方位至少需要三个数,描述物体坐标方位的常用方法有三种:①方向余弦矩阵;②欧拉角;③四元数。三种表示法能够相互转换,以Z-Y-X旋转顺规为例,当物体系相对于惯性系发生姿态变化时,欧拉角与旋转矩阵、欧拉角与四元数的关系如文献[8]所述。方向余弦矩阵反映了b系相对于i系的映射关系,实际物理意义是:若方向余弦矩阵已知,那么通过该矩阵便可找到b系相对于i系发生的姿态变化。

教师在授课时,可在Geogebra软件中以列表的形式设置3个长度相等的方向向量表示b系,以便直观的展示坐标变换过程。当姿态发生变化时,方向向量与旋转矩阵相乘便可得到b系相对于i系变化后的姿态。图1展示了当ψ=0.2rad、θ=-0.5rad、φ=0.3rad时的变换结果。当学生利用四元数进行坐标变换时,需提醒其注意四元数运算与传统运算的区别。

学生熟悉相关算法后,即可用LabVIEW编写坐标变换算法,并在上位机程序中将3个表盘设置为输入控件。程序运行后,调节相应表盘指针便可动态查看飞行器坐标变换过程。图2展示了当欧拉角分别设置为11.46°,-28.65°和17.19°时,飞行器坐标变化结果,对比Geogebra变换结果即可验证算法的正确性。同理,也可学习和验证其他顺规的坐标转换算法。

在讲解坐标变换时,教师可同时展示出方向余弦矩阵、欧拉角和四元数法的变换结果,引导学生发现三种姿态表示方法的优劣:方向余弦矩阵的缺点是因数据冗余导致的计算效率降低;欧拉角法在处理坐标变换问题时有可能导致万向锁。因此,选用四元数法表达物体姿态,既能减小计算量,提高姿态解算效率,又能保证姿态解算精度。

(三)姿态解算教学

姿态解算涉及四元数微分方程的求解和误差补偿控制,授课可采用“程序填空”的方式进行。四元数中包含了物体的姿态信息,物体姿态的改变即为四元数的改变,实时的姿态计算需要实时更新四元数。因此,需要构建四元数关于时间的微分方程[9]来研究四元数的变化规律,并利用四阶龙格—库塔法求解微分方程[10]。在误差补偿控制方面,可通过构建PI控制器来控制误差补偿的大小和精度,其基本思想是:利用i系标准重力加速度可算得b系的理论重力加速度,飞行器的实际重力加速度可通过传感器测得,此二者间必然存在误差夹角β,根据向量叉乘运算法则可算出β的正弦值。由于β的变化范围较小,故可将β近似为理论值与实际值之间的误差。在PI控制器中,调节比例项可消除静态误差,利用积分项可控制传感器的“可信度”,计算结果即为误差补偿值δ。通过δ修正陀螺仪的测量值,并用修正结果求解四元数微分方程便可得到相对准确的姿态。

使用LabVIEW开发的无人机姿态解算模拟仿真平台,在求解四元数微分方程和误差补偿控制时都使用了MathScript节点,这样做不仅提升了算法的执行效率,而且在教学中方便教师向学生提供程序框架,学生可以基于所学知识对程序进行补充完善,并随即得到验证。这种“程序填空”的学习形式不但可以减轻学生负担,获得最佳学习效果,而且还留有充分发挥和改进的空间。

四、教学效果分析

上述教学内容的授课对象是2017级的97名学生,经过教学实践,教学效果得到明显好转。笔者在课程结束后对教学效果进行了问卷调查,调查内容包含5个方面:对教学效果的满意程度、对课程内容的掌握程度、教师知识点讲解清晰程度、教学手段优化程度以及教师对课程的准备程度。调查结果分为优秀、良好、一般、较差和很差5个等级。调查结果显示,教师利用自主开发的教学工具能够较清晰地描述课程中的相关算法,使抽象的算法得到更直观的表达,突破了教师難教、学生难学的教学难点,加深了学生对教学内容的理解,对改善教学效果起到了促进作用。

五、结语

利用模拟仿真平台,配合GeoGebra软件进行算法可视化教学,可以引导学生逐步了解算法背后的物理意义,把学生从繁杂的数学公式中解脱出来,使枯燥的理论变得有趣。循序渐进的教学过程有助于完善学生的知识体系,提升学生的学习主动性以及对理论知识的理解能力。“填空”式的算法实现使学生在轻松愉快的氛围下突破了学习难点,情感体验得到升华。良好的教学效果使教师在传道授业的过程中,充分体会到了自身工作的价值与意义。

参考文献

[1]曹煦,冯士恩.无人机技术应用现状和发展趋势研究[J].计算机产品与流通,2020(07):107.

[2]周子栋,陈至坤,赵志佳.四旋翼无人机飞控算法综述[J].网络安全技术与应用,2019(09):33-36.

[3]温凯,陈缪.全尺寸四旋翼无人机教学平台设计与课程开发[J].实验技术与管理,2018,35(09):100-103.

[4]王刚,陈龙,薛远奎,等.四旋翼无人机控制理论与设计课程实践教学[J].实验科学与技术,2018,16(02):74-77.

[5]郁剑,张秋浩,镇毅.基于四旋翼无人机的课程实践教学[J].科技视界,2020(05):85-86.

[6]曾舒婷,夏庆锋.高等学校无人机课程的跨学科教学研究[J].电脑知识与技术,2018,14(29):168-169.

[7]陈立钢,牛娜,孙明礼,等.高等院校工科专业分析化学教学改革与实践[J].化工高等教育,2019,36(02):76-79+99.

[8]秦永元.惯性导航[M].第2版.北京:科学出版社,2014: 4-7.

[9]盛广润,高国伟,张伯源.基于四元数的四旋翼飞行器姿态解算研究[J].现代电子技术,2020,43(14):8-12+16.

[10]史凯,刘马宝.捷联惯导四元数的四阶龙格库塔姿态算法[J].探测与控制学报,2019,41(03):61-65.

Abstract: In the UVA Course teaching, posture calculation is one of the key teaching points. However, due to the many basic concepts, complicated mathematical derivation, boring content, and difficult to understand for students, the teaching of the course becomes very difficult. In order to help students to better learn and master the UAV posture calculation and change process, based on the self-developed simulation platform and in combination with the mathematical software GeoGebra, this paper realizes the algorithm visualization teaching, which effectively helps students understand the physical significance of relevant algorithms in practical engineering, and successfully breaks through this difficulty.

Key words: UAV Course teaching; posture calculation; algorithm visualization