摘 要: 介紹了一種基于組合電阻式步進電機細分驅動的原理,并給出用該方法實現(xiàn)的船用柴油機狀態(tài)監(jiān)控儀表。儀表實現(xiàn)了對船用柴油機的轉速、機油壓力、機油溫度、冷卻水溫度、電瓶電壓等參數(shù)進行實時顯示監(jiān)控的功能。設計采用軟硬件相結合的驅動方法,既保障了系統(tǒng)的可靠性,又降低了儀表成本。
關鍵詞: 船用儀表;步進電機;細分驅動;組合電阻
船用儀表從工作原理上區(qū)分,有模擬式儀表和數(shù)字式儀表[1]。以模擬量組合單元儀表為主的監(jiān)控儀表所需要的器件數(shù)量多,指示精度低。數(shù)字式船用儀表多為LED數(shù)碼管顯示方式,雖然分辨率高,但不夠直觀,尤其在單屏面上顯示多個數(shù)據時,不利于進行遠距離觀察,而且它顯示的是單純的一個數(shù)據,沒有在一定范圍內進行顯示,觀察人員還需將觀察到的數(shù)據再過濾比較,才能對運行狀況作出判斷,不利于發(fā)現(xiàn)異常情況。因此為了既適應船用儀表的需要,又滿足人機工程的要求,本文提出了一種全數(shù)字步進電機式船用柴油機狀態(tài)監(jiān)控儀表,與傳統(tǒng)的模擬量為傳輸量的指針式儀表不同的是,它把數(shù)字量用步進電機式指針進行了模擬式指示,將數(shù)字顯示的準確性和模擬指示的直觀性結合在一起,克服了以往模擬式儀表指針指示的非線性、抖動、卡滯等現(xiàn)象,指針示值準確、能夠快速追蹤參數(shù)的變化,運行平穩(wěn)。
1 步進電機式船用儀表的總體設計方案
步進電機式船用儀表總體結構框圖如圖1所示,本設計采用帶有LCD顯示模塊的PIC核的單片機作為控制器,對柴油機運行參數(shù)(包括轉速、機油壓力、機油溫度、冷卻水溫度、電瓶電壓等)進行數(shù)據采集,把數(shù)據處理成相對應的步進電機式指針要走的步數(shù),并在指針式儀表上進行顯示。選用的VID29-05步進電機為兩相步進電機,內置減速比180/1的齒輪系,可用分步模式或微步模式驅動。輸出軸的步距角最小可以達到(1/12)°,最大角速度為600 °/s。
2 步進電機組合電阻式細分驅動的硬件設計
步進電機是把脈沖信號轉換成角位移或直線位移的執(zhí)行元件,是一種輸出與輸入數(shù)字脈沖相對應的增量驅動元件[2]。步進電機的運行方式主要有整步、分步、微步3種[3]。為了使儀表指針能夠高精度地準確定位,使步進電機平穩(wěn)、無卡滯地運行,減少電機的振蕩和噪聲,需要對步進電機進行細分驅動,即微步模式。
步進電機的細分驅動方式有專用芯片法和PWM脈寬調制法。專用芯片法采用硬件的方法實現(xiàn)步進電機的細分驅動,容易實現(xiàn),但成本較高。PWM脈寬調制法采用PWM脈沖直接對步進電機進行驅動,采用軟件的方式實現(xiàn),驅動硬件成本較低,但需要多路PWM模塊,對單片機的選型要求較高。因此綜合成本和實用性兩方面的因素考慮后,本設計提出一種基于組合電阻式的步進電機細分驅動方法,該驅動方式的硬件為3個電阻的組合,成本低,原理簡單,易實現(xiàn)。驅動軟件為儀表指針跟蹤算法的設計,不需要單片機的PWM模塊,實用性較強。
在本設計中勵磁繞組采用階梯型電壓驅動,在繞組上進行電流疊加,即每經過一個細分信號周期,單片機輸出到電機線圈的電壓順次發(fā)生變化,使得通過線圈的電流按上述公式產生接近正弦波的變化,逐漸增大或減少,而不是一次性地通入或切斷,使電機能更平穩(wěn)地運行。
組合電阻式細分驅動是指步進電機每一相線圈一端與單片機的I/O口相連,另一端與N個阻值不同、處于并聯(lián)方式的電阻相連,N個電阻的數(shù)量和取值大小需要考慮電機內部線圈電阻,以便產生能夠驅動電機的、接近于正弦波的階梯波形。單片機與步進電機之間無專用驅動芯片。并聯(lián)電阻N的個數(shù)越多,則步進電機每一相上出現(xiàn)的狀態(tài)就越多,細分的程度也越高。圖2所示為該24細分驅動法的硬件電路圖。
圖中M1、M2為步進電機的一相繞組,M3、M4為另一相繞組,SN74HC595是串行輸入并行輸出芯片,用作擴展PIC單片機的I/O口,每一相繞組上都接有3個并聯(lián)的電阻。因為VID29-05輸出軸的步距角最小可以達到(1/12)°,而它內置減速比為180/1的齒輪系,因此一個微步表示指針轉子轉動15°。VID29-05步進電機一個周期共有6個分步,即每個分步相位相差60°,每個分步可以細分為4個微步,整個周期細分為24個微步,即24細分,其對稱的階梯波形圖如圖3所示。
因為有12個不同的對稱階梯數(shù)值,故選取3個不同阻值的電阻與步進電機繞組線圈電阻一起就能得到16種邏輯組合,選取其中最合適的12種即可。在硬件電路中每一相都有3個電阻相并聯(lián),VID29-05步進電機的每相內部繞組電阻為210 ?贅,單片機I/O口輸出電壓為5 V,再根據VID29-05步進電機微步驅動的各相電流值,可以計算出3個電阻與電機內部繞組在電路中的總等效電阻值和步進電機一相繞組上的電壓值,根據這些數(shù)據就可選配3個電阻的阻值和控制電阻引腳的電平邏輯。當QD輸出高電平時,QA、QB、QC有8種組合可選,除去輸出全高狀態(tài)(因為若QA、QB、QC、QD全為高時,就沒有電流輸出),可根據需要取出其中最適合的6種狀態(tài)。當QD輸出低電平時,同理可取出除去全低狀態(tài)外的最適合的6種狀態(tài),由此可得到12個值。將此12個值進行x軸對稱則可得出另一組階梯波。將整組數(shù)據建成一個表,通過查表的方式就可以控制步進電機。
3 步進電機組合電阻式細分驅動的軟件設計
3.1 指示參數(shù)位置與步進電機微步數(shù)的關系
在本設計中,要顯示的參數(shù)有溫度、壓力、轉速和電壓。溫度顯示范圍為40 ℃~120 ℃,壓力顯示范圍為0~1 MPa,轉速顯示范圍為0~3 000 r/min,電壓顯示范圍為18 V~32 V。在此對溫度顯示與步進電機微步數(shù)的計算關系進行說明,其余三表類似。根據廠家給定的溫度面板滿量程刻度為112.5°,步進電機細分驅動中每一步旋轉角度(1/12)°,因此當達到滿量程時步進電機的微步數(shù)為step=112.5×12=1 350 步。但溫度是從40 ℃開始顯示的,應將40 ℃作為指示零點,且滿量程為120 ℃,滿量程點與初始點相差溫度為80 ℃,而它們之間的物理角度差為112.5°,因此溫度每相差一度,指針應走過的物理角度為(112.5/80)°,溫度與電壓近似成線性關系,如圖4所示的溫度-電壓關系圖,由此可得關系式:
根據式(2)和式(3)就可計算出相對應的目標溫度值y,再根據式(4)就可計算出目標溫度相對應的儀表指針位置,即指針距初始點(“40 ℃”點)的微步數(shù)。將此位置與指針的當前位置進行比較,即可得到指針應轉動的方向和轉角。由此可建立溫度-微步數(shù)表,通過查表的方式就可得到目標溫度值所對應的微步數(shù)。
由于溫度與電壓之間的非線性關系及電機齒輪的誤差影響,導致滿度定位有偏差,可以通過分段線性處理的方法,在半滿量程點、2/3滿量程點和滿量程點,對式(4)進行補償修正,從而獲得準確的定位。
3.2 儀表指針跟蹤算法的實現(xiàn)
儀表指針運行的效果要求平滑且跟蹤快,要滿足這兩項要求,必須要有好的升降頻控制算法,因此必須在軟件設計上配合實現(xiàn)硬件電路的細分驅動。硬件電路提供驅動步進電機的階梯波形,軟件設計將控制此波形的時間間隔,使得指針快速、精準地定位,并且平滑、無卡滯地運行。主要包括指針歸零模塊、分頻驅動中斷模塊、跟蹤控制模塊。
常用的升降頻控制方法有3種[4]:直線升降頻、指數(shù)曲線升降頻、拋物線升降頻。直線升降頻是以恒定的加速度進行升降,平穩(wěn)性較好,適用于速度變化較大的快速定位方式。軟件實現(xiàn)比較簡單,但其加速度時間比較長。指數(shù)升降頻控制具有較強的跟蹤能力,但當速度變化較大的時侯其平衡性較差。拋物線升降頻是將直線升降頻和指數(shù)曲線升降頻相融合,充分考慮到步進電機低速時的有效轉矩,使升降速的時間大為縮短,同時又考慮使其具有較強的跟蹤能力,這是一種比較好的升降頻控制方法,本設計所采用的升降頻控制方法正是此方法。
指針跟蹤程序流程圖如圖5所示,查參數(shù)-微步數(shù)表得到目標微步數(shù)后,與當前位置比較確定指針的轉動方向和轉角。為使指針能快速跟蹤、準確定位,需要按拋物線升降頻法,建立一張位置差值-指針速度表,當目標位置離當前位置較遠時,指針速度較快,反之則較慢,如參數(shù)突然變化較大,不能直接從上一較快(較慢)的指針速度一次變化到較慢(較快)的目標速度,會使指針產生卡滯、抖動等現(xiàn)象,此時應在程序中控制指針速度漸進的變化。
將步進電機應用到船用儀表中,推動了數(shù)字化指針儀表的發(fā)展,顯示方式更符合人機工程學的要求。本文對實現(xiàn)組合電阻式步進電機細分驅動的軟硬件設計進行了描述,與專用芯片法(硬件)和PWM脈寬調制法(軟件)相比,性價比較好。儀表指針跟蹤位置的準確性、快速性及運行平穩(wěn)性都超過了普通模擬指針表的功能,有
著較強的通用性和廣闊的應用前景。該儀表已通過廠家的裝船測試,各項指標達到設計要求,并已交付使用,運行正常。
參考文獻
[1] 陳立軍,黃學武,鄭華耀.SMSC船用智能儀表的研究[J].自動化與儀表,2007,22(4):21-24.
[2] 胡惟文,蔡劍華,王先春.基于FPGA的步進電機均勻細 分驅動器的實現(xiàn)[J].微計算機信息,2008,24(2):183-184.
[3] 李錚,鮮繼清,王平.直驅型數(shù)控指針式儀表的設計與實現(xiàn)[J].儀器儀表學報,2007,28(2):327-330.
[4] 李明泉.功率步進電機升降頻過程的最優(yōu)控制[J].微電機,1988(4):8-16.