摘要:為了既適應(yīng)船用儀表的需要,又滿足人機(jī)工程的要求,本文提出了一種全數(shù)字步進(jìn)電機(jī)式船用柴油機(jī)狀態(tài)監(jiān)控儀表,與傳統(tǒng)的模擬量為傳輸量的指針式儀表不同的是,它把數(shù)字量用步進(jìn)電機(jī)式指針進(jìn)行了模擬式指示,將數(shù)字顯示的準(zhǔn)確性和模擬指示的直觀性結(jié)合在一起,克服了以往模擬式儀表指針指示的非線性、抖動(dòng)、卡滯等現(xiàn)象,指針示值準(zhǔn)確、能夠快速追蹤參數(shù)的變化,運(yùn)行平穩(wěn)。
船用儀表從工作原理上區(qū)分,有模擬式儀表和數(shù)字式儀表。以模擬量組合單元儀表為主的
監(jiān)控儀表所需要的器件數(shù)量多,指示精度低。數(shù)字式船用儀表多為L(zhǎng)ED數(shù)碼管顯示方式,LED數(shù)碼管實(shí)際上是由七個(gè)發(fā)光管組成8字形構(gòu)成的,加上小數(shù)點(diǎn)就是8個(gè)。這些段分別由字母a,b,c,d,e,f,g,dp來表示。當(dāng)數(shù)碼管特定的段加上電壓后,這些特定的段就會(huì)發(fā)亮,以形成我們眼睛看到的字樣了。如:顯示一個(gè)“2”字,那么應(yīng)當(dāng)是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LED數(shù)碼管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸數(shù)碼管的顯示筆畫常用一個(gè)發(fā)光二極管組成,而大尺寸的數(shù)碼管由二個(gè)或多個(gè)發(fā)光二極管組成,一般情況下,單個(gè)發(fā)光二極管的管壓降為1.8V左右,電流不超過30mA。發(fā)光二極管的陽極連接到一起連接到電源正極的稱為共陽數(shù)碼管,發(fā)光二極管的陰極連接到一起連接到電源負(fù)極的稱為共陰數(shù)碼管。因此為了既適應(yīng)船用儀表的需要,又滿足人機(jī)工程的要求,本文提出了一種全數(shù)字步進(jìn)電機(jī)式船用柴油機(jī)狀態(tài)監(jiān)控儀表,與傳統(tǒng)的模擬量為傳輸量的指針式儀表不同的是,它把數(shù)字量用步進(jìn)電機(jī)式指針進(jìn)行了模擬式指示,將數(shù)字顯示的準(zhǔn)確性和模擬指示的直觀性結(jié)合在一起,克服了以往模擬式儀表指針指示的非線性、抖動(dòng)、卡滯等現(xiàn)象,指針示值準(zhǔn)確、能夠快速追蹤參數(shù)的變化,運(yùn)行平穩(wěn)。
1、步進(jìn)電機(jī)式船用儀表的總體設(shè)計(jì)方案
步進(jìn)電機(jī)式船用儀表總體結(jié)構(gòu)框圖如圖1所示,本設(shè)計(jì)采用帶有LCD顯示模塊的PIC核的單片機(jī)作為控制器,采用RISC結(jié)構(gòu)的單片機(jī)數(shù)據(jù)線和指令線分離,即所謂哈佛結(jié)構(gòu)。這使得取指令和取數(shù)據(jù)可同時(shí)進(jìn)行,且由于一般指令線寬于數(shù)據(jù)線,使其指令較同類CISC單片機(jī)指令包含更多的處理信息,執(zhí)行效率更高,速度亦更快。同時(shí),這種單片機(jī)指令多為單字節(jié),程序存儲(chǔ)器的空間利用率大大提高,有利于實(shí)現(xiàn)超小型化。屬于CISC結(jié)構(gòu)的單片機(jī)有Motorola的M68HC系列、Atmel的AT89系列、中國(guó)臺(tái)灣Winbond(華邦)W78系列、荷蘭Philips的PCF80C51系列等;屬于RISC結(jié)構(gòu)的有In8051系列、Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韓國(guó)三星公司的KS57C系列4位單片機(jī)、中國(guó)臺(tái)灣義隆的EM-78系列等。
2、步進(jìn)電機(jī)組合電阻式細(xì)分驅(qū)動(dòng)的硬件設(shè)計(jì)
步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元步進(jìn)電機(jī)件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的頻率和脈沖數(shù),而不受負(fù)載變化的影響,當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,稱為“步距角”,它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。
步進(jìn)電機(jī)的細(xì)分驅(qū)動(dòng)方式有芯片法和PWM脈寬調(diào)制法。芯片法采用硬件的方法實(shí)現(xiàn)步進(jìn)電機(jī)的細(xì)分驅(qū)動(dòng),容易實(shí)現(xiàn),但成本較高。PWM脈寬調(diào)制法采用PWM脈沖直接對(duì)步進(jìn)電機(jī)進(jìn)行驅(qū)動(dòng),采用軟件的方式實(shí)現(xiàn),驅(qū)動(dòng)硬件成本較低,但需要多路PWM模塊,對(duì)單片機(jī)的選型要求較高。因此綜合成本和實(shí)用性兩方面的因素考慮后,本設(shè)計(jì)提出一種基于組合電阻式的步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)方法,該驅(qū)動(dòng)方式的硬件為3個(gè)電阻的組合,成本低,原理簡(jiǎn)單,易實(shí)現(xiàn)。
在本設(shè)計(jì)中勵(lì)磁繞組采用階梯型電壓驅(qū)動(dòng),在繞組上進(jìn)行電流疊加,即每經(jīng)過一個(gè)細(xì)分信號(hào)周期,單片機(jī)輸出到電機(jī)線圈的電壓順次發(fā)生變化,使得通過線圈的電流按上述公式產(chǎn)生接近正弦波的變化,逐漸增大或減少,而不是一次性地通入或切斷,使電機(jī)能更平穩(wěn)地運(yùn)行。
組合電阻式細(xì)分驅(qū)動(dòng)是指步進(jìn)電機(jī)每一相線圈一端與單片機(jī)的I/O口相連,另一端與N個(gè)阻值不同、處于并聯(lián)方式的電阻相連,N個(gè)電阻的數(shù)量和取值大小需要考慮電機(jī)內(nèi)部線圈電阻,以便產(chǎn)生能夠驅(qū)動(dòng)電機(jī)的、接近于正弦波的階梯波形。單片機(jī)與步進(jìn)電機(jī)之間無驅(qū)動(dòng)芯片。圖2所示為該24細(xì)分驅(qū)動(dòng)法的硬件電路圖。
圖中M1、M2為步進(jìn)電機(jī)的一相繞組,M3、M4為另一相繞組,SN74HC595是串行輸入并行輸出芯片,用作擴(kuò)展PIC單片機(jī)的I/O口,每一相繞組上都接有3個(gè)并聯(lián)的電阻。因?yàn)閂ID29-05輸出軸的步距角zui小可以達(dá)到(1/12)°,而它內(nèi)置減速比為180/1的齒輪系,因此一個(gè)微步表示指針轉(zhuǎn)子轉(zhuǎn)動(dòng)15°。VID29-05步進(jìn)電機(jī)一個(gè)周期共有6個(gè)分步,即每個(gè)分步相位相差60°,每個(gè)分步可以細(xì)分為4個(gè)微步,整個(gè)周期細(xì)分為24個(gè)微步,即24細(xì)分,其對(duì)稱的階梯波形圖如圖3所示。
因?yàn)橛?2個(gè)不同的對(duì)稱階梯數(shù)值,故選取3個(gè)不同阻值的電阻與步進(jìn)電機(jī)繞組線圈電阻一起就能得到16種邏輯組合,選取其中zui合適的12種即可。在硬件電路中每一相都有3個(gè)電阻相并聯(lián),VID29-05步進(jìn)電機(jī)的每相內(nèi)部繞組電阻為210?贅,單片機(jī)I/O口輸出電壓為5V,再根據(jù)VID29-05步進(jìn)電機(jī)微步驅(qū)動(dòng)的各相電流值,可以計(jì)算出3個(gè)電阻與電機(jī)內(nèi)部繞組在電路中的總等效電阻值和步進(jìn)電機(jī)一相繞組上的電壓值,根據(jù)這些數(shù)據(jù)就可選配3個(gè)電阻的阻值和控制電阻引腳的電平邏輯。當(dāng)QD輸出高電平時(shí),QA、QB、QC有8種組合可選,除去輸出全高狀態(tài),可根據(jù)需要取出其中的6種狀態(tài)。當(dāng)QD輸出低電平時(shí),同理可取出除去全低狀態(tài)外的的6種狀態(tài),由此可得到12個(gè)值。
3、步進(jìn)電機(jī)組合電阻式細(xì)分驅(qū)動(dòng)的軟件設(shè)計(jì)
3.1指示參數(shù)位置與步進(jìn)電機(jī)微步數(shù)的關(guān)系
在本設(shè)計(jì)中,要顯示的參數(shù)有溫度、壓力、轉(zhuǎn)速和電壓。溫度顯示范圍為40℃~120℃,壓力顯示范圍為0~1MPa,轉(zhuǎn)速顯示范圍為0~3000r/min,電壓顯示范圍為18V~32V。在此對(duì)溫度顯示與步進(jìn)電機(jī)微步數(shù)的計(jì)算關(guān)系進(jìn)行說明,其余三表類似。根據(jù)廠家給定的溫度面板滿量程刻度為112.5°,步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)中每一步旋轉(zhuǎn)角度(1/12)°,因此當(dāng)達(dá)到滿量程時(shí)步進(jìn)電機(jī)的微步數(shù)為step=112.5×12=1350步。但溫度是從40℃開始顯示的,應(yīng)將40℃作為指示零點(diǎn),且滿量程為120℃,滿量程點(diǎn)與初始點(diǎn)相差溫度為80℃,而它們之間的物理角度差為112.5°,因此溫度每相差一度,指針應(yīng)走過的物理角度為(112.5/80)°,溫度與電壓近似成線性關(guān)系,如圖4所示的溫度-電壓關(guān)系圖,由此可得關(guān)系式:
根據(jù)式(2)和式(3)就可計(jì)算出相對(duì)應(yīng)的目標(biāo)溫度值y,再根據(jù)式(4)就可計(jì)算出目標(biāo)溫度相對(duì)應(yīng)的儀表指針位置,即指針距初始點(diǎn)(“40℃”點(diǎn))的微步數(shù)。將此位置與指針的當(dāng)前位置進(jìn)行比較,即可得到指針應(yīng)轉(zhuǎn)動(dòng)的方向和轉(zhuǎn)角。
由于溫度與電壓之間的非線性關(guān)系及電機(jī)齒輪的誤差影響,導(dǎo)致滿度定位有偏差,可以通過分段線性處理的方法,在半滿量程點(diǎn)、2/3滿量程點(diǎn)和滿量程點(diǎn),對(duì)式(4)進(jìn)行補(bǔ)償修正,從而獲得準(zhǔn)確的定位。
3.2儀表指針跟蹤算法的實(shí)現(xiàn)
儀表指針運(yùn)行的效果要求平滑且跟蹤快,要滿足這兩項(xiàng)要求,必須要有好的升降頻控制算法,因此必須在軟件設(shè)計(jì)上配合實(shí)現(xiàn)硬件電路的細(xì)分驅(qū)動(dòng)。硬件電路提供驅(qū)動(dòng)步進(jìn)電機(jī)的階梯波形,軟件設(shè)計(jì)將控制此波形的時(shí)間間隔,使得指針快速、地定位,并且平滑、無卡滯地運(yùn)行。
常用的升降頻控制方法有3種:直線升降頻、指數(shù)曲線升降頻、拋物線升降頻。直線升降頻是以恒定的加速度進(jìn)行升降,平穩(wěn)性較好,適用于速度變化較大的快速定位方式。軟件實(shí)現(xiàn)比較簡(jiǎn)單,但其加速度時(shí)間比較長(zhǎng)。指數(shù)升降頻控制具有較強(qiáng)的跟蹤能力,但當(dāng)速度變化較大的時(shí)侯其平衡性較差。拋物線升降頻是將直線升降頻和指數(shù)曲線升降頻相融合,充分考慮到步進(jìn)電機(jī)低速時(shí)的有效轉(zhuǎn)矩,使升降速的時(shí)間大為縮短,同時(shí)又考慮使其具有較強(qiáng)的跟蹤能力。
指針跟蹤程序流程圖如圖5所示,查參數(shù)-微步數(shù)表得到目標(biāo)微步數(shù)后,與當(dāng)前位置比較確定指針的轉(zhuǎn)動(dòng)方向和轉(zhuǎn)角。為使指針能快速跟蹤、準(zhǔn)確定位,需要按拋物線升降頻法,建立一張位置差值-指針?biāo)俣缺恚?dāng)目標(biāo)位置離當(dāng)前位置較遠(yuǎn)時(shí),指針?biāo)俣容^快,反之則較慢,如參數(shù)突然變化較大,不能直接從上一較快(較慢)的指針?biāo)俣纫淮巫兓捷^慢(較快)的目標(biāo)速度,會(huì)使指針產(chǎn)生卡滯、抖動(dòng)等現(xiàn)象。
將步進(jìn)電機(jī)應(yīng)用到
船用儀表中,推動(dòng)了數(shù)字化指針儀表的發(fā)展,顯示方式更符合人機(jī)工程學(xué)的要求。
4、結(jié)束語
本文對(duì)實(shí)現(xiàn)組合電阻式步進(jìn)電機(jī)細(xì)分驅(qū)動(dòng)的軟硬件設(shè)計(jì)進(jìn)行了描述,與芯片法(硬件)和PWM脈寬調(diào)制法(軟件)相比,性價(jià)比較好。儀表指針跟蹤位置的準(zhǔn)確性、快速性及運(yùn)行平穩(wěn)性都超過了普通模擬指針表的功能,有著較強(qiáng)的通用性和廣闊的應(yīng)用前景。