第1章
緒論1.1課題背景與研究意義電子秤作為一種計量手段,廣泛應用于工農業、科研、交通、內外貿易等各個領域,與人民的生活緊密相連。電子秤是電子衡器中的一種,衡器是國家法定計量器具,是國計民生、國防建設、科學研究、內外貿易不可缺少的計量設備,衡器產品技術水平的高低,將直接影響各行各業的現代化水平和社會經濟效益的提高。稱重裝置不僅是提供重量數據的單體儀表,而且作為工業控制系統和商業管理系統的一個組成部分,推進了工業生產的自動化和管理的現代化,它起到了縮短作業時間、改善操作條件、降低能源和材料的消耗、提高產品質量以及加強企業管理、改善經營管理等多方面的作用。稱重裝置的應用已遍及到國民經濟各領域,取得了顯著的經濟效益。
電子秤是稱重技術中的一種新型儀表,廣泛應用于各種場合。電子秤與機械秤比較有體積小、重量輕、結構簡單、價格低、實用價值強、維護方便等特點,可在各種環境工作,重量信號可遠傳,易于實現重量顯示數字化,易于與計算機聯網,實現生產過程自動化,提高勞動生產率。從世界水平看,衡器技術已經經歷了四個階段,從傳統的全部由機械元器件組成的機械稱到用電子線路代替部分機械元器件的機電結合秤,再從集成電路式到目前的單片機系統設計的電子計價秤。我國電子衡器從最初的機電結合型發展到現在的全電子型和數字智能型。現今電子衡器制造技術及應用得到了新發展:電子稱重技術從靜態稱重向動態稱重發展;計量方法從模擬測量向數字測量發展;測量特點從單參數測量向多參數測量發展。常規的測試儀器儀表和控制裝置被更先進的智能儀器所取代,使得傳統的電子測量儀器在遠離、功能、精度及自動化水平定方面發生了巨大變化,并相應的出現了各種各樣的智能儀器控制系統,使得科學實驗和應用工程的自動化程度得以顯著提高。
電子稱重的實現首先是通過壓力傳感器采集到被測物體的重量并將其轉換成電壓信號。輸出電壓信號通常很小,需要通過前端信號處理電路進行準確的線性放大。放大后的模擬電壓信號經A/D轉換電路轉換成數字量被送入到主控電路的單片機中,再經過單片機控制譯碼顯示器,從而顯示出被測物體的重量。按照設計的基本要求,系統可分為三大模塊,數據采集模塊、控制器模塊、人機交互液晶顯示界面模塊。其中數據采集模塊由壓力傳感器、信號的前級處理和A/D轉換部分組成。轉換后的數字信號送給控制器處理,由控制器完成對該數字量的處理,驅動顯示模塊完成人機間的信息交換。此部分對軟件的設計要求比較高,系統的大部分功能都需要軟件來控制。在擴展功能上,本設計增加了一個過載報警提示功能和電子日歷功能使本電子稱的設計更人性化智能化。
1.2 系統設計要求一、基本要求
設計并制作一款基于單片機的電子秤重系統。
二、具體要求
本課題研究的內容是以單片機STC89C52RC為控制核心,實現電子秤的基本策略及價格計算功能。本課題在電子稱的基本功能基礎上擴展了電子日歷及時鐘功能。該系統可以分為單片機最小系統、數據采集系統、人機交互界面系統、電源系統、時鐘及語音報數六大部分組成。單片機最小系統部分主要包括STC89C52RC和經典復位電路;數據采集部分由稱重傳感器、信號放大和A/D轉換部分組成,信號放大和A/D轉換部分主要由專用型高精度24位AD轉換芯片HX711實現;人機交互界面為鍵盤輸入和點陣式液晶顯示,主要使用4*4矩陣鍵盤和1602液晶顯示器,可以方便的輸入數據和直觀的顯示數據;時鐘模塊主要由時鐘芯片DS1302和時鐘電路組成;語音報數模塊可語音報讀電子秤系統的重量、單價、金額等語音內容,主要由SC1010B電子稱專用語音芯片實現。
本課題的主要設計任務如下所述:
1)系統可實現電子稱基本的稱重功能(稱重范圍為0~5Kg,重量誤差不大于±0.005Kg);
2)系統應具備輸入單價,計算總價及語音報價的功能;
3)系統超出最大測量范圍5Kg時應有報警指示功能(蜂鳴器報警提示);
4)該電子稱設計需完成電子日歷及時鐘顯示功能的擴展。在未稱重狀態下系統應具備顯示年月日、星期及時鐘功能。
1.3系統設計方案結合所學知識,通過查找資料和論證,可通過以下方案來實現課題要求實現的指標,各方案介紹如下所述。
方案一 數碼管顯示:
圖1-1 數碼管顯示方案
此方案利用數碼管顯示物體重量,簡單可行,可以采用內部帶有模數轉換功能的單片機。由此設計出的電子秤系統,硬件部分簡單,接口電路易于實現,并且在編程時大大減少程序量,在電路結構上只有簡單的輸出輸入關系。缺點是:硬件部分簡單,雖然可以實現電子稱基本的稱重功能,但是不能實現外部數據的輸入,無法根據實際情況靈活地設定各種控制參數。由于數碼管只能實現簡單的數字和英文字符的顯示,不能顯示漢字以及其他的復雜字符,不能達到顯示購物清單的要求。又因為采用了具有模數轉換功能的單片機,系統電路過于簡單,系統硬件的擴展必受到限制,電子秤的功能過于單一,達不到設計的標準。
方案二 在前一種方案的基礎上進行擴展,增加一鍵盤輸入裝置,增加外界對單片機內部的數據設定,使電子稱實現稱重計價的功能。
結構簡圖如圖1-2所示:
圖1-2帶有鍵盤輸入的結構簡圖
此方案設計的電子秤,可以實現稱物計價功能,但是局限于數碼管的功能,在顯示時只能顯示單價、購物總額以及簡單的貨物代碼等。在顯示重量時,如果數碼管沒有足夠的位數,那么稱量物體重量的精度必受到限制,所以此方案需要較多的數碼管接入電路中。這樣在處理輸入輸出接口時需要另行擴展足夠多的I/O接口供數碼管使用,比較麻煩。
方案三 前端信號處理時,選用放大、信號轉換等措施來增加信號采集強度但會增加相應的設計成本;顯示方面采用具有字符圖文顯示功能的LCD顯示器。這種方案不僅加強了人機交換的能力,而且滿足設計要求,可以顯示購物清單、所稱量的物體信息等相關內容,當需要增加擴展功能時可以通過切換液晶顯示界面的方式來實現。
結構簡圖如下圖1-3所示:
圖3帶有鍵盤輸入及液晶顯示的結構簡圖
鑒于上述三種方案的優缺點,本系統在設計時充分考慮到系統的實用性及成本的可行性的前提下,設計完成了最終的電子稱方案,最終的硬件設計方案圖如圖4所示,該方案增加了電子日歷功能,從而使本系統的設計功能得到了很好的擴展與應用。
1.4電子秤的主要組成1.4.1 電子秤的基本結構 電子秤是利用物體的重力作用來確定物體質量(重量)的測量儀器,也可用來確定與質量相關的其它量大小、參數、或特性。不管根據什么原理制成的電了秤均由以下三部分組成:
它是被稱物體與轉換元件之間的機械、傳力復位系統,又稱電子秤的秤體,一般包括接受被稱物體載荷的承載器、秤橋結構、吊掛連接部件和限位減振機構等。
2) 稱重傳感器
即由非電量(質量或重量)轉換成電量的轉換元件,它是把支承力變換成電的或其它形式的適合于計量求值的信號所用的一種輔助手段。
按照稱重傳感器的結構型式不同,可以分直接位移傳感器(電容式、電感式、電位計式、振弦式、空腔諧振器式等)和應變傳感器(電阻應變式、盧表面諧振式)或是利用磁彈性、壓電和壓阻等物理效應的傳感器。
對稱重傳感器的基本要求是:輸出電量與輸入重量保持單值對應,并有良好的線性關系;有較高的靈敏度;對被稱物體的狀態的影響要小;能在較差的工作條件下工作;有較好的頻響特性;穩定可靠。
3) 測量顯示和數據輸出的載荷測量裝置
即處理稱重傳感器信號的電子線路(包括放人器、模數轉換、電流源或電壓源、調節器、補嘗元件、保護線路等)和指示部件(如顯示、打印、數據傳輸和存貯器件等)。這部分習慣上稱載荷測量裝置或二次儀表。在數字式的測量電路中,通常包括前置放大、濾濾、運算、變換、計數、寄存、控制和驅動顯示等環節。
1.4.2 電子秤的工作原理當被稱物體放置在秤體的秤臺上時,其重量便通過秤體傳遞到稱重傳感器,傳感器隨之產生力一電效應,將物體的重量轉換成與被稱物體重量成一定函數關系(一般成正比關系)的電信號(電壓或電流等)。此信號由放大電路進行放大、經濾波后再由模/數( A/D)器進行轉換,數字信號再送到微處器的CPU處理,CPU不斷掃描鍵盤和各功能開關,根據鍵盤輸入內容和各種功能開關的狀態進行必要的判斷、分析、由儀表的軟件來控制各種運算。運算結果送到內存貯器,需要顯示時,CPU發出指令,從內存貯器中讀出送到顯示器顯示,或送打印機打印。一般地信號的放大、濾波、A/D轉換以及信號各種運算處理都在儀表中完成。
1.4.3 電子秤的計量性能電子秤的計量性能涉及的主要技術指標有:量程、分度值、分度數、準確度等級等。
(1) 量程:電子衡器的最大稱量Max,即電子秤在正常工作情況下,所能稱量的最大值。
(2) 分度值:電子秤的測量范圍被分成若干等份,每份值即為分度值。用e或d來表示。
(3) 分度數:衡器的測量范圍被分成若干等份,總份數即為分度數用n表示。
電子衡器的最大稱量Max可以用總分度數n與分度值d的乘積來表示,即Max=n·d
(4) 準確度等級
國際法制計量組織把電子秤按不同的分度數分成T、II、III、Ⅳ四類等級,分別對應不同準確度的電子秤和分度數n的范圍,如表1-1所示:
表1-1 不同準確度的電子秤和分度數
第2章 系統硬件設計
2.1 流系統元器件選型及參數介紹2.1.1 系統單片機選型單片機的選擇在整個系統設計中至關重要,要滿足大內存、高速率、通用性、價格便宜等要求,本課題選擇AT89S52作為主控芯片。
AT89S52是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S52可為許多嵌入式控制應用系統提供高性價比的解決方案。AT89S52芯片具有以下特性[[]4:
①指令集和芯片引腳與Intel公司的8051兼容;
②4KB片內在系統可編程Flash程序存儲器;
③時鐘頻率為0~33MHz;
④128字節片內隨機讀寫存儲器(RAM);
⑤32個可編程輸入/輸出引腳;
⑥2個16位定時/計數器;
⑦6個中斷源,2級優先級;
⑧全雙工串行通信接口;
⑨監視定時器;
⑩2個數據指針。
AT89S52單片機的40個引腳中有2個專用于主電源引腳,2個外接晶振的引腳,4個控制或與其它電源復用的引腳,以及32條輸入輸出I/O引腳[[]5。
AT89S52單片機引腳圖如圖2-1所示:
圖2-1 單片機引腳圖
2.1.2 系統傳感器選型系統采用壓電傳感器是一種典型的有源傳感器,又稱自發電式傳感器。其工作原理是基于某些材料受力后在其相應的特定表面產生電荷的壓電效應。
壓電傳感器體積小、重量輕、結構簡單、工作可靠,適用于動態力學量的測量,不適合測頻率太低的被測量,更不能測靜態量。目前多用于加速度和動態力或壓力的測量。壓電器件的弱點:高內阻、小功率。功率小,輸出的能量微弱,電纜的分布電容及噪聲干擾影響輸出特性,這對外接電路要求很高。
電阻應變式傳感器是一種利用電阻應變效應,將各種力學量轉換為電信號的結構型傳感器。電阻應變片式電阻應變式傳感器的核心元件,其工作原理是基于材料的電阻應變效應,電阻應變片即可單獨作為傳感器使用,又能作為敏感元件結合彈性元件構成力學量傳感器。
導體的電阻隨著機械變形而發生變化的現象叫做電阻應變效應。電阻應變片把機械應變信號轉換為△R/R后,由于應變量及相應電阻變化一般都很微小,難以直接精確測量,且不便處理。因此,要采用轉換電路把應變片的△R/R變化轉換成電壓或電流變化。其轉換電路常用測量電橋。
直流電橋的特點是信號不會受各元件和導線的分布電感及電容的影響,抗干擾能力強,但因機械應變的輸出信號小,要求用高增益和高穩定性的放大器放大。
圖2-2為一直流供電的平衡電阻電橋,
接直流電源E:

圖2-2 傳感器內部連接圖
當電橋輸出端接無窮大負載電阻時,可視輸出端為開路,此時直流電橋稱為電壓橋,即只有電壓輸出。
當忽略電源的內阻時,由分壓原理有:



= (2.1)
當滿足條件R1R3=R2R4時,即

(2.2)
=0,即電橋平衡。式(2.2)稱平衡條件。
應變片測量電橋在測量前使電橋平衡,從而使測量時電橋輸出電壓只與應變片感受的應變所引起的電阻變化有關。
若差動工作,即R1=R-△R,R2=R+△R,R3=R-△R,R4=R+△R,按式(2.1),則電橋輸出為

(2.3)
應變片式傳感器有如下特點:
(1)應用和測量范圍廣,應變片可制成各種機械量傳感器。
(2)分辨力和靈敏度高,精度較高。
(3)結構輕小,對試件影響小, 對復雜環境適應性強,可在高溫、高壓、強磁場等特殊環境中使用,頻率響應好。
(4)商品化,使用方便,便于實現遠距離、自動化測量[5]。
通過對壓力傳感器與電阻應變式傳感器比較分析,最終選擇了第二種方案。題目要求稱重范圍0~5Kg,滿量程量誤差不大于
0.005Kg,考慮到秤臺自重、振動和沖擊分量,還要避免超重損壞傳感器,所以傳感器量程必須大于額定稱重5Kg。我們選擇的是電阻應變片壓力傳感器,量程為5Kg,精度為0.01% ,滿足本系統的精度要求。
2.1.3 系統AD轉換芯片選擇HX711是一款專為高精度電子秤而設計的24位A/D轉換器芯片。與同類型其它芯片相比,該芯片集成了包括穩壓電源、片內時鐘振蕩器等其它同類型芯片所需要的外圍電路,具有集成度高、響應速度快、抗干擾性強等優點。降低了電子秤的整機成本,提高了整機的性能和可靠性。該芯片與后端MCU 芯片的接口和編程非常簡單,所有控制信號由管腳驅動,無需對芯片內部的寄存器編程。輸入選擇開關可任意選取通道A 或通道B,與其內部的低噪聲可編程放大器相連。通道A 的可編程增益為128 或64,對應的滿額度差分輸入信號幅值分別為±20mV或±40mV。通道B 則為固定的64 增益[[]9,用于系統參數檢測。芯片內提供的穩壓電源可以直接向外部傳感器和芯片內的A/D 轉換器提供電源,系統板上無需另外的模擬電源。芯片內的時鐘振蕩器不需要任何外接器件。上電自動復位功能簡化了開機的初始化過程。芯片管腳圖如圖2-3所示。

圖2-3 HX711管腳定義
HX711典型應用電路如圖2-4所示。

圖2-4 HX711典型應用電路
2.1.4系統顯示器選擇方案一 數碼管顯示
數碼管是一種半導體發光器件,其基本單元是發光二極管。數碼管按段數分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發光二極管單元(多一個小數點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數碼管;按發光二極管單元連接方式分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發光二極管的陽極接到一起形成公共陽極(COM)的數碼管。共陽數碼管在應用時應將公共極COM接到+5V,當某一字段發光二極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。共陰數碼管是指將所有發光二極管的陰極接到一起形成公共陰極(COM)的數碼管。共陰數碼管在應用時應將公共極COM接到地線GND上,當某一字段發光二極管的陽極為高電平時,相應字段就點亮。當某一字段的陽極為低電平時,相應字段就不亮。
數碼管顯示信息有限,當顯示信息較多時需要多個數碼管級聯方可,這樣會造成硬件連接復雜,成本增加;數碼管對大部分字符不能很好的顯示,動態掃描時處理不好易出現閃爍現象。
方案二 LCD字符液晶顯示
采用點陣字符型 LCD 液晶顯示,液晶顯示模塊具有體積小、功耗低、顯示內容豐富等特點,現在字符型液晶顯示模塊已經是單片機應用設計中最常用的信息顯示器件,但采用LCD液晶顯示會造成設計成本增加。
LCD1602可以顯示2行 16 個字符,有 8 位數據總線 D0-D7,和 RS、R/W、 EN 三個控制端口,工作電壓為 5V,并且帶有字符對比度調節和背光[10]。
具體引腳說明如表2-1所示。

表2-1 LCD1602液晶顯示器引腳說明
LCD1602 液晶模塊內部的字符發生存儲器(CGROM)已經存儲了 160 個不同 的點陣字符圖形,如表 1 所示,這些字符有:阿拉伯數字、英文字母的大小寫、 常用的符號、和日文假名等,每一個字符都有一個固定的代碼,它的讀寫操作、 屏幕和光標的操作都是通過指令編程來實現的。
最后綜合了多方面因素的考慮采用了方案二,選擇 LCD1602 顯示器作為系統的顯示界面。
2.1.5系統時鐘芯片選擇DS1302是美國DALLAS公司推出的一種高性能、低功耗的實時時鐘芯片,附加31字節靜態RAM,采用SPI三線接口與CPU進行同步通信,并可采用突發方式一次傳送多個字節的時鐘信號和RAM數據。實時時鐘可提供秒、分、時、日、星期、月和年,一個月小與31天時可以自動調整,且具有閏年補償功能。工作電壓寬達2.5~5.5V。采用雙電源供電(主電源和備用電源),可設置備用電源充電方式,提供了對后背電源進行涓細電流充電的能力。 DS1302用于數據記錄,特別是對某些具有特殊意義的數據點的記錄上,能實現數據與出現該數據的時間同時記錄,因此廣泛應用于測量系統中。DS1302實物和管腳圖分別如圖2-5、圖2-6所示。
圖2-5 DS1302實物圖

圖2-6 DS1302管腳定義
DS1302各引腳的功能為:
VCC1:備用電源;VCC2:主電源。當VCC2>VCC1+0.2V時,由VCC2向DS1302供電,當VCC2< VCC1時,由VCC1向DS1302供電。
SCLK:串行時鐘,輸入;
I/O:三線接口時的雙向數據線;
CE:輸入信號,在讀、寫數據期間,必須為高。該引腳有兩個功能:第一,CE開始控制字訪問移位寄存器的控制邏輯;其次,CE提供結束單字節或多字節數據傳輸的方法。
DS1302有關日歷、時間的寄存器共有12個,其中有7個寄存器(讀時81h~8Dh,寫時80h~8Ch),存放的數據格式為BCD碼形式。
2.2 系統硬件電路設計2.2.1系統電源電路設計由于該系統中 51 單片機及 AD 轉換芯片及液晶顯示器所需供電電壓均為 5V 電壓,所以要保證系統穩定可靠的工作,需要設計一個可以穩定提供 5V 電壓的供電系統。本設計采用雙電源接口供電方式,USB 接口供電方便程序調試,也可采用外置電源作為系統的供電電源,但是需另加三端穩壓器件 LM7805 作為系統電源的穩壓器件以保證系統電壓為穩定的直流 5V 電壓,同時外置電源的輸出電壓要高于 5V輸出,系統電源輸入接口要加濾波電容以確保工作電壓穩定。電源輸出接口加上LED 電源指示燈,用來判定電源是否正常工作。該系統電源電路設計如圖 2-7所示。
圖2-7電源接口電路
C1,C2實現對電源濾波,以濾除可能存在的高頻雜波對電源的影響,C4實現對電源電壓的平滑穩定作用[10],當USB接口輸出電壓高時C4用來儲能,當后續電路負載過高USB供電不足時電解電容C4通過釋放儲存的電能來保證電源電壓不跌落。LED0用作電源指示,其亮滅代表電源工作與否,R0用來限流,以保證LED不被燒壞[13]。
2.2.2系統單片機主控電路設計
系統主控電路由AT89S52單片機及晶振電路和復位電路組成,該電路作為整個系統功能實現的核心單元,其連接方式如圖2-8所示。
圖2-8 單片機控制模塊電路
晶振全稱為晶體振蕩器,其作用在于產生原始的時鐘頻率,這個頻率經過頻率發生器的放大或縮小后就成了電腦中各種不同的總線頻率。晶振一般叫做晶體諧振器,是一種機電器件,是用電損耗很小的石英晶體經精密切割磨削并鍍上電極焊上引線做成。這種晶體有一個很重要的特性,如果給它通電,它就會產生機械振蕩,反之,如果給它機械力,它又會產生電,這種特性叫機電效應。他們有一個很重要的特點,其振蕩頻率與他們的形狀,材料,切割方向等密切相關。由于石英晶體化學性能非常穩定,熱膨脹系數非常小,其振蕩頻率也非常穩定,由于控制幾何尺寸可以做到很精密,因此,其諧振頻率也很準確。根據石英晶體的機電效應,我們可以把它等效為一個電磁振蕩回路,即諧振回路。他們的機電效應是機-電-機-電..的不斷轉換,由電感和電容組成的諧振回路是電場-磁場的不斷轉換。在電路中的應用實際上是把它當作一個高Q值的電磁諧振回路。由于石英晶體的損耗非常小,即Q值非常高,做振蕩器用時,可以產生非常穩定的振蕩,作濾波器用,可以獲得非常穩定和陡削的帶通或帶阻曲線[10]。
復位電路采用按鍵復位加上電復位來實現,S1為復位按鍵,復位按鍵按下后,復位端通過1K的小電阻與電源接通,迅速放電,使RST引腳為高電平,復位按鍵彈起后,電源通過10KΩ的電阻對10μF的電容C1重新充電,RST引腳端出現復位正脈沖。AT89S52內部有一個高增益反相放大器,用于構成振蕩器,但要形成時鐘脈沖,外部還需附加電路,本設計采用內部時鐘方式,利用芯片內部的振蕩器,然后在引腳XTAL1和XTAL2兩端跨接晶體振蕩器,就構成了穩定的自激振蕩器,發出的脈沖直接送入內部時鐘電路,C2和C3的值通常選擇為30pF左右,晶振Y1選擇12MHz.為了減小寄生電容,更好地保證振蕩器穩定、可靠地工作,振蕩器電容應盡可能安裝得與單片機引腳XTAL1和XTAL2靠近[[]7。
單片機的31腳(EA)接+5V電源,表示允許使用片內ROM。
2.2.3系統顯示部分電路設計顯示部分采用LCD1602液晶顯示模塊,液晶板上排列著若干 5×7或 5×10點陣的字符顯示位,每個顯示位可顯示1個字符,從規格上分為每行 8、16、20、24、32、40位,有一行、兩行及四行三類。其與單片機的連接電路如圖2-9所示
圖2-9 液晶顯示接口電路
1腳和2腳為液晶1602地和電源引腳,3腳為背光調節引腳,通過10K電位器接地,背光可通過電位器來調節亮度;4腳、5腳、6腳為液晶片選控制引腳,分別連接到單片機的P2.0、P2.1、P2,2端口,7~14腳為數據接口,與單片機的P0口相連實現數據的傳輸,15、16、腳為液晶的背光控制腳,分別接到電源和地[9]。
2.2.4系統超重報警指示電路設計超重報警指示電路用來在稱重測量超出最高值時報警提示,以免重量太高的情況下損壞傳感器。報警指示電路由PNP三極管9012驅動蜂鳴器來實現,單片機IO口控制三極管的基極,當單片機的IO口輸出為低電平時,三極管導通,蜂鳴器的正極與電源接通,蜂鳴器通電發出報警聲,當單片機IO口輸出高電平時,三極管截止,蜂鳴器停止報警。報警指示電路如圖2-10所示。

圖2-10報警指示電路
2.2.5系統按鍵輸入電路設計按鍵輸入電路用來在電子稱測量過程中輸入單價值,按鍵輸入電路采用4*4矩陣鍵盤實現,矩陣鍵盤電路如圖2-11所示。
圖2-11按鍵輸入電路
電子稱按鍵功能分配如表2-2所示:
表2-2系統按鍵配置表
此電子秤是開機檢測托盤重量,并將托盤重量清零(即電子秤每次開機后檢測托盤重量,并程序中自動將托盤重量保存在一個變量中,稱量過程中每次都將獲得的重量減去托盤重量,而得到所要稱量物體的真正的重量)。
計算功能:在正確輸入了單價之后,按下計算按鍵,將會計算出金額,并在液晶顯示器上顯示出重量、單價、總價。
電子日歷時鐘鍵盤面板:
對應矩陣鍵盤按鍵
通過設置按鍵可以切換日期、星期、時間的設置,通過加減鍵來進行各個狀態的調節。
2.3系統硬件電路的繪制與PCB線路板制作2.3.1 Protell 99 SE軟件介紹本文在硬件電路的設計過程中,原理圖和PCB的繪制采用Protel99SE軟件,Protel99SE是應用于Windows9X/2000/NT操作系統下的EDA設計軟件,該軟件以其簡單易操作的優勢一直以來備受電子工程師的喜愛,因而也成了很多高校電子相關專業EDA工具的必選課程。
2.3.2 系統原理圖繪制與PCB印刷線路板制作采用Protel99SE軟件繪制原理圖和PCB的主要步驟如下所述:
- 建立系統所需原件庫;
- 加載所建原件庫到工程項目中;
- 在原理圖頁面中放置所需元器件并按照電氣性能連接各元件;
- 建立原件封裝庫并加載到工程文件中;
- 繪制好電路后進行ERC電氣檢測,并生成網絡表;
- 在工程中建立PCB文件,導入生成的網絡表;
- 按照網絡飛線提示繪制PCB,最后完成DRC檢測[13]。
按照如上步驟最終完成繪制的電路圖與PCB圖分別如圖2-12、2-13所示。
圖2-12 系統電路原理圖
圖2-13 系統PCB印刷線路板圖
第3章 系統軟件設計
3.1 系統軟件編程環境介紹系統軟件設計采用C語言編程,編譯環境為keil UV3。
keil c51 是美國Keil Software 公司出品的51 系列兼容單片機C 語言軟件開發系統,和匯編相比,C 在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。
Keil c51 軟件提供豐富的庫函數和功能強大的集成開發調試工具,全Windows 界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到keil c51 生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能體現高級語言的優勢。
Keil C51 可以完成編輯、編譯、連接、調試、仿真等整個開發流程。開發人員可用IDE 本身或其它編輯器編輯C 或匯編源文件,然后分別有C51 及A51 編輯器編譯連接生成單片機可執行的二進制文件(.HEX),然后通過單片機的燒寫軟件將HEX 文件燒入單片機內。軟件主要三個方面:一是初始化系統;二是按鍵檢測;三是數據采集、數據處理并進行顯示。這三個方面的操作分別在主程序中來進行。程序采用模塊化的結構,這樣程序結構清楚,易編程和易讀性好,也便于調試和修改。
3.2系統主程序流程圖系統軟件部分主程序流程圖如圖3-1所示
圖3-1 系統主程序流程圖
3.3系統顯示部分流程圖系統示子程序主要是來判斷是否需要顯示,以及如何去顯示,也是十分重要的程序之一。設計流程圖如圖3-2所示。
圖3-2系統顯示部分流程圖
3.4系統按鍵調整部分流程圖鍵盤電路設計成4X4矩陣式,在程序中可以先判斷按鍵編碼,然后根據編碼將鍵盤代表的數值送到相應的存儲單元,再進行功能選擇或數據處理。設計流程圖如圖3-3所示。
圖3-3 按鍵調整程序流程圖
第四章 系統的制作、安裝與調試
4.1電路的繪制與PCB板的制作把系統的電路原理圖設計好以后。下一步工作就是進行實物制作了,而實物制作的第一步就是對電路進行排版布線;雖然PROTEL99 SE軟件有自動布局布線的功能,但是,我還是選擇了手動布線。雖然可能布的不是很漂亮,但是很多問題是只有親自動手了,才會發現。PCB板制作遇到以下幾個方面。
1. 電路原理圖的布局
在器件布局的過程中應注意以下幾點:(1)一個模塊及其附屬的一些分離元器件應盡量放到一起;(2)不同的電路模塊盡量劃分清晰,使得在調試過程中多電路的檢查能夠一目了然;(3)較容易發熱的元器件盡量放到電路的邊緣,有利于散熱。
2. 布線
PCB布線的好壞對系統性能有直接的影響,在高頻電路表現的尤為突出,所以,在進行電路布線時還需注意以下幾點:(1)模擬地和數字地應分開接地,避免數字信號和模擬信號會相互干擾;(2)每一根走線,能短則短,不要為了盲目追求少跳線而繞遠路,因為線越短電阻越小,干擾也會越小;(3)電源線和地線盡量從電路板的邊緣走線,且電源線盡量畫的比一般線寬略粗一些;(4)走線在改變方向時應該走45°角或曲線,避免直角的拐角。
3. 打印與轉印
打印時要注意油紙不能折疊,打印的設置必須準確,只留下底層的走線和焊盤。而在轉印時首先覆銅板要刷洗干凈,以免在轉印時油墨不能完全的轉印;其次,轉印機必須預熱到機器發出提示音,這表明,轉印機已經準備好轉印了;第三,轉印機的轉印速度檔位應放在“正常”檔位,板子的類型應放在“印刷板” 檔位。第四,在轉印時,注意油紙上的走線圖必須能夠完整的附在覆銅板上,一塊板子最好轉印兩次,確保把油墨完全的轉印到覆銅板上。
4. 腐蝕
將油紙上的電路圖轉印到覆銅板后,接著就要把多余的銅腐蝕掉。不過在剛轉印好的時候,首先應檢查是否轉印完整,若有斷線、走線空心的問題,必須用油墨筆將斷線補起來,空心的走線填完整。確保轉印工序完成后,就可以將電路板放入FeCl3溶液里進行腐蝕了,俗稱“爛板”。如果有條件,可以將腐蝕液加熱,再放入電路板,這樣能夠有效的提高腐蝕的速度。
5. 打孔
腐蝕好的板子,在洗凈之后就可以打孔了,打孔時尤其要注意孔的大小不能將焊盤的銅箔完全打掉,否則焊接時,焊盤沒有銅箔就無法進行焊接了。
最后,打孔完成,用砂紙將毛糙磨平,這樣電路圖的繪制與PCB板的制作就順利完成了。
4.2 系統的調試電路板實物做完以后,接下來的工作就是調試。這是理論指導實踐最重要的一步。調試工作需要耐心與恒心。所以在調試過程中必須保持冷靜的頭腦,較強的電路分析能力。一個系統的調試需要軟硬件結合調試。
在軟硬件結合調試的過程中所遇到的問題:
1、電子電路的設計中對各種影響因素的考慮不夠完全,比如在對過電壓情況的處理中未作防范措施。
2、系統設計不夠優化,有待改善。比如系統的超量程信號直接由單片機送入報警電路,沒有設計保護電路再入單片機處理后送入報警電路。
3、沒有擴展更多電路,如溫度顯示功能,通訊接口電路與上位機(PC機)進行通訊,上位機顯示功能從而將大量的商品數據存于上位機,然后通過串口或并口通訊與電子稱相連,達到遠距離控制的目的。
4、對各種實用芯片價格了解不夠,選擇上任有欠缺,如所選的稱重傳感器價格較貴。這些都為我今后的學習和工作留下了積極的影響。
第五章 總結與體會
5.1 總結本文采用AT89S52單片機計的電子計重秤, 無論是計量精度, 還是穩定性都滿足國家對A級電子秤的要求, 它具有較好的標定校準方法, 性能穩定, 操作簡單, 價格低廉。該電子秤集傳感器技術、微計算機技術、數字顯示技術于一體、其反應靈敏、準確度高、顯示直觀,便于使用。通過硬件的少量擴展和軟件的修改, 能設計出性能優越的計價秤、電子臺秤等, 滿足各行各業對現代電子衡器的需求。另外稍加擴展,該電子秤還可與其它生產質量管理系統項連接,具有推廣應用價值。
下面就電子秤軟件組成部分展望一下它的發展:
在整個畢業設計過程中,我對大學四年所學的知識有了一個系統的認識和理解,尤其是對本課題所用到的單片機及其相關知識有了進一步的掌握,對利用單片機進行控制系統的設計與開發又及對系統的分析和問題的解決有了切身的認識和體會,正所謂學以致用,在此實踐過程中增長了知識、豐富了經驗,提高了解決問題的能力。系統的分析與設計過程是對學習的總結過程,更是進一步學習和探索的過程。控制系統的開發設計是一項復雜的系統工程,必須嚴格按照系統分析、系統設計、系統實施、系統運行與調試的過程來進行。系統的分析和設計是項很辛苦的工作,同時也是一個充滿樂趣的過程,在設計過程中,要邊學習,邊實踐,遇到新問題就不斷探索和努力即可使問題得到解決。
理論和實際必須緊密結合,在設計中要針對不同的系統根據理論給與不同的方案,綜合考慮各方面的因素和需要,選擇出最佳的方案與結論。
本課題軟件和硬件相結合,有相當大的難度,同時也有很大的實用性。在做畢業設計的過程中,我的理論和實踐水平都有了較大的提高。在本課題的設計中,我熟練掌握了單片機硬件設計和接口技術,同時對稱重傳感器的原理及應用有了一定的了解,掌握了各種控制電路及其相關元器件的使用。通過這次畢業設計,我不僅學會如何將所學專業知識運用到實際生活中,還學會如何克服未知的困難,解決難題的方法。
5.2 體會畢業設計終于結束了,這意味著我的大學生涯中最后一項任務也完成了,在此畢業設計過程中,鞏固了我在大學4年內學過的知識,尤其是單片機和C語言編程方面的知識,同時通過這次畢設提高了單片機編程的能力,尤其是獲得的軟件調試經驗,同時了解到了其它相關領域的知識,對今后的工作學習有著極大的幫助。
由于時間太倉促,經驗不足,理論方面也相應的存在不足,加上條件有限,仍存在著一些設計方面的問題,個人技能也有待提高。理論知識還要鞏固加強。但是寶貴的實踐經驗還是對自己的提高有著極大的幫助。
參考文獻
[[1] 薛均義,張彥斌.《MCS-516系列單片微型計算機及應用》[M].西安交通大學出版社,1999
[2] 中國機械工業教育協會 組編.《單片機原理與應用》.機械工業出版社.2001
[3] 黃繼昌.《傳感器工作原理及應用實例》[A],人民郵電出版社,1998
[4] 郭永貞, 《數字電子技術》[M] 西安電子科技大學出版社 2000
[5] 楊金巖等.《8051單片機數據傳輸接口擴展技術與應用實例》[M]人民郵電出版社,2005.
[6] 張齊,杜群貴.《單片機應用系統設計技術》[M].電子工業出版社,2007
[7] 李廣弟 《單片機基礎》[M],北京航空航天大學出版社,2001
[8] 于京《51系列單片機C程序設計與應用方案》[M] 中國電力出版社 2002.
[9] 張齊,杜群貴 《單片機應用系統設計技術》[M].電子工業出版社,2004
[10] 張洪潤 《電子線路與電子技術》[M].清華大學出版社,2005
[11] 童詩白,華成英.《模擬電子技術基礎》[M]. 高等教育出版社,2006
[12] 胡海學.《單片機原理及應用系統設計》[M].電子工業出版社,2005.
[13] 及力,《Protel99SE原理圖與PCB設計教程》[M]電子工業出版社,2004.
[14] 戴佳,《51單片機C語言設計實例精講》[M] 電子工業出版社 2006
[15 ] INTEGRATED CIRCUITS DATA HANDBOOK 80C51-based 8-bit microcontrollers PHILIPS,1992
[16 ] Adel S.Sedra,Kenneth C.Smith:Microelectronics Circuits,3rd Edition,Holt Rinehart and Winston,Inc.,1991
致謝四年的本科學習生涯即將結束,在本人做畢業設計中,得到了我的導師的悉心指導和無私幫助。他嚴謹的治學態度和謙和的為人給我留下了深刻的印象。
本課題在選題及研究過程中得到???老師的悉心指導。?老師多次詢問研究進程,并為我指點迷津,幫助我開拓研究思路,精心點撥、熱忱鼓勵。?老師一絲不茍的作風,嚴謹求實的態度,踏踏實實的精神,不儀授我以文,而且教我做人,雖歷時三載,卻給以終生受益無窮之道。
通過這次畢業設計,使我得到了一次用專業知識、專業技能分析和解決問題全面系統的鍛煉。使我在傳感器的基本原理、傳感器的實際應用,以及在常用傳感器設計思路技巧的掌握方面都能向前邁了一人步,為日后成為合格的應用型人才打下良好的基礎。我在?老師的精心指導和嚴格要求下,獲得了豐富的理論知識,極大地提高了實踐能力,并對當前電了領域的研究狀況和發展方向有了一定的了解,這對我今后進一步學習傳感器方面的知識有極人的幫助。在此,我衷心感謝???老師的指導和支持。在未來的工作和學習中,我將以更好的成績來回報老師。
在此,我還要感謝在一起愉快的度過人學生生活的機電工程系全體老師和同學門,正是由于你們的幫助和支持,我才能克服一個一個的困難和疑惑,直至本文的順利完成。
在論文即將完成之際,我的心情無法平靜,從開始進入課題到論文的順利完成,有多少可敬的師長、同學、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!最后我還要感謝培養我長大含辛茹苦的父母,謝謝你們!