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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 電路圖天天讀(22):智能水文監(jiān)控系統(tǒng)模塊電路

          電路圖天天讀(22):智能水文監(jiān)控系統(tǒng)模塊電路

          作者: 時間:2017-10-31 來源:網(wǎng)絡(luò) 收藏

            水位、水溫、流速等水文數(shù)據(jù)的測量一直是水電站部門的重點(diǎn),目前,國內(nèi)水文采集系統(tǒng)功能多以數(shù)據(jù)的采集和傳輸為主,少有根據(jù)現(xiàn)場的水情自動控制水利設(shè)備的功能。設(shè)計的智能水文監(jiān)控系統(tǒng)可以由水文管理者通過主控計算機(jī)設(shè)置水位的上下限,以實現(xiàn)自動控制水利設(shè)備的運(yùn)轉(zhuǎn);也可以在網(wǎng)絡(luò)出現(xiàn)故障時直接在現(xiàn)場通過按鍵進(jìn)行上下限設(shè)置;目前國內(nèi)同類產(chǎn)品中少有對系統(tǒng)進(jìn)行自檢的功能。本系統(tǒng)可以隨時通過上位機(jī)軟件設(shè)定的模擬水位信號對不同位置的系統(tǒng)進(jìn)行檢查,確定數(shù)據(jù)是否誤差過大,以保證數(shù)據(jù)的安全和可靠性。

          本文引用地址:http://www.ex-cimer.com/article/201710/369589.htm

            數(shù)據(jù)采集前端AD電路模塊

            通常水文信息的采集多使用不同公司開發(fā)的各種,其中一些的輸出量直接為開關(guān)量或數(shù)字信號,但是很多類的輸出是反應(yīng)被測的非電量的模擬電壓或模擬電流信號,這類傳感器輸出的模擬電壓或電流信號需要轉(zhuǎn)換為相對應(yīng)的數(shù)字信號才可以被微控制器處理。因此本系統(tǒng)設(shè)計了用于模數(shù)轉(zhuǎn)換的功能模塊,該模塊使用的A/D轉(zhuǎn)換器是TI公司生產(chǎn)的10 位模擬轉(zhuǎn)換串行器件TLC1549]。TLC1549以串行方式送給,TLC1549的三個控制管腳與P1口的P1.7(數(shù)字信號的輸出端)、 P1.6(時鐘)、P1.5(片選)三個通用I/O相連,構(gòu)成串行接口,由內(nèi)部程序產(chǎn)生時鐘,控制單片機(jī)與TLC1549的數(shù)據(jù)傳送。單片機(jī)與 TLC1549的接口電路如圖2所示:

            

            RS485接口模塊

            系統(tǒng)測量終端同時設(shè)計了RS-485現(xiàn)場總線的結(jié)構(gòu)方式。對系統(tǒng)間可能出現(xiàn)的干擾,采用了光電隔離技術(shù)。本系統(tǒng)應(yīng)用的現(xiàn)場環(huán)境一般都很惡劣,存在的各方面干擾常導(dǎo)致系統(tǒng)難以正常工作的可能情況,系統(tǒng)設(shè)計時采用了專用的電源監(jiān)控電路微處理芯片(MAX813)進(jìn)行了抗干擾處理。在整體設(shè)計中,考慮到水利數(shù)據(jù)信息的采集和水利設(shè)備的控制兩者之間功能差異可能較大,數(shù)據(jù)采集的設(shè)備一般為弱電設(shè)備,電壓多為0V,而水利設(shè)備的控制多為市電220V甚至 380V的電壓,屬于強(qiáng)電,為避免系統(tǒng)間的干擾,監(jiān)控儀的繼電器控制板和與連接強(qiáng)電設(shè)備的繼電器板分開在不同的電路上,二者通過數(shù)據(jù)線進(jìn)行連接 。

            RS485模塊主要用于水利設(shè)備和控制器模塊之間的數(shù)據(jù)傳輸,對于某個水文站的水文測量信息,往往現(xiàn)場測試點(diǎn)與另一個測試點(diǎn)相距較遠(yuǎn)。例如,水位、水溫、流速等自動測量設(shè)備安裝在河流不同測量斷面的岸邊,而有些諸如雨量、氣溫等自動測量儀器則安裝在河流岸邊不遠(yuǎn)的觀察站場內(nèi)即可。RS485模塊設(shè)備簡單可靠、價格低廉、組網(wǎng)靈活、便于維護(hù)、抗干擾能力強(qiáng)、通信距離遠(yuǎn)。目前國內(nèi)的信息采集設(shè)備都提供RS485總線接口。水利設(shè)備采集的水文數(shù)據(jù)通過RS485 模塊轉(zhuǎn)換為物理鏈路層數(shù)據(jù)流,微控制器發(fā)送的命令也通過RS485模塊輸出給水利設(shè)備。RS485模塊的電路原理圖3如下:

            

            上圖中,水利設(shè)備數(shù)據(jù)通過雙絞線485A和485B作為信號傳輸線,在485A、485B之間串聯(lián)一只10K的電阻,同時與地之間各跨接一個5V的二極管,以消除線路的浪涌干擾,485T為數(shù)據(jù)的發(fā)送端,485R為數(shù)據(jù)接收端,485EN為模塊的使能控制端。

            TCP轉(zhuǎn)RS232串口模塊

            該接口模塊采用NePort-EN嵌入式設(shè)備聯(lián)網(wǎng)服務(wù)器,NePort擁有10M/100M的以太網(wǎng)接口,并可同時傳送TCP/UDP包給多個數(shù)據(jù)接收設(shè)備。并且提供1到3個高速串口,波特率可達(dá)921600bps。NePort同時提供RS232/422/485接口可與任何串口設(shè)備連接,也可以模擬 MODEN可使目前已存在的網(wǎng)絡(luò)應(yīng)用設(shè)備與IP網(wǎng)絡(luò)連接。NePort包含一個波特率達(dá)460kbps的3.3V COMS邏輯電平(可承受5V) 的高性能串口、電源、復(fù)位、時鐘。通常將它與設(shè)備內(nèi)部的帶有串行接口器件相聯(lián)(MCU、DSP),以便將本地串口、IO的數(shù)據(jù)與局域網(wǎng)/互聯(lián)網(wǎng)相聯(lián)接,實現(xiàn)設(shè)備到設(shè)備的數(shù)據(jù)服務(wù)。

            串口使用電纜來傳輸較遠(yuǎn)距離,需采用符合RS232或RS422/485電平的方式傳送。所以需要使用一片電平轉(zhuǎn)換/接口芯片。由于NePort的電源是3.3V,因此在設(shè)計中采用了低壓差電壓調(diào)節(jié)器LM1117器件。接口電路圖如下圖4所示。

            

          電子發(fā)燒友網(wǎng)技術(shù)編輯點(diǎn)評分析:

            單片機(jī)控制方便、使用簡單等特點(diǎn)。采用STC89LE54單片機(jī)作為水位檢測系統(tǒng)的控制核心,結(jié)合傳感器應(yīng)用技術(shù),利用模數(shù)轉(zhuǎn)換電路檢測轉(zhuǎn)換后的水位模擬信號,實現(xiàn)水位、溫度的實時測量和顯示。同時,智能水文監(jiān)控系統(tǒng)中的終端監(jiān)控器上配置的鍵盤可以設(shè)置、查詢水位上、下限和實時水位,實時測量時,根據(jù)事先設(shè)定的上下限比較,當(dāng)實際水位數(shù)據(jù)超上、下限終端控制器進(jìn)行報警,并自動控制閘門電機(jī)運(yùn)轉(zhuǎn),系統(tǒng)通過TCP/IP 模塊走M(jìn)ODBUS工業(yè)總線協(xié)議與主機(jī)進(jìn)行通信,將實時采集的水文信息上傳到主機(jī)。同時系統(tǒng)終端利用LCD 顯示、聲音、鍵盤輸入模塊進(jìn)行人機(jī)交互。

          大家如有問題,歡迎在評論處討論。

          ——電子發(fā)燒友網(wǎng)整理,轉(zhuǎn)載請注明出處!



          評論


          相關(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); })();