<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 多單片機通信的無人機飛行安控器設(shè)計

          多單片機通信的無人機飛行安控器設(shè)計

          作者: 時間:2008-03-11 來源:網(wǎng)絡(luò) 收藏
          摘要 介紹的工作原理和實現(xiàn)。以AT89C52為核心處理器,輔以2片AT89C405l,通過并行方式擴展其串行口,使其可以裝訂安控區(qū)域數(shù)據(jù)并且接收GPS或者仿真GPS數(shù)據(jù)信息,并將GPS數(shù)據(jù)信息廈解算后的結(jié)果實時下傳,通過科學(xué)的安控算法和蓑略,控制在失控的情況下墜毀在安控線附近。實際應(yīng)用表明,是有效和可靠的。
          關(guān)鍵詞 無人機GPS


          某國產(chǎn)大型高亞音速無人機采用的是遙控+自動駕駛儀體制控制飛行,該型無人機目前還不具備自主導(dǎo)航飛行能力,主要依靠接收地面遙控指令完成飛行任務(wù)。在遙控系統(tǒng)發(fā)生故障等不受控情況下,有可能飛出預(yù)定區(qū)域,給周邊大城市或重要目標(biāo)帶來威脅甚至造成重大損失。為此了一種無人機飛行安控器,當(dāng)無人機飛出預(yù)定區(qū)域時,安控器執(zhí)行安控指令,使無人機自行墜毀在預(yù)定區(qū)域邊沿。
          由于無人機對安控器執(zhí)行安控的可靠性要求較高,為了保證該系統(tǒng)的安全使用,對系統(tǒng)軟硬件進行了合理設(shè)計,并采取了多種可靠性措施。


          1 工作原理
          無人機飛行安控器通過控制舵機離合器供電線路的通斷達到安全控制的目的。首先給安控器裝訂一個安全區(qū)域,存入EEPROM。安控器的主控微處理器通過并行方式與輔助微處理器,獲取GPS數(shù)據(jù),并計算和判斷無人機是否在預(yù)先裝訂的安全區(qū)域以內(nèi)。當(dāng)飛出安全區(qū)域時,安控器向執(zhí)行電路輸出控制信號斷開舵機離合器供電線路,使升降舵處于最大正舵面,無人機在空氣動力的作用下,處于失速狀態(tài),快速墜毀。
          安控器的主控微處理器還可以通過并行方式與另一輔助微處理器進行,向其輸出GPS的解算數(shù)據(jù),通過數(shù)傳電臺或數(shù)據(jù)線發(fā)送給地面監(jiān)控微機。生成無人機飛行航跡,供領(lǐng)航參考;或者接收地面監(jiān)控微機發(fā)送的GPS仿真數(shù)據(jù),以驗證裝訂的預(yù)定區(qū)域是否正確。


          2 硬件設(shè)計
          安控器主要由GPS接收機、主控電路、執(zhí)行電路、加溫電路和數(shù)傳電臺組成,如圖1所示。其中,主控電路和執(zhí)行電路組成主機板,完成安控判斷和決策任務(wù)。

          2.1 主控電路
          主控電路由3片單片機及其外圍電路組成,實現(xiàn)與GPS接收機和地面監(jiān)控微機的同時通信,以及進行浮點運算和判斷處理。
          主控單片機采用Atmel公司的AT89C52,2片輔助單片機則采用AT89C4051。它們之間通過并口進行數(shù)據(jù)交換,其硬件連接如圖2所示。圖中U3只向主控單片機U1傳送GPS數(shù)據(jù),所以除數(shù)據(jù)線外只用到了3根信號線,分別是中斷申請信號線、讀信號及寫信號線。U4與Ul的通信是雙向的,所以多了一根數(shù)據(jù)傳送方向信號線F_WR。具體的數(shù)據(jù)交換操作見后面的相關(guān)程序片段。
          在設(shè)計中,主控單片機的串口用于與地面監(jiān)控微機通信進行安控區(qū)域的數(shù)據(jù)裝訂和讀取。一個輔助單片機的串口與GPS接收機進行通信,獲取相關(guān)的GPS信息,包括日期、時間、經(jīng)緯度、速度、航向和高度等,并轉(zhuǎn)換成固定格式提供給主控單片機進行是否在預(yù)定區(qū)域的數(shù)據(jù)計算。另一個輔助單片機的串口則與地面監(jiān)控微機或者數(shù)傳電臺通信,一方面下傳GPS信息及解算結(jié)果,另一方面也可以獲取仿真GPS數(shù)據(jù)從而驗證預(yù)定區(qū)域裝訂的正確性。
          2.2 執(zhí)行電路
          執(zhí)行電路采取了雙冗余度設(shè)計,即構(gòu)建兩路完全相同的執(zhí)行電路:通過主控單片機的P0.4腳和P0.5腳分別控制兩個光耦,進而控制兩個大功率MOS管IRF9540。只有兩路執(zhí)行電路都工作才能斷開舵機離合器電源,保證了執(zhí)行安控的可靠性。


          3 軟件設(shè)計
          3.1 并行通信實現(xiàn)
          下面以圖2中的Ul與U4通信為例說明并行通信編程實現(xiàn)方法。U1首先向U4發(fā)中斷請求信號,U4接收到中斷請求信號后進入中斷服務(wù)程序,并判斷數(shù)據(jù)傳送方向。如果是要求發(fā)送數(shù)據(jù),則當(dāng)數(shù)據(jù)準(zhǔn)備好后應(yīng)答U1并將數(shù)據(jù)送到數(shù)據(jù)線上,等待U1取走數(shù)據(jù),U1在接收到應(yīng)答信號后,即從總線上取走數(shù)據(jù)并回應(yīng)U4,U4即可準(zhǔn)備下一個數(shù)據(jù)。下面為用Keil C51語言編寫的數(shù)據(jù)交換程序的相關(guān)片段。

          主控單片機Ul中的相關(guān)程序片段:

          3.2 安控判定算法
          側(cè)偏距是指無人機到矢量航線的垂直距離。設(shè)(xa,ya)、(xb,yb)為矢量航線兩端點坐標(biāo),(x,y)為無人機當(dāng)前坐標(biāo),航線方程可表示為Az+By+C=0。其中,A=ya-yb,B=xa-xb,C=xayb-xbya,則側(cè)偏距△Z為:


          若側(cè)偏距為負,則無人機位于航線的左側(cè);若側(cè)偏距為正,則無人機位于航線右側(cè)。
          設(shè)定一個由矢量航線按順時針方向組成的封閉凸邊形,組成判定區(qū)域。若無人機當(dāng)前位置位于所有矢量航線的右側(cè)時,無人機在判定區(qū)域內(nèi);若無人機當(dāng)前位置只要位于一條矢量航線左側(cè),則無人機在判定區(qū)域外。
          實際使用的判定區(qū)域由二個凸邊形組成,稱為“安全區(qū)域”,如圖3所示。其中,內(nèi)凸邊形稱為“安控預(yù)警線”,外凸邊形稱為“安控警戒線”。

          3.3 主控單片機程序流程
          主控單片機AT89C52主要完成判斷當(dāng)前位置是否在預(yù)先裝訂的安全控制區(qū)域內(nèi)。如果超出預(yù)警線,則發(fā)出警告,并繼續(xù)判斷是否超出警戒線,在連續(xù)十次判斷超出警戒線后則執(zhí)行安控動作。圖4為其主程序流程框圖。

          4 實驗結(jié)果
          將安控器進行動態(tài)距離試驗,地面軟件監(jiān)測結(jié)果如圖5所示。圖中的兩個凸多邊形區(qū)域即為裝訂的安全區(qū)域。圖中顯示的是安控器在警戒線之外執(zhí)行安控的結(jié)果,此時舵機離合器電源斷開。
          在某次無人機供靶試驗中,因遙控接收機故障出現(xiàn)了無人機不受控的危險情況,安控系統(tǒng)正確執(zhí)行了安控,使無人機成功墜毀于警戒線外圍附近,表明無人機飛行安控器達到了實際應(yīng)用要求。


          5 結(jié)論
          本設(shè)計利用單片機多機通信實現(xiàn)了串口的擴展,可應(yīng)用于無人機關(guān)鍵部位的飛行安控器,實際應(yīng)用表明,單片機多機通信硬件結(jié)構(gòu)簡單,編程靈活方便,系統(tǒng)工作可靠。本文所介紹的設(shè)計思路對于無人飛行器的可靠性設(shè)計具有較高的參考價值。



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();