<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于51單片機(jī)的經(jīng)濟(jì)型高精度變送器設(shè)計(jì)

          基于51單片機(jī)的經(jīng)濟(jì)型高精度變送器設(shè)計(jì)

          作者: 時(shí)間:2012-01-07 來(lái)源:網(wǎng)絡(luò) 收藏

          1 引言

          自動(dòng)化儀表主要由檢測(cè)儀表和控制儀表兩大部分組成。隨著生產(chǎn)的不斷發(fā)展,生產(chǎn)規(guī)模越來(lái)越大,相應(yīng)的自動(dòng)化管理系統(tǒng)日趨復(fù)雜。由于計(jì)算機(jī)技術(shù)的高度發(fā)展和廣泛應(yīng)用,近 10 年來(lái)在控制系統(tǒng)方面有了很大進(jìn)展。變送器是工業(yè)過(guò)程重要的基礎(chǔ)自動(dòng)化設(shè)備之一。主要完成物理信號(hào)的測(cè)量和變換處理。隨著高參數(shù)、大容量設(shè)備的增加和過(guò)程工藝的復(fù)雜化。對(duì)自動(dòng)化的依賴性越來(lái)越大,變送器用量不斷增多,要求不斷提高。在實(shí)際工程應(yīng)用項(xiàng)目中,因項(xiàng)目資金有限,選用市售會(huì)大大增加項(xiàng)目資金的投入,項(xiàng)目指標(biāo)要求也許僅僅為了觀測(cè)某點(diǎn)參數(shù)的情況,選用模擬變送器達(dá)不到系統(tǒng)要求,選用市售會(huì)造成功能浪費(fèi)。因此,系統(tǒng)設(shè)計(jì)往往采用傳感器+主機(jī)構(gòu)成現(xiàn)場(chǎng)儀表形式,可降低系統(tǒng)成本,實(shí)現(xiàn)所需功能。

          2 系統(tǒng)功能

          由于同一種傳感器制作時(shí)材料、工藝的差別,使每只傳感器輸出信號(hào)幅值都不一樣,不同作用的傳感器同樣存在輸出信號(hào)不同一的問(wèn)題。這給主機(jī)的設(shè)計(jì)、調(diào)試、維修帶來(lái)了很大困難。所以,對(duì)選用輸出不同幅值的弱信號(hào)傳感器應(yīng)用系統(tǒng),設(shè)計(jì)一種通用的主機(jī),實(shí)現(xiàn)信號(hào)的變送和傳輸,可降低系統(tǒng)成本,便于調(diào)試、維修,是相當(dāng)必要和有實(shí)用意義的。www.51kaifa.com

          3 硬件電路設(shè)計(jì)

          3.1 智能變送器工作原理框圖

          變送器是工業(yè)過(guò)程重要的基礎(chǔ)自動(dòng)化設(shè)備之一。主要完成物理信號(hào)的測(cè)量和變換處理。隨著高參數(shù)、大容量設(shè)備的增加和過(guò)程工藝的復(fù)雜.對(duì)自動(dòng)化的依賴性越來(lái)越大,變送器用量不斷增多.要求不斷提高。智能變送器都是以 CPU為核心構(gòu)成的數(shù)字化儀表,工作原理如圖1所示:

          圖1 智能變送器工作原理

          3.2 智能變送器硬件電路設(shè)計(jì)框圖

          本論文智能變送器的硬件電路設(shè)計(jì)主要包括選擇、弱信號(hào)增益自調(diào)節(jié)電路設(shè)計(jì)、A/D 轉(zhuǎn)換器選擇及接口電路設(shè)計(jì)、D/A 轉(zhuǎn)換器電路選擇及接口設(shè)計(jì)、看門狗電路、存儲(chǔ)器電路設(shè)計(jì)、RS—485 總線接口電路設(shè)計(jì)、4~20mA 轉(zhuǎn)換電路設(shè)計(jì)、鍵盤和顯示器接口電路設(shè)計(jì)等。硬件設(shè)計(jì)原理框圖如圖2所示。

          圖2 硬件設(shè)計(jì)原理框圖

          3.3 各部分功能電路設(shè)計(jì)

          3.3.1 選擇

          因 MCS-51 系列已被國(guó)內(nèi)用戶廣泛認(rèn)可和應(yīng)用,貨源充足,資料豐富,仿真工具種類繁多且成熟,因此設(shè)計(jì)選用ATMEL公司生產(chǎn)的AT89系列的89C52單片機(jī),其本身具有 8051CPU 內(nèi)核,片內(nèi) 256 字節(jié) RAM、特殊功能寄存器 SFR、8KB FLASH 程序存儲(chǔ)器、4個(gè)8位并行 I/O 口、2個(gè)16位定時(shí)計(jì)數(shù)器、全雙工串行口、布爾處理器、2個(gè)優(yōu)先級(jí)的6個(gè)中斷源等內(nèi)部資源。硬件擴(kuò)展方便,用途廣泛。

          3.3.2 輸入信號(hào)增益自調(diào)節(jié)電路設(shè)計(jì)

          圖3 增益自調(diào)節(jié)電路原理圖

          本設(shè)計(jì)采用非易失性數(shù)控電位器和高精度運(yùn)放組成程控增益放大器。由新型的集成儀表放大器 AD623 和非易失性數(shù)控電位器 X9241 組成。設(shè)計(jì)采用的電路具有增益范圍寬、占用uP口的線少,成本低,適用做單片機(jī)數(shù)據(jù)采集系統(tǒng)的傳感器與 ADC 之間的信號(hào)放大器。增益自調(diào)節(jié)電路原理如圖3所示。

          3.3.3 模-數(shù)轉(zhuǎn)換器選擇及接口電路設(shè)計(jì)

          TLC2543 是具有11個(gè)輸入端的12位串行模數(shù)轉(zhuǎn)換器。是近幾年推出的一種性能價(jià)格比較優(yōu)越的12位A/D轉(zhuǎn)換芯片,具有多種封裝形式,TLC2543 具有轉(zhuǎn)換快、穩(wěn)定性好、與微處理器接口簡(jiǎn)捷、價(jià)格低等優(yōu)點(diǎn),因此本設(shè)計(jì)采用TLC2543作為模-數(shù)轉(zhuǎn)換器。www.51kaifa.com

          3.3.4 數(shù)-模轉(zhuǎn)換器接口電路設(shè)計(jì)

          本設(shè)計(jì)數(shù)-模轉(zhuǎn)換器選用具有兩個(gè)輸入數(shù)據(jù)寄存器的8位 D/A 轉(zhuǎn)換器DAC0832,它能直接與 MCS—51 單片機(jī)相接口,不需要附加任何其他 I/O 接口芯片。

          3.3.4 V/I變換電路設(shè)計(jì)

          本部分主要由多通道模擬開(kāi)關(guān)CD4051,采樣保持集成電路LF398,及放大器組成。具有多路轉(zhuǎn)換,采樣保持,及 V/I 變換功能。由于設(shè)計(jì)的是六個(gè)通道采集輸入和六個(gè)通道分別輸出的系統(tǒng),所以用8選1的模擬開(kāi)關(guān)CD4051。CD4051由電平轉(zhuǎn)換電路、譯碼電路和開(kāi)關(guān)電路三部分組成。www.51kaifa.com

          3.3.4 復(fù)位及運(yùn)行監(jiān)視電路設(shè)計(jì)

          由于80C51單片機(jī)內(nèi)沒(méi)有獨(dú)立的監(jiān)視定時(shí)器(Watchdog Timer),所以需另行設(shè)計(jì)監(jiān)視電路以提高系統(tǒng)的可靠性。設(shè)計(jì)中采用了專用集成電路X5045。X5045是一種集成看門狗、電壓監(jiān)控和串行 EEPROM 三種功能于一身的可編程電路。設(shè)計(jì)時(shí)應(yīng)考慮以下幾方面問(wèn)題:1.上電復(fù)位;2.電壓監(jiān)視;3.看門狗定時(shí)器;4.SPI 串行非易失數(shù)據(jù)存儲(chǔ)器。

          3.3.5 RS-485 總線接口電路設(shè)計(jì)

          該部分電路為協(xié)議物理層硬件設(shè)計(jì)。其中采用高速光電藕合器6N137,以適應(yīng)高速串行數(shù)據(jù)要求,提高電路的抗干擾能力;采用 SN75LBCl84,它是一種RS—485接口芯片,該芯片在傳輸率為250kbps的情況下可傳輸?shù)淖钸h(yuǎn)距離可達(dá)1.5km,可以完成 TTL 電平與RS—485電平之間的轉(zhuǎn)換。該芯片還有一個(gè)獨(dú)特的設(shè)計(jì).即當(dāng)輸入端開(kāi)路時(shí),其輸出為高電平,這樣,即使在接收器輸入端電纜有開(kāi)路故障時(shí),也不影響系統(tǒng)的正常工作。

          3.3.6 顯示器接口電路設(shè)計(jì)

          設(shè)計(jì)使用的顯示器采用的是型號(hào)為QH2001的128×64點(diǎn)陣圖形液晶顯示模塊LCM,與CPU接口簡(jiǎn)單, 顯示器可以直接顯示漢字、ASCII 碼字符,使顯示信息清晰易懂,符合閱讀習(xí)慣。

          3.3.7 鍵盤接口電路與電源設(shè)計(jì)

          74LS373 作為鍵盤 I/O 接口,共設(shè)計(jì)9個(gè)按鍵。電源由 220V AC 供電,采用集成開(kāi)關(guān)電源,分別供出+5V 和 2A(單片機(jī)系統(tǒng)使用)、+5V 和 1A(RS—485 接口隔離使用)、±12V(放大電路使用)三種規(guī)格的值。

          4 智能變送器軟件設(shè)計(jì)www.51kaifa.com

          智能變送器的軟件部分采用MCS—51匯編語(yǔ)言、模塊化程序設(shè)計(jì)方法,主要模塊有監(jiān)控程序模塊、信號(hào)增益自調(diào)節(jié)模塊、數(shù)據(jù)采集和處理模塊、信號(hào)輸出模塊、通信模塊、鍵盤掃描模塊、采樣定時(shí)模塊等。下面分別予以介紹。

          4.1 監(jiān)控程序模塊

          系統(tǒng)監(jiān)控程序是控制單片機(jī)系統(tǒng)按預(yù)定操作方式運(yùn)轉(zhuǎn)的程序。是單片機(jī)系統(tǒng)程序的框架。其主要任務(wù)完成系統(tǒng)自檢、初始化、處理鍵盤命令、處理接口命令、處理?xiàng)l件觸發(fā)并完成顯示功能。在設(shè)計(jì)監(jiān)控程序時(shí),在通信、定時(shí)采集數(shù)據(jù)、鍵盤掃描、數(shù)據(jù)顯示等功能中,為及時(shí)響應(yīng)其它儀器通信要求,通信功能的優(yōu)先級(jí)別應(yīng)最高,次之為定時(shí)采集數(shù)據(jù),優(yōu)先級(jí)別最低為數(shù)據(jù)顯示,各作業(yè)之間具有明顯優(yōu)先級(jí)的差別,所以監(jiān)控程序采用作業(yè)優(yōu)先調(diào)度型,優(yōu)先級(jí)高者先運(yùn)行。www.51kaifa.com

          4.2 輸入信號(hào)增益自調(diào)節(jié)模塊

          此模塊根據(jù)上位機(jī)傳送過(guò)來(lái)的弱信號(hào)的最大值VMAX來(lái)設(shè)定放大環(huán)節(jié)的放大系數(shù)。將弱信號(hào)放大到0~5V,即放大系數(shù)等于5000除以VMAX。

          4.3 數(shù)據(jù)采集和處理模塊

          該部分模塊主要包括 A/D 轉(zhuǎn)換子程序、去脈沖干擾平均值濾波子程序、標(biāo)度轉(zhuǎn)換子程序等。為更好的消除脈沖干擾的影響,系統(tǒng)采用去極值平均濾波。即連續(xù)采樣7次,將其累加求和同時(shí)找出其中的最大值和最小值,再?gòu)睦奂雍椭袦p去最大值和最小值,按5個(gè)采樣值求平均,即得有效采樣值。

          4.4 通信模塊設(shè)計(jì)

          數(shù)字通信是智能變送器的基本功能,硬件設(shè)計(jì)采用 RS—485 總線將多臺(tái)變送器連接成一個(gè)分布式數(shù)據(jù)采集系統(tǒng)。這種 RS—485 網(wǎng)絡(luò)結(jié)構(gòu)具有接口簡(jiǎn)單、靈活性好、價(jià)格低、易于控制等優(yōu)點(diǎn),可廣泛應(yīng)用于工業(yè)控制系統(tǒng)中。

          4.5 采樣定時(shí)模塊

          采樣定時(shí)利用單片機(jī)內(nèi)部定時(shí)器 T0 完成。T0基準(zhǔn)定時(shí)時(shí)間為50MS。采樣時(shí)間判斷分兩部分完成,一是在T0中斷服務(wù)程序中產(chǎn)生一個(gè)1秒的時(shí)基信號(hào),二是在主程序中調(diào)采樣時(shí)間判斷子程序,判斷是否到某通道采集時(shí)間。

          5 智能變送器軟件抗干擾的設(shè)計(jì)

          串入單片機(jī)系統(tǒng)內(nèi)部的干擾會(huì)對(duì)單片機(jī)的工作造成很嚴(yán)重的影響,將造成軟件系統(tǒng)失控,即程序跑飛。其后果將不可設(shè)想,因此,必須盡可能早地發(fā)現(xiàn)并采取補(bǔ)救措施。軟件功能設(shè)計(jì)完成后,為提高系統(tǒng)抗干擾性能,采取一些軟件抗干擾措施。主要有:

          1.指令冗余

          當(dāng)程序跑飛、跑亂后,當(dāng)程序執(zhí)行到單字節(jié)指令上時(shí),使自己自動(dòng)納入正軌。為了使跑飛的程序迅速納入正軌,應(yīng)多用單字節(jié)指令,在對(duì)程序流向起決定作用的指令(如 RET RETI ACALL LCALL LJMP JZ JNZ JC JNC DJNZ)前,加兩條 NOP指令,形成指令冗余。如www.51kaifa.com

          NOP

          NOP

          LJMP CHULI; 數(shù)據(jù)處理子程序

          2. 軟件陷阱

          當(dāng)程序進(jìn)入非程序區(qū)(如空閑 EPROM 區(qū)),或表格區(qū)時(shí),采用冗余指令無(wú)法使程序恢復(fù)正軌,此時(shí)可以設(shè)定軟件陷阱,攔截亂飛的程序,將其迅速引入一個(gè)指定位置,并有專門對(duì)程序運(yùn)行出錯(cuò)處理的程序。軟件陷阱由三條指令構(gòu)成:

          NOP

          NOP

          LJMP ERR; ERR錯(cuò)誤處理程序入口

          3. 看門狗復(fù)位

          當(dāng)程序陷入死循環(huán)后,軟件攔截技術(shù)無(wú)法將程序拉回正軌,經(jīng)一定時(shí)間后看門狗就自動(dòng)給 CPU 發(fā)送復(fù)位信息,強(qiáng)迫程序返回到 0000H 入口??撮T狗喂狗程序?yàn)?

          SETB CS5045; CS5045 為 X5045 的片選引腳

          CLR CS5045

          SETB CS5045

          6 本文作者創(chuàng)新點(diǎn):

          智能變送器,是計(jì)算機(jī)技術(shù)、檢測(cè)技術(shù)與通信技術(shù)匯合的結(jié)果,本文按照經(jīng)濟(jì)、實(shí)用、可靠的設(shè)計(jì)要求,對(duì)選用輸出不同幅值的弱信號(hào)多傳感器應(yīng)用系統(tǒng),設(shè)計(jì)一種通用的主機(jī),利用儀表運(yùn)算放大器AD623和數(shù)控電位器X9241設(shè)計(jì)了增益自調(diào)節(jié)mvDC信號(hào)高精度放大電路,采用12位串行接口、具自診斷功能 A/D轉(zhuǎn)換器TLC2543完成模擬信號(hào)到數(shù)字信號(hào)轉(zhuǎn)換,經(jīng)89C52單片機(jī)采集處理后,由D/A、V/I轉(zhuǎn)換電路變換為DC標(biāo)準(zhǔn)信號(hào),以保持與模擬儀表兼容,同時(shí)經(jīng)光電隔離和RS-485接口,實(shí)現(xiàn)遠(yuǎn)程數(shù)字信號(hào)傳輸。進(jìn)行了軟件、硬件設(shè)計(jì)。

          參考文獻(xiàn):

          [1] 宋光明,智能傳感器網(wǎng)絡(luò)研究與開(kāi)發(fā),傳感技術(shù)學(xué)報(bào),2003.2

          [2] 徐力,工業(yè)智能變送器設(shè)計(jì),電子產(chǎn)品世界,2002.12

          [3] 郝曉弘等,基于 FF 協(xié)議的智能變送器的設(shè)計(jì)與開(kāi)發(fā),儀表技術(shù)與傳感器,2003.5

          [4] 于海春,智能壓力變送器設(shè)計(jì),淮陰師范學(xué)院,2003.2



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();