2021-11-16 18:58:42 索煒達電子 822
項目編號:E2267
文件大?。?86K
源碼說明:帶中文注釋
開發(fā)環(huán)境:Python
簡要概述:
無人機力學仿真工具,主要用于仿真飛行器上的重力及各種力矩對飛行器控制的影響。
完成剛體的力學建模。
TODO:
Chinook 重構(gòu),參數(shù)設置統(tǒng)一
代碼示例
chinook_parameters={
'mass':0.1,
'J':[0.125/1000]*3,
'length':0.2,
'height':0.1,
'init_attitude':[0,math.pi/4,math.pi/4]
}
a = ChinookSimEnv(chinook_parameters)
a.run(30000)
簡單的PID控制效果:
俯仰控制的3D動畫效果:
仿真環(huán)境執(zhí)行流程
-仿真環(huán)境執(zhí)行sim_step
遍歷調(diào)用所有控制器的run函數(shù)
遍歷調(diào)用所有仿真對象的sim_step函數(shù)
計算合力,計算合力矩
調(diào)用每個力的sim_step函數(shù)(默認函數(shù)為空,有些力可能需要不斷變化,如空氣阻力等,此時可以在該力的類中重寫此函數(shù))
更新位置、速度、加速度 角度、角速度、角加速度
-仿真環(huán)境定時器運行(用于在某個時刻觸發(fā)擾動等)
-調(diào)用仿真環(huán)境的callback,用戶可自己指定回調(diào)函數(shù)
目錄│文件列表:
└ UAV_Sim
│ chinook.py
│ display.py
│ example.gif
│ physics.py
│ pid_control.png
│ rotate.m
│ test_physics.py
└ __pycache__
└ physics.cpython-37.pyc