常見通信協(xié)議的接口調(diào)試方法_101_第1頁
常見通信協(xié)議的接口調(diào)試方法_101_第2頁
常見通信協(xié)議的接口調(diào)試方法_101_第3頁
常見通信協(xié)議的接口調(diào)試方法_101_第4頁
常見通信協(xié)議的接口調(diào)試方法_101_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、遼寧力迅風(fēng)電控制系統(tǒng)有限公司常見通信協(xié)議的接口調(diào)試方法版本號:1.0.1發(fā)布時(shí)間:2012-2-41. ModbusModbus是一種工業(yè)領(lǐng)域通信協(xié)議標(biāo)準(zhǔn),并且現(xiàn)在是工業(yè)電子設(shè)備之間相當(dāng)常用的連接方式。Modbus協(xié)議是一個(gè)Master/Slave架構(gòu)的協(xié)議。有一個(gè)節(jié)點(diǎn)是Master 節(jié)點(diǎn),其他使用Modbus協(xié)議參與通信的節(jié)點(diǎn)是 Slave 節(jié)點(diǎn)。Master節(jié)點(diǎn)類似Client/Server架構(gòu)中的Client,Slave則類似Server。工業(yè)上Modbus協(xié)議的常見架構(gòu)如下圖所示。1.1. 應(yīng)用場合Modbus協(xié)議主要用于測風(fēng)塔數(shù)據(jù)實(shí)時(shí)讀取、風(fēng)機(jī)數(shù)據(jù)實(shí)時(shí)讀取。將來有可能用于集控系統(tǒng)中,

2、讀取各類數(shù)據(jù)和進(jìn)行遠(yuǎn)程控制。在清三營、長風(fēng)風(fēng)電場,萊維賽爾的測風(fēng)塔使用Modbus RTU協(xié)議與功率預(yù)測系統(tǒng)通信。在向陽風(fēng)電場,明陽的SCADA服務(wù)器通過Modbus TCP協(xié)議向功率預(yù)測系統(tǒng)提供各風(fēng)機(jī)的實(shí)時(shí)運(yùn)行數(shù)據(jù)。在烏力吉、浩日格吐、馬力、前后查臺等風(fēng)電場,賽風(fēng)的測風(fēng)塔使用Modbus RTU over TCP協(xié)議與功率預(yù)測系統(tǒng)通信。1.2. Modbus數(shù)據(jù)模型在Slave和Master進(jìn)行通信時(shí),Slave會將其提供的變量映射到四張不同的表上,Master從表中相應(yīng)位置讀/寫變量,就完成了數(shù)據(jù)獲取或命令下達(dá)。這四張不同的表,稱作Modbus數(shù)據(jù)模型(Modbus Data Model)

3、。為了理解方便,這里將四張表分別稱作1位只讀表、1位可讀可寫表、16位只讀表、16位可讀可寫表。(類似電力通信國標(biāo)中的遙信、遙控、遙測、遙調(diào)。)1位表用來映射單比特?cái)?shù)據(jù)類型的變量,通常是布爾型變量;16位表用來映射雙字節(jié)數(shù)據(jù)類型的變量,如int16、float16等,如果希望映射int32、float32等四字節(jié)變量,可以通過一次使用16位表中的兩個(gè)位置來實(shí)現(xiàn)。只讀表用來映射Master只能讀取的變量;可讀可寫表用來映射Master既可讀取、又可改寫的變量。1位只讀表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit).1位可讀可寫表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit)

4、.16位只讀表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit).16位可讀可寫表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit).例如,在某溫度監(jiān)視系統(tǒng)中,一部溫度傳感器與一臺上位機(jī)通過Modbus總線進(jìn)行通信,溫度傳感器是Server,上位機(jī)是Client。對溫度傳感器提供的變量做如下映射:變量含義數(shù)據(jù)類型映射表在映射表中的起始位置高8位在前是否停止運(yùn)行bool1位只讀表0-有無故障bool1位只讀表2-外部溫度float3216位只讀表1否內(nèi)部溫度float3216位只讀表3否外部溫度告警值float1616位可讀可寫表2否內(nèi)部溫度告警值float1616位可讀可寫表4否1

5、位只讀表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit)是否停止運(yùn)行有無故障.1位可讀可寫表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit).16位只讀表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit)外部溫度內(nèi)部溫度.16位可讀可寫表變量地址012345.數(shù)據(jù)區(qū)域(1個(gè)方格表示1 bit)外部溫度告警值內(nèi)部溫度告警值.再次說明,1位只讀表、1位可讀可寫表、16位只讀表、16位可讀可寫表等名稱是本文檔為了方便讀者理解自擬的,在Modbus協(xié)議規(guī)范中有它們的正式名稱。另外,不同廠商的設(shè)備/軟件說明書中,對這四張表的稱呼又有不同。1位只讀表1位可讀可寫表16位只讀表16位可

6、讀可寫表Modbus協(xié)議規(guī)范Discretes InputCoilsInput RegistersHolding RegistersBachmann PLCDiscCoilsRegsHRegsSiemens PLCInput CoilOutput CoilInput RegisterOutput RegisterHolding Register1.3. Modbus RTU、Modbus TCP與Modbus RTU over TCPModbus協(xié)議有很多種變體,最常見的是Modbus RTU、Modbus TCP和Modbus RTU over TCP。為了能從眾多Slave中唯一地標(biāo)識出希

7、望與其通信的Slave,需要知道Slave的地址。不同的變體對Slave地址的描述方式不同。對于Modbus RTU、Modbus TCP和Modbus RTU over TCP,其硬件接口與對Slave地址的描述方式如下表:硬件接口是否需要指定Slave Id是否需要指定IP地址與TCP端口其他需要指定的參數(shù)Modbus RTU串口是否通信端口、波特率、數(shù)據(jù)位、校驗(yàn)方式、停止位Modbus TCP網(wǎng)口否是無Modbus RTU over TCP網(wǎng)口是是無1.4. 調(diào)試工具與調(diào)試方法Modbus Poll和Modbus Slave是Modbus Tools系列軟件中的兩個(gè)工具軟件,可運(yùn)行在Wi

8、ndows 2000/XP/Vista/7平臺。Modbus Poll可用于測試從Slave中實(shí)時(shí)讀取數(shù)據(jù)。Modbus Slave是一款Slave模擬軟件,可用于模擬出一個(gè)假想的Slave設(shè)備。modpoll 的用法./modpoll -m tcp -a 1 -r 2 -c  8 -t 3 -p 5021 192.168.100.1-a 后面接 slave id-r 后面接 起始偏移地址,這個(gè)地

9、址要比配置文件中的地址大1-c 后面接 讀取數(shù)據(jù)個(gè)數(shù)-t 后面接數(shù)據(jù)類型-p 后面接端口最后加上 ip172.18.106.11:10004liksunliksungogogo/liksunispower/liksun/home/opps/config/opps.cfg2. OPC DAOPC是OLE for Process Control 的縮寫,其最大的特點(diǎn)是必須運(yùn)行在Windows平臺,因?yàn)樗谖④浀腛LE、COM、DCOM技術(shù)而實(shí)現(xiàn)。嚴(yán)格地說,OPC是指一系列協(xié)議,如OPC DA、OPC HDA、OPC DA-XML、OPC AE、O

10、PC UA、OPC DX等。但由于OPC DA的使用最為廣泛,所以一般說OPC就是指OPC DA,即OPC Data Access。OPC DA最新的協(xié)議版本是OPC DA 3.0,目前主流的版本是OPC DA 2.0。2.1. 應(yīng)用場合OPC協(xié)議目前多用于風(fēng)機(jī)實(shí)時(shí)數(shù)據(jù)的讀取,且主要為華銳SCADA服務(wù)器的風(fēng)機(jī)實(shí)時(shí)數(shù)據(jù)接口。將來有可能用于集控系統(tǒng)中,讀取各類數(shù)據(jù)和進(jìn)行遠(yuǎn)程控制。在高山子、阜北、彰北、通榆等風(fēng)電場,華銳的SCADA服務(wù)器通過OPC協(xié)議向功率預(yù)測系統(tǒng)提供各風(fēng)機(jī)的實(shí)時(shí)運(yùn)行數(shù)據(jù)。2.2. OPC DA 的特點(diǎn)為了從同一局域網(wǎng)的眾多機(jī)器中標(biāo)識出OPC服務(wù)軟件所在的機(jī)器,需要指定該機(jī)器的I

11、P地址。由于同一臺機(jī)器上有可能運(yùn)行多個(gè)OPC服務(wù),需要指定該OPC服務(wù)的名稱。最后,通過字符串形式的變量名稱來指定希望讀/寫的變量。例如高山子風(fēng)電場華銳SCADA系統(tǒng)的OPC服務(wù)器的信息和部分變量如下:IP地址86.21.0.19服務(wù)名稱HrDataSvr變量名稱含義數(shù)據(jù)類型是否可寫ABB_WT1.Basic.PlcSta1#風(fēng)機(jī)的PLC狀態(tài)Short否ABB_WT2.Basic.WinSpe2#風(fēng)機(jī)的機(jī)艙外風(fēng)速Float否ABB_WT3.Basic.ActPow3#風(fēng)機(jī)的有功功率Float否ABB_WT8.Basic.bErrSta8#風(fēng)機(jī)是否故障Boolean否與Modbus不同,OPC的

12、變量名稱一旦指定,其數(shù)據(jù)類型與是否可寫就是確定的了。另外,OPC的變量除了具有value屬性(表示該變量的實(shí)時(shí)值)之外,還具有quality和timestamp屬性,表示讀取該變量時(shí)的通信質(zhì)量和該變量的更新時(shí)間。Modbus的變量只有值。2.3. 調(diào)試工具與調(diào)試方法MatrikonOPC是一家專業(yè)開發(fā)OPC相關(guān)軟件的加拿大公司。MatrikonOPC Explorer是一款OPC客戶端軟件,可用于測試OPC服務(wù)器。MatrikonOPC OPC Simulation Server是一款OPC服務(wù)器模擬軟件。OPC Quick Client是一款小巧的OPC客戶端軟件,無需安裝,快捷簡便。3.

13、CDT規(guī)約CDT,也稱部頒CDT,是我國的電力和自動控制領(lǐng)域的常見的通信接口。與其他規(guī)約相比,它的特點(diǎn)是:1)相對簡單;2)并非客戶端/服務(wù)器端工作方式,而是發(fā)端不管收端是否接收,總是將數(shù)據(jù)發(fā)送出去;3)所表示的遙測數(shù)據(jù)為12位的整數(shù)。其中最高位為符號位,所以表示范圍是-2048(負(fù)2的11次方)2047(正2的11次方減1)。3.1. 應(yīng)用場合CDT規(guī)約目前主要用于從遠(yuǎn)動柜獲取升壓站處采集的風(fēng)電場實(shí)時(shí)總功率,以及其他廠家的測風(fēng)塔實(shí)時(shí)數(shù)據(jù)。還用于向電網(wǎng)上報(bào)測風(fēng)塔的實(shí)時(shí)數(shù)據(jù)。3.2. 報(bào)文說明CDT規(guī)約傳輸?shù)囊唤M數(shù)據(jù)被封裝在一個(gè)數(shù)據(jù)幀中。數(shù)據(jù)幀包括同步字、控制字和信息字三部分。同步字:標(biāo)識一個(gè)幀

14、的開頭,一般是三個(gè)EB90??刂谱郑河涊d幀的一些重要信息,如數(shù)據(jù)類型,信息字的長度等。也是三個(gè)字節(jié)。對遙測數(shù)據(jù),控制字常常是71 61開頭。信息字:數(shù)據(jù)本身,長度可變(由控制字中指明)。因?yàn)檫@個(gè)原因,CDT規(guī)約的原始報(bào)文中,往往可以看到三個(gè)EB 90,后面再接71 61。在本系統(tǒng)工程實(shí)施上,這可以看做CDT規(guī)約報(bào)文的特征。若干廠家(如許繼、四方)擴(kuò)展了CDT的通信規(guī)約標(biāo)準(zhǔn),加入了自身的規(guī)范內(nèi)容。但是目前,遠(yuǎn)動裝置給過來的CDT報(bào)文,都還是標(biāo)準(zhǔn)CDT報(bào)文。3.3. 倍率問題在與第三方廠家對接CDT接口時(shí),往往需要根據(jù)數(shù)據(jù)點(diǎn)表,設(shè)定一個(gè)合適的倍率。雖然大多時(shí)候,倍率由第三方廠家指定,但是有時(shí)候由我

15、們指定,或者我們與第三方廠家共同論定,所以知道如何設(shè)定合適的倍率是必要的。設(shè)置方式:CDT遙測原始數(shù)據(jù)(有時(shí)被稱為碼值)表示范圍:-20482047,其真實(shí)含義(比方,準(zhǔn)備表示一個(gè)300MW的風(fēng)場的有功功率)的數(shù)據(jù)的變化范圍:-1兆瓦300兆瓦。所以倍率應(yīng)該小于等于300/2047。在這個(gè)范圍內(nèi)選擇一個(gè)合適的數(shù)字就好,但不要小于300/2047太多,否則造成表示范圍的浪費(fèi),從而造成表示誤差的升高;也不能大約300/2047,否則無法表示滿發(fā)時(shí)風(fēng)場的有功功率。3.4. 實(shí)例詳解以下例子需要好好研究,以便理解CDT規(guī)約是如何包裝數(shù)據(jù)的。設(shè)有若干數(shù)據(jù)需要CDT傳輸。列表如下:物理量單位倍數(shù)70米風(fēng)速

16、m/s0.170米風(fēng)向度0.250米風(fēng)速m/s0.150米風(fēng)向度0.210米風(fēng)速m/s0.110米風(fēng)向度0.2氣溫?cái)z氏度0.1相對濕度%0.1氣壓百帕1則CDT報(bào)文往往是:片段序號報(bào)文內(nèi)容說明1eb 90 eb 90 eb 90報(bào)文起始。271 61 05 2d 0f xx71 61表示本報(bào)文是遙測數(shù)據(jù);05是信息字個(gè)數(shù),CDT每個(gè)信息字可存放2個(gè)物理量,一共9個(gè)物理量,故信息字個(gè)數(shù)為5(向上取整);2d表示源地址,0f表示目的地址,即接口的源地址為45(2d)、目的地址為15(0f);xx為CRC校驗(yàn)碼。300 62 00 40 06 xx00是信息字的地址;00 62(高低字節(jié)對調(diào))對應(yīng)十

17、進(jìn)制數(shù)98,即表示70米風(fēng)速為9.8m/s;06 40對應(yīng)十進(jìn)制數(shù)1600,乘以倍數(shù)0.2,即70米風(fēng)向?yàn)?20度;xx為CRC校驗(yàn)碼。401 42 00 0c 06 xx01是信息字的地址;00 42對應(yīng)十進(jìn)制數(shù)66,即表示50米風(fēng)速大小為6.6m/s;06 0c對應(yīng)十進(jìn)制數(shù)1548,即50米風(fēng)向?yàn)?09.6度;xx為CRC校驗(yàn)碼。502 20 00 0e 06 xx02是信息字的地址;00 20對應(yīng)十進(jìn)制數(shù)32,即10米風(fēng)速3.2m/s;06 0e對應(yīng)十進(jìn)制數(shù)1550,即10米風(fēng)向310度;xx為CRC校驗(yàn)碼。603 5a 00 e6 00 xx03是信息字的地址;00 5a對應(yīng)十進(jìn)制數(shù)9

18、0,即氣溫9攝氏度;00 e6對應(yīng)十進(jìn)制數(shù)230,即相對濕度為23%;xx為CRC校驗(yàn)碼。704 e5 03 00 00 xx04是信息字的地址;03 e5對應(yīng)十進(jìn)制數(shù)997,即氣壓為997百帕;00 00處是無用的數(shù)據(jù),一般補(bǔ)0;xx為CRC校驗(yàn)碼。3.5. 調(diào)試工具與調(diào)試方法Windows平臺:SSCOM串口調(diào)試工具(用于調(diào)試串口)監(jiān)控模擬系統(tǒng)調(diào)試工具(用于調(diào)試CDT規(guī)約)Linux平臺:readcom(用于讀取串口原始報(bào)文)readcdt(用于讀取和解包CDT數(shù)據(jù))writecdt(用于寫入CDT數(shù)據(jù))4. 長儀DETT協(xié)議DETT(梯度風(fēng)協(xié)議)是長春氣象儀器廠自有的測風(fēng)塔實(shí)時(shí)數(shù)據(jù)讀取協(xié)

19、議。該協(xié)議除可讀取實(shí)時(shí)數(shù)據(jù)外,還能夠通過監(jiān)控操作指令對測風(fēng)塔的部分參數(shù)進(jìn)行遠(yuǎn)程配置。4.1. 實(shí)時(shí)數(shù)據(jù)的輸出格式1、每條記錄之間用“n”分開。2、每條記錄由4段組成,每段之間用“t”分開。第一段:ToyID(每個(gè)元素之間用“/”分開,每個(gè)元素每次基本上都可讀到)格式:數(shù)據(jù)類型/站號-采集時(shí)間-唯一ID/本記錄生成時(shí)間數(shù)據(jù)類型:現(xiàn)有wms1sec、wms10min、wms1hou三種站號:區(qū)站號(由施工人員現(xiàn)場確定并輸入)采集時(shí)間:格式為 YYYYMMDDHHmmss唯一ID:取當(dāng)前時(shí)間的微秒數(shù)本記錄生成時(shí)間:程序執(zhí)行時(shí)寫入當(dāng)前時(shí)間(格式與采集時(shí)間一樣)例:wms1sec/fuxin_fubei

20、-GW001-20111110155814-422105/20111110155815 第二段:基本數(shù)據(jù)(每個(gè)元素之間用“t”分開,元素可能缺少)物理量依次為:溫度()、相對濕度(%)、氣壓(hPa)、降水量(mm)例1:32.2t56t998.2t11例2:32.2tt998.2t11第三段:附加數(shù)據(jù)(每個(gè)元素之間用“/”分開,元素可能缺少)目前的物理量為:主板電壓(V)、主板溫度()例1:  13.6/22例2:  /22第四段:第112路智能風(fēng)數(shù)據(jù) (每個(gè)元素之間用“t”分開,元素可能缺少)共12路數(shù)據(jù),每一路由多個(gè)數(shù)據(jù)組成,分三種情況,根據(jù)ToyID的間隔

21、時(shí)間來判斷(注:下述風(fēng)向均以正北風(fēng)向?yàn)榱愣龋皂槙r(shí)針方向?yàn)檎?)wms1sec物理量為:實(shí)時(shí)風(fēng)向(度) 、實(shí)時(shí)風(fēng)速(m/s)例: 270t2.3t210t2.2tt1.1t .含義如下:第一路風(fēng)向 270、第一路風(fēng)速 2.3第二路風(fēng)向 210、第二路風(fēng)速 2.2第三路風(fēng)向 無、第三路風(fēng)速 11.(2)wms10min物理量為:10分平均風(fēng)向(度) 、10分平均風(fēng)速(m/s)、標(biāo)準(zhǔn)偏差例:270t2.3t0.41t210tt0.33t .含義如下:第一路風(fēng)向 270、第一路風(fēng)速 2.3、第一路標(biāo)準(zhǔn)偏差 0.41第二路風(fēng)向 210、第二路風(fēng)速 無、第二路標(biāo)準(zhǔn)偏差 0.33.(3)wms1hou

22、物理量為: 小時(shí)平均風(fēng)向(度)、小時(shí)平均風(fēng)速(m/s)、極大風(fēng)向(度)、極大風(fēng)速(m/s)、極大風(fēng)出現(xiàn)時(shí)間 (YYYY-MM-DD HH:mm:ss)、325m/s有效風(fēng)累計(jì)時(shí)間(分鐘)例:t4.1tt5.0t2011-08-01 07:04:36t52t .含義如下:第一路小時(shí)平均風(fēng)向 無第一路小時(shí)平均風(fēng)速 4.1第一路極大風(fēng)向 無第一路極大風(fēng)速 5.0第一路極大風(fēng)出現(xiàn)時(shí)間 2011-08-01 07:04:36第一路325m/s有效風(fēng)累計(jì)時(shí)間 52.4.2. 監(jiān)控操作指令執(zhí)行readdett程序時(shí),加入?yún)?shù)-c,即可進(jìn)入指令模式。各指令分述如下:(1)采集器自檢(命令符:AUTOCHECK

23、)返回的內(nèi)容包括采集器時(shí)間,主板溫度,主板電壓,各傳感器開啟狀態(tài),以及各傳感器掛接狀態(tài)。(2)設(shè)置或讀取區(qū)站號(命令符:ID)參數(shù):區(qū)站號(5位數(shù)字或字母)示例:若設(shè)置區(qū)站號為57494,鍵入命令為:ID 57494 返回值:<ID 57494 T>整體在<>中,F(xiàn)表示設(shè)置失敗,T表示設(shè)置成功,各項(xiàng)由半角空格隔開,結(jié)尾為回車換行。 若讀取區(qū)站號,鍵入命令為:ID 返回值:<ID A5890> 表示當(dāng)前區(qū)站號為A5890(3)設(shè)置或讀取采集器時(shí)間(命令符:TIME)參數(shù):YYYY-MM-DD HH:MM:SS示例:若設(shè)置采集器時(shí)間為2011年7月21日12時(shí)34分10秒, 鍵入命令為:TIME 2011-07-21 12:34:10 返回值:<TIME A5890 T> 若讀取采集器時(shí)間,鍵入命令為:TIME 返回值:<TIME A5890 2011-08-01 07:04:36>(4)設(shè)置或讀取傳感器開啟狀態(tài)(命令符:SENST)參數(shù):18位的0或1,1表示傳感器開啟,0表示傳感器關(guān)閉,詳見下表。示例:若開啟第1,2,3路智能風(fēng),以及輔助分機(jī)1, 鍵入命令為:SENST 111000000000100000 返回值:<SENST A5890 T> 若讀取傳感器開啟狀態(tài),鍵入命令為:SENST 返回值:&l

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論