設(shè)計(jì)了一款最大測(cè)量范圍為600g,最小測(cè)量分度為0.01g,精度達(dá)到六萬(wàn)分之一的高精密電子秤。該電子秤以16位單片機(jī)SPCE061A為核心,藝-AADC為主要稱(chēng)重采集部件;采用了硬 件電路抗干擾和軟件濾波等技術(shù),以保證整機(jī)的精度和穩(wěn)定性;同時(shí)該系統(tǒng)還為用戶(hù)提供了智能、友 好的用戶(hù)界面和接口。
電子秤(或電子衡器)是配有電子稱(chēng)量裝置的衡器, 它在商業(yè)銷(xiāo)售中廣泛使用。國(guó)內(nèi)從20世紀(jì)60年代中 期開(kāi)始模擬指針式電子秤的研制和生產(chǎn),經(jīng)歷了模擬 式電子秤、數(shù)字式電子秤和微機(jī)式電子秤三個(gè)階段。精 度從0.1%、0.05%發(fā)展到0.01%。根據(jù)目前市場(chǎng)發(fā)布的 產(chǎn)品,電子秤的精度可分為四級(jí),如表1所示。功能上 包括各種參數(shù)的設(shè)定、自動(dòng)處理及毛重、凈重、皮重和累 加值的顯示等。為了管理和參數(shù)設(shè)置的方便,還配有與 上位計(jì)算機(jī)的串行通信接口,如RS-232C等。
總體來(lái)說(shuō),電子秤的發(fā)展呈現(xiàn)出小型化、智能化和 模塊化的特點(diǎn)。根據(jù)市場(chǎng)需求,筆者以高精度、小型化 和智能化為目的,以高性能16位單片機(jī)為SPCE061A 核心,研發(fā)了 一款最大稱(chēng)重為600g,最小分度為 0.01g,稱(chēng)重精度為0.001 6%(六萬(wàn)分之一)的工業(yè)用高精度電子秤。該產(chǎn)品包含當(dāng)前臺(tái)式電子秤所有的功能且用 戶(hù)界面友好。
1.系統(tǒng)整體方案設(shè)計(jì)
電子秤的工作原理是將作用在承載器上的質(zhì)量或 力的大小,通過(guò)稱(chēng)重傳感器轉(zhuǎn)換為與之成正比的電信號(hào), 并且以模擬或數(shù)字量的形式在稱(chēng)重儀表上顯示出來(lái)。電 子秤由稱(chēng)重傳感器、弱信號(hào)放大和濾波、高數(shù)位A/D轉(zhuǎn) 換器、MCU和顯示器組成。系統(tǒng)組成框圖如圖1所示。
本系統(tǒng)采用性能優(yōu)異的電阻應(yīng)變式橋式稱(chēng)重傳感 器,其基本原理為所稱(chēng)重量引起的電阻變化可產(chǎn)生一個(gè) 疊加在共模電壓之上的差分電壓。該傳感器的電靈敏度 為2mV/V,當(dāng)使用5V激勵(lì)電壓時(shí),其滿(mǎn)度輸出電壓為 10mV,在60 000分刻度下,每分刻度的輸出電壓為微伏 級(jí)。因此微弱信號(hào)的采集是本系統(tǒng)設(shè)計(jì)的第一難點(diǎn)。另 一難點(diǎn)則是系統(tǒng)的實(shí)時(shí)反應(yīng)速度。由于本設(shè)計(jì)面向商 用,要求系統(tǒng)能夠?qū)ΨQ(chēng)重物體作出快速反應(yīng),在穩(wěn)定與 不穩(wěn)定狀態(tài)間反應(yīng)靈敏,并且判斷準(zhǔn)確。最后,作為智能化、便攜式的電子稱(chēng)重儀器,友好的用戶(hù)界面和低功耗 設(shè)計(jì)也是必需的。
根據(jù)上述技術(shù)難點(diǎn)的分析和系統(tǒng)指標(biāo)要求,選取16位單片機(jī)SPCE061A為核心控制器件。SPCE061A 最高工作頻率可以達(dá)到49.512MHz,內(nèi)置2KB靜態(tài)內(nèi) 存,32KB Flash,32個(gè)通用I/O 口。由于采集到的微弱信 號(hào)極易受到干擾,受干擾的信號(hào)必須進(jìn)行數(shù)字濾波才能 使系統(tǒng)性能得到提升。SPCE061A的16位字長(zhǎng)和大存儲(chǔ) 容量為數(shù)字濾波提供了有力的支持;數(shù)字信號(hào)處理速度 和系統(tǒng)的快速反應(yīng)依賴(lài)于主控制器的工作頻率, SPCE061A單片機(jī)49.512MHz的工作頻率能夠很好地滿(mǎn) 足要求;32個(gè)通用I/O 口和各種外設(shè)資源使系統(tǒng)在擴(kuò)展 按鍵、LCD顯示、實(shí)時(shí)時(shí)鐘RTC、存儲(chǔ)器EEPROM和上位 機(jī)接口上提供了便利。
根據(jù)指標(biāo)要求,電子秤的稱(chēng)重計(jì)數(shù)分辨率為60 000, 要確保外部計(jì)數(shù)精度,通常內(nèi)部分辨率必須高于外部分 辨率一個(gè)數(shù)量級(jí),因此內(nèi)部計(jì)數(shù)必須精確到600 000,這需 要20bit的ADC才能滿(mǎn)足此要求。系統(tǒng)的A/D轉(zhuǎn)換器選 取24位Σ-△ ADC芯片CS5460A。CS5460A包含兩個(gè) S-A模-數(shù)轉(zhuǎn)換器(ADC)和一個(gè)串行接口的高度集成 S-A模-數(shù)轉(zhuǎn)換器,兩個(gè)通道都包含可編程增益放大器 和片內(nèi)高速濾波器,共模抑制比大于80dB。高位數(shù)和高 共模抑制比可保證微弱信號(hào)的數(shù)字采集準(zhǔn)確。
系統(tǒng)硬件框圖如圖2所示。與上位機(jī)的通信可以根 據(jù)需求選配USB接口或RS232接口。
在軟件設(shè)計(jì)上,系統(tǒng)主要完成用戶(hù)功能的響應(yīng)、稱(chēng) 重?cái)?shù)據(jù)的采集與處理、軟件濾波、數(shù)據(jù)校正和稱(chēng)重顯示 等功能。用戶(hù)通過(guò)按鍵錄入、軟件查詢(xún)的方法得到鍵值 后,根據(jù)鍵值完成相應(yīng)的功能;為了保證用戶(hù)界面的簡(jiǎn) 捷,采用組合鍵錄入。根據(jù)用戶(hù)需求,稱(chēng)重?cái)?shù)據(jù)可以為毛 重、凈重或采樣值。系統(tǒng)軟件流程圖如圖3所示。
2.硬件抗干擾設(shè)計(jì)
2.1前置放大和濾波
稱(chēng)重傳感器的輸出為微弱的低頻差分信號(hào),其電壓 幅度為微伏級(jí)。雖然A/D內(nèi)部自帶有50倍增益放大 器,但還不足以將信號(hào)放大到與A/D參考電壓相匹配的程度,所以必須加一級(jí)前置放大器來(lái)提高放大倍數(shù)。 前置放大采用差分放大輸入,這既提高了輸入阻抗,又 能有效抑制共模噪聲。但是如果兩臂的信號(hào)出現(xiàn)不平 衡,則采集到的數(shù)據(jù)將會(huì)產(chǎn)生基線(xiàn)漂移。為此,采用兩路 RC低通濾波電路對(duì)兩臂信號(hào)同時(shí)進(jìn)行濾波,兩臂之間 采用共模濾波電容濾波。其原理電路如圖4所示。
2.2電源電路抗干擾處理
由于系統(tǒng)對(duì)整機(jī)的測(cè)量精度要求較高,因此具有抗 干擾的電源電路是系統(tǒng)設(shè)計(jì)的重點(diǎn)之一。系統(tǒng)通過(guò)穩(wěn)壓 模塊將各個(gè)電源分開(kāi),并分離接地,保證來(lái)自不同電路 的地電流之間沒(méi)有交叉耦合,任何一個(gè)電路的地電位只 受這個(gè)電路的地電流和它的地線(xiàn)自身阻抗的影響,各個(gè) 地最后回流到系統(tǒng)鋪設(shè)的地上。
3.軟件抗干擾設(shè)計(jì)
3.1稱(chēng)重校正
由于溫差、沖擊力、浮塵等因素的影響,傳感器承受 載荷與其輸出電壓之間并非成線(xiàn)性關(guān)系,這就造成稱(chēng) 量的線(xiàn)性度發(fā)生較大的變化;另外由于ADC的線(xiàn)性度 不夠理想,使小稱(chēng)量和大稱(chēng)量區(qū)間的線(xiàn)性斜率不一樣。 這兩種情況都會(huì)使稱(chēng)量線(xiàn)性度發(fā)生變化,造成某些點(diǎn)的 稱(chēng)量誤差較大。采用分段校準(zhǔn)稱(chēng)重值和分段計(jì)算稱(chēng)重 值,可大大減小稱(chēng)重值的相對(duì)誤差。
本系統(tǒng)使用了兩種校正方法:線(xiàn)性校正和單點(diǎn)校 正。線(xiàn)性校正取零點(diǎn)A、三分之一量程B、三分之二量程 C和滿(mǎn)量程D為基點(diǎn)得到三條線(xiàn)段BA、CB和DC,使得每段的稱(chēng)量線(xiàn)性度比只有一條線(xiàn)段時(shí)要好。單點(diǎn)校正是 在線(xiàn)性校正的基礎(chǔ)上作小偏移補(bǔ)償,取零點(diǎn)和系統(tǒng)規(guī)定 的量程某一點(diǎn),假設(shè)穩(wěn)定時(shí)的零點(diǎn)值為A,選取量程中 的某一點(diǎn)如200g,在放置標(biāo)準(zhǔn)砝碼200g時(shí)測(cè)得的稱(chēng)重 值為m,此時(shí)求得比率值為rate =200/m,稱(chēng)重計(jì)算時(shí)用 此rate值來(lái)修正稱(chēng)量值。
3.2軟件濾波
軟件濾波包含兩部分:數(shù)據(jù)噪聲的濾波及兩種稱(chēng)重 狀態(tài)(穩(wěn)定和不穩(wěn)定)的判斷。因?yàn)榉Q(chēng)重?cái)?shù)據(jù)在相當(dāng)長(zhǎng)的 時(shí)間內(nèi)是穩(wěn)定不變的,而引起數(shù)據(jù)變化的干擾信號(hào)則變 化頻繁。軟件濾波的作用就是設(shè)法把兩者區(qū)分開(kāi),只取 平穩(wěn)的數(shù)據(jù)作為有效數(shù)據(jù)進(jìn)行顯示。用于電子秤慢變數(shù) 據(jù)的濾波方法很多,系統(tǒng)綜合采用了權(quán)值濾波、均值濾 波、中值濾波和極值濾波等軟件濾波方法。首先采用極 值濾波將系統(tǒng)因?yàn)楦蓴_而產(chǎn)生的極點(diǎn)去除,然后用中值 濾波法進(jìn)行平均,在稱(chēng)重狀態(tài)判斷的過(guò)程中使用不同的 權(quán)值,對(duì)數(shù)據(jù)進(jìn)行權(quán)值濾波。這樣就得到了最后要顯示 的數(shù)據(jù)。
稱(chēng)重狀態(tài)判斷要處理三個(gè)問(wèn)題:(1)是否有重量變 化;(2)若無(wú)重量變化,顯示值保持穩(wěn)定,保證不受噪聲 干擾;(3)若有重量變化,系統(tǒng)要及時(shí)反應(yīng)并顯示出來(lái)。 傳統(tǒng)電子秤的處理方法是取一定量的數(shù)據(jù)求均值,規(guī)定 一個(gè)求均值的次數(shù),當(dāng)次數(shù)到達(dá)時(shí),對(duì)這些均值再作平 均,如果在設(shè)定的范圍內(nèi),則認(rèn)為是穩(wěn)定的測(cè)量值,反之 則為不穩(wěn)定測(cè)量值,還需要再取更多的數(shù)據(jù)進(jìn)行相似的 處理之后才能知道是否穩(wěn)定。這種方法適 用于均值的范圍集中在1/3 ~2/3最小感 量的時(shí)候,若最小感量的值降低,則此方 法就無(wú)法保證稱(chēng)重值的穩(wěn)定顯示。本系統(tǒng) 解決辦法是將測(cè)量值轉(zhuǎn)化為實(shí)際顯示的 稱(chēng)重值,如果稱(chēng)重值沒(méi)有變化,則認(rèn)為沒(méi) 有變化;如果稱(chēng)重值有變化但沒(méi)有超出 3/2個(gè)最小感量,還是認(rèn)為稱(chēng)重值沒(méi)有變 化;如果超出了,則要進(jìn)行一系列的比較 才能確定是否有新的重量加入。經(jīng)實(shí)際測(cè)試驗(yàn)證,此方法有效地避免了稱(chēng)重顯示值的來(lái)回跳動(dòng)。
4.系統(tǒng)測(cè)試結(jié)果
4.1稱(chēng)重?cái)?shù)據(jù)測(cè)試
本系統(tǒng)性能的提高關(guān)鍵在于采用了硬件抗干 擾處理和軟件濾波處理。圖5、圖6、圖7分別描述 了未經(jīng)過(guò)任何處理、只經(jīng)過(guò)硬件處理和同時(shí)經(jīng)過(guò) 硬件與軟件處理的稱(chēng)重?cái)?shù)據(jù)波形。每幅圖上的粗 線(xiàn)代表了數(shù)據(jù)變化的趨勢(shì),即基線(xiàn)。從圖5可看 出,未經(jīng)過(guò)硬件抗干擾處理的波形基線(xiàn)會(huì)漂移;圖6中, 經(jīng)過(guò)硬件處理后,基線(xiàn)的漂移消失,但局部仍然會(huì)有數(shù) 據(jù)的波動(dòng);圖7中再經(jīng)過(guò)軟件濾波處理,數(shù)據(jù)變化更趨平緩,基線(xiàn)基本不變,有利于得到比較穩(wěn)定的數(shù)據(jù)。
4.2整機(jī)性能測(cè)試
表2和表3分別對(duì)整機(jī)做線(xiàn)性測(cè)試和重復(fù)性測(cè)試。 線(xiàn)性測(cè)試的步驟是在零點(diǎn)情況下,每次都是100g向上平緩,基線(xiàn)基本不變,有利于得到比較穩(wěn)定的數(shù)據(jù)。
本文介紹了以高性能16位單片機(jī)為控制核心的高精密電子秤的設(shè)計(jì)方法。采用硬件抗干擾和軟件濾波等 技術(shù)得到了系統(tǒng)性能的提升。測(cè)試結(jié)果表明,該產(chǎn)品具 有較優(yōu)異的線(xiàn)性度和重復(fù)性,性能指標(biāo)達(dá)到了預(yù)期的效果;該產(chǎn)品還具有用戶(hù)界面友好、操作簡(jiǎn)單等特點(diǎn)。產(chǎn)品性能處于市場(chǎng)領(lǐng)先地位。