摘 要: 單片機(jī)系統(tǒng)已在工業(yè)控制和測量儀表等領(lǐng)域得到廣泛應(yīng)用,,將其用于電動(dòng)汽車卻是近幾年的事情。由于電動(dòng)汽車的工作環(huán)境十分惡劣,,因此單片機(jī)系統(tǒng)的抗干擾問題顯得尤為重要。介紹了將V/F變換用于單片機(jī)系統(tǒng)的抗干擾措施。
關(guān)鍵詞: 單片機(jī) V/F變換 抗干擾
在單片機(jī)測量和控制系統(tǒng)中,,對外界數(shù)據(jù)及信號的讀取基本上都是通過A/D方式實(shí)現(xiàn)的,。它主要有以下幾個(gè)優(yōu)點(diǎn):
(1)根據(jù)需要,可很容易地買到轉(zhuǎn)換精度適用的A/D轉(zhuǎn)換器,。
(2)A/D轉(zhuǎn)換器與CPU的連接可按手冊或資料提供的標(biāo)準(zhǔn)進(jìn)行,。
(3)CPU對經(jīng)過A/D轉(zhuǎn)換提供的數(shù)據(jù)可直接識(shí)別。
(4)A/D轉(zhuǎn)換器對數(shù)據(jù)的轉(zhuǎn)換速度快,,一般為幾微秒~幾十微秒,。
正是由于以上這些因素,使人們在選擇單片機(jī)測控系統(tǒng)對信號的采集方式時(shí),,首先想到的就是使用A/D轉(zhuǎn)換器,,這已經(jīng)成為人們在單片機(jī)測控系統(tǒng)設(shè)計(jì)時(shí)的一個(gè)習(xí)慣。就大多數(shù)情況而言,,這一選擇無疑是正確和明智的,,因?yàn)檫@是一個(gè)十分可靠、成熟和簡捷的方案,。
然而,,在我們?yōu)殡妱?dòng)汽車設(shè)計(jì)單片機(jī)測控系統(tǒng)時(shí)所面臨卻是另外一種情況,單片機(jī)系統(tǒng)的工作環(huán)境十分惡劣,,特別是電動(dòng)汽車在行駛過程中,,外界的機(jī)械振動(dòng),車內(nèi)的電器設(shè)備(如斬波器,、電動(dòng)機(jī),,其峰值電流可達(dá)600A)所產(chǎn)生的干擾,室外環(huán)境的溫差(-20~+65°C),,都會(huì)影響單片機(jī)系統(tǒng)的正常工作,。這就要求我們在設(shè)計(jì)單片機(jī)系統(tǒng)時(shí)必須考慮到各種影響其正常工作的因素,并采取相應(yīng)的有效措施,,這樣才可使設(shè)計(jì)出來的系統(tǒng)適應(yīng)環(huán)境并正常工作,。
1 電動(dòng)汽車的工作環(huán)境和信號特點(diǎn)
電動(dòng)汽車為單片機(jī)系統(tǒng)提供的工作條件是非常苛刻的,。由于電動(dòng)汽車自身的空間限制,,使部分電器(如:電池、斬波器等)的位置比較分散,,從而使得單片機(jī)測控系統(tǒng)對部分信號的采集要通過長線傳輸,。由于電動(dòng)車的驅(qū)動(dòng)電機(jī)是通過斬波器或逆變器驅(qū)動(dòng)的,斬波器和逆變器的工作方式使電動(dòng)汽車動(dòng)力電路中產(chǎn)生強(qiáng)大的脈沖電流,。
實(shí)際應(yīng)用中,,干擾進(jìn)入系統(tǒng)的渠道主要有三條:
(1)空間干擾(場干擾):干擾以電磁波輻射方式進(jìn)入系統(tǒng),;
(2)供電系統(tǒng)干擾:干擾通過電源通道進(jìn)入系統(tǒng);
(3)過程通道干擾:干擾通過與主機(jī)相聯(lián)的前向通道,、后向通道及與其它主機(jī)的相互通道進(jìn)入系統(tǒng),。
一般情況下,干擾都是以脈沖的形式進(jìn)入系統(tǒng)的,,而斬波器和逆變器的工作正好在空間,、被測信號中及電源部分造成了非常強(qiáng)大的脈沖干擾。這些干擾通過長距離的信號線,、系統(tǒng)的前后通道,、電源而進(jìn)入單片機(jī),使整個(gè)系統(tǒng)無法正常工作,。這些干擾是以高頻脈沖的方式存在于系統(tǒng)中,,雖然有較高的電壓幅值,但不能提供較大的電流,。因此我們利用干擾信號的這一特點(diǎn)對它進(jìn)行抑制和去除,。這里主要介紹如何消除這些干擾對被測信號的影響。
前面已經(jīng)介紹過,,一般情況下單片機(jī)系統(tǒng)的信號采集是通過A/D方式實(shí)現(xiàn)的,,這對于具有較高輸出阻抗的電壓信號來說是非常合適的。而對于電動(dòng)車上的被測信號則完全是另外一種情況,。如電動(dòng)車動(dòng)力電池的電壓就是一個(gè)輸出阻抗很低(約0.005 Ω~0.02Ω),、變化非常緩慢的信號。這主要由鉛酸蓄電池的放電特性決定,,如圖1所示。
然而這樣一個(gè)平穩(wěn)的電壓信號通過長線傳輸,、再經(jīng)A/D變換后卻變成一個(gè)變化無常,、噪聲很強(qiáng)的信號,如圖2所示,。
電池電壓,、電流的檢測對于電動(dòng)汽車是至關(guān)重要的,通過這些數(shù)據(jù)可以了解到電動(dòng)汽車電池目前所處的狀態(tài),。面對這樣一個(gè)信號,,我們首先采用了傳統(tǒng)的硬件濾波電路和軟件數(shù)字濾波相結(jié)合的方法對信號進(jìn)行處理,經(jīng)處理后的信號波形如圖3所示,。
從信號的波形上看,,經(jīng)處理后的信號與原始信號相比已有了很大的改進(jìn),但在實(shí)際應(yīng)用中我們發(fā)現(xiàn),,即使是處理過的信號也離我們的要求相差很遠(yuǎn),,因?yàn)樗荒芴峁┳銐虻木?。在電?dòng)汽車行駛過程中,電池電壓信號±1%的誤差會(huì)造成對電池電量±10%的錯(cuò)誤判斷,。這就迫使我們尋找一個(gè)既有很強(qiáng)的抗干擾能力,,又便于長距離傳輸,同時(shí)還能提供足夠精度的信號傳輸和采集方式,。通過對電動(dòng)車動(dòng)力電池電壓信號的分析,,找出如下特點(diǎn):
(1)該信號具有很大的慣性,變化緩慢,。即使發(fā)生突變,,其過渡過程也要幾秒鐘。
(2)該信號源具有較低的內(nèi)阻,,在輸出適當(dāng)電流的情況下不會(huì)對信號產(chǎn)生影響,。
由以上兩個(gè)特點(diǎn),可得出如下結(jié)論:電池的電壓信號不需要很快的檢測速度,,而且信號源可提供一定的輸出電流,。根據(jù)這一結(jié)論,我們選擇了V/F變換器來替代原有的A/D轉(zhuǎn)換器,。這樣做有如下四個(gè)優(yōu)點(diǎn),。
(1)占用計(jì)算機(jī)資源少。對于一種模擬信號僅占用一個(gè)輸入通道,。
(2)抗干擾性能好,。V/F轉(zhuǎn)換過程是對輸入信號的不斷積分,它需要被測信號提供適當(dāng)?shù)尿?qū)動(dòng)電流,,因干擾信號不能提供電流而被濾掉,。另外,V/F變換與計(jì)算機(jī)接口很容易采用光耦隔離,。
(3)便于遠(yuǎn)距離傳輸,。
(4)信號頻率可靈活選擇。
2 V/F變換電路的硬件設(shè)計(jì)
2.1 V/F變換器的結(jié)構(gòu)及工作原理
V/F轉(zhuǎn)換輸入通道基本結(jié)構(gòu)如圖4所示,。
V/F轉(zhuǎn)換器有許多種,,如AD公司的ADVFC32,AD650,;美國國家半導(dǎo)體公司的LMx31系列,;BB公司的VFC32,VFC62等,。每一種都有它們自已特點(diǎn),。從性能價(jià)格比和實(shí)際需要上考慮,我們選用了LMx31系列的LM231型V/F轉(zhuǎn)換器,。
2.2 V/F變換器的設(shè)計(jì)與計(jì)算
LMx31的簡化功能框圖,,如圖5所示,。
由圖5可以看出,只要在芯片外圍接上適當(dāng)電阻,、電容就可構(gòu)基本應(yīng)用電路,。輸入比較器將輸入電平Vin和Vx相比較,當(dāng)Vin>Vx時(shí),,啟動(dòng)單穩(wěn)脈沖定時(shí)器,,并導(dǎo)通頻率輸出晶體管和開關(guān)電流源,定時(shí)器的定時(shí)周期T=1.1Rt·Ct,,在這個(gè)周期中,,電流i向電容Ct充電,使Vx上升,,當(dāng)Vx>Vin時(shí),,電流i關(guān)斷,定時(shí)器自行復(fù)位,,同時(shí)CL通過RL放電,,直到Vx<Vin為止。然后比較器再次啟動(dòng)定時(shí)器,,開始下一個(gè)循環(huán),。由于注入CL的平均電流嚴(yán)格等于IAVE=i·t·fout,流出CL的平均電流嚴(yán)格等于Vx/RL≈Vin/RL,。這種V/F轉(zhuǎn)換器能在較寬的頻率范圍內(nèi)保證其輸出頻率嚴(yán)格正比于輸入電壓,。
由式IAVE=i·t·fout=Vx/RL≈Vin/RL
實(shí)際系統(tǒng)中的V/F變換器電路如圖6所示。為了消除干擾,,在輸入端7端上加進(jìn)一個(gè)RC低通濾波器,,電容C1=1μF,電阻R1=100kΩ,。濾波器截止頻率f0為:
設(shè)計(jì)中使1V電壓對應(yīng)的輸出頻率為1000Hz,,V/F轉(zhuǎn)換增益K計(jì)算如下:
由上式得:Rs=2.09Rt·Ct·RL·1000=2.09·100·103·0.01·10-6·6.8·106=14.212(kΩ)
為了保正V/F電路的溫度穩(wěn)定性,電路中的電阻,、電容應(yīng)選用溫度穩(wěn)定性高的器件。
3 V/F變換方式對信號精度的影響
V/F變換雖然解決了信號在長線傳輸過程中的抗干擾問題,,但卻改變了CPU對被測信號的讀取方式,,由原來的對A/D輸出信號的直接讀取變?yōu)閷/F變換器輸出脈沖頻率信號的讀取。對頻率信號的測量大致有兩種方法:一種是平均周期檢測法,;另一種是齒周期檢測法,。下面就分析一下不同檢測方法對信號精度的影響。
3.1 平均周期檢測法
平均周期檢測法的原理如圖7所示,。定時(shí)器計(jì)數(shù)值NC預(yù)先設(shè)定,,時(shí)鐘頻率CLK已知為f0,,周期為T0,則T0×NC為定時(shí)時(shí)間,。定時(shí)器控制計(jì)數(shù)器,,定時(shí)器為0時(shí),計(jì)數(shù)器開始計(jì)數(shù),;定時(shí)時(shí)間到,,計(jì)數(shù)器停止計(jì)數(shù),計(jì)數(shù)時(shí)間為T0×NC,。如果計(jì)算值為Nt,,則輸入信號的待測頻率為:
f=Nt/(T0·NC)
絕對誤差Δf=ΔNt/(T0·NC)
∵ΔN=±1
∴Δf=1/(T0·NC)
相對誤差 Δf/f=1/Nt
由相對誤差表達(dá)式可以看出,計(jì)數(shù)值Nt越大,,測量精度越高,,所以平均周期法適于高頻信號的測量。
3.2 齒周期檢測法
齒周期檢測法原理如圖8所示,。外部待測頻率為輸入定時(shí)器,,定時(shí)器的計(jì)數(shù)值Nt給定;時(shí)鐘脈沖CLK輸入計(jì)數(shù)器,,時(shí)鐘脈沖頻率為f0,,周期為T0。用定時(shí)器控制計(jì)數(shù)器的啟停,。由于待測脈沖頻率f未知,,定時(shí)時(shí)間T×Nt是隨待測脈沖頻率變化的變量,式中T為待測脈沖的周期,。如果在定時(shí)時(shí)間T×Nt內(nèi),,計(jì)數(shù)器的計(jì)數(shù)值為NC,
則:T·Nt=T0·NC
f=Nt/(T0·NC)
相對誤差Δf/f=1/Nt
由相對誤差表達(dá)式可以看出,,計(jì)數(shù)值NC越大,,測量精度越高。而NC越大對應(yīng)的待測脈沖的頻率越低,,故齒周期法適于低頻信號的檢測,。
3.3 檢測方法的確定及誤差分析
系統(tǒng)設(shè)計(jì)中使用了LM231型V/F變換器,其輸出頻率在0~100kHz之間,。根據(jù)實(shí)際需要及精度要求,,將輸出頻率限制在0~10kHz之間,通常頻率變化范圍為:4~9kHz,。
如果用第一種方法——平均周期法測量頻率,,相對誤差Δf/f=1/Nt,如果要求相對誤差≤0.1%,,則Nt≥1000,,定為轉(zhuǎn)換精度精確到10位(210=1024),,即Nt≥1024。由于這種方法適于高頻信號測量,,對于低頻信號的測量誤差較大,,因此只需考查測量低頻信號時(shí)的情況。
當(dāng)f=4kHz時(shí),,為了保證Nt≥1024,,需采樣定時(shí)時(shí)間為Nt/f=1024/4000=256ms。
如果用第二種方法——齒周期法測量頻率,,相對誤差Δf/f=1/NC,,同樣要求相對誤差≤0.1%,則NC≥1000,,仍定為NC≥1024,。由于這種方法適于測量低頻信號,對于高頻信號的測量誤差較大,,故只需考查其測量高頻信號的情況,。
當(dāng)f=10kHz時(shí),在晶振頻率為12MHz時(shí)CPU的內(nèi)部時(shí)鐘周期T0=2μs,,則定時(shí)時(shí)間T0×NC=2×10-6×1024=2.05ms,。此時(shí)應(yīng)給定定時(shí)器計(jì)數(shù)值Nt=f×(T0×NC)=20。當(dāng)待測頻率為4kHz時(shí),,Nt=20,,定時(shí)時(shí)間Nt×T=20/4000=5ms。
由以上分析可以看出,,在保正測量精度相同的情況下,,齒周期法的測量速度比平均周期法的測量速度要快得多(相差256ms/5ms≈51倍),因此我們采用了齒周期法測量頻率,。
然而,,用哪種方法都有一個(gè)計(jì)數(shù)誤差ΔN=±1的問題,這在單純由硬件組成的檢測電路中是無法消除的,。其原因如圖9所示,。
第一:定時(shí)器啟動(dòng)后,沒有遇上待測脈沖的前沿,,而要等T1時(shí)間后才開始計(jì)數(shù),;
第二:定時(shí)器時(shí)間到,不在待測脈沖的末尾,,而提前了T2時(shí)間。
由于T1和T2的存在導(dǎo)致測量誤差ΔN=±1的存在,,一般檢測設(shè)備為了減少T1,、T2對測量結(jié)果的影響,,只能提高被測脈沖的頻率,或采用高頻補(bǔ)償法——即在T1和T2期間,,對另一高頻信號計(jì)數(shù),,這無疑會(huì)增加硬件電路的復(fù)雜程度。
單片機(jī)系統(tǒng)的軟件可控性,,使這個(gè)問題的解決變得簡單得多,。計(jì)數(shù)時(shí)使用單片機(jī)的兩個(gè)定時(shí)器,一個(gè)定時(shí),,另一個(gè)計(jì)數(shù),。計(jì)數(shù)器由外部信號控制啟動(dòng),且與待測脈沖信號同步,,這樣就消除了圖9中T1的影響,。當(dāng)計(jì)數(shù)到某一確定值時(shí),由CPU控制讀取計(jì)數(shù)值和定時(shí)時(shí)間值,,這樣就消除了T2的影響,。用計(jì)數(shù)值除以定時(shí)值即可得到被測頻率值。這種測量方式的誤差≤0.1%,。
V/F方式的使用,,有效地消除了空間和過程通道的干擾。當(dāng)然,,V/F變換并不適用于所有情況,。對于變化快、要求有較高檢測速度的信號來說,,V/F變換就不適用,。因此,在實(shí)際設(shè)計(jì)過程中,,單片機(jī)測控系統(tǒng)選用什么方式進(jìn)行信號的傳遞及采集要根據(jù)具體的情況加以選擇,。
參考文獻(xiàn)
1 孫涵芳.Intel 16位單片機(jī).北京:北京航空航天大學(xué)出版社,1995
2 童詩白.模擬電子技術(shù)基礎(chǔ).北京:高等教育出版社,,1981
3 周明德.微型計(jì)算機(jī)IBM-PC/XT系統(tǒng)原理及應(yīng)用. 北京:清華大學(xué)出版社,,1991
4 朱達(dá)斌.模擬集成電路的特性及應(yīng)用.北京:航空工業(yè) 出版社