美文网首页
基于 Simulink 的无人机模型的建立

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

作者: 阿木实验室 | 来源:发表于2020-04-14 15:22 被阅读0次

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

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

    下面我们分别说下ActuatorKinematic_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,表示油门在中间值。所以我们预期是飞机将垂直最匀加速运动。

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

    相关文章

      网友评论

          本文标题:基于 Simulink 的无人机模型的建立

          本文链接:https://www.haomeiwen.com/subject/gzdvmctx.html