RflySimSDK v3.08
RflySimSDK说明文档
载入中...
搜索中...
未找到
MultiCopterDll类 参考
+ 类 MultiCopterDll 继承关系图:
+ MultiCopterDll 的协作图:

Public 成员函数

 __init__ (self, CopterID=1, ClassID=-1, MapName='Grasslands', ip='127.0.0.1', LocX=0, LocY=0, Yaw=0, UdpMode=0, useGPS=False, GpsOrin=[0, 0, 0])
 这是类的构造函数,用于初始化 ModelLoad 类的实例。参数的详细含义参考 Bat脚本使用参考
 
- Public 成员函数 继承自 ModelLoad
 CreateVehicle (self, CopterID=1, ClassID=-1, MapName='Grasslands', ip='127.0.0.1', LocX=0, LocY=0, Yaw=0, UdpMode=0, useGPS=False, GpsOrin=[0, 0, 0])
 初始化并配置载具模型。参数的详细含义参考 Bat脚本使用参考
 
 Updata3Doutput (self)
 用于更新载具模型仿真输出,读取车辆当前的运动状态数据并更新到 out3Ddata 和 outHilData,并与地形数据进行交互。
 
 SendUpdate3DMap (self, isSetSpeed=False)
 用于向 RflySim3D发送命令,更新 3D 地图或设置RflySim3D仿真速度。
 
 get3DDataBuf (self)
 提取载具模型的 3D 仿真数据out3Dvect并将其打包,以便通过网络转发给RflySim3D
 
 Send3DData (self)
 将打包的 3D 数据通过 UDP 发送到端口 20010,用于与 RflySim3D 进行通信
 
 SendSimData (self)
 将与 Send3DData 同样的 3D 数据发送到端口 30100,用于仿真数据的传输
 
 SendHILData (self)
 发送硬件在环(HIL)仿真数据到指定的端口,通常用于与飞控系统交互
 
 SendOutCopter (self)
 发送仿真数据到30100端口,可用于日志记录
 
 fillList (self, data, inLen, fill=0)
 填充或裁剪一个列表
 
 StartAutUpdate (self, UpdateFreq=30, speed=-1)
 用于启动自动更新循环,以指定的频率更新仿真状态。
 
 StopAutUpdate (self)
 用于停止自动更新循环
 
 AutUpdateLoop (self)
 自动更新循环的核心逻辑,实现持续的仿真更新、数据发送等功能。
 
 StartExtCtrl (self)
 用于启动外部控制功能,创建两个用于接收外部控制数据的UDP套接字,并开启两个线程来监听数据。
 
 StopExtCtrl (self)
 停止外部控制,关闭UDP套接字并终止接收线程。
 
 Recv20100Loop (self)
 线程的主循环,用于接收20100端口的数据并根据控制模式执行相应的控制命令。
 
 Recv30100Loop (self)
 线程的主循环,用于接收30100端口的数据并根据不同的数据类型执行相应处理。
 
 DllDestroyModel (self)
 销毁当前加载的仿真模型
 
 DllReInitModel (self)
 重新初始化仿真模型。
 
 DllInputSILs (self, in_ints=[0] *8, in_floats=[0] *20)
 将综合模型系统仿真输入数据传递给 DLL,参见 sendSILIntFloat

 
 DllInputColls (self, in_floats_collision=[0] *20)
 将碰撞数据传递给 DLL,用于仿真中处理碰撞情况,参见 sendColl20d

 
 DllTerrainIn15d (self, terrain15d=[0] *15)
 输入三维场景的地形高度数据给DLL,用于仿真环境的地形建模,参见 sendTerrIn15d
 
 DllInitGpsPos (self, gps=[0] *3)
 初始化仿真的 GPS 坐标原点,用于地理位置相关的仿真,参见 sendReGPSOrin

 
 DllInitPosAngState (self, init_pos_offset=[0, 0, 0], init_ang_offset=[0, 0, 0])
 初始化位置和姿态状态,用于设置仿真对象的初始位置信息和朝向,参见 sendReSimXyzRPYaw
 
 DllInputDoubCtrls (self, in_doub_ctrls=[0] *28)
 综合模型外部控制指令输入接口,用于传递 28 维的双精度控制指令数据,参见 sendInDoubCtrls
 
 DllinSIL28d (self, in_doub_ctrls=[0] *28)
 综合模型外部控制指令输入接口,用于传递 28 维的双精度控制指令数据,参见 sendInDoubCtrls
 
 DllInCtrlExt (self, in_ctrl_ext=[0] *140)
 扩展控制数据,用于支持更高级的控制仿真功能,参见 sendInCtrlExtAll
 
 DllInFromUE (self, in_from_ue=[0] *32)
 从RflySim3D输入自定义数据到 DLL,用于与外部仿真环境的集成。
 
 DllInputColls (self, inCll=[0] *20)
 传递 20 维float数组的碰撞数据的接口,用于处理仿真对象之间的碰撞检测。
 
 DllGetStep0 (self)
 获取仿真的步长,用于确定仿真时间步的大小。如果 DLL 中没有对应的函数,默认返回 0.001
 
 Dllstep (self)
 执行一次仿真步骤。这是对 DLL 中仿真时间推进的基本调用。
 
 ModelUpdate (self, step_time)
 手动更新仿真状态的接口
 
 DlloutVehileInfo60d (self)
 从 DLL 获取 60 维的载具三维信息数据。包括各种飞行器或车辆的状态数据。
 
 DllOutCopterData (self)
 从 DLL 获取 32 维数据,包括飞行器的传感器读数、状态信息等
 
 SendPosNED (self, x=0, y=0, z=0, yaw=0)
 发送NED(北东地)地球参考系下的位置控制命令。
 
 SendPosLocal (self, x=0, y=0, z=0, yaw=0)
 
 SendVelNED (self, vx=0, vy=0, vz=0, yawRate=0)
 发送NED(北东地)地球参考系下的速度及偏航控制命令。
 
 SendVelFRD (self, vx=0, vy=0, vz=0, yawRate=0)
 发送FRD(前右下)机体参考系下的速度控制命令。
 
 SendVelNEDNoYaw (self, northvel=0, eastvel=0, downvel=0)
 发送NED(北东地)地球参考系下的速度及偏航控制命令。
 

额外继承的成员函数

- Public 属性 继承自 ModelLoad
 udp_socket
 
 isSendExtData
 
 out3Ddata
 
 out3Dvect
 
 outHilData
 
 outCopterVect
 
 simSpeed
 
 dll
 
 isBroadCast
 
 isAutoUpdate
 
 CopterID
 
 ClassID
 
 MapName
 
 LocX
 
 LocY
 
 Yaw
 
 UdpMode
 
 useGPS
 
 GpsOrin
 
 map
 
 ue
 
 geo
 
 ip
 
 port
 
 port2
 
 InitPos
 
 InitAng
 
 GpsOrinInit
 
 t1
 
 Interval
 
 nextTime
 
 lastTime
 
 udp_20100
 
 isRec20100
 
 t2
 
 udp_30100
 
 isRec30100
 
 t3
 

构造及析构函数说明

◆ __init__()

__init__ ( self,
dll_name = 1,
CopterID = -1,
ClassID = 'Grasslands',
MapName = '127.0.0.1',
ip = 0,
LocX = 0,
LocY = 0,
Yaw = 0,
UdpMode = False,
useGPS = [0,0,0] )

这是类的构造函数,用于初始化 ModelLoad 类的实例。参数的详细含义参考 Bat脚本使用参考

  • 参数
    dll_name要加载的 DLL 文件的名称。
    CopterID飞机ID
    ClassID载具三维样式
    MapName仿真三维地图名称
    ipip地址,默认为本机
    LocX载具初始X位置,单位m
    LocY载具初始Y位置,单位m
    Yaw载具初始yaw角度,设置地图中的初始航向角,单位是度数(degree)。航向角是指在水平面上,相对于北方的方向角。
    UdpMode选择不同的通信模式(默认为Full)
    useGPS是否启用GPS模式(默认模式选择直角坐标系)
    GpsOrinGPS原点坐标,三维数列依次为经度、纬度、海拔高度

重载 ModelLoad .

+ 函数调用图:
+ 这是这个函数的调用关系图:

该类的文档由以下文件生成: