PX4原始碼分析5 PX4啟動流程

2021-08-03 04:54:15 字數 496 閱讀 5512

上電之後程式入口為firmware/nuttx/nuttx/arch/arm/src/stm32/stm32_start.c中的__start函式,負責stm32晶元的底層初始化,包括是時鐘,gpio等。

__start函式呼叫firmware/nuttx/nuttx/sched/os_start.c中的os_start函式,負責os的底層初始化,包括佇列和程序結構等。

os_start函式呼叫firmware/nuttx/nuttx/sched/os_bringup.c中的os_bringup函式,負責os基本程序的啟動和使用者程序的啟動。使用者啟動入口由config_user_entrypoint巨集定義進行指定。

(2)io中config_user_entrypoint巨集定義為user_main:

呼叫src/modules/px4iofirmware/px4io.c中的user_start函式,負責io基礎環境的初始化,包括pwm,串列埠,adc等,最後進入死迴圈,用於遙控器輸入和與fmu通訊的內容。

PX4原始碼分析4 PX4軟體結構

px4自動駕駛儀軟體可分為三大部分 實時作業系統 中介軟體和飛行控制棧。提供posix style的使用者操作環境,進行底層的任務排程。px4中介軟體執行於作業系統之上,提供裝置驅動和乙個微物件請求 micro object request broker,uorb 用於駕駛儀上執行的單個任務之間的非...

PX4姿態控制演算法分析

px4的姿態控制分為角度環 外環 和角速度環 內環 角度環使用p控制,角速度環使用pid控制,由於偏航通道響應較慢 多旋翼飛行器的俯仰和滾轉運動由旋翼的公升力力矩產生,偏航運動由旋翼的反扭矩來產生,而公升力力矩要比反扭矩大得多 可從旋翼的公升力係數和反扭矩係數中看出 這造成了偏航運動能力相比滾轉和俯...

關於px4原始碼中固定翼姿態控制

在看完px4固定翼的姿態控制 後,我有幾點思考 1.我們知道程式中姿態控制的方法是將控制角度轉化為控制角速度。那pitch來說,先求出設定的pitch和當前的pitch的差值 delta pitch 然後將delta pitch除以時間常數得到目標pitch rate。接著將目標pitch rate...