• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于FPGA單總線溫度測量在多點測溫方向的應用設(shè)計

      2018-10-26 11:38田野
      科技資訊 2018年11期
      關(guān)鍵詞:低電平時序溫度傳感器

      田野

      摘 要:本文提出了一種基于FPGA的單總線多點測溫的應用設(shè)計方案,只需3根線就能完成幾十個甚至上百個溫度點的測量,與通常單線單點測溫相比,具有線路簡單、占用資源少、擴展維護方便等特點。通過實驗樣機驗證:基于FPGA的1-wire多點測溫設(shè)計方案是可行的,已成功實現(xiàn)單總線8個溫度點的實時測量,并試驗樣機工作穩(wěn)定可靠,此設(shè)計方案可應用在工業(yè)生產(chǎn)、民用生產(chǎn)、軍工設(shè)備等設(shè)施的多點溫度檢測與控制等領(lǐng)域。

      關(guān)鍵詞:單總線 DS18B2 0FPGA 單點測溫 多點測溫

      中圖分類號:TP271.5 文獻標識碼:A 文章編號:1672-3791(2018)04(b)-0006-02

      1-wire單總線技術(shù),即一根線既傳輸時鐘又傳輸數(shù)據(jù),而且數(shù)據(jù)傳輸是雙向的,在微功耗的運用下還能做寄生供電的電源使用,是目前結(jié)構(gòu)最簡單、成本低廉且便于擴展維護的一種數(shù)據(jù)傳輸方式。這種技術(shù)具有線路簡單、硬件開銷少等顯著優(yōu)點,廣泛用于工業(yè)生產(chǎn)、民用生產(chǎn)、軍工設(shè)備等設(shè)施的溫度檢測與控制[1]。

      單總線技術(shù)是MAXIM全資子公司DALLAS的一項專有技術(shù),與目前多種串行數(shù)據(jù)通訊方式(SPI/IIC)不同,它采用單根信號線。目前常用的單總線器件很多,涉及到溫度傳感器、EEPROM、實時時鐘等很多種類,市場上運用最為廣泛的芯片之一就溫度傳感器DS18B20。

      1 單總線溫度測量原理

      在日常生活及工農(nóng)業(yè)生產(chǎn)中經(jīng)常要用到溫度的檢測及控制,傳統(tǒng)的測溫元器件有熱電偶、熱電阻、而它們測出的信號一般都是電壓信號,需要外部硬件電路支持,把模擬量信號轉(zhuǎn)換成數(shù)字量信號便于顯示和控制。本文為了低成本和工程化設(shè)計,采用溫度傳感器DS18B20通過FPGA的IO口直接獲取溫度數(shù)字量信號,這種單總線數(shù)字信號傳輸技術(shù),具有抗干擾性高、可靠度高、傳輸距離遠等優(yōu)勢。

      DS18B20是美國DALLAS公司生產(chǎn)的單總線數(shù)字溫度傳感器芯片,采用3引腳TO-92小體積封裝和8腳SOIC封裝,測量溫度范圍-55℃~125℃,具有9~12位AD轉(zhuǎn)換精度,最小溫度分辨率可達0.0625℃,以16位補碼方式串行輸出所測量的溫度值。

      2 方案設(shè)計

      DS18B20供電方式分為:內(nèi)部寄生電源和外部電源兩種形式,在連接方式上分為單片連接和多片連接,前者形成單點測溫系統(tǒng),后者構(gòu)成多點測溫系統(tǒng)[2]。

      2.1 單點測溫硬件設(shè)計

      DS18B20工作在寄生電源模式下時,從信號線DQ上汲取能量,DQ高電平時DS18B20吸收能量至內(nèi)部電容,DQ低電平時利用內(nèi)部電容的能量工作,從而實現(xiàn)在不需要本地電源的情況下遠程測溫;其電路連接如圖1所示。

      2.2 多點測溫硬件設(shè)計

      DS18B20工作在外供電源模式下,多個DS18B20可以并聯(lián)到3根線上,此時FPGA只需一根端口線就可以實現(xiàn)與多個DS18B20傳感器的通訊,這樣只占用微處理器的一個IO端口,就可實現(xiàn)多點測溫系統(tǒng)[3]。

      DS18B20有一個存儲于ROM中激光刻制的64位序列號,是該DS18B20地址序列碼,每個DS18B20序列碼均不相同。64位長的唯一ROM碼中,開始8位(28H)是產(chǎn)品類型

      標識號,作為單總線器件識別碼,接下來48位是器件唯一序列號,最后八位是前56位的CRC校驗碼。ROM中序列碼的作用是使每一個DS18B20都各不相同,這樣就可實現(xiàn)一根總線上掛接多個DS18B20。當有許多單總線器件連接在同一總線上時,系統(tǒng)可通過序列號將需要訪問的器件挑出來,一旦知道每個器件的地址,就可以利用該地址選擇相應器件進行通訊。三線制電路連接如圖2所示。

      2.3 軟件設(shè)計

      軟件基于FPGA采用Verilog編寫,主要完成DS18B20初始化、寫時序操作、讀時序操作、數(shù)據(jù)發(fā)送等功能。

      2.3.1 復位時序

      DS18B20工作時,首先FPGA控制總線DQ將DS18B20復位,然后才能執(zhí)行其他命令。復位時,F(xiàn)PGA將總線拉為低電平并保持616μs,然后釋放總線;DS18B20檢測到復位低電平后,立即響應復位命令,控制總線并拉高75μs;至此,完成復位操作。

      2.3.2 寫時序

      FPGA控制DS18B20總線,執(zhí)行寫數(shù)據(jù)時序時,先將總線DQ置為低電平,保持時間5μs;DS18B20在數(shù)據(jù)線變成低電平后15~60μs內(nèi)對數(shù)據(jù)線進行采樣。因此,F(xiàn)PGA根據(jù)寫數(shù)據(jù)的內(nèi)容“1”或者“0”將總線DQ相應拉低5μs或拉低75μs,然后釋放總線,完成一個比特位寫時序的操作;依次類似完成其他比特位寫時序的操作。

      2.3.3 讀時序

      FPGA讀取DS18B20溫度數(shù)據(jù)時,先將數(shù)據(jù)總線DQ置為低電平,保持時間8μs,然后釋放數(shù)據(jù)總線;DS18B20控制總線,在數(shù)據(jù)線從高電平變?yōu)榈碗娖降?2μs內(nèi)將一個比特位數(shù)據(jù)送到總線DQ上;因此,F(xiàn)PGA根據(jù)時序在釋放總線4μs后讀取總線數(shù)據(jù),完成第一個比特位的采樣;

      2.3.4 溫度數(shù)據(jù)格式

      DS18B20中有兩個高速暫存器,存放16位二進制溫度數(shù)據(jù),高5位是符號位,其余11位是數(shù)據(jù)位;如果溫度大于0℃,符號位為0,取得暫存器里面數(shù)值乘以0.0625,即實際溫度值;如果溫度小于0℃,符號位為1,取得暫存器里面數(shù)值取反加1,再乘以0.0625即實際溫度值,如表1所示。

      2.3.5 程序流程

      FPGA對DS18B20的操作流程:先對DS18B20初始化,然后發(fā)操作指令,最后對高速暫存器操作。單總線模式下DS18B20每一步操作都需遵循嚴格的時序和通訊協(xié)議。程序流程如圖3所示。

      3 結(jié)語

      通過樣機驗證:基于FPGA的1-wire多點測溫設(shè)計,實現(xiàn)8個溫度點的實時測量,樣機工作穩(wěn)定可靠,測量分辨率達0.062℃,并在所內(nèi)多個慣導及導航型號產(chǎn)品中得到驗證。

      整個系統(tǒng)設(shè)計采用3根并聯(lián)在一起,占用資源少,擴展維護方便,支持多達上百個多點溫度測量,具有抗干擾性高、可靠度高、傳輸距離遠等優(yōu)勢,適用于工業(yè)生產(chǎn)、民用生產(chǎn)、軍工設(shè)備等設(shè)施的多點溫度測量。

      參考文獻

      [1] 余瑾,姚燕.基于DS18B20測溫的單片機溫度控制系統(tǒng)[J].微計算機信息,2009(8):105-106.

      [2] 陳勇,許亮,許海闊,等.基于單片機的溫度控制系統(tǒng)的設(shè)計[J].計算機測量與控制,2016,24(2):77-79.

      [3] 王劍飛,程耀瑜,王鵬,等.基于FPGA和DSP的多路信號采集系統(tǒng)的設(shè)計[J].電視技術(shù),2013,37(23):57-60.

      猜你喜歡
      低電平時序溫度傳感器
      清明
      你不能把整個春天都搬到冬天來
      一種實用的電腦接口判斷方法
      淺談溫度傳感器原理及其應用
      數(shù)字電子技術(shù)的應用
      淺談物理電路與數(shù)字電路
      DX型中波發(fā)射機PB200單元控制板時鐘電路工作原理
      光威4GB DDR4 2133
      十銓4GB DDR4 2133
      双江| 武陟县| 罗甸县| 旬邑县| 十堰市| 微博| 泰顺县| 连江县| 清涧县| 临泉县| 资阳市| 正镶白旗| 托克逊县| 睢宁县| 普定县| 安图县| 马尔康县| 廉江市| 昌吉市| 东源县| 孙吴县| 怀安县| 平定县| 博客| 蒲江县| 双江| 尼勒克县| 固原市| 尉犁县| 虹口区| 张家界市| 江油市| 南阳市| 河南省| 平和县| 沙湾县| 台江县| 镇远县| 新郑市| 永嘉县| 开平市|