rflysim基于simulink控制4:实验介绍与流程实践

文章目录

  • 一、实验介绍
    • 1.1实验内容
    • 1.2 实验设置
    • 1.3 实验阶段
  • 二、操作实验
    • 2.1 实验一:Simulink代码自动生成——LED灯实验
    • 2.2 实验二:全流程实验——姿态控制器设计

一、实验介绍

1.1实验内容

动力系统设计–系统建模–状态估计–飞行控制–任务决策

1.2 实验设置

基础实验—分析试验–设计实验

1.3 实验阶段

每一个实验分为三个阶段:软在环仿真–硬在环仿真–飞行测试

二、操作实验

2.1 实验一:Simulink代码自动生成——LED灯实验

rflysim基于simulink控制4:实验介绍与流程实践_第1张图片

要求:使用遥控器CH1~CH5任意两个通道实现让LED灯以两种颜色和两种模式闪烁。
例程:e0\2.PSPOfficialExps\px4demo_input_rc.slx
1、编译 2、上传 3、实验
问题1:找不到Help文档中的枚举变量
未解决
问题2:pixhawk4 没有LED灯
Pixhawk4 (fmu-v5)需要外接GPS模块才能观察LED灯

2.2 实验二:全流程实验——姿态控制器设计

  • 基于Simulink的控制器设计与仿真
  • Pixhawk代码自动生成
  • 硬件在环仿真
  • 实际飞行实验

步骤1:设计控制器
步骤2:生成控制器子模块
步骤3:增加机体模型
步骤4:连线与输入输出配置
步骤5:FlightGear联合调试
步骤6:硬件在环,控制器代码生成配置
步骤7:硬件在环,控制器uORB输出
步骤8:编译生产固件
步骤9:代码下载
步骤10:连接接收机
步骤11:硬在环仿真,地面站配置
步骤12:打开3DDisplay
步骤13:安装Pixhawk到机架上
步骤14:控制器改为PWM输出
步骤15:参数设置与测试
步骤16:对比分析log数据

  • 步骤1:控制器设计
    e0\3.DesignExps\Exp1_AttitudeController.slx

  • 步骤2:生成控制器子模块
    将上文的控制器用鼠标全部选中(或者按下键盘CTRL+A),右键鼠标,点击“Create Subsystem For Selection”即可将控制器封装为一个子模块。右键该子模块,点击“Mask”-“Create Mask”在“Icon drawing commands”输入框(见右上图)中输入“image(‘./icon/Pixhawk.png’);”

  • 步骤3:添加机体模型
    打开前文给的Simulink多旋翼仿真程序“e0\1.SoftwareSimExps\CopterSim3DEnvironment.slx”(如右图所示),删掉其中的原有的控制器子模块(注意备份),然后将步骤二中得到的新控制器子模块复制进来进行替换。

  • 步骤4:连线与输入输出配置
    将控制器与多旋翼模型进行重新连线。由于此时遥控器信号无法获取,可以用常值来代替,或者用函数模拟相应的遥控器动作。“e0\3.DesignExps\Exp2_ControlSystemDemo.slx”
    问题:如何连接?

  • 步骤5:FlightGear联合调试
    运行,可以实现软件在环仿真。

  • 步骤6:硬件在环,控制器代码生成配置
    将其中的控制器模块单独复制出来,粘贴到文件“e0\3.DesignExps\Exp3_BlankTemp.slx”中,配置硬件在环生成环境。

  • 步骤7:硬件在环,控制器uORB输出
    控制器与PSP工具箱中,相应的接口连接,参考:“e0\3.DesignExps\Exp4_AttitudeSystemCodeGen.slx”
    ①输入:取“mannual_control_setpoint”的uORB消息来获取校准并归一化后的遥控器数据,而不是直接读取遥控器PWM信号,这种方式更方便可靠且可以兼容任意遥控器而不需要担心校准问题。
    ②输出:由于后面要进行硬件在环仿真而不是实际飞行,PWM的输出接口需要通过uORB消息给Pixhawk发送actuator_outputs消息来实现,而不是直接用PSP工具箱的PWM输出模块。

  • 步骤8:编译生产固件

  • 步骤9:代码下载

  • 步骤10:连接接收机

  • 步骤11:硬在环仿真,地面站配置
    ①进入“Airframe”标签,确保模型处于“HIL Quadcopter X”机架模式
    ②进入“Flight Modes”标签页,确认模式切换开关不是CH5,避免PX4模式切换开关对CH5通道占用
    ③关闭QGC

  • 步骤12:打开3DDisplay

  • 步骤13:安装Pixhawk到机架上

  • 步骤14:控制器改为PWM输出
    打开Simulink文件,按下图所示将uORB的输出改成PSP工具箱提供的PWM_out输出模块,重新生成代码并下载到Pixhawk中。这里给出了一个例子,见文件“e0\3.DesignExps\Exp5_ AttitudeSystemCodeGenRealFlight.slx”

  • 步骤15:参数设置与测试

  • 步骤16:对比分析log数据

你可能感兴趣的:(rflysim基础)