作为从站的编程详解
史上最全的工控类软件安装包,你要吗?
(点击上方红字,免费领取资料)
S71200支持ModbusRTU通信模式的模块可作为ModbusRTU从站。以下以CPU1215CDCDCDC和CM1241RS485为例,介绍S71200ModbusRTU从站通信组态及编程步骤。
硬件和软件需求及所完成的通信任务:
硬件:CPU1215CDCDCDC(订货号:6ES72151AG310XB0)CM1241RS485(订货号:6ES72411CH300XB0)PS307电源(订货号:6ES73071KA020AA0)PC(带以太网卡)TP以太网电缆软件:STEP7V11ProfessionalSP2UPD4HSPModScan(该软件是第三方软件,可以从Internet网络下载)所完成的通信任务:将ModbusRTU从站CPU1215C中地址从DB1。DBW0开始的5个字中的数据,分别读取到ModbusRTU主站ModScan中Modbus地址从40001开始的5个字中。
1组态ModbusRTU通信模块
在硬件目录里找到通信模块点到点CM1241(RS485),双击或拖拽此模块至CPU左侧即可,如下图1所示:
图1组态通信模块
接下来,在设备视图中用鼠标选中CM1241(RS485)模块,在属性端口组态中配置此模块硬件接口参数。如下图2所示:
以下以传输率9。6Kbps,奇偶校验无奇偶校验,数据位8位字符,停止位1,其它保持默认设置为例。
图2RS485端口设置
最后在硬件标识符里确认一下硬件标识符为271,如下图3所示:
图3硬件标识符
2添加启动OB
在项目树下选择CPU1215CDCDCDC程序块添加新块,在弹出的窗口中选择OB组织块Startup,添加启动OB100,如下图4所示:
图4添加启动OB
3调用MBCOMMLOAD指令
为使端口一启动就被设置为ModbusRTU通信模式,可在OB100中调用MBCOMMLOAD指令。调用MBCOMMLOAD指令时会自动弹出创建相应背景数据块的界面,如下图5所示:
图5调用MBCOMMLOAD指令
点击确认为该指令创建背景数据块后,为各输入输出引脚分配地址。尤其需注意MBDB输入引脚需指向MBSLAVE指令的背景数据块,如下图6所示:
注意:MBCOMMLOAD指令输入位REQ需使用上升沿触发。由于OB100只在S71200启动时执行一次,因此,此例中将REQ设为TRUE。
图6MBCOMMLOAD指令
MBCOMMLOAD指令参数意义如下表1所示:
引脚
说明
EN
使能端
REQ
在上升沿执行该指令
PORT
通信端口的硬件标识符
BAUD
波特率选择:3600,6000,12000,2400,4800,9600,19200,38400,57600,76800,115200(注意:所有其它值均无效)
PARITY
奇偶检验选择:0无;1奇校验;2偶校验
FLOWCTRL
流控制选择:0(默认值)无流控制
RTSONDLY
RTS延时选择:0(默认值)
RTSOFFDLY
RTS关断延时选择:0(默认值)
RESPTO
响应超时:默认值1000ms。MBMASTER允许用于从站响应的时间(以毫秒为单位)。
MBDB
对MBMASTER或MBSLAVE指令所使用的背景数据块。
DONE
完成位:指令执行完成且未出错置1
ERROR
错误位:0未检测到错误;1检测到错误。在参数STATUS中输出错误代码。
STATUS
表1MBCOMMLOAD指令参数意义
4创建MBHOLDREG数据块
通过程序块添加新块,选择数据块(DB)创建DB块,选择标准与S7300400兼容,点击确认键,定义数据区为5个字的数组,如下图7所示:
注意:MBHOLDREG使用的DB访问类型必须是标准与S7300400兼容。
图7创建MBHOLDREG数据块
5调用MBSLAVE指令
在OB1中调用MBSLAVE指令,调用该指令时会自动弹出创建相应背景数据块的界面,如下图8所示:
图8调用MBSLAVE指令
点击确认为该指令创建背景数据块后,并为各输入输出引脚分配地址,如下图9所示:
S71200作为ModbusRTU从站,MBHOLDREG指向Modbus保持寄存器数据块的指针。设置如下所示:MBHOLDREGPDB3。DBX0。0WORD5。
对应关系如下表2所示:
ModbusRTU主站Modbus地址
ModbusRTU从站CPU1215C数据缓冲区地址40001:DB3。DBW040002:DB3。DBW240003:DB3。DBW440004:DB3。DBW640005:DB3。DBW8
表2Modbus地址对应关系
图9MBSLAVE指令
引脚
说明
EN
使能端
MBADDR
Modbus从站的站地址。默认地址范围:0至247;扩展地址范围:0至65535
MBHOLDREG
指向Modbus保持寄存器数据块的指针。必须使用标准与S7300400兼容访问类型创建该数据块。
NDR
新数据就绪:0无新数据;1表示Modbus主站已写入新的数据
DR
数据读取:0无数据读取;1表示Modbus主站已读取新的数据
ERROR
错误位
STATUS
表3MBSLAVE指令参数意义
MBSLAVEModbus功能
S71200
代码
功能
数据区
地址范围
数据区
CPU地址01:读位
输出
1到8192
输出过程映像区
Q0。0到Q1023。702:读位
输入
10001到18192
输入映像区
I0。0到I1023。704:读字
输入
30001到30512
输入映像区
IW0到IW102205:写位
输出
1到8192
输出过程映像区
Q0。0到Q1023。715:写位
输出
1到8192
输出过程映像区
Q0。0到Q1023。7
表4Modbus地址到过程映象区的映射
MBSLAVEModbus功能
S71200
代码
功能
数据区
地址范围
CPUDB数据区
CPU地址03:读字
保持寄存器
40001到49999
MBHOLDREG
字1到字9999
400001到465535
字1到字6553506:写字
保持寄存器
40001到49999
MBHOLDREG
字1到字9999
400001到465535
字1到字6553516:写字
保持寄存器
40001到49999
MBHOLDREG
字1到字9999
400001到465535
字1到字65535
表5Modbus地址到CPU存储区的映射
6Modbus主站软件设置
注意:客户机采用ModScan软件测试,该软件是第三方软件,可以从Internet网络上下载。
首先在打开的ModScan软件中建立连接,并设置RTU模式的参数:波特率Baud9600,数据位Data8,停止位Stop1,校验ParityNONE,如下图10所示:
图10建立ModScan连接
选择FileNew打开ModScan通信界面,设置ModbusRTU从站的地址DeviceId1,数据开始地址Address0001,数据长度Length5,Modbus数据类型功能码03,如下图11所示:
注意:DeviceId设置必须与MBSLAVE指令中输入引脚MBADDR设置的地址一致。
图11设置ModScan
7ModbusRTU测试结果
在STEP7V11ProfessionalSP2UPD4软件中打开该项目CPU1215DCDCDC的监控表,对DB3。DBW0写入数值21,DB3。DBW2写入数值22,DB3。DBW4写入数值23,DB3。DBW6写入数值24,DB3。DBW8写入数值25。ModScan主站将S71200ModbusRTU从站地址DB3。DBW0的数值21,DB3。DBW2的数值22,DB3。DBW4的数值23,DB3。DBW6的数值24,DB3。DBW8的数值25,分别读取到了地址40001,40002,40003,40004,40005中。如下图12所示:
图12ModbusRTU测试结果
MBCOMMLOAD和MBSLAVE指令STATUS错误代码
STATUS(W16)
说明0000:端口无错误8180:端口ID值无效8181:波特率值无效8182:奇偶校验值无效8183:流控制值无效8184:响应超时值无效8185:MBDB参数不是MBMASTER或MBSLAVE的背景数据块
表6MBCOMMLOAD指令STATUS错误代码
STATUS(W16)
说明0000:无错误
80D1
接收方发出了暂停主动传输的流控制请求并且在指定的等待时间内未重新激活该传输
80D2
传送请求终止
80E0
因接收缓冲区满,消息被终止
80E1
因出现奇偶校验错误,消息被终止
80E2
因组帧错误,消息被终止
80E3
因出现超限错误,消息被终止
80E4
因指定长度超出总缓冲区大小,消息被终止8180:无效端口ID值或MBCOMMLOAD指令出错8186:Modbus站地址无效8187:指向MBHOLDREG指针无效
818C
指向M存储器或DB(DB区域允许符号地址和直接地址)的MBHOLDREG指针无效
表7MBSLAVE指令STATUS参数意义(通信和组态错误)
STATUS(W16)
从站的响应代码
说明8380:无响应
CRC错误8381:01
不支持功能代码或者在广播中不支持功能代码8382:03
数据长度错误8383:02
数据地址错误或地址超出DATAPTR取的有效范围8384:03
数据值错误8385:03
不支持此数据诊断代码值
表8MBSLAVE指令STATUS参数意义(Modbus协议错误)
常见问题
为什么触发MBSLAVE指令出错,输出位ERROR1,输出状态字STATUS168187?
输出状态字STATUS168187表示指向MBHOLDREG指针无效。以下两种情况会造成如上错误:
程序中不存在MBSLAVE指令的输入引脚MBHOLDREG对应的DB块。
在创建MBSLAVE指令的输入引脚MBHOLDREG对应的DB块时选择了仅符号寻址。
解决方法分别如下:
新建MBSLAVE指令的输入引脚MBHOLDREG对应的DB块。
创建MBSLAVE指令的输入引脚MBHOLDREG对应的DB块时只能选择了标准与S7300400兼容。
来源:西门子官网,版权归原作者所有,如有侵权,请联系删除,谢谢!
魏延最后谋反了吗三国时魏延谋反了吗魏延到底最后谋反没有相信只要是看过《三国演义》的人,一定都知道魏延是因为起兵谋反,才被马岱所杀,而马岱就是杨仪派到魏延身边的卧底。虽然《三国演义》当中说魏延是因为起兵谋反……
老牛造句用老牛造句大全61。我是大米,你是老鼠,所以你要爱我;我是美女,你是英雄,所以你要爱我;我是嫩草,你是老牛,所以你要爱我。12。5要爱我,因为我也会好好来爱你!62。一只大鹿、三只老牛……
而且是造句用而且是造句大全91,低碳也是慈善,而且是更大的慈善。是对人类的慈善、对地球的慈善、对自然的慈善。92,假若要求时产生于父母的争吵之中,而且是当着孩子的面,那么这种要求不论多么合理和正确……
手机充流量方法都有哪些出门在外,没WiFi时,移动网络对手机来说至关重要,不过很多人都不知道如何如何充值,因此针对这个问题小编做出了解答,接下来我们一起来看一下手机充流量方法都有哪些吧。开通方……
抹胸和胸罩区别在哪里可以购买抹胸和胸罩抹胸和胸罩区别抹胸和胸罩的区别就是在于它们是否有吊带以及材料的不同,抹胸是没有吊带的,而胸罩是有吊带的,抹胸采用的材料是桑蚕丝,用这种材料制作而出来的抹胸穿在身上特别的舒……
用冷水洗脸好吗有部份人在洗脸的时候,就会想到水温要控制在多少可以使我们脸部上的皮肤更好的清洁和滋润。有部份人会认为用冷水洗脸好,那么到底用什么水温来洗脸好呢?接下来我们就来祥细了解下,平时每……
水稻纹枯病防治方法有哪些水稻纹枯病病部形成的菌核落入田中随水漂浮,进行再侵染。抽穗前病部新生菌丝以横向蔓延为住,抽穗后主要沿稻秆表面向上部叶鞘、叶片蔓延侵染,孕穗至抽穗期侵染最快,抽穗至乳熟期单株病害……
在一起的分分秒秒皆珍贵壹AdrianMurray来自肯塔基州路易斯维尔,他本应是一位幸福的父亲,然而在他儿子Emerson10个月的一天早晨,Adrian和妻子发现儿子在摇篮里一动也不动,被紧急送往……
黄金瞳秦浩然结局怎么样了他最后得到黄金瞳了么秦浩然是一位拥有雄厚实力背景的大老板,他不仅人脉广泛,而且自己的势力甚至延续到了国外。目前秦浩然基本已经确定庄睿拥有黄金瞳了,所以接下来他肯定会想办法从庄睿这里夺走黄金瞳,那秦……
晚报造句用晚报造句大全151、当天全世界各大都市之午晚报,都报道四行孤军奋斗和女童子军杨惠敏代表全体市民,冒险潜入仓库向孤军献旗种种细节。152、【金陵晚报报道】小狗能骑跳跳板早就不是新闻,但……
聚居造句用聚居造句大全91、先到乌尤尼小镇,在从奥鲁罗或波托西的玻利维亚聚居地或者维拉松的阿根廷小镇搭巴士。92、当时的香港只有村民约3650人,聚居于20多条村落;渔民2000人,栖宿于港口……
不屑造句用不屑造句大全91、他带着无限的了解,厌恶,俨然不屑的神色,无可奈何地站起身就走出去。92、你有没有这种体验:一丝丝不屑,一点点不满意,一些些有点生气,一团团厌恶感,经过时间这种神奇的……
防辐射的小秘诀1、挑选正规厂家的名牌家电产品。一般大品牌的家电辐射都经过了国家有关部门的严格检测,可保证安全。2、对各种电器的使用,应保持一定的安全距离。孕妇要远离微波炉、电脑至少1米……
地球上最伟大表演落幕马戏团表演是否属于虐待动物地球上最伟大表演,美国拥有146年历史的玲玲马戏团被称为地球上最伟大表演,近日经营马戏团的费德娱乐公司表示将在纽约长岛举行最后的谢幕演出结束146年的巡演历史,地球上最伟大表演……
母爱悠悠药草香我腹泻,母亲不在身边,我只好拿了钱去药店买了一包中药。回家把药温了温。我抿一小口:啊!好难喝啊!这么苦!我心里开始犯嘀咕:诶?中药不是甜的嘛!为什么这次是苦的呢?是熬制的差别还……
工行造句用工行造句大全61、吉通储值卡采用实名制开户,客户需到工行吉林省分行ETC指定服务网点绑定吉通灵通卡作为圈存账户。62、被告人陈某原为工行从化支行副行长,邝某为该行信贷科科长,李某和吴……
如何选择另一半先摸清对方这样条件1、选择另一半要摸清对方的人品修养是否符合自己的要求对象如果是通过亲戚朋友介绍的,应先初步了解一下对方的人品个性。要和一个完全不熟悉的人恋爱并组成家庭,而且还要在一起生活……
睡眠时间看看你每天睡几小时最健康经常听到我们每天都要睡足8个小时,8小时的睡眠时间可以保证第二天有充足的工作学习精神。但是真的是人人都需要睡8小时才行吗?专家提醒大家,其实每个人的最佳睡眠时间是不一样的,我们……
电子垃圾来源有哪些世界上的人,每人每年,平均制造七百磅的垃圾。一支牙刷,也是永垂不朽,在垃圾堆中长存,直到世界末日。所以,国家的先进,并不是决定于拥有多少科技,而是决定于处理电子废弃物的能力。现……
雪瞧,冬姑娘把预备了一年的礼物送给了我们。那雪白无暇的六角片犹如一个个坠入人间的精灵。它们那轻快娇小的身躯,再配上雪白的衣裳,好像一只只晶莹的蝴蝶在空中飞舞。它们以铺天盖地之势迅……
让顾客满意的大销售话术让顾客100满意的6大销售话术顾客是我们的第一要义,不管是新顾客还是老顾客,都是店铺的重要资源,那么,面对新顾客和老顾客,我们应该怎么接待才能博得好感,带来业绩呢?……
素颜怎样才好看你以为素颜女神就真的是素颜吗素颜怎样才好看泰国的电影电视剧在中国大面积的播放,让很多人都认识到很多的泰国明星,泰国人中混血很多,大多容貌都结合了东西方的优点,立体的同时不失柔和,尤其是很多泰国女明星……
假如我是一条小鱼假如我是一条小鱼,我就要做一条最聪明的小鱼。我要离开那繁华的城市,游到自由的海洋里。我会找到我的同伴,跟它们谈话,跟它们说如何逃脱鲨鱼的追击,与它们一起游戏。我会跟小鱼们……
淘宝刷信誉的三个错误观念俗话说的好:思路决定出路,脑袋决定口袋,作为淘宝的中小卖家,刷信誉需要各位利用好,规避一定的错误观念,需要大家更多的研究交流与学习。做淘宝,用细节决定成败这句话来概括淘宝刷信誉……