基于 Simulink 的无人机模型的建立 您所在的位置:网站首页 建立simulink仿真模型 基于 Simulink 的无人机模型的建立

基于 Simulink 的无人机模型的建立

#基于 Simulink 的无人机模型的建立| 来源: 网络整理| 查看: 265

无人机物理模型的模型文件是Model.slx,打开可以看到如下图所示的内容:

可以看到,模型由两个大的模块,Actuator和Kinematic_Equation,每个模块为一个subsystem(子系 统),里面包含了更多的模块,有点类似于写代码时候的函数封装。点进去可以看到模块内部的细节。

下面我们分别说下Actuator和Kinematic_Equation这两个模块的设计。

作动器建模

作动器即提供动力的器件,对于无人机来说,作动器就是固定在机臂末端的电机了,且这里一般都是无 刷电机。除了电机以外,还会有电调来驱动电机。电调的特性会改变电机的相应速度,控制精度等,所 以严格来说,电调也应该算到作动器的模型中去。

当我们给定一个 PWM 信号,该信号会传给电调控制器,然后电调再输出电压控制电机。当我们给定一 个 PWM 指令后,电机并不会马上达到目标速度,而是会有一个延时,这个延时跟电调,电机都会有关 系。这里,我们将其简化为一个一阶的惯性环节:

\Omega(s)=\frac{\Omega_{0}(s)}{1+s\tau}

其中 为时间常数。此外,我们还需要知道输入的 PWM 波与实际电机对应的转速之间的关系。因为根据 前面的公式我们可以知道,电机所产生的力和力矩,都是跟电机的转速对应的。在电调内部,其实也是 存在一个控制器,一般是 PID 控制器,来对电机的转速进行反馈控制,所以我们可以认为电机的转速跟输入的 PWM 信号的占空比是线性相关的。

\Omega_{i}=k\Gamma_{i}+p

所以,用 Simulink 实现的作动器模型如下所示:

下面我们要对电机进行建模。这里我们仅关注电机的主要效应,如产生的力矩和力,而忽略那些次要的 效应,对电磁感应等。根据之前章节电机产生力矩和力的公式,我们可以 Simulink 模块搭建出来,具体的实现细节,可以参考模型的源码,这里就不再过多的赘述。

动力学方程

下面我们来说下无人机的动力学方程。动力学方程是描述一个刚体运动的基本物理方程,它描述一个刚 体在受到外力的作用下所表现出来的运动状态。我们的无人机就是一个刚体,四个电机固定在机臂的尾端。当电机转动时,四个电机都是产生一个向上的力,四个力之和即为总拉力。这个拉力除了会为机体提供升力之外,还会产生一个导致机体旋转的力矩。

下图是姿态的动力学的 Simulink 模型 :

最左边Inertia_Matrix是机体的转动惯量,一般可以通过实验测得或者理论推算。这里我们假设机体是 完全对称的,故只有对角线上有元素。

Quaternion_Update模块使用1阶龙格库塔算法来对四元数进行更新。

其中 \Omega_{nb}^{b}=[0,w_{x}^{b},w_{y}^{b},w_{z}^{b}] ,表示在b系测的的b系相对于n系的角速度。

然后我们看下位置的动力学模型,如下图所示:

这里用到的位置的动力学公式在之前的章节也已经有说过。这里有个body_to_earch模块,是用来进行坐标变换的,即把信号从B系转到I系。其中用到的旋转矩阵为:

其中 q=\left[ w,x,y,z \right] 为姿态四元数。

仿真

模型搭建好后,我们可以来做个仿真简单测试模型的性能。如下所示,我们给模型输入四个同样的 PWM 信号,PWM 值为 1500,表示油门在中间值。所以我们预期是飞机将垂直最匀加速运动。

以下是部分的仿真结果,跟我们预期的一致。

内容节选至《基于模型(Simulik/Matlab)控制的开发》,想要了解更多课程内容,请添加阿木实验室小助手微信(微信号:jiayue199506)。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有