張澤宇,楊明國
電力推進系統面板控制器的設計與實現
張澤宇1,楊明國2
(1.武漢船用電力推進裝置研究所,武漢 430064; 2. 海軍駐七一二研究所軍代室,武漢 430064)
本文介紹了一套基于ARM內核的面板控制器的設計。本文采用基于ARM Cortex-M3內核的ST公司的STM32系列微控制處理器完成與船舶操縱面板的接口設計,作為船舶監控系統中操縱面板的中心樞紐,具有集成度高、安全可靠、智能化、小型化等特點。
面板控制器 ARM 監控系統
隨著船舶電力推進技術的發展與應用,現代化船舶監控系統朝著小型化、智能化的方向發展,電力推進系統船舶中操縱面板作為監控系統的一部分,操縱面板作為最直觀的可視化設備具有操縱性好、直觀智能的特點,面板控制器作為船舶監控系統中操縱面板的核心,具有集成度高、安全可靠、智能化、小型化的特點。
船舶駕控臺采用按鍵開關實現控制指令的輸入、采用LED燈指示監控系統的相應狀態,然后控制指令及監控狀態通過通訊網絡傳遞給相應的設備或接受相應的設備的反饋。因此整個面板控制器按照功能可分為三大模塊:模擬信號處理模塊、數字信號處理模塊以及通訊模塊。
數字信號處理模塊完成數字信號的輸入輸出處理功能。輸入數字信號主要是指控制各設備的按鈕開關,輸出信號主要是指驅動LED 燈的電壓信號。

模擬信號處理模塊完成模擬信號的實時采集與實現顯示,模擬輸入信號主要是車種的輸入信號,輸出信號主要是駕控臺相關儀表(如轉速表和功率表)的顯示。
通信模塊包括一路CAN總線通信和兩路 RS-232通信,其中CAN通訊完成與監控系統其他設備的通信,RS232通信完成與駕控臺液晶屏的通信。
后面將根據總體框架設計中的功能和接口,分別從硬件和軟件兩個方面闡述相關的設計。
STM32F103系列微控制器基于超低功耗的ARM Cortex-M3內核,時鐘頻率最高可達72MHz,搭載有TIMER、ADC、DAC等眾多外設,支持SPI、IIC、CAN等總線傳輸,該系列處理器具有高性能、低成本、低功耗的特點[1]。
在駕控臺中,模擬輸入信號為車鐘的輸入信號,主要模擬輸出信號為儀表(如轉速表、功率表等)。其中模擬輸入信號還可以包括駕控臺或駕駛室內溫度、濕度等傳感器的模擬信號。
在本文中對駕控臺車鐘的輸入信號設定為0-5V。由于STM32F103控制器的ADC模塊對模擬信號采樣的電平標準基于芯片REF端參考電壓的選擇(最高為3.3 V),在本文中我們選擇使用輸出電壓為2.5 V的電壓基準芯片,因此輸入的模擬信號必須經過一級調理電路才能輸入到CPU的ADC模塊中。OP07作為常用的低功耗、高精度運算放大器得到了我們的青睞,模擬信號的調理電路起信號轉換,低通濾波的作用[2]。具體的設計電路如下:

電壓基準芯片選用TI公司的REF5025,其具有低噪聲、低漂移、高精度的特點[3]。具體電路圖如圖2所示,當輸入為+5 V時輸出為2.5 V,紋波在幾十mV以內。
在圖3中,0~5 V的輸入模擬信號通過比例運放電路之后,模擬信號線性變化為0-2.5 V,同時 R85與C68 構成一個低通濾波器,抑制一部分高頻噪聲。經過測試,模擬信號在經運算放大電路前后電平呈線性變化,在輸入端為5 V 的時候,輸出電壓值為最高VREF,當輸入端為0 V時,輸出電壓值為0 V。

STM32F103芯片的ADC外設為12位逐次逼近式模數轉換器,測量范圍為0~2.5 V,完全滿足我們的日常需要。同時該芯片還搭載有雙通道10位的數模轉換器,可用于駕控臺儀表的驅動信號。
由于駕控臺儀表中功率表驅動信號為±20 mA,而芯片的模擬輸出信號為電壓信號,所以需要進行電壓電流轉換,這里我們選用TI公司的電壓電流轉換器XTR111。XTR111作為精密的電壓電流轉換器大量應用于0~20 mA和4~20 mA電路設計,其非線性度為0.002%,精確度高達0.015%[4]。在電路中,輸入電壓范圍為0~12 V,R61串聯于輸出端,起限流保護的作用。在實際應用中,為增加電路的驅動能力,往往會在輸出端加入電壓跟隨電路。

開關量輸入通道用于各種開關和指示燈的開關狀態。出于減少現場干擾和對微控制器的保護,輸入回路采用光耦隔離,使現場和控制器實現電氣隔離,保持控制器工作的可靠性。輸入接口的電路圖如圖5所示,R86為限流電阻,R89和C57組成一階濾波電路,防止外部干擾進入系統,D10為輸入信號指示燈,若輸入為高電平,則燈亮,反之則滅。
開關量輸出通道用于指示燈的指示。輸出回來同樣采用光耦隔離電路,使現場與控制器實現電氣隔離,保證控制器工作的可靠性。輸出接口的電路圖如圖6所示,DOUT1為單路輸出通道,TLP521為光耦隔離器,D12作為輸出信號指示燈若輸出為高電平,則燈亮,反之則滅。

圖7為操縱面板控制器實物,目前正進行全面的系統測試,未來可用在船舶電力推進系統的監控系統中,配合各類操縱面板使用。
以硬件為基礎,面板控制器有了正常工作的基礎和條件,但要使其正常而有效的工作,還需要軟件的配合。軟件設計最主要有兩部分,一部分為相應的控制算法,一部分為相應的接口底層代碼。在這里我們將軟件程序劃分為以下幾個部分:
1)系統初始化:設置CPU及外設初始狀態;
2)接口代碼:模擬量采集、數字信號處理;
3)控制算法:完成控制流程和邏輯運算。
在具體實施中程序設計劃分為以下幾步[5]:
1)設計規劃:將設計對象劃分為若干個主要功能部分,分塊處理;
2)流程圖處理:根據具體工作要求,確定軟件的各個功能模塊并根據要求畫出流程圖;
3)定義單片機外設:作為單片機外設的驅動,方便邏輯程序調用;
4)優化算法:優化算法增強處理器的運算時間;
5)編寫程序:使用前面的算法和流程圖編寫軟件并進行調試。
本文設計了一種基于ARM內核的面板控制器。控制器采用基于ARM Cortex-M3內核的ST公司的STM32系列微控制處理器作為CPU處理器,通過對外圍電路的設計完成與船舶操縱面板的接口設計,作為船舶監控系統中操縱面板的中心樞紐,具有集成度高、安全可靠、智能化、小型化等特點。
[1] 劉波文. ARM Cortex-M3應用開發實例詳解[M]. 北京:電子工業出版社, 2011,(02): 3-5.
[2] 王鈺, 潘士斌, 王卉. 數據采集中IIC的應用[J]. 科技廣場, 2008,(08): 72-74.
[3] Texas Instruments Inc. F5025 datasheet, 2007.
[4] Texas Instruments Inc. XTR111 datasheet, 2010.
[5] Thomas A. Dimensions of microstrip coupled lines and interdigital structures [J]. IEEE Transaction on Microwave Theory and Techniques, 1977:405-410.
Design of Panel Controller for Electric Propulsion System
Zhang Zeyu1, Yang Mingguo2
(1.Wuhan Institue of Marine Electric Propulsion, Wuhan 430064 ,China; 2. Naval Representatives Office in WIMEP , Wuhan 430064, China)
TP274
A
1003-4862(2014)11-0056-03
2014-04-10
張澤宇(1989-),男,助理工程師。研究方向:船舶監控系統。