張非凡 周志賓
摘要:電子秤與我們的生活密切相關。本系統以AT89S52單片機為主芯片,采用電阻應變式稱重傳感器采集數據,然后通過24路A/D轉換芯片HX711采集傳感器進行A/D轉換,單片機進行處理,然后顯示由LCD1602液晶顯示。
關鍵詞:AT89S52單片機;電阻應變式傳感器;A/D轉換;LCD顯示器
中圖分類號:TH715 文獻標識碼:A 文章編號:1007-9416(2018)01-0015-02
1 引言
電子秤是一種使用胡克定律或者力極平衡原理來測量物體質量的工具。電子秤主要由三部分組成:承重系統,力傳動系統(如杠桿力傳遞系統,傳感器)和系統價值(如表盤,電子顯示儀表)。根據結構原理,電子秤可分為機械秤,電子秤和機電組合秤三大類。 目前的市場上,電子秤結構復雜,操作不可靠,成本高,精度和穩定性差,調整時間長,維修難度大,能力差。針對這一系列問題,設計出一款實用性和性價比高的電子秤就顯得尤為重要而且有著重要的現實意義。
2 系統硬件電路設計
本文的設計分為電源模塊,傳感器模塊,信號放大模塊,A/D轉換模塊,AT89S52單片機控制模塊和人機交互模塊六個主要模塊。人機交互模塊包括蜂鳴器報警,LCD1602顯示器和鍵盤輸入。該系統的整體框圖如圖1所示。
在這個系統中,稱重的主要裝置是壓力傳感器。當壓力傳感器受到外部的壓力或張力時,會產生電信號,電信號的大小隨力的大小而變化,一般是線性的。由于壓力傳感器的輸出是模擬信號,所以在接收之前必須進行A/D轉換。由于該設計基于電阻應變式稱重傳感器,輸出電壓不能使MCU和A/D轉換器正常工作,需要放大信號,A/D轉換器的輸入電壓達到約2V,按照計算得出,放大1000倍電壓增益的電路的大小。單片機會根據壓力傳感器輸出的電信號的電壓大小,計算出物體的真實重量[1]。
2.1 系統超重報警指示電路設計
這部分電路用于測量物體的重量,當數值超過最大值時,蜂鳴器可發出報警,以此來防止傳感器的損壞。主要元件報警指示電路為PNP晶體管9012,通過驅動蜂鳴器報警,MCU的IO口控制三極管的基極,當MCU的IO口輸出低電平時,三極管,陰極和蜂鳴器上電,蜂鳴器報警,當單片機的IO口輸出高電平時,晶體管會關閉,蜂鳴器不工作[2]。
2.2 系統按鍵輸入電路設計
按鍵輸入電路用于在通過電子秤稱量物體的重量時輸入單個值。按鍵輸入電路是由4×4矩陣鍵盤實現的。
電子秤托盤的重量每次都會被清除,即電子秤每次重啟后會自動檢測程序并將托盤重量存放在一個變量中,這一點是在設計電子秤時必須考慮的問題,這樣一來,每一次的稱重過程最后得到的重量即為實際稱重物體的重量。
計算功能:在用戶正確操作并且輸入單價后,將物體放在傳感器的表面上。按鍵只要被按下去,電子秤就會自動計算各個量值,并在LCD1602液晶顯示屏上顯示重量,單價和總價。電子秤的關鍵功能分布如表1所示。
3 系統軟件設計
軟件程序基于模塊化結構設計的,這樣程序結構更清晰,編程更簡單,易于閱讀,用戶友好,并且易于后期調試和修改。系統上電后,初始化程序將會清除RAM的30H - 5FH存儲單元以及設置P3.0腳為高電平,目的是為了防止誤報警情況的發生,影響電子秤的使用精度。主程序模塊主要完成編程芯片的初始化和各個模塊的調用。程序設計主程序流程圖如圖2所示。
4 系統編程與仿真
本設計基于單片機AT89S52,采用C語言編程,編程軟件選自德國Keil公司的主流開發軟件。 Keil比用于代碼生成的其他軟件具有更多的優點,生成最少的代碼量便是其優點之一。另外,它支持浮點和長整數,可重入和遞歸等[3]。在硬件電路的設計中,使用Protel99SE繪圖軟件繪制原理圖和繪制PCB板。 Protel99SE是一種應用廣泛的EDA設計軟件,操作簡單,使用方便,是其最大的優勢[4]。
5 結語
該系統基于AT89S52單片機的電子秤設計。本文設計的電子秤具有較理想的校準方法,性能穩定,操作簡單,價格低廉。電子秤靈敏,準確,直觀,使用方便。通過一些擴展的硬件和軟件的修改,設計出高性價比的電子秤,用以滿足各行各業對現代電子衡器的需求。此外,電子秤還可以與其他生產質量管理體系相連接,具有較高的推廣應用價值。
參考文獻
[1]Adel S.Sedra,Kenneth C.Smith:Microelectronics Circuits,3rd Edition,Holt Rinehart and Winston,Inc.,1991.
[2]張毅剛,彭喜元,彭宇.單片機原理及應用(第二版)[M].高等教育出版社,2010.
[3]陳抗生.電路分析與電子線路基礎[M].高等教育出版社,2012.
[4]凌志浩,張建正.AT89C52單片機原理與接口技術[M].高等教育出版社,2011.