本文設(shè)計(jì)了一種以STM32為核心的高精度電子稱,介紹了系統(tǒng)的總體結(jié)構(gòu)框圖,重點(diǎn)闡述了稱重傳感器的工作原理,并完成了電子秤的軟件設(shè)計(jì);采用開關(guān)控制瞬時(shí)供電測量,降低了功耗,提高了靈敏度,也隨之提高了穩(wěn)定性;通過智能化、溫度補(bǔ)償和非線性擬合等 技術(shù)提高了測量精度。該電子秤的測量范圍為0?500 g,絕對(duì)誤差最大值為0.4g,滿量程最大相對(duì)誤差為0.08%。
1.引言
當(dāng)今,電子秤的發(fā)展趨向于集成化、數(shù)字化、智能化,然而, 電子秤存在精度低、穩(wěn)定性差、自動(dòng)化程度較低等問題。針對(duì)這一 系列問題,本文采用STM32微處理器,AD620低漂移儀表放大器, MCP3208高精度AD轉(zhuǎn)換器,低功耗液晶顯示器構(gòu)成電子秤的硬件 系統(tǒng),在測量方法上采用瞬時(shí)大電流供電測量,提高了傳感器靈敏 度,降低了功耗,提高了測量電路的穩(wěn)定性。
2.總體方案
本系統(tǒng)有三個(gè)模塊組成,如圖1所示,傳感器及供電控制模 塊、放大測量模塊、鍵盤顯示模塊。傳感器及供電控制模塊:應(yīng)變 片將承受的重量轉(zhuǎn)化成為電阻的變化,在電流的激勵(lì)下將電阻的變 化轉(zhuǎn)化為電壓的變化(電流源在STM32的控制下,對(duì)應(yīng)于ADC的測 量時(shí)間產(chǎn)生激勵(lì)電流)。放大測量模塊:將傳感器輸出的信號(hào)放大 到適合于ADC的輸入信號(hào)范圍,在由ADC實(shí)現(xiàn)模擬量到數(shù)字量的 轉(zhuǎn)換,重量的計(jì)算由STM32通過軟件完成;鍵盤顯示模塊:完成運(yùn) 行模式控制、信息輸入和數(shù)據(jù)顯示。通信接口完成電子秤與其它設(shè) 備(上位機(jī)操作平臺(tái)或測量控制網(wǎng)絡(luò))的數(shù)據(jù)交換。
2.1稱重傳感器的設(shè)計(jì)
稱重傳感器由全橋電路構(gòu)成,如圖2所示,R:、R2、艮和R4為測量 應(yīng)變片電阻,R5、化和R7為零點(diǎn)補(bǔ)償電阻,私為限流電阻,bd為測量信 號(hào)輸出節(jié)點(diǎn)。電阻應(yīng)變片民、R2、艮和R4因溫度改變引起的阻值變化是 相等的,故可相互進(jìn)行溫度補(bǔ)償,即利用全橋特性可解決溫漂問題。
電源提供的電壓和電流相等的條件下,占空比越小,平均功率 就越小,即降低了功耗,電阻應(yīng)變片相應(yīng)產(chǎn)生的熱量更少,故提高 了電橋電路的熱穩(wěn)定性;如果平均功率一定,占空比越小,則供電 電流就越大,傳感器輸出的信號(hào)就越大,靈敏度越高,后級(jí)放大電路的放大倍數(shù)相應(yīng)減小,從而使整個(gè)系統(tǒng)的穩(wěn)定性提高。而直流供 電情況下,占空比等于1,開關(guān)控制瞬時(shí)供電情況下,占空比取決 于AD轉(zhuǎn)換器的時(shí)間,假設(shè)AD轉(zhuǎn)換時(shí)間為5ms,周期為1s,則占空 比為2%,故本設(shè)計(jì)采用開關(guān)控制瞬時(shí)供電測量。
不考慮R5、R6和R7影響的情況下,差模輸出電壓:
然而在實(shí)際應(yīng)用中,由于相同型號(hào)的電阻應(yīng)變片阻值略有偏 差,會(huì)影響電橋平衡,因此需設(shè)置預(yù)調(diào)平衡電路,在電路中增加電 位器R6、電阻R5和R7(R5 = R7); R5和R7的大小決定了輸出電壓的調(diào) 節(jié)范圍;在電阻應(yīng)變片未產(chǎn)生形變的狀態(tài)下,微調(diào)電位器^,使全 橋電路的差模輸出電壓為零,解決平衡失調(diào)問題。
2.2儀表放大電路的設(shè)計(jì)
該電路的主要功能是將全橋輸出的電壓信號(hào)以差模方式進(jìn)行放大。 此電路關(guān)系到后級(jí)AD采集結(jié)果的優(yōu)劣,則必須要具有低溫漂,高精度, 高穩(wěn)定性;本設(shè)計(jì)采用高精度的儀表放大芯片AD620,因其具有低輸入失 調(diào)電壓50uV,低輸入失調(diào)漂移0.6uV /°C的特點(diǎn),可滿足本設(shè)計(jì)要求。 根據(jù)測量數(shù)據(jù)可知,在直流供電情況下,稱重500g砝碼時(shí),稱重傳感器輸 出6mV電壓,AD轉(zhuǎn)換器采用3.3V供電,輸入的最大信號(hào)設(shè)為3.2V,貝倣大 倍數(shù)Au=320.006=533,如果采取瞬時(shí)供電,電流增加10倍,放大倍數(shù)只需 要53倍,而AD620芯片最大放大倍數(shù)可達(dá)10000,滿足設(shè)計(jì)要求。
根據(jù)傳遞函數(shù)A? = 1 + 49_4]c__K , (Au為儀表放大電路的放大倍數(shù)) 可知,放大倍數(shù)為53,故設(shè)定Rg=950Q即可。
理。由于目前常用的ADC芯片的分辨率有8位、12位、16位、24位; 根據(jù)公式:最小分度值B = 500/(2A n-l),其中,n為ADC芯片分辨率 的位數(shù)。本系統(tǒng)中的絕對(duì)誤差應(yīng)小于0.5g,n=8時(shí),B?l.96,不滿足 設(shè)計(jì)要求;而n=12時(shí),B?l.22,滿足設(shè)計(jì)要求且成本較低;本設(shè)計(jì) 采用的是一款具有片上采樣和保持電路的12位逐次逼近型模數(shù)轉(zhuǎn)換器 MCP3208;電路如圖4所示,通過MCP1541輸出精確的參考電壓提供 給模數(shù)轉(zhuǎn)換芯片MCP3208;用運(yùn)放OP07構(gòu)成的二階低通濾波器對(duì)前級(jí) 信號(hào)進(jìn)行濾波處理然后遞交給MCP3208進(jìn)行模數(shù)轉(zhuǎn)換。
3.軟件分析
控制系統(tǒng)基于STM32的開發(fā)環(huán)境,采用C語言編程方式進(jìn)行軟 件設(shè)計(jì)。圖4為電子秤主程序流程框圖,首先進(jìn)入初始化子程序, 然后將采集的數(shù)據(jù)進(jìn)行處理,計(jì)算出重量,掃描到功能鍵按下后, 進(jìn)入功能鍵子程序執(zhí)行相應(yīng)功能,當(dāng)被稱重物需要去皮時(shí),按下按 鍵可以自動(dòng)保存皮重?cái)?shù)值,當(dāng)不需要去皮時(shí),將皮重設(shè)為“0”, 計(jì)算出金額,最后將處理結(jié)果在液晶屏上顯示出來。電子秤的軟件 設(shè)計(jì)主要實(shí)現(xiàn)以下功能:重量計(jì)算、信息輸入、模式控制、去皮處 理、計(jì)算金額、數(shù)字顯示、數(shù)據(jù)輸出等。
4.數(shù)據(jù)分析
在秤盤上分別放入0?500g之間不同重量的砝碼,記錄下測量數(shù)
據(jù),如表1所示;利用Exeal表格繪制曲線,0?500g整體曲線繪制存 在非線性誤差,故采用分段直線逼近可以進(jìn)一步減小誤差。
從表1的圖表數(shù)據(jù)可知,該系統(tǒng)的非線性誤差很小,測量精度較 高,實(shí)現(xiàn)在0?500 g范圍內(nèi),絕對(duì)誤差最大值為0.4g,根據(jù)公式:滿量程 最大相對(duì)誤差為S = A/5Q0可知,滿量程最大相對(duì)誤差為0.08%。本設(shè)計(jì) 中采用12位模數(shù)轉(zhuǎn)換器,最小分度值B = 500/(2A12-1) = 0.122,B的值小 于0.4g,實(shí)驗(yàn)數(shù)據(jù)符合理論值。
5.結(jié)語
傳感器模塊采用開關(guān)控制瞬時(shí)供電測量,解決了電阻應(yīng)變片 的發(fā)熱嚴(yán)重問題,降低了功耗,提高了靈敏度,也隨之提高了穩(wěn) 定性;通過智能化、溫度補(bǔ)償和非線性擬合等技術(shù),進(jìn)一步減小 了系統(tǒng)的非線性誤差,提高了系統(tǒng)的測量精度,測量范圍為0?500 g,絕對(duì)誤差最大值為0.4g,滿量程最大相對(duì)誤差為0.08%。有精度 高、耗能低、穩(wěn)定性好、自動(dòng)化程度高等特點(diǎn),具有很大的實(shí)用 性,給用戶帶來了很大的便捷,具有很好的商業(yè)前景。