多旋翼飛行器設(shè)計(jì)與控制實(shí)踐 第04講-實(shí)驗(yàn)流程_第1頁(yè)
多旋翼飛行器設(shè)計(jì)與控制實(shí)踐 第04講-實(shí)驗(yàn)流程_第2頁(yè)
多旋翼飛行器設(shè)計(jì)與控制實(shí)踐 第04講-實(shí)驗(yàn)流程_第3頁(yè)
多旋翼飛行器設(shè)計(jì)與控制實(shí)踐 第04講-實(shí)驗(yàn)流程_第4頁(yè)
多旋翼飛行器設(shè)計(jì)與控制實(shí)踐 第04講-實(shí)驗(yàn)流程_第5頁(yè)
已閱讀5頁(yè),還剩78頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第四講實(shí)驗(yàn)流程介紹2.控制LED燈實(shí)驗(yàn)操作具體流程3.姿態(tài)控制實(shí)驗(yàn)操作具體流程結(jié)束結(jié)束和決策相關(guān)任務(wù)。每個(gè)任務(wù)分為由淺入深的三個(gè)實(shí)驗(yàn),即基礎(chǔ)實(shí)驗(yàn)、分析實(shí)驗(yàn)和設(shè)計(jì)實(shí)驗(yàn)。結(jié)結(jié)束圖.實(shí)驗(yàn)關(guān)系圖對(duì)于基礎(chǔ)實(shí)驗(yàn)和分析實(shí)驗(yàn),本書會(huì)提供完整的例程,以此保證所有的對(duì)于基礎(chǔ)實(shí)驗(yàn)和分析實(shí)驗(yàn),本書會(huì)提供完整的例程,以此保證所有的讀者都可以順利完成實(shí)驗(yàn)。通過(guò)以上兩個(gè)分步實(shí)驗(yàn),讀者能較好地了整個(gè)過(guò)程由淺入深,便于一步一步指導(dǎo)讀者修改例程,運(yùn)行修改后的程序并收集和分析數(shù)據(jù)。在上述兩個(gè)實(shí)驗(yàn)完成的基礎(chǔ)上,針對(duì)給定的任務(wù),進(jìn)行獨(dú)MATLAB/Simulink開發(fā)仿真環(huán)境控制 Pixhawk自駕儀系統(tǒng) 試飛軟件在環(huán)仿真硬件在環(huán)仿真飛行測(cè)試FlightGear三維顯示CopterSim+3DDisplay 控制每個(gè)實(shí)驗(yàn)有一般包括以下三個(gè)階段:(1MATLAB/Simulink開發(fā)仿真環(huán)境控制 Pixhawk自駕儀系統(tǒng) 試飛軟件在環(huán)仿真硬件在環(huán)仿真飛行測(cè)試FlightGear三維顯示CopterSim+3DDisplay 控制每個(gè)實(shí)驗(yàn)有一般包括以下三個(gè)階段:(1)Simulink算法設(shè)計(jì)與軟件在 軟件在環(huán)硬件在環(huán)仿真飛行測(cè)試CopterSim+3DDisplay 軟件在環(huán)硬件在環(huán)仿真飛行測(cè)試CopterSim+3DDisplay 真模型和例程,在Simulink中進(jìn)行控制算法設(shè)計(jì),并正確連接模型和控制器,確保輸入輸出信號(hào)與實(shí)際多旋翼系統(tǒng)一致。計(jì)信息(例如,姿態(tài)角、角速率、位置和速度等)發(fā)送給控制器,控制器將每個(gè)電機(jī)PWM控制指令發(fā)回給模型,從而形成一個(gè)軟件在環(huán)仿真閉環(huán)系統(tǒng)。在本階段,讀者可以觀察控制性能,自行修改或設(shè)計(jì)控制器來(lái)達(dá)到期望的性能需求。圖.實(shí)驗(yàn)流程圖在硬件在環(huán)多旋翼飛行器仿真器里,而控制器上傳到Pixhawk飛控硬件環(huán)境下,其中通訊過(guò)程是通過(guò)串口線直接連接。模型通過(guò)串口線將姿態(tài)角、姿態(tài)角速率、位置和速度發(fā)送給控制器,控制器通過(guò)串口線將每個(gè)電機(jī)PWM控制指 CopterSim+3DDisplay在硬件在環(huán)多旋翼飛行器仿真器里,而控制器上傳到Pixhawk飛控硬件環(huán)境下,其中通訊過(guò)程是通過(guò)串口線直接連接。模型通過(guò)串口線將姿態(tài)角、姿態(tài)角速率、位置和速度發(fā)送給控制器,控制器通過(guò)串口線將每個(gè)電機(jī)PWM控制指 CopterSim+3DDisplay 軟件在環(huán)仿真硬件在環(huán)仿真飛行測(cè)試 圖.實(shí)驗(yàn)流程圖將Simulink多旋翼模型參數(shù)導(dǎo)入到CopterSim中,并CopterSim將傳感器數(shù)據(jù)(例如,加速度計(jì)、氣壓計(jì)、磁系統(tǒng)中的PX4自駕儀軟件將收到傳感器數(shù)據(jù)進(jìn)行濾波和狀態(tài)估計(jì),將估計(jì)的狀態(tài)信息通過(guò)內(nèi)部的uORB消息總線發(fā)將Simulink多旋翼模型參數(shù)導(dǎo)入到CopterSim中,并CopterSim將傳感器數(shù)據(jù)(例如,加速度計(jì)、氣壓計(jì)、磁系統(tǒng)中的PX4自駕儀軟件將收到傳感器數(shù)據(jù)進(jìn)行濾波和狀態(tài)估計(jì),將估計(jì)的狀態(tài)信息通過(guò)內(nèi)部的uORB消息總線發(fā)PWM控制指令發(fā)回給CopterSim,從而形成一個(gè)硬件在 CopterSim+3DDisplay 軟件在環(huán)仿真硬件在環(huán)仿真飛行測(cè)試 圖.實(shí)驗(yàn)流程圖相對(duì)于軟件在環(huán)仿真,硬件在環(huán)仿真中多旋翼模型運(yùn)行速度與實(shí)際時(shí)鐘是一致的,以此保證仿真的實(shí)時(shí)性,同時(shí)控制算法可以部署并運(yùn)行在真實(shí)的嵌入式系統(tǒng)的仿真模型和控制器所運(yùn)行環(huán)境也難免與軟件在環(huán)系統(tǒng)存在一定差異,因此控制器的參數(shù)可能需要進(jìn)一步調(diào)節(jié)來(lái)達(dá)到設(shè)計(jì)需求,這也恰恰反映實(shí)際中的情 CopterSim+3DDisplay相對(duì)于軟件在環(huán)仿真,硬件在環(huán)仿真中多旋翼模型運(yùn)行速度與實(shí)際時(shí)鐘是一致的,以此保證仿真的實(shí)時(shí)性,同時(shí)控制算法可以部署并運(yùn)行在真實(shí)的嵌入式系統(tǒng)的仿真模型和控制器所運(yùn)行環(huán)境也難免與軟件在環(huán)系統(tǒng)存在一定差異,因此控制器的參數(shù)可能需要進(jìn)一步調(diào)節(jié)來(lái)達(dá)到設(shè)計(jì)需求,這也恰恰反映實(shí)際中的情 CopterSim+3DDisplay 軟件在環(huán)仿真硬件在環(huán)仿真飛行測(cè)試 圖.實(shí)驗(yàn)流程圖型進(jìn)一步由真實(shí)多旋翼飛行器替代,傳感器數(shù)據(jù)直接由傳感器芯片感知飛行運(yùn)動(dòng)狀態(tài)得到,控制器信號(hào)直接輸出給電機(jī),從而實(shí)現(xiàn)真實(shí)飛機(jī)的控制。需要注意的是,無(wú)論是硬件在環(huán)仿真還是軟件在環(huán)仿真,其仿真模型都難以與真實(shí)飛機(jī)保持完全一致,因此進(jìn)一飛行測(cè)試 型進(jìn)一步由真實(shí)多旋翼飛行器替代,傳感器數(shù)據(jù)直接由傳感器芯片感知飛行運(yùn)動(dòng)狀態(tài)得到,控制器信號(hào)直接輸出給電機(jī),從而實(shí)現(xiàn)真實(shí)飛機(jī)的控制。需要注意的是,無(wú)論是硬件在環(huán)仿真還是軟件在環(huán)仿真,其仿真模型都難以與真實(shí)飛機(jī)保持完全一致,因此進(jìn)一飛行測(cè)試 軟件在環(huán)仿真硬件在環(huán)仿真CopterSim+3DDisplay使用遙控器CH1~CH5任意兩個(gè)通道實(shí)現(xiàn)讓LED燈以兩種顏色和兩種模式閃爍。?(Mode2)2.4GLED燈USB線2.4GLED燈USB線Pixhawk硬件連接圖使用遙控器CH1~CH5任意兩個(gè)通道實(shí)現(xiàn)讓LED燈以兩種顏色和兩種模式閃爍。開關(guān)開關(guān)控制LED燈實(shí)驗(yàn)操作具體流程(1)新建一個(gè)Simulink模型文件“LibraryBrowser”庫(kù)的PSP工具箱中找到“RGB_LED”模塊并添加到新建的模型文件中。因?yàn)檫€需用到遙控器來(lái)控制LED燈,所以把遙控器模個(gè)可供參考的的Simulink例程,詳見“e0\2.PSPOfficialExps\px4demo_input_rc.slx”??刂芁ED燈實(shí)驗(yàn)操作具體流程選擇help查看預(yù)定義的控制枚舉變量。這個(gè)模塊可以用來(lái)控制__注:右側(cè)Help文檔中的枚舉變量在安裝PSP工具箱的時(shí)候已經(jīng)在MATLAB全局參數(shù)中注冊(cè)了,因此可以直接調(diào)用。例如在模塊的“Mode”口用“Constant”模塊輸入ModeColorRGBLED_MODE_ENUM.SL_MODE_BLINK_FAST >RGBLED_MODE_ENUM.SL_MODE_ModeColorRGBLED_MODE_ENUM.SL_MODE_BLINK_FAST >RGBLED_MODE_ENUM.SL_MODE_BLINK_NORMALRGBLED_COLOR_ENUM.SL_COLOR_BLUE >3)實(shí)現(xiàn)模型。由于遙控器的PWM輸出范圍為1100~1900,這里選擇1500為Switch模ChCh3Ch4RGBLED_COLOR_ENUM.SL_COLOR_REDColor>RGBLED_COLOR_ENUM.SL_COLOR_BLUERGBLED_COLOR_Color>RGBLED_COLOR_ENUM.SL_COLOR_BLUERGBLED_COLOR_ENUM.SL_COLOR_REDRGBLED_MODERGBLED_MODE_ENUM.SL_MODE_BLINK_FASTRGBLED_MODE_ENUM.SL_MODE_BLINK_NORMAL>>“RGBLED_MODE_ENUM.SL_MODE_BLINK_FAST”參數(shù);當(dāng)CH3≤1500時(shí),“Mode”接收“RGBLED_MODE_ENUM.SL_MODE“RGBLED_COLOR_ENUM.COLOR_BLUE”;當(dāng)CH4>1500時(shí),“Color”接收“RGBLED_COLOR_ENUM.COLOR_RED”參數(shù)。MATLABR2017b-2019aMATLABR2019b“設(shè)置”按鈕控制LED燈實(shí)驗(yàn)操作具體流程MATLABR2017b-2019aMATLABR2019b“設(shè)置”按鈕ConfigurationParameters”選項(xiàng);對(duì)于MATLAB2019b及更高版本,可點(diǎn)擊工具標(biāo)簽欄上的“設(shè)置”模型配置窗口中,將“HardwareBoard”設(shè)置為“PixhawkPX4”,使Simulink安裝PX4的規(guī)則生成控“編譯”按鈕“編譯”按鈕MATLABMATLABR2017b-2019a“診斷”按鈕MATLABR2019b控制LED燈實(shí)驗(yàn)操作具體流程控制LED燈實(shí)驗(yàn)操作具體流程(4)下載固件。利用PSP工具箱提供的固件一鍵下載功菜單中點(diǎn)擊“PX4PSP:UploadcodetoPx4FMU”選項(xiàng);對(duì)于MATLAB2019b及更高版本,在MATLAB主界面的“命令行窗口”輸入“PX4Upload”命令來(lái)開始控制LED燈實(shí)驗(yàn)操作具體流程Pixhawk自駕儀,并將編譯得到的PX4固件下載與部署。當(dāng)進(jìn)度條達(dá)到100%說(shuō)明部署成功。注意:有時(shí)需要根據(jù)提示重新插拔Pixhawk才能開始下載與部署流程??刂芁ED燈實(shí)驗(yàn)操作具體流程控制LED燈實(shí)驗(yàn)操作具體流程本章節(jié)以一個(gè)設(shè)計(jì)好的姿態(tài)控制系統(tǒng)為例,介紹整個(gè)實(shí)驗(yàn)的基本操作流程。例程見“e0\3.DesignExps\本章節(jié)以一個(gè)設(shè)計(jì)好的姿態(tài)控制系統(tǒng)為例,介紹整個(gè)實(shí)驗(yàn)的基本操作流程。例程見“e0\3.DesignExps\Exp1_AttitudeController.slx”新建一個(gè)Simulink文件,在其中設(shè)計(jì)多旋翼的姿態(tài)控制器。設(shè)計(jì)要求:(單位為rad)。這里主要考慮滾轉(zhuǎn)角和俯仰角,暫不考慮偏航實(shí)現(xiàn)效果:CH3油門通道控制飛機(jī)升降;向前推俯仰搖桿(即CH2<1500)控制多旋翼向前飛;向左推滾tch234偏航通道tch234偏航通道這里我們給出一個(gè)設(shè)計(jì)好的例子,見文件slx”,打開該文件后的Simulink框圖見右圖。請(qǐng)仔細(xì)閱讀其中的子模塊的實(shí)現(xiàn)方法,并進(jìn)行功能的完善,可以將偏航通道的控制加image(‘./icon/Pixhawk.png’);image(‘./icon/Pixhawk.png’);將上文的控制器用鼠標(biāo)全部選中(或者按下鍵盤),F(xiàn)orSelection”即可將控制器封裝為一個(gè)子模塊。右鍵該子模塊,點(diǎn)擊“Mask”-“CreateMask”在“Icondrawingcommands”輸入框(見右上圖)中輸入“image(‘./icon/Pixhawk.png’);”,再點(diǎn)擊“OK”,并(3)步驟三:控制器與模型整合打開前文給的Simulink多旋翼仿真程序“e0\1.SoftwareSimExps\CopterSim3DEnvironment.slx”(如右圖所示刪掉其中的原有的控制器子模塊(注意備份),然后將步驟二中得到的新控制器子將控制器與多旋翼模型進(jìn)行重新連線。由于此時(shí)遙控器信號(hào)無(wú)法獲取,可以用常值來(lái)代替,或者用函數(shù)模擬相應(yīng)的遙控器動(dòng)作。這里我們也給出一個(gè)例子,已經(jīng)連接“e0\3.DesignExps\Exp2_ControlSystemDeFlightGear,然后點(diǎn)擊Simulink工具欄“開始仿真”按鈕(見右上圖)開始仿真。Simulink中的滑塊來(lái)模擬用遙控器控制四上述Simulink中的軟件在環(huán)仿真完成后,將其中的控制器模塊單獨(dú)復(fù)制出來(lái),粘貼到文件“e0\3.DesignExps\Exp3_BlankTemp.slx”所有設(shè)置,也可以新建一個(gè)空白Simulink文DesignedAttitudeController步驟六中的控制器進(jìn)行連線,連線后結(jié)果可以參考文件“e0\3.DesignExps\Exp4_AttitudeSystemCodeGen_old.slx”,內(nèi)部細(xì)節(jié)見右圖。這里需要注意,由于后面要進(jìn)行硬件在環(huán)仿真而不是實(shí)際飛行,PWM的輸出接口需要通過(guò)uORB消息給Pixhawk發(fā)送actuator_outputs消息來(lái)實(shí)現(xiàn),而不是直接用PSP工具箱的PWM輸出模塊。上面的例子直接讀取了遙控器原始數(shù)據(jù),而右下圖的“Exp4_AttitudeSystemCodeGen.slx”例子采用了讀取“mannual_control_setpoint”的uORB消息來(lái)獲取校準(zhǔn):0~1)而不是直接讀取遙控器PWM信號(hào),這種方式更方便可靠且可以兼容任意遙控器而不需要擔(dān)心校準(zhǔn)問(wèn)題“UploadCode”功能將固件下載到Pixhawk中。得到按照右圖所示用三色杜邦線連接接收機(jī)與Pixhawk,然后Pixhawk與電腦通過(guò)USB數(shù)據(jù)線連接,此時(shí)可以看到Pixhawk上的藍(lán)燈亮起并呼吸閃爍,接收機(jī)上的燈光為藍(lán)白色常亮。此時(shí)打開遙控器開關(guān)(油門桿拉到最低位置可以觀察到Pixhawk上的果Pixhawk的LED燈沒(méi)有任何改變,說(shuō)明遙控器與數(shù)據(jù)線線,另數(shù)據(jù)線線,另一端連電腦USB口樂(lè)迪R9DS接PixHawk飛控0最左側(cè)排針,順JR信號(hào)線:紅為電源正,黑為地線,右下方排針,順序(上到下黑紅白1)進(jìn)入“Airframe”標(biāo)簽,確保模型處于“HIL關(guān)不是CH5,避免PX4模式切換開關(guān)對(duì)CH5通道占3)關(guān)閉QGC地面站雙擊桌面的CopterSim快捷方式即可以打開多旋翼模擬器軟件。不用配置任何參數(shù),直接在“飛控選擇”下拉框中選擇上一步查到的串口號(hào)(例如“**此時(shí)可以看到如右圖所示的界面左下角收到自駕儀返回的相關(guān)消息,以及Pixhawk飛控上的燈光從藍(lán)雙擊桌面的3DDisplay快捷方式即可打開3DDisplay三維顯示軟件。這個(gè)軟件不需要任何配置,它會(huì)被動(dòng)地接收模型仿真軟件發(fā)送的飛機(jī)的飛行姿態(tài)與軌控制遙控器解鎖多旋翼(油門桿右下三秒解鎖Pixhawk自駕儀,將CH5撥桿開關(guān)撥到最下解鎖控),如右圖在3多旋翼三維飛行顯示程序界面左側(cè)觀察多旋翼位置和姿態(tài)變化,界面右上角觀察實(shí)時(shí)飛行數(shù)(13)步驟十三:安裝Pixhawk到多旋翼機(jī)架上實(shí)際飛行試驗(yàn)所采用的多旋翼為F450四旋翼,見下圖;多旋仿真模型是一致的。在實(shí)際飛行時(shí)需要在QGC中將PixhawkF450F450機(jī)架1ARMOutputpwm1pwm2pwm3pwm4zeros(1,8)1ARMOutputpwm1pwm2pwm3pwm4zeros(1,8)生成代碼并下載到Pixhawk中。這里給出了一個(gè)例子,見文件“e0\3.DesignExps\Exp5_AttitudeSystemCodeGenRealFlight_old.slx”(或使用不帶old后綴的slx例程)。注意,該例子在actuator_controls_0的uORB消息[1]來(lái)輸出控制信號(hào)(歸一化的力和力矩)到PX4混控器mixer,從timestampuORBWriteTopic:actuator_outputsoutput[1]https://dev.px4.io/master/en/concept/mixing.html#control-group-0-flight-control考慮到實(shí)際飛行的不確定性,以及自身生成的控制算法缺乏完整的失效保護(hù)邏輯,在實(shí)際飛行時(shí)應(yīng)該充分考慮安全性問(wèn)題。實(shí)際飛行實(shí)驗(yàn)應(yīng)該選在相對(duì)三秒鐘(部分飛機(jī)無(wú)安全開關(guān)),然后用遙控器控制多旋翼來(lái)驗(yàn)證控制器的讀取實(shí)際飛行和半物理仿真的log數(shù)據(jù)。右上為設(shè)置噪聲水平為1,可以看到半物理仿真階躍響應(yīng)與實(shí)飛階躍響應(yīng)無(wú)論是動(dòng)態(tài)過(guò)程還是噪聲水平都比較接近。圖右下設(shè)置噪聲水平為0,可以看到半物理仿真下解算的角度沒(méi)有噪聲,動(dòng)態(tài)過(guò)程與實(shí)飛接近。注意,由于仿真模式的機(jī)架類型“HILQuadcopterX”與實(shí)際飛行所用的“DJI讀取實(shí)際飛行和半物理仿真的log數(shù)據(jù)。右上為設(shè)置噪聲水平為1,可以看到半物理仿真階躍響應(yīng)與實(shí)飛階躍響應(yīng)無(wú)論是動(dòng)態(tài)過(guò)程還是噪聲水平都比較接近。圖右下設(shè)置噪聲水平為0,可以看到半物理仿真下解算的角度沒(méi)有噪聲,動(dòng)態(tài)過(guò)程與實(shí)飛接近。注意,由于仿真模式的機(jī)架類型“HILQuadcopterX”與實(shí)際飛行所用的“DJIFlameWhe

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論