主要内容

四轴飞行器项目

这个例子展示了如何使用Simulink®建模四轴飞行器,基于Parrot®系列迷你无人机。

  • 为了管理模型和源文件,它使用项目管理

  • 为了在三维环境中展示四轴飞行器,它使用了Simulink 3D动画。

  • 对于飞行模拟应用程序的协作开发,它提供了飞行模拟应用程序模板的实现。

此示例使用Simulink支持包鹦鹉迷你无人机

注意:要成功运行此示例,必须安装C/ c++编译器。

打开四轴飞行器项目

运行以下命令为本例创建并打开项目文件的工作副本:

asbQuadcopterStart

四轴飞行器物理特性

以下是四轴飞行器的物理特性示意图:

  • 质量和惯性

  • 转子

四轴飞行器的体轴以重心为中心。

  • x-轴从重心开始,沿着四轴飞行器的机头方向指向。

  • y-轴从重心开始,指向四轴飞行器的右侧。

  • z-轴从重心开始,从四轴飞行器向下指向,遵循右手规则。

质量和惯性

我们假设整个身体是一个粒子。该文件vehicleVars包含惯性和质量的值。

转子

  • 1号转子相对于z设在。它位于平行于xy-平面,-45度x设在。

  • 2号转子相对于机体负旋转z设在。它位于平行于xy-平面,-135度x设在。

  • 3号转子与1号转子的旋转方向相同。它位于平行于xy-平面,135度x设在。

  • 4号转子与2号转子的旋转方向相同。它位于平行于xy-平面,45度x设在。

本例使用Prouty[1]定义的方法,并适用于Pounds等[2]定义的重型四轴飞行器。

控制

对于控制,四轴飞行器使用互补滤波器估计姿态,卡尔曼滤波器估计位置和速度。这个例子实现了:

  • 用于俯仰/滚转控制的PID控制器

  • 偏航的PD控制器

  • 一个PD控制器的位置控制在东北向下坐标

controllerVars文件包含与控制器相关的变量。的estimatorVars文件包含与估计器相关的变量。

该示例将控制器和估计器实现为模型子系统,允许对估计器和控制器的几种组合进行设计评估。

若要向四轴飞行器提供输入(俯仰、滚转、偏航、北(X)、东(Y)、下(Z)坐标),请使用以下其中之一并更改VSS_COMMAND变量在工作区中:

  • 信号编辑器块

  • 操纵杆

  • 之前保存的数据

  • 电子表格数据

传感器

该示例使用一组传感器来确定其状态:

  • 惯性测量单元(IMU),用来测量角速度和平移加速度。

  • 用于光流估计的照相机。

  • 用于测量高度的声纳。

该示例将传感器的特征存储在文件中sensorVars.若要在这些测量中包含传感器动态,可以更改VSS_SENSORS变量。

环境

这些模型实现了几个Aerospace Blockset™环境块,包括大气和重力模型。要包含这些模型,您可以更改VSS_ENVIRONMENT变量,以便在变量和固定的环境模型之间切换。

线性化

该模型使用trimLinearizeOpPoint利用Simulink控制设计(R)对四轴飞行器的非线性模型进行线性化。

测试

为了确保轨迹生成工具正常工作,该示例在trajectoryTest文件。有关如何做到这一点的更多信息,请参见Simulink控件设计开始学习Simulink控制设计(仿真软件控制设计)).

可视化

你可以用以下方式之一来可视化四轴飞行器的变量:

  • 使用模拟数据检查器。

  • 使用飞行仪器块。

  • 在不同的可视化变量子系统之间切换。可以在不同的变量子系统之间切换VSS_VISUALIZATION变量。注意,这些变体之一是FlightGear动画。要使用此动画,必须向项目添加FlightGear兼容的四轴飞行器模型。软件不包括这个模型。

轨迹生成

轨迹生成工具,使用杜宾方法,创建一组导航路径点。为了创建带有一组路径点的轨迹,该方法使用一组由位置、航向、转弯曲率和转弯方向定义的姿态。

要启动该工具,请确保项目处于打开状态并运行:

asbTrajectoryTool

界面显示如下:

界面有几个面板:

路点

这个面板描述了轨迹工具需要的姿势。为了定义这些姿势,面板使用了文本框:

  • 而且(在米)

  • 标题(学位)

  • 曲率(转弯曲率,单位米^-1)

  • (方向顺时针或逆时针)

一个姿势列表出现在文本框右侧的路径点列表中。

若要添加路径点,请在编辑框中输入姿势值并单击添加.新的路径点出现在同一面板中的路径点列表中。

若要编辑某个路径点的特征,请在列表中选中该路径点,然后单击编辑.路径点的特征显示在编辑框中。根据需要编辑特征,然后单击好吧.要取消更改,请单击取消

若要删除某个路径点,请在路径点列表中选中该路径点,单击删除

禁飞区

该委员会确定了禁飞区的位置和特征。为了定义禁飞区,面板使用了文本框:

  • 而且(在米)

  • 半径(米距离)

  • 保证金(安全裕度(米))

使用添加删除编辑好吧,取消按钮的方式与Waypoints面板相同。

绘制轨迹

该面板根据航路点和禁飞区特征绘制了苹果山校园空中示意图上的轨迹。

要生成轨迹,将航路点和禁飞区特征添加到各自的面板中,然后单击生成轨迹

若要保存当前在面板中的轨迹,请单击保存按钮。这个按钮只保存你最后的轨迹。

单击,加载上一次保存的轨迹负载

要加载默认轨迹,按加载默认的按钮。

若要清除路径点和禁飞区面板中的值,请单击清晰的

默认数据包含特定位置的姿态,玩具四轴飞行器使用它的摄像头,因此地面上的飞行员可以估计屋顶上积雪的高度。每个辅助发电机都被定义为三个禁飞区,这样即使四轴飞行器出现故障,也不会对校园基础设施造成任何破坏。

当示例为默认数据生成轨迹时,图应该如下所示:

红线代表轨迹,黑色代表轨迹x标记决定了轨迹的变化或特定的姿势。蓝线代表特定路径点的方向,伴随特定姿势。禁飞区用绿色圆圈表示。

如果您拥有Simulink 3D动画许可证,您还可以在苹果山校园的3D表示中查看轨迹:

注意:由于可视化的原因,四轴飞行器的3D表示不是在相同的尺度上的环境和转子速度已经降低,以消除混叠。

参考文献

骄傲,R.直升机性能,稳定性和控制。PWS出版社,2005年。

[2]磅,P, Mahony, R., Corke, P.大型四旋翼机器人建模与控制。控制工程实践。2010。

Baidu
map