樊 毅,秦會斌
(杭州電子科技大學 電子信息學院,浙江 杭州 310018)
電子天平是高精度質量計量儀器,廣泛應用于科研機構、高等院校和實驗室,具有稱量準確度高、響應速度快、穩定性好等特點[1]。目前,國內生產的電子天平,電路集成度低,研究者多采用分離的A/D轉換器加放大器的電路,且采用模擬電路實現非線性修正和溫度補償,存在電路復雜、準確度低、可靠性差等問題[2]。國外生產的一些電子天平能夠達到很高的準確度和可靠性,但是它們使用的稱重傳感器的成本都非常高,這樣就使得整機的成本過高。
針對這些問題,本研究設計一種高精度、低成本的電子天平。該設計采用HX 711芯片對傳感器的輸出信號進行放大和模數轉換,采用滑動均值濾波法進行濾波[3]。
該設計選用了成本較低而且使用廣泛的電阻應變式稱重傳感器來進行物理量的變換,把重量變換成電信號[4]。
HX711為稱重傳感器提供一個激勵電壓,有重物加載到稱重傳感器上時,它輸出一個比較小的電壓信號;HX711在接收到這個電壓信號后,對其進行放大,然后進行A/D轉換,直接變換成數字信號送給STM32進行處理;STM32對HX711送過來的數字信號先進行數字濾波,然后進行曲線擬合、標定等等一系列的處理,并轉換為代表重物質量的數字量,送給12864液晶進行顯示。
另外,在重物超過稱重傳感器的量程時,超載報警電路會發出報警的聲音和光信號,以便讓用戶快速進行處理,避免損壞稱重傳感器;矩陣鍵盤輸送相應的按鍵信號給STM32,以便實現去皮和單位轉換等功能。
該設計主要由主控制器STM32、稱重傳感器、A/D轉換模塊HX711、超載報警電路、矩陣鍵盤、液晶顯示模塊12864這幾部分組成[5]。
天平主要部分的電路圖如圖1所示。

圖1 電子天平主要部分電路圖
該設計使用的電阻應變式稱重傳感器的具體參數如表1所示。

表1 電阻應變式傳感器的各項參數
電子天平程序流程圖如圖2所示。

圖2 電子天平程序流程圖
為了達到較快的稱量速度和較高的精度,該電子天平采用了幾個具有創新性的設計。實驗結果證明,這些設計使整個系統達到了預期的要求。
目前市面上的電子天平多采用分離的A/D轉換器和放大器組成的電路,對傳感器輸出的模擬信號進行處理。這樣,不但增加了電路的復雜度,使電路穩定性降低,并且容易受到外界的干擾[6]。對于高精度電子天平來說,這種電路的復雜度造成的不穩定性會更加明顯[7]。
為了避免以上問題,本研究采用了海芯科技集團生產的HX711芯片。該芯片是一款專為高精度電子天平而設計的24位Delta-Sigma型A/D轉換器芯片。與同類型其他芯片相比,該芯片集成了放大器、穩壓電源和片內時鐘振蕩器等其它同類型芯片所需要的外圍電路,具有響應速度快、抗干擾性強等優點,降低了電子天平的整機成本和電路的復雜度,提高了整機的可靠性。
該芯片內提供的穩壓電源可以直接向外部傳感器和芯片內的A/D轉換器提供電源。如果使用該芯片內提供的穩壓電源給外部傳感器供電,就不需為A/D轉換器提供參考電壓,這樣就采用了電壓比例測量法進行測量,整機的穩定性進一步提高,使整個電子天平能夠達到較高的精度。并且,為了防止電源電壓的波動造成過高的輸入電壓,而燒壞HX711芯片,本研究在電路中安裝了一個5.1 V的穩壓管。
目前的電子天平多采用51單片機這類功能較簡單、時鐘頻率較低的單片機[8],這樣,就存在稱量速度慢、不易擴展復雜功能的弊端,為此,該設計采用目前市面上使用廣泛的以ARM Cortex-M3為內核的STM32單片機作主控制器。
該設計采用的STM32F103“增強型”系列單片機,時鐘頻率達到72 MHz,是同類產品中性能最高的產品。其功耗為36 mA,是32位市場上功耗最低的產品,相當于0.5 mA/MHz。其工作溫度范圍為-40℃~+85℃,在溫度變化較大時,仍能保持穩定的性能,使得該設計對溫度變化的適應性增強。
實測結果表明,該設計稱量速度快,充分預熱后,10 s左右即可達到穩定讀數。
為了降低電路復雜度,降低功耗,提高電路穩定性,本研究沒有采用硬件濾波的方法,而是采用將A/D轉換器輸出的模擬信號直接數字化,再進行數字濾波的方法,降低了電路復雜度,提高了設計的穩定性。另外,該設計采用了滑動均值濾波法來進行濾波[9]。
滑動均值濾波法,屬于數字濾波器中的有限脈沖響應濾波器。其原理是:把N個測量數據看成一個隊列,隊列的長度固定為N,每進行一次新的采樣,把采樣結果放入隊尾,而去掉原來隊首的一個數據,這樣在隊列中始終有N個“最新”的數據,對比普通的均值濾波法(每次都必須讀入N個數據的方法),速度提高了很多?;瑒泳禐V波法的優點是,對周期性干擾有良好的抑制作用,平滑度高,適用于高頻振蕩的系統;缺點是,靈敏度較低。但是,對電子天平來說,它的靈敏度已經足夠了。另外,該濾波法對偶然出現的脈沖性干擾的抑制作用差[10],本研究改進了滑動均值濾波法,增加了去除N個數據中的最大值和最小值的算法,提高了對脈沖性干擾的擬制作用,克服了滑動均值濾波法本身的弱點。改進后的濾波公式為:

式中:—濾波后的結果,XΚ—第K次的A/D轉換結果,M A X—N個數據中的最大值,M IN—最小值。
經過多次實驗比較發現,N取12比較合適。如果N取值過小,那么濾波的平滑效果不好;如果N取值過大,那么雖然濾波的平滑效果較好,但是數據處理速度變慢,不能滿足設計要求。
本研究編寫STM32的串口通信程序,并用串口連接到電腦,通過串口調試助手顯示單片機從A/D轉換器得到的數據。對傳感器突然施加一個壓力,模擬脈沖干擾后,可得到A/D轉換器的讀數,沒有濾波算法的讀數如圖3所示,有濾波算法的讀數如圖4所示。

圖3 突然施加壓力時無濾波算法的讀數

圖4 突然施加壓力時有濾波算法的讀數
在圖3、圖4中,總共讀數50個,每過500 ms讀一次,在第2行第1個數據時,突然加一個壓力在稱重傳感器上,然后,馬上撤去壓力,以此來模擬脈沖干擾。
從圖中可以看到,在沒有濾波算法時,第2行第1個讀數,突然變大為13 770 022,在撤去壓力后,經過大約讀入5個數據后就恢復到以前的穩定讀數。可見,在沒有濾波算法時,讀數的變化是陡變的。而在有濾波算法時,第2行第1個讀數為8 898 114,比加壓力前的讀數8 898 081只增加了33,幾乎沒有變化。在撤去壓力后,由于稱重傳感器的抖動等原因,使讀數一度波動到最大值,第3行最后一個讀數為8 898 237,但是,在經過大約讀入12個數據后,又恢復到了以前的穩定水平,例如第5行最后一個讀數為8 898 088。在整個過程中數據的波動范圍不超過156(最大讀數8 898 237減去加壓力前的一個讀數8 898 081),比沒有濾波算法的波動范圍4 871 453(加壓力后的讀數13 770 022減去加壓力前的讀數8 898 569)小了很多,而且,有濾波算法時,數據變化緩慢,對讀數幾乎沒有影響??梢?,改進后的滑動均值濾波算法有很好的擬制脈沖干擾的作用。
為了驗證滑動均值濾波算法對短時間內多次脈沖干擾的濾波效果,以較快的速度對稱重傳感器連續施加4次較大的壓力,可得到A/D轉換器的讀數,沒有濾波算法的讀數如圖5所示,有濾波算法的讀數如圖6所示。
在圖5、圖6中,總共讀數50個,每過500 ms讀一次,在讀第2行第1個數據時,較快地連續施加4次壓力在稱重傳感器上,來模擬短時間內連續的多次脈沖干擾。

圖5 連續施加4次壓力時無濾波算法的讀數

圖6 連續施加4次壓力時有濾波算法的讀數
從圖中可以看出,在沒有濾波算法時,從第2行第1個讀數開始,讀數突然增大,連續出現了4個很大的讀數,依次為10 965 292,9 337 284,9 743 113,13 381 052。在結束施加壓力后,經過大約讀入4個數據后就恢復到以前的穩定讀數。可見,在沒有濾波算法時,讀數的變化是陡變的,而在有濾波算法時,第2行第1個讀數為8 900 869,比施加壓力前的讀數8 900 839只增加了30,幾乎沒有變化。在結束施加壓力后,由于這次施加壓力的次數是4次,次數較多,在經過讀入了29個數據后,才恢復到沒有施加壓力時的讀數水平,例如,第6行最后一個讀數為8 900 928。沒有濾波算法時,由于施加壓力而造成的數據波動范圍是4 478 720(施加4次壓力造成的4個很大的讀數中最大的一個讀數13 381 052減去施加壓力前的讀數8 902 332)。而有濾波算法時,數據波動范圍是1 359 584(施加4次壓力過程中造成的最大讀數10 260 423減去施加壓力前的讀數8 900 839),比沒有濾波算法的波動范圍小了很多。但是,由于是連續施加4次壓力,比施加1次壓力有濾波算法時的數據波動范圍還是大了很多。總的說來,在連續施加4次壓力有濾波算法時,數據變化緩慢,對讀數有較小的影響??梢姡诙虝r間內發生多次脈沖干擾時,改進后的滑動均值濾波算法依然有較好的擬制脈沖干擾的作用。
該設計的電子天平實物圖如圖7所示。

圖7 電子天平實物圖
該設計的電子天平要求最大允許誤差小于等于0.02 g,根據《JJG 1036-2008電子天平檢定規程》的檢定要求,在20℃室溫環境下,電子天平充分預熱后,本研究采用精度為0.001 g的標準砝碼對電子天平的重復性和示值誤差進行了實驗測試。
對載荷為200 g的砝碼進行10次重復檢定,電子天平重復性檢定結果如表2所示。由表2可見,最大誤差為0.02 g,滿足設計要求。

表2 重復性檢定實驗結果
電子天平示值誤差檢定結果如表3所示。本研究選取了0 g、5 g、10 g、20 g、50 g、100 g、150 g、200 g、250 g、300 g等10個不同的測量點。實驗方法是:載荷從零開始,逐漸地往上加載,直至加到電子天平的最大稱量,然后逐漸地卸下載荷,直到零載荷為止。由表3可見,電子天平的最大示值誤差為0.02 g,滿足設計要求。

表3 示值誤差檢定實驗結果
本研究對電子天平的基本工作原理進行了深入研究,并且通過調研發現目前市面上的電子天平精度較低、成本較高的問題。為此,本研究設計了一種基于STM32的高精度、低成本的電子天平,簡化了電路連接,提高了電路的穩定性。大量實驗結果表明,該天平設計量程為300 g,能夠達到0.01 g的精度,誤差小于等于0.02 g,稱量速度快,10 s左右即可達到穩定讀數,而且性能穩定、重復性好、準確度高。
但是,由于稱重傳感器和算法的原因,該設計的精度受到了限制。今后的改進中,研究者將使用精度更高的稱重傳感器和更優秀的算法,以進一步提高稱量精度。
(References):
[1] 張民慧.電子天平顯示值漂移問題的解決[J].衡器,2009,38(6):30-33.
[2] 楊 敏,滕召勝,陳良柱,等.CS5532的高精度電子天平設計[J].儀表技術與傳感器,2010(1):14-18.
[3] 郭懷天,李寶華.基于電阻應變式稱重傳感器的電子天平的研制[D].長春:吉林大學電子科學與工程學院,2006.
[4] SLATTERY C,NIE M.A reference design for high-perfor?mance,low-cost weigh scales[J].Analog Dialogue,2005(12):1-6.
[5] 王盛奎,紀尚安,吳賀榮.小型電子稱電路的研究[J].儀表技術,1999(6):31-33.
[6] GONZALEZ A G,HERRADOR M A.The assessment of electronic balances for accuracy of mass measurements in the analytical laboratory[J].Accreditation and Quality Assurance,2007,12(1):21-29.
[7] 馬元群.智能型、大量程、精密電子天平設計[J].衡器,2009,38(8):42-44.
[8] 鮑丙豪,趙 湛,楊凱峰.基于厚膜力傳感器的電子秤設計[J].儀表技術,2005(2):49-50.
[9] 蘇堡瑩,金 偉,曹建偉,等.高精度力傳感器信號直接數字化技術研究[J].機電工程,2005,22(5):19-22.
[10] 朱亞萍,陳 偉,吳炎彪,等.標簽檢測抗干擾數字濾波方法研究[J].傳感技術學報,2009,22(12):1722-1726.