一款基于 PIC16F877A 單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計_第1頁
一款基于 PIC16F877A 單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計_第2頁
一款基于 PIC16F877A 單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計_第3頁
一款基于 PIC16F877A 單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計_第4頁
一款基于 PIC16F877A 單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

一款基于PIC16F877A單片機的高準(zhǔn)確度數(shù)字稱重系統(tǒng)設(shè)計關(guān)鍵詞:數(shù)字稱重系統(tǒng)PIC16F877A單片機摘要:本文設(shè)計了一款高準(zhǔn)確度數(shù)字稱重系統(tǒng)。該設(shè)計利PIC16F877A單片機作為微處理器,在稱重數(shù)據(jù)處理中,應(yīng)用了混合濾波算法,提高了稱重系統(tǒng)的穩(wěn)定性、準(zhǔn)確度。測試表明:該稱重系統(tǒng)能夠?qū)崿F(xiàn)多通道稱重系統(tǒng)的數(shù)字化處理,并符合OIMLR76中的3級衡器的允差要求.另外,在研究有關(guān)此課題的報告時,我還查找了其中單片機,射頻識別技術(shù),PLC,模電轉(zhuǎn)換等的相關(guān)知識以助于研讀此報告。引言:稱重計量技術(shù)的應(yīng)用頗為廣泛,遍布于社會經(jīng)濟的各行各業(yè),在生產(chǎn)過程或貿(mào)易結(jié)算中,對稱量技術(shù)的要求越來越高。而在我國,目前大多使用的仍為模擬式的電子稱重系統(tǒng),純數(shù)字式的稱重系統(tǒng)由于成本問題,在商業(yè)及工業(yè)生產(chǎn)中的應(yīng)用不為廣泛,為了解決現(xiàn)有的模擬稱重系統(tǒng)存在各類誤差補償困難、穩(wěn)定性和可靠性低以及難以實現(xiàn)在線監(jiān)測等諸多問題,且考慮到純數(shù)字式稱重系統(tǒng)的成本,本文設(shè)計了一種基于PIC16F877A單片機的高準(zhǔn)確度遠(yuǎn)程數(shù)字化稱重系統(tǒng)。1系統(tǒng)總體設(shè)計系統(tǒng)主要包括模擬稱重傳感器部分、數(shù)字化部分、通信接口部分及儀表數(shù)據(jù)處理部分。模擬稱重傳感器的彈性體在外力的作用下,產(chǎn)生彈性形變,從而使得粘貼在彈性體表面的電阻應(yīng)變片產(chǎn)生變形,電阻應(yīng)變片的電阻隨之變化,經(jīng)過惠斯頓電橋電路將力的變化轉(zhuǎn)換為電信號的變化,輸出mV級的信號。該信號經(jīng)過放大再進行A/D轉(zhuǎn)換,然后通過單片機對傳感器數(shù)據(jù)進行各種補償修正,包括零點、溫度、靈敏度、非線性、蠕變等補償,從而使得稱重系統(tǒng)的各項技術(shù)指標(biāo)達(dá)到規(guī)定的準(zhǔn)確度,最后將補償完的稱重數(shù)據(jù)信號以RS-232信號格式輸出[1]。2基本硬件電路設(shè)計系統(tǒng)處理器采用美國Microchip公司生產(chǎn)的PIC16F877A單片機,其主頻為20MHz,內(nèi)部集成了8k×14位Flash程序存儲器和368字節(jié)數(shù)據(jù)存儲器,并擁有14個中斷源,可以完全滿足本項目的需要。文中設(shè)計的稱重系統(tǒng)稱量相對誤差在0.05%以內(nèi),則數(shù)據(jù)采集電路要保證A/D轉(zhuǎn)換器無噪聲分辨率輸出在21位或以上,綜合考慮多通道高精度Σ-Δ型A/D轉(zhuǎn)換器的失調(diào)、動態(tài)噪聲、線性度和溫度漂移等技術(shù)指標(biāo),選用了24位多通道高精度A/D轉(zhuǎn)換器AD7718。3軟件設(shè)計系統(tǒng)采用PIC16F877A單片機作為微處理器,整個系統(tǒng)采用模塊化設(shè)計,由主程序、數(shù)據(jù)采集、濾波、數(shù)據(jù)處理、通信及智能稱重子程序等構(gòu)成。單片機上電后先初始化,其中包括寄存器、RAM、串口、定時器及端口的初始化,然后對RAM、ROM、EEPROM進行測試,包括RAM的讀寫,ROM及EEPROM的測試,測試不正常則置出錯標(biāo)志。如果測試正常則讀取EEPROM中的參數(shù)到RAM中,然后讀取AD7718中出來的A/D值。隨即進行濾波處理,再判斷是否在正常范圍之內(nèi),如是則進入補償程序進行補償,結(jié)果輸出到數(shù)字化模塊的屏幕端,并將結(jié)果按通訊協(xié)議通過RS232總線輸出到上位機,輸出同時判斷數(shù)據(jù)是否有效,如無效則置出出錯標(biāo)志,如果有效則重新讀取A/D值進行下一個數(shù)據(jù)的處理。電子稱重系統(tǒng)在稱量過程中由于輸出的模擬信號較弱,且稱重設(shè)備所處環(huán)境條件通常不為理想狀態(tài),常伴有各種頻率的噪聲,盡管在本設(shè)計中,AD7718承擔(dān)了部分的針對高頻噪聲干擾的濾波功能,但不能排除低頻噪聲的干擾,為了更好抑制干擾對A/D轉(zhuǎn)換結(jié)果的影響,本項目采用了數(shù)字濾波的方法。考慮到PIC16F877A單片機處理速度和RAM空間,本項目采用了移位平均濾波、去極值平均濾波相結(jié)合的混合濾波算法來對A/D轉(zhuǎn)換值進行濾波處理,該算法的實現(xiàn)過程為:首先在RAM中建立兩個長度為N(在本項目中,考慮到單片機的能力,取N=8)的緩沖區(qū),一個用來作為備份隊列,另外一個用來實現(xiàn)隊列移位。每次采樣之前先把備份緩沖區(qū)的數(shù)據(jù)對應(yīng)調(diào)入移位緩沖區(qū),并丟掉隊首數(shù)據(jù)(最早進入隊列的那個數(shù)據(jù)),再做一次向前的移位操作,最后把新采樣的數(shù)據(jù)補充隊尾,這樣就保證了能夠?qū)崿F(xiàn)濾波對新的采樣值的操作,把新生成的隊列備份。為了更好抑制脈沖干擾,必須對新的隊列排序,剔除新產(chǎn)生隊列里的最大值和最小值,然后求余下N-2個值的算術(shù)平均值就為本次采樣A/D值的濾波結(jié)果。當(dāng)然為了進一步提高濾波效果,在求余下N-2個值的算術(shù)平均值之前也可以在增加一次剔除隊列里的最大值和最小值。對于稱重傳感器,由于一般采用全橋工業(yè)標(biāo)準(zhǔn),由溫度變化引起的應(yīng)變輸出非線性,在全橋傳感器中,己得到補償。但是,實際使用中稱重傳感器不可避免的存在零漂和穩(wěn)漂等問題,且其大小在uV級以上。而這一漂移信號疊加到實際信號中,就會造成測量誤差。故本文中的補償子程序主要是指對稱重數(shù)據(jù)進行零點漂移的處理。零點穩(wěn)定是影響稱重系統(tǒng)準(zhǔn)確度非常重要的因素,傳感器的零漂,即零點漂移,是指當(dāng)外界溫度保持恒定時,傳感器未承受載荷卻有一個隨時間增加而變化的輸出。零輸入信號時,輸出可能不為零,為消除這個零位漂移值,采用零位補償技術(shù)。一般在稱重傳感器中,零點溫度補償采用了通過串連在橋路上的溫度系數(shù)大的銅絲等來補償溫度帶來的誤差,針對本系統(tǒng)的特點,本補償模塊采取了開機清零:系統(tǒng)啟動后自動檢測稱臺是否有物體,若有就把此時的值保存在RAM中,每次獲取物體重量之后由系統(tǒng)自動減去作為顯示結(jié)果。零位跟蹤:在工作狀態(tài)系統(tǒng)不斷監(jiān)測稱重結(jié)果是否小于設(shè)定的閾值,若小于說明此時狀態(tài)稱臺空載,現(xiàn)在為零位,顯示結(jié)果為零。若工作狀態(tài)監(jiān)測稱重結(jié)果大于設(shè)定閾值,操作人員確認(rèn)此時稱臺沒有被稱重物體,可以在此時有操作人員按下置零按鍵手動置零,并把此時的誤差也保存在RAM中,待以后的稱重過程中在減去這個值。本項目在實現(xiàn)智能稱重功能使用了基于RS-232接口,并編寫了基于PC機的數(shù)據(jù)處理軟件,來實現(xiàn)數(shù)據(jù)監(jiān)控、數(shù)據(jù)存儲、程序設(shè)定及系統(tǒng)維護等功能。下位機的智能稱重即包含了故障診斷功能,該功能可以通過儀表的自診斷完成,自診斷主要包含以下幾個方面:儀表內(nèi)部存儲器檢查、顯示屏檢查、通訊接口檢查。整個稱重系統(tǒng)部分診斷的主要思路是通過讀取下位機的輸出,將下位機的輸出和系統(tǒng)設(shè)定的參數(shù)比較來判斷系統(tǒng)是否有故障。如下位機各傳感器AD碼是否有超出范圍的輸出(是否有超載或欠載),檢查每個傳感器的AD碼重量分配關(guān)系是否發(fā)生重大變化,是否零點與初始數(shù)據(jù)發(fā)生相對較大的漂移等,如若有以上情況,系統(tǒng)將會給出相關(guān)的提示,提示使用人員對相關(guān)部進行檢查以維護整個系統(tǒng)的正常工作4實驗結(jié)果:文中設(shè)計的智能數(shù)字稱重系統(tǒng),根據(jù)OIML-R76《非自動衡器》國際建議,該系統(tǒng)的4路獨立稱重誤差應(yīng)都能滿足級衡器的允差要求。故對由4路獨立的模擬信號輸入的該系統(tǒng)進行測試,每個通道的模擬信號由一個制作完好的秤臺中配有的模擬稱重傳感器產(chǎn)生,其中ABC三通道最大秤量為100kg,D通道最大秤量為1000kg。測試前先對各獨立系統(tǒng)進行1/2最大秤量及最大秤量兩個秤量點進行標(biāo)定,然后進行測試,測試數(shù)據(jù)如表所示。由表可見,該多通道數(shù)字稱重系統(tǒng)每通道的結(jié)果都滿足OIML-R76中級衡器的允差要求。5總結(jié)文中設(shè)計了一種基于PIC16F877A單片機的智能數(shù)字稱重系統(tǒng),采用了新的硬件電路計,與以往產(chǎn)品相比具有更好的綜合性能,該方案已經(jīng)在寧波精聯(lián)電子衡器有限公司得到應(yīng)用,實驗結(jié)果表明,該系統(tǒng)測量示值誤差及重復(fù)性誤差較小,能夠滿足一定的市場需求。其他相關(guān)基礎(chǔ)知識:1.單片微機是早期SingleChipMicrocomputer的直譯,它忠實地反映了早期單片微機的形態(tài)和本質(zhì)。單片微型計算機簡稱單片機(SingleChipMicrocomputer),又稱微控制器(MicrocomputerUnit)。將計算機的基本部件微型化,使之集成在一塊芯片上。片內(nèi)含有CPU、ROM、RAM、并行I/O、串行I/O、定時器/計數(shù)器、中斷控制、系統(tǒng)時鐘及總線等。隨后,按照面向?qū)ο?、突出控制功能,在片?nèi)集成了許多外圍電路及外設(shè)接口,突破了傳統(tǒng)意義的計算機結(jié)構(gòu),發(fā)展成microcontroller的體系結(jié)構(gòu),目前國外已普遍稱之為微控制器MCU(MicroControllerUnit)。2.I/O是input/output的縮寫,即輸入輸出端口。每個設(shè)備都會有一個專用的I/O地址,用來處理自己的輸入輸出信息。CPU與外部設(shè)備、存儲器的連接和數(shù)據(jù)交換都需要通過接口設(shè)備來實現(xiàn),前者被稱為I/O接口,而后者則被稱為存儲器接口。存儲器通常在CPU的同步控制下工作,接口電路比較簡單;而I/O設(shè)備品種繁多,其相應(yīng)的接口電路也各不相同,因此,習(xí)慣上說到接口只是指I/O接口。3.繼電器:主要作用編輯繼電器是具有隔離功能的自動開關(guān)元件,廣泛應(yīng)用于遙控、遙測、通訊、自動控制、機電一體化及電力電子設(shè)備中,是最重要的控制元件之一。繼電器一般都有能反映一定輸入變量(如電流、電壓、功率、阻抗、頻率、溫度、壓力、速度、光等)的感應(yīng)機構(gòu)(輸入部分);有能對被控電路實現(xiàn)“通”、“斷”控制的執(zhí)行機構(gòu)(輸出部分);在繼電器的輸入部分和輸出部分之間,還有對輸入量進行耦合隔離,功能處理和對輸出部分進行驅(qū)動的中間機構(gòu)(驅(qū)動部分)。4模電轉(zhuǎn)換:原理編輯簡介A/D轉(zhuǎn)換器是用來通過一定的電路將模擬量轉(zhuǎn)變?yōu)閿?shù)字量。模擬量可以是電壓、電流等電信號,也可以是壓力、溫度、濕度、位移、聲音等非電信號。但在A/D轉(zhuǎn)換前,輸入到A/D轉(zhuǎn)換器的輸入信號必須經(jīng)各種傳感器把各種物理量轉(zhuǎn)換成電壓信號。A/D轉(zhuǎn)換后,輸出的數(shù)字信號可以有8位、10位、12位、14位和16位等。A/D轉(zhuǎn)換器的工作原理主要介紹以下三種方法:逐次逼近法,雙積分法,電壓頻率轉(zhuǎn)換法逐次逼近式A/D是比較常見的一種A/D轉(zhuǎn)換電路,轉(zhuǎn)換的時間為微秒級。采用逐次逼近法的A/D轉(zhuǎn)換器是由一個比較器、D/A轉(zhuǎn)換器、緩沖寄存器及控制邏輯電路組成,如圖所示。逐次逼近式AD轉(zhuǎn)換器原理圖基本原理是從高位到低位逐位試探比較,好像用天平稱物體,從重到輕逐級增減砝碼進行試探。逐次逼近法轉(zhuǎn)換過程是:初始化時將逐次逼近寄存器各位清零;轉(zhuǎn)換開始時,先將逐次逼近寄存器最高位置1,送入D/A轉(zhuǎn)換器,經(jīng)D/A轉(zhuǎn)換后生成的模擬量送入比較器,稱為Vo,與送入比較器的待轉(zhuǎn)換的模擬量Vi進行比較,若Vo<Vi,該位1被保留,否則被清除。然后再置逐次逼近寄存器次高位為1,將寄存器中新的數(shù)字量送D/A轉(zhuǎn)換器,輸出的Vo再與Vi比較,若Vo<Vi,該位1被保留,否則被清除。重復(fù)此過程,直至逼近寄存器最低位。轉(zhuǎn)換結(jié)束后,將逐次逼近寄存器中的數(shù)字量送入緩沖寄存器,得到數(shù)字量的輸出。逐次逼近的操作過程是在一個控制電路的控制下進行的。采用雙積分法的A/D轉(zhuǎn)換器由電子開關(guān)、積分器、比較器和控制邏輯等部件組成。如下圖所示?;驹硎菍⑤斎腚妷鹤儞Q成與其平均值成正比的時間間隔,再把此時雙積分式AD轉(zhuǎn)換器原理圖[1]間間隔轉(zhuǎn)換成數(shù)字量,屬于間接轉(zhuǎn)換。雙積分法A/D轉(zhuǎn)換的過程是:先將開關(guān)接通待轉(zhuǎn)換的模擬量Vi,Vi采樣輸入到積分器,積分器從零開始進行固定時間T的正向積分,時間T到后,開關(guān)再接通與Vi極性相反的基準(zhǔn)電壓VREF,將VREF輸入到積分器,進行反向積分,直到輸出為0V時停止積分。Vi越大,積分器輸出電壓越大,反向積分時間也越長。計數(shù)器在反向積分時間內(nèi)所計的數(shù)值,就是輸入模擬電壓Vi所對應(yīng)的數(shù)字量,實現(xiàn)了A/D轉(zhuǎn)換。雙積分式AD轉(zhuǎn)換原理圖采用電壓頻率轉(zhuǎn)換法的A/D轉(zhuǎn)換器,由計數(shù)器、控制門及一個具有恒定時間的時鐘門控制信號組成,如電壓頻率式AD轉(zhuǎn)換器原理圖圖4.23所示。它的工作原理是V/F轉(zhuǎn)換電路把輸入的模擬電壓轉(zhuǎn)換成與模擬電壓成正比的脈沖信號。電壓頻率轉(zhuǎn)換法電壓頻率轉(zhuǎn)換法的工作過程是:當(dāng)模擬電壓Vi加到V/F的輸入端,便產(chǎn)生頻率F與Vi成正比的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論