汝福興崔益烽蘇 生俞 賓周冠澤龔征華
(1.常州玻璃鋼造船廠有限公司 常州213127;2.陸軍車船軍代局駐上海地區軍代室 上海200083;3.中國船舶及海洋工程設計研究院 上海200011)
C8051F020單片機及其在雙主機轉速同步控制系統中的應用
汝福興1崔益烽2蘇 生1俞 賓3周冠澤3龔征華3
(1.常州玻璃鋼造船廠有限公司 常州213127;2.陸軍車船軍代局駐上海地區軍代室 上海200083;3.中國船舶及海洋工程設計研究院 上海200011)
C8051F020單片機是完全集成的混合信號系統級MCU芯片。雙主機轉速同步控制系統利用它的內置兩路串行通信接口(UART0/1),并使用雙差分驅動接受器SN65C1168,完成通信數據信號電平轉換,組成串行通信控制網絡,在控制子系統之間以及控制子系統與主機電控單元之間進行控制數據交互,實現左右兩臺主機轉速的遠程同步控制。
C8051F020單片機;雙主機轉速同步控制系統;串行通信;控制子系統
目前,采用雙主機作為推進系統動力裝置的中高速噴水推進船艇在搜救、執法、巡邏等對于快速性和操縱性具有較高要求的特種工作領域,獲得日益廣泛的推廣和應用。對于這類船艇,無論從總體性能還是操縱安全性以及人機操縱舒適性,都要求對主機和噴水推進裝置方向舵及倒航斗角度進行聯合控制,因此對于雙主機轉速的同步控制具有很高的要求。
本文所述高速執法工作艇平臺,動力裝置采用兩臺上柴D683ZLCA8B柴油機,單臺持續功率轉速為2 330 r/min(234.5 kW),通過帶動兩臺噴水推進器葉輪高速轉動(本船噴水推進器采用通氣閥實現主機動力結合,故未設置齒輪箱),產生噴射水流,實現船艇高速航行。該主機配有MT-923型電控單元,可以通過RS-422數字通信接口接收/發送轉速控制/反饋數據,并輸出直流電機控制信號驅動主機機械調速器實現轉速調整。
對于類似問題,通常依靠人工經驗采用機械方式可實現操縱,但由于還需要兼顧巡邏執法工作,因此完全依賴人工將給操作者帶來巨大的身體和心理負擔,不利于船艇操縱性能的充分發揮和安全駕駛。本文所述的控制系統采用RS-422控制網絡對兩臺主機進行轉速同步操縱,較好地解決了上述問題。
項目組采用C8051F020單片機作為控制器、主機電控單元作為執行器以及磁阻脈沖式轉速傳感器,設計了雙主機轉速同步控制系統,采用控制器的UART串行通信接口,以SN65C1168雙差分驅動接收器,組成串行通信控制網絡,對兩臺主機轉速的控制與反饋數據進行交互,實現兩臺主機轉速的遠程同步控制功能。同時,控制系統還要根據主機轉速反饋數據對噴水推進裝置進行控制。
轉速控制系統原理框圖見圖1所示。

圖1 轉速控制系統原理框圖
C8051F020單片機是完全集成的混合信號系統級MCU芯片,所采用的CIP-51 微控制器內核與MCS-51指令集完全兼容[1]。C8051F020單片機采用3.3 V工作電源,在單芯片內集成了構成一個單片機數據采集與控制系統所需要的幾乎所有的模擬和數字外設及其他功能部件,包括數字I/O接口、12位ADC、看門狗定時器、內部振蕩器以及兩個獨立的全雙工串行通信接口(UART0/1)等。
C8051F020單片機非常獨特地引入數字交叉開關。這是一個數字開關網絡,它允許將內部數字系統資源映射到P0、P1、P2和P3的端口I/O引腳。與傳統微控制器所具有的標準復用數字I/O不同,這種結構可支持所有的功能組合。可通過設置交叉開關控制寄存器將片內的串行總線、硬件中斷、ADC轉換啟動輸入以及微控制器內部的其他數字信號配置為出現在端口I/O引腳。這一特性允許用戶根據自己的特定應用選擇通用端口I/O和所需數字資源的配置與使用。
C8051F020單片機采用100 腳TQFP 封裝,可在工業溫度范圍(-45℃到+85℃)內使用2.7 V~3.6 V 電壓工作。端口I/O、/RST和JTAG引腳都容許5 V輸入信號電壓。
C8051F020的兩個串行通信口UART0和UART1,是具有幀錯誤檢測和地址識別硬件的增強型串行口,均可在全雙工異步方式工作。
C8051F020單片機原理框圖見圖2所示。
C8051F020單片機串行接口UART0/1原理框圖見下頁圖3所示。

圖2 C8051F020單片機原理框圖

圖3 C8051F020串行接口UART0/1 原理框圖
雙主機轉速同步控制系統由兩套控制子系統組成,每套控制子系統分別對應一臺主機轉速的控制。每套控制子系統通過RS-422數據交互網絡向遠端的主機電控單元發送轉速控制數據,由電控單元實現轉速調整,并將實時轉速數據反饋回控制子系統。
控制子系統采用一臺C8051F020單片機作為主控制器,通過設置數字交叉開關,將UART0/1、ADC等外設功能配置到P0的I/O端口。此外,整個控制系統還包括功能轉換開關、控制手柄、報警單元、手動單元等功能模塊。
控制子系統之間通過UART0進行轉速同步控制的數據通信。控制子系統通過UART1與主機電控單元通信,發送轉速控制數據,接收轉速反饋數據。通過RS-422串行通信網絡實現數據遠程交互,解決了兩臺主機轉速遠程同步控制數據交互的主要問題。
控制子系統可以利用C8051F020的P2口采樣外部工況開關輸入的DI信號,自主設定為主系統或從系統,主系統采樣控制手柄的模擬量輸入控制信號,經過AD轉換,換算為對應的主機轉速控制目標,并同步向從系統發送。
下頁圖4為轉速控制器原理圖(C8051F020部分),圖5為控制板照片。

圖4 轉速控制器原理圖(C8051F020部分)

圖5 控制板照片
C8051F020單片機需對特殊功能寄存器(SFR)進行設置后,才能控制和訪問UART0/1。對于UART0和UART1的使用,在主要參數的選擇上是相同的,但是對于SFR的設置有所區別。
對UART0/1的控制和訪問是通過特殊功能寄存器(SFR)串行控制寄存器(SCON0/1)和串行數據緩沖器(SBUF0/1)來實現的。一個SBUF0/1地址可以訪問發送寄存器和接收寄存器。讀操作自動訪問接收寄存器,而寫操作自動訪問發送寄存器。
接收數據被暫存于一個保持寄存器中,允許UART0/1在軟件尚未讀取前一個數據字節的情況下開始接收第二個輸入數據字節。一個接收覆蓋位用于指示新的接收數據已被鎖存到接收緩沖器,而前一個接收數據尚未被讀取。
UART0/1可以工作在查詢或中斷方式,擁有兩個中斷源:一個發送中斷標志TI0/1(SCON0.1/SCON1.1,數據字節發送結束時置位),以及一個接收中斷標志RI0/1(SCON0.0/SCON1.0/,接收完一個數據字節后置位)。當CPU 轉向中斷服務程序時硬件不清除UART0/1中斷標志,中斷標志必須用軟件清除。這就允許軟件查詢UART0/1中斷的原因(發送還是接收)。
UART0/1的波特率是定時器溢出時間的函數,定時器每次發生溢出時,向波特率電路發送一個時鐘脈沖(UART0/1的TX/RX時鐘可以分別選擇)。
兩臺控制子系統通過UART0建立數據通路,使用定時器2工作在方式2產生UART0波特率,UART0工作于方式3(9位可變波特率)。通過將TCLK0(T2CON.4)和RCLK0(T2CON.5)位設置為邏輯1來選擇定時器2為TX 和RX 的波特率時鐘源(TX和RX時鐘相同)。
波特率計算公式如式(1)所示:

式中:BAUDRATE為UART0的串行通信波特率,系統預設定BAUDRATE=9 600 baud;SYSCLK為系統時鐘頻率,系統選用外部晶振頻率M=11.059 2 MHz;是定時器2 的重裝載寄存器的預設定值。
由式(1)得到:

UART1使用定時器1工作在方式2(8位自動重裝載方式)產生波特率(TX和RX時鐘相同)。

式中:BAUDRATE為UART1的串行通信波特率,系統預設定BAUDRATE=9 600 baud。SYSCLK為系統時鐘頻率,系統選用外部晶振頻率M=11.059 2 MHz。TH1是定時器1 的8位重裝載寄存器的預設定值。SMOD1是UART1的波特率加倍控制位(0:使能UART1波特率/2;1:禁止UART1波特率/2)。T1M為定時器1時鐘選擇位;0:T1使用系統時鐘的12分頻;1:T1使用系統時鐘。
從式(5)可以得到:

按照上述計算結果預置T1和T2的自動重裝載值,即可使控制子系統UART0/1采用異步串行通信方式工作,并工作在方式3(1位起始位,8位數據位,1位功能位(TB8奇校驗),1位結束位,可變波特率),預設波特率為9 600 baud,數據交互(發送/接收)周期為10 ms。
控制子系統至主機電控單元的布線長度為40 m左右,選用RS-422標準通信接口實現兩者之間通信數據的傳輸。
RS-422標準規定了電氣接口型式是雙端線傳輸信號[2]。它通過傳輸線驅動器,把邏輯電平變換成電位差,完成始端的信息傳送;通過傳輸線接收器,把電位差變換成邏輯電平,實現終端的信息接收。在最大傳輸速率10 Mbps條件下,電纜允許長度為120 m。RS-422適用于點對點數據通信方式,標準允許驅動器輸出為±2~±6 V,接收器能檢測到的輸入信號電平可達200 mV。
控制子系統與電控單元之間的串行數據通信采用雙差分驅動接收器SN65C1168完成信號電平轉換。
SN65C1168全面滿足TIA/EIA-422標準,采用單一5 V供電,RS-422引腳具有ESD防靜電保護功能,器件最大功耗電流為9 mA,接收器輸入阻抗17 KΩ。
在C8051F020單片機UART1接口TX引腳使用10 K上拉電阻接5 V工作電壓,與SN65C1168的驅動器端口D相連,以提高信號傳輸的可靠性,RX引腳直接與SN65C1168的接收器端口R相連接收數據。
SN65C1168邏輯框圖如圖6所示。

圖6 SN65C1168邏輯框圖(正邏輯)
C8051F020單片機UART1接口與SN65C1168驅動接收器接口的電氣特性見表1。從表中數據可以看出,C8051F020與SN65C1168的串行通信接口可以直接連接使用。
控制子系統與電控單元串行通信接口原理圖見圖7。

圖7 控制子系統與主機電控單元串行通信接口原理圖

表1 C8051F020與SN65C1168接口電氣性能對比 V
兩套控制子系統之間的串行通信回路是在8051F020的UART0之間建立,且兩套子系統處于同一個控制箱內,由于其接口電平完全一致,可不進行電平轉換,在連接時將兩個串行通信口的TX與RX引腳直接對接即可使用。UART0串行通信網絡連接關系原理圖見下頁圖8。

圖8 控制子系統串行通信接口原理圖


應該注意,C8051F020單片機大量采用特殊功能寄存器,完成相應的功能與接口的配置與轉換,這給軟件開發工作帶來了方便,但是錯誤的配置很容易造成系統工作的異常,并且很難發現。對此要充分利用開發工具軟件集提供的初始化配置工具CONFIG WIZARD。
兩臺控制子系統根據主控機產生的轉速目標數據,并和反饋得到的轉速數據進行比較,分別根據轉速同步算法產生轉速同步控制目標數據,并經過RS-422串口發送至對應的主機電控單元。
控制子系統對于主機轉速的控制是通過主機電控單元(執行機構)實現的。主機電控單元接收到轉速目標數據后,輸出電機控制信號,驅動機械調速器運行,并利用磁電轉速傳感器檢測實時轉速經過RS422串口反饋至控制子系統,最終完成主機轉速的調整與控制。
控制系統的抗干擾設計[4],可以提高其工作的可靠性和穩定性,直接關系到設備的正常使用以及船艇的安全航行,重要性和必要性不言自明。轉速同步控制系統的抗干擾設計工作主要包括硬件和軟件兩部分。
(1)控制子系統與主機電控單元之間的串行通信線路,采用屏蔽雙絞線連接(線長45 m,節距0.075 m,屏蔽層密度75%,理論噪聲衰減率71:1),屏蔽雙絞線可以較好地抑制靜電感應干擾和電磁感應干擾。
(2)串行通信線路屏蔽層采用單點接地方式接至控制系統外殼,防止干擾。
(3)串行通信接口加裝共模電感,防止/減輕共模干擾。
(4)在DI信號端口加上TLP521光耦器件進行隔離,在DO信號端口加上4N32光耦器件進行隔離,在串行通信端口加上6N137高速光耦進行隔離,防止器件受到外部高壓或者串擾信號的干擾和損壞。
(5)控制軟件采用模塊化設計,設置了系統初始化、主功能循環、AD采樣、串行通信、故障診斷等功能模塊。
(6)對控制手柄等輸入模擬量信號進行連續多次AD采樣,并疊加使用了去除極值、數學平均和數值變化率限制等軟件濾波方法,提高抗干擾能力。
(7)對串行通信網絡設置數據異常判斷,包括奇校驗、地址碼判斷、數據有效范圍判斷以及數據包校驗和等措施。若因各類故障原因導致數據通信成功率不足80%(80次/秒),即認為通信網絡故障,兩套子系統同步發出降速指令,主機電控單元使主機降速運行,并通過DO端口向報警單元發出系統報警信號。

表2 控制系統轉速指令與實測結果對應表r/min
控制系統交付裝船后進行了實船試航,控制系統轉速指令與主機轉速響應圖見圖9。控制系統轉速指令與實測結果對應表見表2。

圖9 控制系統轉速指令與主機轉速響應圖
從試航結果可見:左主機轉速(n1)控制最大偏差值為85 r/min,約為最大轉速的3.6%;右主機轉速(n2)控制最大偏差值為72 r/min,約為最大轉速的3.1%。左右主機的轉速同步最大誤差為17 r/min。
雙主機轉速同步控制系統配合試航過程中,在整個轉速范圍內保證了兩臺推進器推力的發揮與匹配,以及船艇快速性、操縱性的實現。
C8051F020單片機內部外設功能全面而強大,全速、非侵入式的在系統調試接口(片內JTAG)使系統開發工作方便易行;RS-422串行通信網絡原理簡單、技術成熟、可靠性好。
雙主機轉速同步控制系統工作穩定可靠、使用方便,滿足設計指標要求,綜合性能優良。
[1]潘琢金.施國君.C8051Fxxx高速SOC單片機原理及應用[M].北京:北京航空航天大學出版社,2002.
[2]李華.孫曉民.李紅青,等.MCS51系列單片機實用接口技術[M].北京:北京航空航天大學出版社,1993.
[3]馬忠梅.籍順心.張凱,等.單片機的C語言應用程序設計[M].北京:北京航空航天大學出版社,1999.
[4]王幸之.王雷.鐘愛琴,等.單片機應用系統電磁干擾與抗干擾技術[M].北京:北京航空航天大學出版社,2006.
C8051F020 SCM and its application in twin-engine revolution synchronous control system
RU Fu-xing1CUI Yi-feng2SU Sheng1YU Bing3ZHOU Guan-ze3GONG Zheng-hua3
(1.ChangZhou FRP Boatbuilding Co., Ltd., Changzhou 213127, China; 2.Representative Off ce of Army Trucks and Ships Bureau in Shanghai, Shanghai 200083, China; 3.Marine Design & Research Institute of China, Shanghai 200011, China)
A C8051F020 single chip machine (SCM) is a fully integrated mixed-signal system-on-a-chip MCU.The twin-engine revolution synchronous control system transforms signal level of the communication data and composes the serial communication network by using the inner two-way serial communication interface UART0/1 and the dual differential drivers and receivers SN65C1168.The synchronous remote control of the revolution of the left and right engine can be achieved by the exchange of the control data anong the control subsystems, as well as between the control subsystem and the engine electric control unit.
C8051F020 SCM(single chip machine); twin-engine revolution synchronous control system; serial communication; control subsystem
U665.14
A
1001-9855(2016)06-0066-10
2016-02-23;
2016-07-29
汝福興(1962-),男,工程師,研究方向:船舶電氣設計。崔益烽(1982-),男,碩士,工程師,研究方向:軍事裝備。蘇 生(1980-),男,高級工程師,研究方向:船舶工程設計。俞 賓(1971-),男,工程師,研究方向:機械設計與制造。周冠澤(1986-),男,工程師,研究方向:船舶電氣設計。龔征華(1974-),男,高級工程師,研究方向:船舶電氣設計。
10.19423/j.cnki.31-1561/u.2016.06.066