基于PC104總線的動態(tài)稱重測量板的設(shè)計
摘要: 在分析了現(xiàn)有系統(tǒng)問題的基礎(chǔ)上,提出了基于PC/104總線的、以C8051F060MCU為核心的動態(tài)稱重測量接口板的設(shè)計,C8051F060具有獨立的雙通道16 位逐次比較型A/D轉(zhuǎn)換器等功能。經(jīng)一年多的實際使用證明該設(shè)計具有簡化了硬、軟件設(shè)計、增強了系統(tǒng)的工作可靠性、降低了造價等優(yōu)勢。
關(guān)鍵詞:PC/104總線;動態(tài)稱重;模數(shù)轉(zhuǎn)換器
被測對象處于非靜止?fàn)顟B(tài),即被稱重或測力的物體在運動則形成了動態(tài)稱重測量狀態(tài)[1],如對公路上行駛的汽車或鐵道上運行的火車進(jìn)行實時稱量測量等被稱為動態(tài)稱重。貨物汽車超重載荷已是貨運領(lǐng)域一個共知的事實。貨物汽車的超重載荷對公路運輸安全、公里路面保養(yǎng)狀況影響巨大,國家有關(guān)部門已專項加以整頓,而汽車動態(tài)稱重測量系統(tǒng)是治理貨物汽車超重載荷的有力的技術(shù)武器之一。
在汽車動態(tài)稱重測量領(lǐng)域已有一些動態(tài)稱重儀器在使用中,但它們主要以單片機為核心、采用低精度、低速度、多元件來構(gòu)成系統(tǒng),這雖制造成本較低,但其可靠性、工作性能和指標(biāo)等受到了極大的限制[2,3,4]。鑒于工程的實際需求,我們設(shè)計了與便攜式PC/104總線計算機相配合的高性能的汽車動態(tài)稱重測量接口板,克服了上述缺點并達(dá)到了預(yù)期的設(shè)計指標(biāo)。
與便攜式PC/104總線計算機相配合的高性能的汽車動態(tài)稱重測量接口板的硬件電路由兩部分組成:信號采集部分和與PC/104總線的接口部分。
1 信號采集部分設(shè)計
當(dāng)前測控儀器中采用的高分辨率A/D轉(zhuǎn)換器多為獨立的集成電路芯片,如此構(gòu)成的高精度測控系統(tǒng)不免在抗干擾、轉(zhuǎn)換精度、電路板體積以及價格等方面存在著眾多的、難以解決的實際問題。使用將高分辨率A/D轉(zhuǎn)換器與MCU(微控制器或稱為單片機)集成到一起的集成芯片不失為解決上述問題的一種好方法。C8051F060是一個由CYGNAL公司生產(chǎn)的、高速的、數(shù)字與模擬電路混合的集成電路MCU芯片,它具有25MIPS的峰值工作速度、靈活的外部存儲器接口和59條數(shù)據(jù)I/O接口線及兩個片內(nèi)的、獨立通道的16 位逐次比較型A/D轉(zhuǎn)換器等 [5]。這兩個獨立通道的16位逐次比較型A/D轉(zhuǎn)換器具有如下特點:
Ø 16 位分辨率。
Ø ±0.75 LSB INL,保證無失碼。
Ø 可編程的轉(zhuǎn)換速率,最大可達(dá)1 Msps。
Ø 芯片內(nèi)部集成了模擬輸入量的跟蹤保持及采樣電路。
Ø 可軟件設(shè)定為兩個單端輸入的或一個差分輸入的A/D轉(zhuǎn)換器。
Ø 偏移和增益在一定范圍內(nèi)可調(diào)整。
Ø 可進(jìn)行直接存儲器存取操作,數(shù)據(jù)直接存儲到RAM 中,不需要額外的軟件開銷。
Ø 具有與數(shù)據(jù)相關(guān)的窗口中斷發(fā)生器。
Ø 專用的內(nèi)部電壓基準(zhǔn)或可使用外部電壓基準(zhǔn)源。
兩個獨立通道的16 位逐次比較型A/D轉(zhuǎn)換器表達(dá)為ADCn(n=0是第一個A/D轉(zhuǎn)換通道ADC0,n=1是第二個A/D轉(zhuǎn)換通道ADC1)。其中,ADC0有4種轉(zhuǎn)換啟動方式;ADC1有5種轉(zhuǎn)換啟動方式??梢酝ㄟ^查詢ADnINT位或以中斷的方式來確定A/D轉(zhuǎn)換何時轉(zhuǎn)換結(jié)束并加以處理。
圖1是動態(tài)稱重測量板的信號采集部分原理圖。在圖中,通道1的ADC0 IN端子接于測重傳感器的電橋輸出端,用于采集汽車動態(tài)重量信號,該電橋輸出為毫伏級的直流電壓信號。因此,采用儀用放大器AD620——AMP2作為放大元件將信號放大到MCU(這里指C8051F060)內(nèi)部A/D轉(zhuǎn)換器通道0(ADC0)能夠接受的模擬量轉(zhuǎn)換范圍(0-2.4V)。在AMP2前后的C5、R3和C9用于抗干擾濾波;D1和D2用于MCU內(nèi)部A/D轉(zhuǎn)換器通道ADC0的電壓輸入過載保護(hù)。放大通道的放大倍數(shù)由電阻R4的阻值(RG)決定,當(dāng)RG=∞(未接放大電阻)時,通道的放大倍數(shù)(G)為1。
圖1 動態(tài)稱重測量板的信號采集部分原理圖
AMP2的輸出經(jīng)濾波后送到C80C51F060片內(nèi)的16位A/D轉(zhuǎn)換器通道(ADC0)的外部輸入引腳AIN0(MCU的18腳),數(shù)據(jù)的采樣、保持和A/D轉(zhuǎn)換等全部在MCU芯片內(nèi)部通過軟件的控制來完成。
在圖1中,起始于ADC1 IN端子的A/D通道2的信號處理過程和原理與上述的相同。
C80C51F060片內(nèi)的16位A/D轉(zhuǎn)換器(通道0和通道1)的參考電壓取自MCU內(nèi)部的電壓基準(zhǔn)電路。MCU內(nèi)部的電壓基準(zhǔn)電路由一個1.2V的、溫度穩(wěn)定性好(典型值為15ppm/℃)的、負(fù)載調(diào)整率優(yōu)(典型值為0.5ppm/µA)的帶隙電壓基準(zhǔn)發(fā)生器和一個兩倍增益的輸出緩沖放大器組成。內(nèi)部基準(zhǔn)電壓可以通過VREF引腳(MCU的4腳)連到器件的外部。將VREF引腳與通道0參考電壓端的VREF0引腳(MCU的21腳)和通道1參考電壓端的VREF1引腳(MCU的6腳)相連,為兩個16位ADC提供參考電壓。該參考電壓值(典型值是2.43V)決定了ADC的模擬量輸入范圍。
接于測重傳感器電橋輸入端的給定電壓也源自于MCU內(nèi)部的基準(zhǔn)電壓源,由雙運算放大器AMP3以及R7、R8、R6和V1等組成參考電壓放大、穩(wěn)幅和擴流輸出等電路,完成測重傳感器電橋輸入電壓的精密給定。
由圖1中可以看到,包括放大電路和測重傳感器電橋輸入電壓的精密給定在內(nèi),該動態(tài)稱重測量板的信號采集部分的硬件電路設(shè)計非常簡潔。顯而易見,它與傳統(tǒng)的由多片器件組成的A/D轉(zhuǎn)換器相比具有工作可靠、抗干擾能力強等優(yōu)點,且價格也極具競爭能力(一片C80C51F060MCU僅售不足300元人民幣)。
當(dāng)二個通道的A/D轉(zhuǎn)換器的啟動工作由MCU的Timer3的溢出來啟動并采用中斷方式來取轉(zhuǎn)換結(jié)果值時, ADC0或ADC1的轉(zhuǎn)換結(jié)果值在相應(yīng)通道的中斷子程序中讀取,根據(jù)需要再進(jìn)行保存或做進(jìn)一步的處理。在設(shè)置中應(yīng)注意使Timer3的定時時間要大于或等于ADC的轉(zhuǎn)換時間與轉(zhuǎn)換結(jié)果值的讀取時間(中斷子程序的運行時間)之和。
2 測量板接口部分設(shè)計
PC/104是嵌入式PC的機械標(biāo)準(zhǔn),他秉承了IBM PC開放式總線結(jié)構(gòu)的優(yōu)點,與IBM PC完全兼容,它具備嵌入式控制的特殊要求:體積小、高可靠性、長壽命、編程調(diào)試方便,所以在測試領(lǐng)域基于PC104的智能儀器得到了廣泛應(yīng)用[6]。由于PC/104總線裝置具有體積小、高可靠、長壽命、編程調(diào)試方便等特點,適合于制作高密度、小體積的便攜式測試儀器或控制裝置。PC/104總線系統(tǒng)的開發(fā)平臺與現(xiàn)有的其它通用計算機系統(tǒng)完全相同,故現(xiàn)有的所有開發(fā)軟件均可以使用,所以,在測控領(lǐng)域基于PC/104的智能測控系統(tǒng)得到了廣泛應(yīng)用。為了便于系統(tǒng)的開發(fā)與使用,本動態(tài)稱重測量系統(tǒng)采用了PC/104總線系統(tǒng)作為系統(tǒng)的設(shè)計、開發(fā)和使用平臺,測量板與之配合來完成信號的采集、存儲和傳輸?shù)裙ぷ鳌?
由于MCU與PC/104總線在信號工作頻率和接口時序等方面很難一致,因此,MCU與PC/104總線的I/O數(shù)據(jù)接口應(yīng)采用異步并行緩沖接口方式,即采用74HC373、74HC374等器件鎖存PC/104總線一方數(shù)據(jù)總線的輸出數(shù)據(jù)及握手信號,MCU一方依據(jù)握手信號來進(jìn)行數(shù)據(jù)的讀取或傳送;而MCU一方的輸出數(shù)據(jù)多采用通用并行口,其帶有數(shù)據(jù)保持功能,因此,可用74HC244、74HC245等總線驅(qū)動芯片來進(jìn)行MCU向PC/104總線的數(shù)據(jù)隔離與驅(qū)動,如此可實現(xiàn)雙方向的異步數(shù)據(jù)傳送功能[7]。
C8051F060的外部存儲器接口接有一個128KB的RAM(IS62LV1024)芯片用于數(shù)據(jù)存儲, MCU與PC/104總線的數(shù)據(jù)接口在C8051F060一側(cè)由通用并行接口(P0、P1、P2和P3等)來完成,其通用并行口帶有數(shù)據(jù)保持功能,因此,采用了8位總線驅(qū)動器74HC245來進(jìn)行MCU指向PC/104總線的電平轉(zhuǎn)移(C8051F060為3V工作電源,PC/104總線為5V工作電源)與數(shù)據(jù)驅(qū)動、而PC/104的數(shù)據(jù)總線不具有數(shù)據(jù)保持功能,因此,采用了具有三態(tài)輸出控制功能的8D數(shù)據(jù)鎖存器74HC374來進(jìn)行PC/104總線指向MCU的數(shù)據(jù)傳送、保持工作(C8051F060可直接接收5V信號電平)。由于C8051F060的P2口需雙向操作功能,因此,PC/104總線與MCU的數(shù)據(jù)傳送方向由來自PC/104總線的鎖存信號來決定和指明。
由于測量板需要的不止是一個譯碼地址,為此,在使用了8位模似比較器——74HC688作為比較譯碼芯片進(jìn)行地址譯碼的基礎(chǔ)上又增加了74HC393(二——四譯碼器)進(jìn)行細(xì)分地址譯碼[8]。設(shè)計中為了節(jié)省芯片而放棄了地址線A0參與譯碼,因此,地址譯碼輸出R1/W1及R2/W2各占二個地址,如R1/W1可通過改變JUM1的跳線設(shè)定為200H——3C0H或201H——3C1H。這樣,通過MCU與PC/104總線計算機的軟件配合即可實現(xiàn)微機之間的命令與數(shù)據(jù)的傳送。
圖3 MCU程序處理流程簡圖
3控制軟件設(shè)計
MCU與PC/104總線間的數(shù)據(jù)傳送采用主/從方式,PC/104總線系統(tǒng)為主機,MCU為從機。為了保證主/從方式的數(shù)據(jù)傳送能順利實施, MCU采用中斷方式(對應(yīng)于PC/104總線D3位的MCU的P02引腳已預(yù)編程為中斷響應(yīng)引腳INT0并采用邊緣觸發(fā)方式)響應(yīng)PC/104總線系統(tǒng)的數(shù)據(jù)傳送啟動,可隨時進(jìn)行任意字節(jié)值的雙向數(shù)據(jù)傳送。PC/104總線系統(tǒng)用C語言操作接口讀、寫分別采用inportb()函數(shù)和outportb()指令,其工作流程框圖如圖2所示。
在C8051F060MCU的程序設(shè)計中,接收PC/104總線微機的命令和與之進(jìn)行數(shù)據(jù)交換采用外部程序中斷方式;數(shù)據(jù)采樣采用ADC中斷的方式。其中,數(shù)據(jù)采樣包括基值采樣(無車輪壓下條件的兩路測重傳感器輸出)和軸重采樣(兩路測重傳感器一次測汽車一個軸的重量)。C8051F060MCU程序處理流程簡圖如圖3所示。在軸重采樣中,MCU根據(jù)所給定的車輛軸數(shù)和采樣門限條件自動判斷車輪和測重傳感器之間的位置并自動進(jìn)行重量值采樣。當(dāng)車輪停在測重傳感器上面時,MCU將根據(jù)設(shè)定的超限時間值大小自動停止數(shù)據(jù)采樣。
4 結(jié)束語
現(xiàn)今市售的PC/104總線的接口板種類有限且價格較高,隨著PC/104總線系統(tǒng)的大量采用,PC/104總線的接口板設(shè)計將成為了系統(tǒng)成敗的瓶頸。提升PC/104總線的接口板的性能并降低其價格,對PC/104總線系統(tǒng)的應(yīng)用會起到極大的推動作用。
基于PC104總線的動態(tài)稱重測量板的設(shè)計經(jīng)一年多的實際使用證明具有如下優(yōu)點:
ü 使用的元件少并簡化了硬、軟件設(shè)計;
ü 增強了系統(tǒng)的抗干擾能力和工作可靠性;
ü 充分利用了MCU的資源;
ü 具有產(chǎn)品價格的競爭優(yōu)勢。
參考文獻(xiàn)
[1] 施昌彥.動態(tài)稱重測力技術(shù)的現(xiàn)狀和發(fā)展趨勢[J]. 計量學(xué)報.2001,22(3): 201-205.
[2] 魏魯原,伍斌,崔霞. 動態(tài)稱重系統(tǒng)的設(shè)計[J]. 自動化儀表. 2002,23(8): 34-37.
[3] 徐志玲. 動態(tài)公路車輛電子秤的設(shè)計[J]. 衡器. 2002,31(6): 18-20.
[4] 李業(yè)德,賈茂盈. AD7705在汽車重量測量中的應(yīng)用[J]. 山東工程學(xué)院學(xué)報. 2002,16(2): 51-54.
[5] CYGNAL Integrated Products Inc. C8051F060/1/2/3 Mixed-Signal ISP FLASH MCU Family [EB/OL]. http://www.xhl.com.cn, 2004-12.
[6] 姚志軍,張平,白向林. 一種基于PC104的測試儀器[J]. 現(xiàn)代電子技術(shù). 2003,1(1): 57-58.
[7] 王明順. PC/104總線與MCU之間的接口設(shè)計[J]. 工業(yè)控制計算機. 2004,9(9): 41-43.
[8] 張國范,顧樹生,王明順. 計算機控制系統(tǒng)[M] . 北京:冶金工業(yè)出版社,2004:25-26.