国产精品久久人妻互换毛片,国产av国片偷人妻麻豆,国产精品第12页,国产高清自产拍av在线,潮喷大喷水系列无码久久精品

技術(shù)頻道

基于Modbus協(xié)議實現(xiàn)PLC與智能儀表的通訊

摘 要:隨著工業(yè)自動化技術(shù)的不斷發(fā)展,Modbus協(xié)議現(xiàn)已不僅僅局限于應(yīng)用在PLC/上位機之間的通訊上,許多智能儀表廠商也紛紛采用該協(xié)議作為自己產(chǎn)品的通訊協(xié)議。施耐德公司在其編程軟件Concept2.2+補丁程序Service Release2中增加了一條功能強大的通訊指令XXMIT。筆者結(jié)合實例對該指令的Modbus Master使用方法做一些介紹,以供廣大過程技術(shù)人員參考。

關(guān)鍵字:Modbus協(xié)議; PLC; XXMIT指令; 智能儀表

1 引言

  Modbus 協(xié)議是法國施耐德公司推出的一個全開放的“主從式(Master/Slave)”通訊協(xié)議,其本意在于實現(xiàn)上位機(主設(shè)備)對PLC(從設(shè)備)內(nèi)部存儲區(qū)域的“直接”讀寫操作,無需用戶對PLC進行通訊編程。隨著工業(yè)自動化技術(shù)的不斷發(fā)展,Modbus協(xié)議現(xiàn)已不僅僅局限于應(yīng)用在PLC/上位機之間的通訊上,許多智能儀表廠商也紛紛采用該協(xié)議作為自己產(chǎn)品的通訊協(xié)議。與此同時,PLC也由以前單純的I/O控制發(fā)展成為集控制、數(shù)據(jù)采集、通訊為一身,在越來越多的自動化工程中,PLC需要取代上位機,作為“主設(shè)備”來完成與智能儀表或其它支持該協(xié)議的PLC的通訊。針對這一情況,施耐德公司在其編程軟件Concept2.2+補丁程序Service Release2中增加了一條功能強大的通訊指令XXMIT。通過該指令,用戶可以將施耐德Modicon系列PLC上的原Modbus Slave通訊口作為Modbus Master口或標(biāo)準(zhǔn)串口來使用,大大擴展了Modicon系列PLC的通訊功能。本文將結(jié)合實例對該指令的Modbus Master使用方法做一些介紹,以供廣大過程技術(shù)人員參考。

2 XXMIT指令基本參數(shù)介紹

  2.1 基本參數(shù)概述

基本參數(shù)列表

  2.2 重要參數(shù)說明

  2.2.1 Command參數(shù)

  該參數(shù)的16個為位用于設(shè)置通訊口的不同工作方式

  Bit1-Bit4: 使用Modem時需設(shè)定的相關(guān)參數(shù)

  Bit5: 是否使用XON/XOFF流控制。設(shè)為1時表示使用XON/XOFF流控制

  Bit6: 是否使用RTS/CTS握手信號。設(shè)為1時表示允許使用RTS/CTS信號

  Bit7: 是否清除“Back Space”字符。設(shè)為1時表示在“Simple ASCII Input”和“Terminated

  ASCII Input”模式下,清除MsgIn中的“Back Space”字符

  Bit8: 是否接管通訊口FIFO緩沖區(qū)。設(shè)為1時表示XXMIT指令接管通訊口FIFO緩沖區(qū)的控制

  Bit9: 是否啟用Modbus模式。設(shè)為1時表示通訊口工作在Modbus Master模式下

  Bit10: 是否啟用標(biāo)準(zhǔn)串口模式。設(shè)我1時表示通訊口工作在標(biāo)準(zhǔn)串口模式下

  注:Bit9,Bit10不能同時設(shè)為1

  Bit11: 是否啟用“Simple ASCII Input”模式,設(shè)為1時表示啟用

  Bit12: 是否啟用“Terminated ASCII Input”模式,設(shè)為1時表示啟用

  Bit13: 不用

  Bit14: 是否啟用RS485模式。設(shè)為1時表示啟用。只有在使用Modicon Momentum系列PLC時,該位才設(shè)為1

  Bit15: 是否啟用RTS/CTS Modem控制。設(shè)為1時表示啟用

  Bit16: 不用

  2.2.2 Msgout參數(shù)

  該參數(shù)中存放需發(fā)送的字符或數(shù)據(jù)。通常在Concept中用一個WORD型數(shù)組來給該參數(shù)賦值。當(dāng)通訊口工作在Modbus Master模式下時,需按Modbus RTU的格式來給該參數(shù)賦值,但不含CRC校驗值,具體的格式見下表

  2.2.3 Port參數(shù)

  只要使用Modicon Momentum系列PLC時,該參數(shù)才被設(shè)為2,否則該參數(shù)的值都被設(shè)定為1,表示用Port1進行通訊。

3 實例

  下面的例子為筆者在西寧寺溝口水電廠機組監(jiān)控項目中,用Modicon Compact PLC與MP6000智能功率儀表通訊的程序,基此來對XXMIT指令的使用做更進一步的說明。

  3.1 工程要求

  通過PLC從MP6000智能儀表中讀取機組當(dāng)前的有功功率、無功功率等數(shù)據(jù)。

  3.2 硬件情況:

  PLC: 施耐德Modicon Compact系列PLC,CPU型號為TSX PC-E984-265

  智能儀表:MP6000功率表

  通訊協(xié)議:Modbus協(xié)議

  3.3 軟件情況:

  PLC編程軟件:Concept2.2+Service Release2

  編程方式:ST文本編程

  MP6000的數(shù)據(jù)區(qū)情況:把MP6000儀表中從第一個地址開始的64個數(shù)據(jù)讀出來

  PLC的數(shù)據(jù)區(qū):從MP6000讀出的數(shù)據(jù)寫入PLC 40031開始的64個寄存器中

  3.4 程序:

  VAR

  XXMIT_MB : XXMIT;

  SET_CMD : SET_BIT;

  END_VAR

  SET_CMD (IN := 1,(* BOOL*)

  NO :=9 (* UINT*)); (*把Command參數(shù)的bit9置1,讓通訊口工作在Modbus Master模式下*)

  XXMIT_CMD:=SET_CMD.RES;

  XXMIT_MSGOUT[1]:=3; (***MODBUS功能碼 ***)

  XXMIT_MSGOUT[2]:=64; (***需從MP6000中讀取的寄存器的數(shù)量 ***)

  XXMIT_MSGOUT[3]:=5; (***MP6000的地址***)

  XXMIT_MSGOUT[4]:=1; (***MP6000中數(shù)據(jù)的起始地址***)

  XXMIT_MSGOUT[5]:=31; (***將讀取的數(shù)據(jù)寫入PLC從40031開始的64個寄存器中 ***)

  XXMIT_MB (Start :=1, (* BOOL *)

  Command :=XXMIT_CMD , (* WORD *)

  MsgOut :=XXMIT_MSGOUT , (* ANY *)

  MsgLen :=5 , (* INT *)

  Port :=1 , (* BYTE *)

  Baudrate :=9600 , (* INT *)

  Databits :=8 , (* BYTE *)

  Stopbits :=1 , (* BYTE *)

  Parity :=2 , (* BYTE *)

  RespTout :=1000 , (* INT *)

  RetryLmt :=20 , (* INT *)

  StartDly :=0, (* INT *)

  EndDly :=0 (* INT *));

參考文獻:

  1、 宋德玉.可編程控制器原理及應(yīng)用系統(tǒng)設(shè)計.北京:冶金工業(yè)出版社,1999

  2、 曾繁泰等.可編程器件應(yīng)用導(dǎo)論.北京:清華大學(xué)出版社,2001

文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。