通信協(xié)議轉換器系統(tǒng)的硬件設計如下圖2所示。STM32F407芯片提供多達6個USART異步串行端口,通過使用MAX485和MAX232電平轉換芯片,將其分解為2個RS422電平標準端口和4個RS232電平標準端口;采用LM2576、LM1805將隔離后的28 V直流電源變換為5 V和3.3 V作為系統(tǒng)的工作電源;使用B0303-1W配合HCPL263L光耦對輸出的RS422電平、RS232電平進行隔離供電以及電平轉換;使用2片16 bit數模轉換芯片LTC1655分別輸出雷達高度、氣壓高度數據的高精度模擬量;使用74AHC1G125對PPS秒脈沖同步信號輸出,提高其帶負載驅動能力。
3 系統(tǒng)軟件設計
3.1 數據幀的解析
如前所述,通信協(xié)議轉換器的最主要的功能是實現(xiàn)遙測遙控數據、位置姿態(tài)數據的解析,使設備之間通過RS422/RS232串口傳輸。為了正確、順利和實時地完成傳輸,不同的設備采用了不同定義的串口通信傳輸協(xié)議。多種傳輸協(xié)議都是基于幀傳輸的方式,將測控、位姿數據進行分幀發(fā)送,并在傳輸過程中對單幀中的數據進行和校驗。數據幀的構成如下圖3所示。
上行遙控幀數據主要包括控制航磁儀的工作狀態(tài),如是否磁補償飛行、是否開始記錄文件、是否進入標定模式等信息。下行遙測數據主要包括航磁儀的測量數據,如磁場強度大小、經緯度及方向、系統(tǒng)工作狀態(tài)等信息。在STM32F407微控制器程序的控制下,對不同USART端口接收到的信息內容解析后進行隊列排序,相互之間采用多線程結構調用設計,用以實現(xiàn)多任務的偽并行處理,完成了航磁儀測量數據傳輸協(xié)議和無人機鏈路傳輸協(xié)議的自動轉換。通過實際的測試,系統(tǒng)誤碼率幾乎為零,自動協(xié)議轉換時間遠小于幀傳輸的間隔時間,完全可以達到實時傳輸數據的要求。
3.2 GPS及高度數據的輸出