S7-200PLC一主8从Modbus例程说明_第1页
S7-200PLC一主8从Modbus例程说明_第2页
S7-200PLC一主8从Modbus例程说明_第3页
S7-200PLC一主8从Modbus例程说明_第4页
S7-200PLC一主8从Modbus例程说明_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Modbus-RTU一主8从通讯例程说明基于西门子S7-200系列PLC的Modbus通讯,写了一个一主多从的通讯例程,现就此通讯例程加以详细说明,以供大家工程开发过程中使用。一:指令说明S7-200PLC的Modbus通讯,西门子本身没有直接的相关指令,所以需要给STEP7里面添加西门子官方提供的Modbus库文件。添加好库文件后会出现下图所示。点开【库】就会出现左下图所示,分别打开与Modbus有关的文件夹就会出现右下图所示的可以直接调用的指令。_姗库 _一一.UIMddb也Ma源rPMD〔_姗库 _一一.UIMddb也Ma源rPMD〔vl.3]MBUS_CTRLMBUS_MSG_ModbusMasterPort1(v1.2)MBUS_CTRL_P1MBUSMSGP1_|ModbusSlavePort0[v1.0]MBUSJNITMBUSSLAVE1+口ModbusMasterPort0(vl.2ILJModbusMasterPort1(vl,2J+口ModbusSlavePori0(vl.0)~+CUSSProtgilPqH0223〕十_USSProtocolPort1(v2.3]口Scale(vl,2)+调用子程序【ModbusMasterPort0(v1.2)】通讯口0作为Modbus主站用到的指令。【MBSU_CTRL】通讯口0的Modbus主站初始化指令。【EN】初始化指令必须每个扫描周期都使能【Mode】通讯端口模式设置:1:Modbus0:默认协议(PPI)【Baud】通讯波特率:我们设置为9600【Parity】校验位:0无校验;1奇校验;2偶校验【Timout】通讯超时时间:我们设置为2000msMdodbus主站初始化(PortO)Always_On:SMO.OAlwavs_On:SMO.OMBUS..CTRLENModeBaudDoneParityErrorTimeout-ModbusMast~:M0.0■MasterError:MB2960002000-【MBUS_MSG】通讯口0的Modbus主站读写指令。【EN】指令使能【First】指令触发,必须是上升沿触发-|P|-注:这里使能和触发最好使同一个触点[Slave】读写的从站号【RW】读写选择:0读取;1写入【Addr】对应从站的寄存器的Modbus起始地址【Count】访问的寄存器的数量(由起始地址开始)【DataPir】数据指针:写入的数据地址/读回的数据地址【Done】指令完成标志位【Error】错误代码:只在Done为1的时候有效网命6 从站1写便能5站的写一ModbusStart:M1.1ModbusStart:M1.1MBUS_MSGENFirst11111ScIBOSlave DoneFlW ErrorAddrCountDmtmPtrModbusSlav~:M0.1SlaveError1:MB3【ModbusMasterPortl(vl.2)】通讯口1作为Modbus主站用到的指令。【MBSU_CTRL_P1】通讯口1的Modbus主站初始化指令。【MBUS_MSG_P1】通讯口1的Modbus主站读写指令。[ModbusSlavePort0(v1.0)】通讯口0作为Modbus从站用到的指令。[MBUS_INIT】通讯口0作为Modbus从站初始化指令。[EN】仅初次上电使能[Mode】通讯端口模式设置:1:Modbus0:默认协议(PPI)[Addr】作为从站的地址:我们选择01和主站一致[Baud】通讯波特率:我们设置为9600和主站一致[Parity】校验位:0无校验;1奇校验;2偶校验和主站一致[Delay】响应主站指令的延时,一般设置为0[MaxIQ】主站可读写的数字输入输出的最大点数[MaxAI】主站可读写的模拟输入的最大可读写点数[MaxHold】主站可读写的保持寄存器的最大数(字VW)[HoldSt】主站可读写的保持寄存器的起始地址[Done】初始化完成标志位[Error】错误代码:只在Done为1的时候有效

Modbus从站初始化指令First_Scan~:SM0.1_□ 1 MBUSJNITENII1-Mode Done1-Addr Error9600-Baud0-Parity0-Delay16-MaxlQ0-MaxAl0-MaxHold&VB0-— c,A1fl— m1―1c/X—tr■I 1HoldSr....-SlaveINIT~:M0.0-SlavelNIToEN】从站接收响应指令使能,必须每个不苗周期使能 First_Scan_OnSM0.1仅第一个扫描周期中接通为ONDOne】周应完成标志推卫初始化完成标志位SlavelNIl_Error'位1初始化作物代码【Error】相应错误代码:Done为1时有效Always_On:SMO.OMBUS_SLAVEAlways_On:SMO.OENDone-ModbusSlav~:M0.1Em-Slave_Error:MB2二:程序说明主站程序:主站程序我们采用分时循环采集的方式来依次读写8个从站的状态。程序编程采用毫秒定时器【T32】来作为系统的通讯采集周期,用户可根据实际需求调整参数大小,这里需要说明的是如果用户采集时间太小会引起主站6号占用错误,如果用户采用中短距离无线通讯需适当加大采集周期。考虑到有些用户使用GPRS通讯,出于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论