楊 柳 胡以懷 郭慧茹
(上海海事大學(xué)商船學(xué)院,上?!?01306)
?
優(yōu)化的CAN與1-Wire總線溫度采集系統(tǒng)設(shè)計
楊柳胡以懷郭慧茹
(上海海事大學(xué)商船學(xué)院,上海201306)
針對長距離、大規(guī)模、高密度的溫度場測量應(yīng)用,研究了一種基于CAN總線與1-Wire總線的經(jīng)濟(jì)型系統(tǒng)解決方案。該方案以Cortex-M3處理器為核心,對CAN總線與1-Wire總線接口的硬件電路進(jìn)行優(yōu)化,增強(qiáng)了網(wǎng)絡(luò)的穩(wěn)定性。同時,從工程實(shí)際應(yīng)用出發(fā),闡述了大規(guī)模測點(diǎn)的優(yōu)化管理與維護(hù)。該方案現(xiàn)已成功應(yīng)用于某電廠200MW機(jī)組的鍋爐金屬壁溫在線檢測系統(tǒng),具有較好的工業(yè)應(yīng)用前景。
溫度采集檢測測點(diǎn)定位DS18B20DS2484Cortex-M31-Wire總線CAN總線以太網(wǎng)傳感器
隨著近年來自動化技術(shù)的迅速發(fā)展,溫度作為最常見的測量對象之一,根據(jù)應(yīng)用場合的不同,已涌現(xiàn)出多種傳感器及其測量方法。然而,在研究某些對象的熱力系統(tǒng)時,通常要在對象周圍的較小空間里布置成百上千個測點(diǎn)。這種大規(guī)模、高密度的溫度場測量系統(tǒng)對測點(diǎn)布置、信號采集、數(shù)據(jù)通信等都提出了較高要求。DS18B20是DALLAS公司生產(chǎn)的1-Wire總線數(shù)字式溫度傳感器。該芯片體積小、成本低且精度高,供電與通信只需3根線,特別適用于這種溫度場的測量應(yīng)用。雖然DS18B20已成為低成本應(yīng)用方案的首選,但是受限于1-Wire總線設(shè)計的初衷是為相鄰器件的短距離通信提供一種便利的板級內(nèi)部通信,所以在各種設(shè)計中很少能提供DS18B20大規(guī)模網(wǎng)絡(luò)的可靠方案。本文從CAN總線與1-Wire總線的各自特點(diǎn)出發(fā),對其軟硬件進(jìn)行優(yōu)化,設(shè)計了一套擴(kuò)展能力強(qiáng)、易于維護(hù)的采集系統(tǒng)。
為了提高采集系統(tǒng)的測點(diǎn)容量、通信距離以及可維護(hù)性,系統(tǒng)采用3層網(wǎng)絡(luò)設(shè)計[1],系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
各網(wǎng)絡(luò)的功能如下。
①1-Wire總線,用于DS18B20網(wǎng)絡(luò),可實(shí)現(xiàn)短距離的多點(diǎn)溫度采集;每個數(shù)據(jù)采集器包含3路獨(dú)立的1-Wire總線接口,可根據(jù)測點(diǎn)布置要求,實(shí)現(xiàn)3個1-Wire網(wǎng)絡(luò)的并行采集。
②CAN總線,用于數(shù)據(jù)采集器網(wǎng)絡(luò),實(shí)現(xiàn)傳感器數(shù)據(jù)傳輸,以及接收上位機(jī)的管理命令。
③以太網(wǎng),用于局域網(wǎng)計算機(jī)與數(shù)據(jù)采集器的通信,上位機(jī)可通過以太網(wǎng)或光纖以太網(wǎng),實(shí)現(xiàn)對遠(yuǎn)程數(shù)據(jù)的采集與管理。
系統(tǒng)的核心部件為數(shù)據(jù)采集器,其不僅負(fù)責(zé)溫度數(shù)據(jù)的采集,同時也管理整個網(wǎng)絡(luò)的運(yùn)行狀態(tài)。采集器選用NXP公司生產(chǎn)的基于Cortex-M3內(nèi)核的高速處理器LPC1764,主頻高達(dá)100MHz,包含2路CAN控制器和3路I2C控制器,完全滿足功能需求。
下文主要從軟硬件的優(yōu)化設(shè)計方面,闡述本文所提系統(tǒng)的特點(diǎn)。
2.1CAN總線硬件接口優(yōu)化設(shè)計
CAN總線硬件接口設(shè)計由兩個高速光耦隔離器6N137、收發(fā)器PC82C250以及DC/DC隔離電源等主要器件搭建而成。這種分立元件搭建的接口方式在實(shí)際故障維護(hù)時稍顯不便。本文采用ADI公司生產(chǎn)的集成式CAN收發(fā)器ADM3053。該器件是一款隔離式控制器區(qū)域網(wǎng)絡(luò)(CAN)物理層收發(fā)器,集成隔離DC/DC轉(zhuǎn)換器,符合ISO11898標(biāo)準(zhǔn)[2]。該器件采用ADI公司的iCoupler技術(shù),將雙通道隔離器、CAN收發(fā)器和ADI公司的isoPowerDC/DC轉(zhuǎn)換器集成于單個SOIC表貼封裝中。片內(nèi)振蕩器輸出一對方波,以驅(qū)動內(nèi)部變壓器提供隔離電源。CAN總線接口電路如圖2所示。該器件采用5V單電源供電,提供完全隔離的CAN解決方案[3]。與分離式器件的方案相比,這種集成化的設(shè)計在性能、PCB布線、生產(chǎn)成本以及設(shè)備維護(hù)上都有所改進(jìn)。
圖2 CAN總線接口電路圖
2.2 1-Wire總線硬件接口優(yōu)化設(shè)計
在1-Wire總線設(shè)計中,大部分采用單片機(jī)I/O口模擬總線時序[4]。為保證正常通信,控制器必須滿足以下基本條件:
①微處理器的通信端口必須是雙向的,其輸出為漏極開路;
②微處理器必須能產(chǎn)生標(biāo)準(zhǔn)速度1-Wire通信所需的1μs延時和高速通信所需要的0.25μs延時;
③通信過程不能被中斷。
在短距離和少量測點(diǎn)的應(yīng)用場合,采用I/O口模擬的方式是可行的,但是在組建長距離、大規(guī)模的1-Wire網(wǎng)絡(luò)時,就會出現(xiàn)明顯的網(wǎng)絡(luò)不穩(wěn)定現(xiàn)象??煽康?-Wire網(wǎng)絡(luò)必須保證通信線提供正確的時序和合適的電壓擺率。1-Wire主機(jī)發(fā)送的時序不正確,會導(dǎo)致與1-Wire從器件之間的通信間斷或完全失敗[5]。輸出電壓擺率若不加以控制,可能嚴(yán)重限制網(wǎng)絡(luò)的長度,并產(chǎn)生時通時斷的現(xiàn)象。為此,本系統(tǒng)選用DALLAS公司生產(chǎn)的I2C接口1-Wire橋接器DS2484。只要主機(jī)具有普通的I2C通信接口,就可以通過橋接器產(chǎn)生嚴(yán)格定時和電壓擺率可控的1-Wire波形。DS2484接收所要發(fā)送的指令與數(shù)據(jù),執(zhí)行1-Wire操作,并將結(jié)果返回至主機(jī)。該芯片作為1-Wire總線主機(jī)具有如下特點(diǎn)。
①I2C從站與LPC1764主站的通信速率支持標(biāo)準(zhǔn)模式(最大100kHz)和快速模式(400kHz)。
②芯片集成完整的1-Wire總線協(xié)議,只需接收I2C主機(jī)發(fā)送的命令,即可產(chǎn)生嚴(yán)格的1-Wire通信時序,實(shí)現(xiàn)DS18B20的復(fù)位、在線檢測、讀數(shù)據(jù)和寫數(shù)據(jù)等功能。
③在寄生電容供電模式下,可通過軟件設(shè)置來控制1-Wire總線的供電,從而可以在極端故障情況下實(shí)現(xiàn)對所有在網(wǎng)DS18B20芯片的復(fù)位。
④可通過軟件修改總線時序的時間參數(shù),從而根據(jù)網(wǎng)絡(luò)的布線與負(fù)載,設(shè)定最佳的控制時序。
⑤內(nèi)置±8kV的靜電釋放(electrostaticdischarge,ESD)保護(hù),有效抑制因靜電釋放引起的芯片損壞。
LPC1764處理器內(nèi)置3路獨(dú)立的I2C控制器。為增加數(shù)據(jù)采集器DS18B20的數(shù)量,且不影響數(shù)據(jù)更新率,每個數(shù)據(jù)采集器包含3路1-Wire總線系統(tǒng),且相互獨(dú)立,并行工作,互不干擾。1-Wire總線電路圖如圖3所示。由于CORTEX-M3系統(tǒng)的供電為3.3V,為兼容1-Wire總線5V電平,以及隔離外部I2C通信,保護(hù)CORTEX-M3內(nèi)核,電路中選用了熱插拔數(shù)字隔離器ADUM1250。
通過對1-Wire總線硬件接口的優(yōu)化和軟件中時隙與擺率的調(diào)整,本方案可實(shí)現(xiàn)單個1-Wire網(wǎng)絡(luò)中100m通信距離間至少64個測點(diǎn)的穩(wěn)定通信[6]。
圖3 1-Wire總線接口電路圖
數(shù)據(jù)采集器主要包括DS18B20底層驅(qū)動、測點(diǎn)管理以及上位機(jī)與采集器的CAN通信數(shù)據(jù)交互等[7]軟件流程設(shè)計,圖4為主程序軟件流程圖。在大規(guī)模采集系統(tǒng)中,如何管理所有測點(diǎn)是軟件設(shè)計的重點(diǎn)和難點(diǎn),下面具體介紹優(yōu)化的測點(diǎn)管理方式。
圖4 主程序流程圖
3.1測點(diǎn)定位
為方便DS18B20的現(xiàn)場施工與管理,制線工藝采用全密封防水設(shè)計,將每一組溫度傳感器通過防水密封接頭直接安裝在三芯電纜上,組建一路1-Wire網(wǎng)絡(luò)。以下將該線纜稱為溫度檢測線。DS18B20安裝示意圖如圖5所示。
溫度檢測線在出廠時為每一個DS18B20的溫度上下限報警值寄存器(即TH和TL)寫入相應(yīng)的數(shù)值,以標(biāo)志各個DS18B20在該條線上的相對位置,下面將該數(shù)值稱為位置索引。系統(tǒng)中每個溫度檢測線的位置索引彼此獨(dú)立。當(dāng)采集器讀取各傳感器的溫度值后,將其與位置信息進(jìn)行組合編碼,并通過CAN通信定時發(fā)送至上位機(jī)軟件。上位機(jī)軟件可根據(jù)溫度檢測線的施工布置圖,設(shè)計直觀的監(jiān)測界面,清晰地顯示每一個測點(diǎn)的采集數(shù)據(jù)以及工作狀態(tài)。
圖5 DS18B20安裝示意圖
3.2測點(diǎn)信息重置
當(dāng)溫度檢測線第一次通電投入使用或采集器接收上位機(jī)的重置命令時,采集器進(jìn)入測點(diǎn)重置子程序,圖6(a)為測點(diǎn)信息重置流程圖。通過信息重置,采集器可以自動地將在網(wǎng)的DS18B20的芯片信息和位置信息編制成一張通信表格[8];然后根據(jù)表格記錄的信息依次讀取溫度檢測線上的溫度數(shù)據(jù);最終通過不同的CAN數(shù)據(jù)幀將溫度值與位置索引進(jìn)行編碼,并發(fā)送至上位機(jī)。
3.3測點(diǎn)信息更改
當(dāng)已經(jīng)投入使用的溫度檢測線上的芯片需要更換或增加新的測點(diǎn)時,采集器需接收上位機(jī)發(fā)送的CAN指令,使其進(jìn)入測點(diǎn)信息更改子程序,對已存在的通信表格進(jìn)行更新,并將變化的測點(diǎn)信息發(fā)送至上位機(jī)。圖6(b)為測點(diǎn)信息更改流程圖。
圖6 測點(diǎn)信息重置和更改流程圖
本文以實(shí)際工程應(yīng)用為出發(fā)點(diǎn),介紹了硬件接口優(yōu)化設(shè)計電路以及完善的測點(diǎn)管理軟件流程。利用多層網(wǎng)絡(luò),構(gòu)建了一個擴(kuò)展性強(qiáng)、性能穩(wěn)定的溫度場測量系統(tǒng)。該方案已成功應(yīng)用于某電廠200MW機(jī)組的鍋爐金屬壁溫檢測,實(shí)現(xiàn)了5km通信距離的1 500個傳感器測點(diǎn)的實(shí)時在線測量,具有較好的工業(yè)應(yīng)用前景。
[1] 王芳,王凱,王先超.基于ARM-Linux與DS18B20 的溫度監(jiān)測系統(tǒng)[J].計算機(jī)工程與計,2010,31(12):2736-2739.
[2] 閆海明,馮源,田苗.基于DSP內(nèi)嵌ECAN模塊的總線接口設(shè)計[J].現(xiàn)代電子技術(shù),2013,36(11):112-115.
[3] 謝云山,龔建宇,劉春雷,等.ADM3053在CAN隔離接口應(yīng)用中的EMC設(shè)計[J].自動化與儀器儀表,2012(5):35-37
[4] 宋曉東,董凌翔,李琳娜.基于1Wire總線的緊湊型實(shí)時溫度監(jiān)測網(wǎng)構(gòu)建[J].電訊技術(shù),2014,54(7):1011-1015.
[5] 包敬海,樊東紅,陸安山,等.基于DS18B20 的多點(diǎn)體溫檢測系統(tǒng)的研究[J].自動化與儀表,2010(2):20-2.
[6] 陳良光.DSl8B20在多點(diǎn)溫度檢測中的地址碼設(shè)計及其在線糾錯[J].傳感技術(shù)學(xué)報,2005,18(3):157—161.
[7] 王文,王直.基于ARM和DSl8B20的溫度檢測系統(tǒng)[J].電子設(shè)計工程,2011,19(20):89—93.
[8] 李剛,趙彥峰.1-Wire總線數(shù)字溫度傳感器DS18B20原理及應(yīng)用[J].現(xiàn)代電子技術(shù),2005,28(21):77—79.
陜西省科技廳工業(yè)科技攻關(guān)基金資助項(xiàng)目(編號:2015GY075);
西安工程大學(xué)研究生創(chuàng)新基金資助項(xiàng)目(編號:CX201609)。
DesignoftheOptimizedTemperatureAcquisitionSystemBasedonCANand1-WireBuses
Forthemeasurementapplicationoflong-distance,large-scaleandhigh-densitytemperaturefield,theeconomicsystematicsolutionbasedonCANbusand1-Wirebusisprovided.Withthisscheme,theCortex-M3processorisusedasthecore,andtheinterfacinghardwarecircuitsoftheCANbusand1-Wirebusareoptimized,thusthestabilityofnetworkisenhanced.Fromthepracticalengineeringapplication,theoptimummanagementandmaintenanceforlargescalemeasuringpointsareexpounded.Thisschemehasbeensuccessfullyappliedinonlinetemperaturemeasurementsystemofboilermetalwalltubesinacertain200MWunit.Itsindustrialapplicationprospectseeingtobebright.
TemperatureacquisitionDetectionLocatingthemeasurementpointDS18B20DS2484Cortex-M31-WireBusCANbusEthernetSensor
楊柳(1986—),男,2009年畢業(yè)于上海海事大學(xué)檢測技術(shù)與自動化專業(yè),獲碩士學(xué)位,工程師;主要從事船舶自動化控制系統(tǒng)的研究。
TH86;TP23
ADOI:10.16086/j.cnki.issn1000-0380.201609014
修改稿收到日期:2015-12-08。