导读
本讲针对RflySim平台的一些特点简要介绍了平台使用批处理技术的原因,并根据CopterSim中仿真功能区的参数设置阐述了批处理技术在平台中的具体运用。
平台使用篇 | 批处理(bat)脚本使用教程(三)
RflySim平台使用批处理技术的原因
①调用多个软件RflySim平台是一个基于Pixhawk/PX4和MATLAB/Simulink的快速生态开发系统或工具链,在仿真或开发时需要启用多个软件来完成不同的任务,例如飞行控制器固件烧录、地面站程序、模型导入等,后续的测试也相对繁琐。使用批处理技术可以帮助自动化这些任务的执行,在一个脚本文件中编写所需的命令,然后通过调用该脚本文件运行这些命令,从而减少了手动操作的复杂性和耗时性,提高用户开发无人机控制算法和系统的效率和体验。
②调用多个飞控端口在进行集群仿真时,我们可能需要同时连接多个飞控硬件,以及无人机、遥控器等,并分别为每个硬件配置相应的端口。批处理技术可以帮助我们自动化这个过程,编写一个脚本文件,包含多个命令,每条命令都设置了不同的端口参数,然后通过调用该脚本文件来启动这些硬件设备,在节省时间的同时,也可以避免手动设置参数时出现的错误。
总的来说,使用批处理技术可以提高RflySim平台在进行多任务、大数据量的仿真实验时的效率和可靠性,使得用户能够更加高效地完成无人机控制算法和系统的设计、仿真和实现。
CopterSim中的批处理参数设置
图 1 CopterSim仿真功能区参数设置
SET /a START_INDEX=1 #对应“参数1”,飞机起始ID (默认从1开始,可自行设置)
• SET /a UDP_START_PORT=20100 #对应“参数2”,UDP起始接收端口号 (默认从20100开始)
SET DLLModel=0 #对应“参数3”,是否用DLL模型,及选项序号 (会直接调用C:\PX4PSP\CopterSim\external\model下的DLL文件,设置的数值对应调用顺序,0对应不调用)
图 2 DLL模型选择
1. SET SimMode=2PX4_HITL选0 :PX4官方硬件在环仿真模式;
2. PX4_SITL选1:PX4官方软件在环仿真模式;
3. PX4_SITL_RFLY选2:本平台新增软件在环仿真模式,可实现100架以上飞机的大规模集群仿真(PX4官方版本存在飞机数量限制);
4. Simulink&DLL_SIL:Simulink中生成的DLL文件仿真模式(Simulink生成的DLL文件包含控制器,可直接调用外部指令控制)。
• #对应“参数4”,仿真模式选择
图 3 仿真模式选择
• SET UE4_MAP=Grasslands #对应“参数5”,三维场景地图选择,这里是Grassland (可输入地图名称,也可输入对应的序列号,可参见之前RflySim3D地图文件的导入)
• SET IS_BROADCAST=0 #对应“参数6”,是否局域网广播数据 (是否进行联机,在局域网里所有电脑都可以发送飞机数据,发送了数据的飞机的飞行状态均在RflySim3D内可见)
• SET /a ORIGIN_POS_X=0 #对应“参数7”,初始X位置,整数,单位m
• SET /a ORIGIN_POS_Y=0 #对应“参数8”,初始Y位置,整数,单位m
• SET /a ORIGIN_YAW=0 #对应“参数9”,初始yaw角度,整数,单位度
图 4 初始位置设置
• SET UDPSIMMODE=0 #对应“参数11”,UDP数据模式,选项序号 (详细可参见平台PPT第六讲)
注:“参数10”飞控选择在插入飞控后自动识别