1. 引言
在化工、醫藥、食品等行業中,產品的稱量分裝是一道重要的工序。隨著計算機技術的發展、普及,自動稱量系統被廣泛應用。但由于價格昂貴,使其主中小企業的普及受到限制。為此,我們設計了一種以89C51單片機為核心的自動稱量控制系統。該系統己在自動分裝機上成功運行,并取得了令人滿意的效果。實踐證明,系統具有高精度、低成本及快速分裝等特點。
2. 系統的組成及其特點
該系統由傳感器、電振器、接近開關、控制器等組成。控制器設計采用AT89C51為核心的單片機系統。硬件設計的原則是采用集成電路技術的最新成果和低功耗設計。其核心芯片為低功耗CMOS微處理器AT89C51。AT89C51內含完整的多通道定時器/計數器和響應迅速的中斷系統,并具有4K字節的電可擦寫程序存儲器,減少了外部存儲器及接口芯片,使用方便,可靠性好。
本系統的最大特點是采用可以大大簡化電路復雜程序的串行外圍芯片。如AD轉換、watchdog、鍵盤顯示管理等與單片機的聯系均采用串行方式,每個芯片只需片選、CLOCK、DATA三根線與主機相連,且除了片選線外其它線可以共用,大大化簡了線路,使系統硬件結構更加簡化,提高了系統的集成度。當然,隨之而來的代價是系統運行速度的下降,原因是涉及外圍芯片的操作均為串行操作。但因采用的芯片本身速度較高,兼之經過精心設計,這并不是大問題。
為簡化系統,模擬電路用到的負電源采用電源轉換器MAX660將+5V轉換為-5V,系統供電只需一個+5V即可。
2.1模數轉換
A/D轉換選用高精度的14位串行轉換芯片MAX194,并輔以高精度參考電源,有效地保證了系統的精度要求,節約了系統資源。該芯片工作時,于下一個周期的轉換同時輸出上一個周期的轉換結果,故較同樣分辨率的并行AD芯片,速度并未降低多少。唯一要注意的是該芯片工作頻率雖然可在一定范圍內變化,但須注意時鐘的穩定性,尤其在系統存在中斷源時,由于MAX194的時鐘由單片機端口通過軟件給出,在進行AD轉換中途響應其它中斷時可能造成時鐘短時停止,這會極大地影響轉換精度。故在AD轉換子程序中須關閉所有中斷,子程序結束時再允許之。由于轉換時間較短,一般不會影響系統的正常工作。
2.2非易失存儲器E2PROM
采用E2PROM(25045)有效地解決了系統中數據非易失存儲問題,實現了零點跟蹤及智能式自身校正功能。
系統正常運行時,各種設定參數及運行時的重要數據均保留在E2PROM中。當系統重新啟動后會自動從E2PROW中讀出預先設定的(或上次設定的)有關參數,實現了掉電數據自動保護。25045尚有watchdog及低壓鑒別復位功能,與單片機連接方式為串行。簡單的連接和多重功能,使系統得以簡化。
2.3 鍵盤輸入和數碼顯示
采取串行方式。系統設有14位LED顯示,分別顯示設定稱重值、實時稱重值、設定分裝次數、實時分裝次數。為方便操作,系統中設有20個功能鍵及數字鍵。鍵盤輸入和數碼顯示選用HD7279A,它是一片具有串行接口,可同時驅動8位共陰式數碼管(或64只獨立LED)的智能顯示驅動芯片。無需外圍驅動元件,單片即可完成LED顯示、鍵盤接口的全部功能。
2.4振動強度控制電路
控制粗、精兩級振動上料器,其振動強度可根據控制精度和分裝速度任意調整。采用固態繼電器作為隔離控制手段,具有反應迅速、無觸點、壽命長等特點。
3. 系統軟件設計
系統軟件采用結構化設計方法,根據系統的功能要求,主要由以下模塊構成:主程序模塊、稱量模塊、A/D采集轉換模塊、數據處理模塊、E2PROM讀寫模塊、顯示子程序模塊、鍵盤中斷服務子程序模塊、時鐘中斷服務子程序模塊、同步脈沖中斷服務子程序模塊、移相角中斷服務子程序模塊等。
3.1主程序模塊
主程序模塊首先進行系統初始化工作,然后循環檢測是否有鍵按下,若有則根據鍵值決定散轉方向,執行相應子程序。當按下參數設置鍵,可分別顯示各參數數值,并根據輸入的新數據實時修改并顯示,同時將新數據送入E2PROM保存。當校正鍵按下,系統可自動進行秤基準值檢驗,以保證稱量的準確性。當運行鍵按下,系統按照設定值要求連續工作,完成預定分裝任務,直至按下復位鍵。在稱量過程中,系統沒有超差報警功能,可自動根據稱量范圍確定允許誤差值,并對誤差進行相應處理。
3.2稱量模塊
為解決分裝速度和稱量精度間的矛盾,該系統采用兩級振動給料方式,由粗給料器保證分裝速度,細給料器保證稱量精度。操作者根據稱量精度和分裝速度的要求設置前置重量。稱重開始時粗給料器和細給料器同時工作,當達到前置重量值后,粗給料器停止送料,細給料器繼續工作,直至達到預定稱重值停止供料。
3.3數據處理模塊
數據處理模塊主要進行數據濾波及非線性處理,由于現場電磁干擾,影響數據的準確性,因此采用軟件濾波方法,消除可能產生的脈沖干擾。具體濾波方法是采集若干數據(如8個)為一組,去掉一個最大值和一個最小值,其余數據取均值,作為一個有效測量數據。對于系統的非線性誤差?采用分段擬舍的方法。系統根據測量值的大小,自動的取出對應的擬合系數,計算出校正后的測量值。分段的數量依據測量精度而定。該模塊所需要的數據,同時保存在E2>PROM和數據緩沖存區。
4. 單片機系統的抗干擾
由于系統轉換精度極高(14位,最小量化單位為1/16384。據計算,測量橋路產生1μV的電壓變化即可使顯示變化一個數字),因此干擾成為影響系統工作的大問題。本系統主要采用了下述抗干擾措施:
(1)模數分開模擬電路與數字電路電源線路及地均分別布設,以免數字電路產生的大量射頻信號進入模擬輸入信號端,另外可以避免數字電路頻繁變化的信號造成的電源電壓變化對模擬電路的影響。
(2)電源濾波加強電源回路的濾波。除每個芯片電源端加電解電容外,還并之以小容量獨石電容以克服電解電容存在電感故對高頻干擾濾波不良的缺點。
(3)數字濾波AD轉換時采用數字濾波,具體方法已在第3.3節中闡述。
(4)物理屏蔽對易受干擾的敏感部位采取接地的薄鐵皮進行電磁屏蔽。
(5)電源隔離橋路與主電路、主電路與交流電報之間均以開關電源隔離,克服了以往使用的鐵芯變壓器初、次級間寄生電容引進干擾的問題。
(6)光電隔離系統使用晶閘管控制電磁振動器振動強度,晶閘管的觸發脈沖則由單片機采用數字方法發生。電源同步脈沖經過光電隔離進入單片機系統,產生的觸發脈沖經過光電隔離后,通過放大及脈沖變壓器觸發晶閘管。如此,系統與外界電路的寄生電容成一低到最小。經現場運行,證明外界的較強干擾如電磁鐵的運行、電焊、大功率電機的啟停等對系統幾無影響。
(7)交流電源高頻濾波 在交流電源進線端采用高頻濾波器。
5. 結束語
本文介紹的以89C51單片機為核心的自動稱量控制系統,已在石家莊偉龍機電有限公司生產的自動計量分裝機上使用,在量程10kg時分辨率為1g,整機批量生產。經現場一年多使用證明,本系統運行穩定性好、故障率低,且具有低成本、高精度、高分裝速度等特點,適合各類中小企業,具有較大的推廣價值。