您现在所在的是:

西门子SIEMENS

回帖:12个,阅读:1220 [上一页] [1] [2] [下一页]
1161
fnachille
文章数:139
年度积分:50
历史总积分:1161
注册时间:2016/8/31
发站内信
发表于:2016/8/31 0:57:05
#0楼
是这样的,最近在学习S7-200的plc,想测试一下通信功能,从书上和网上找了不少例子在一一测试,了解到HMI和200的通信一般常用两种,一种是ppi,一种是modbus

modbus之前hmi上用的比较多,所以多机时比较方便
我用威纶的屏,和200进行通信时,先用ppi测试,一切正常,可以读出来和写进去数据。

后转用modbus测试,就遇到一直通信不成功的问题,HMI一直提示PLC no response.

但是线的接法在ppi上已经连接成功了,应该就是没有问题的,与是仔细看程序
程序如下,是在网上借鉴的。
附件 1.jpg
网上是用sm0.1来使能modbus的,我用串口助手测试过,发出去命令时,返回的只有两到3个Hex码,感觉不太正常,好像是modbus没有启动,与是我用I0.2来硬性的启动它
同时我在下面用I0.0驱动Q0.0灯,这时用STEP7软件来监控程序状态。
按理说,com端口在启动modbus时,应该是ppi是通信不成功的吧,这样的话,STEP7软件应该也是不能监控到plc的状态了
但是实际上,我在闭合I0.2驱动MODBUS时,STEP7软件仍然能监控到S7 200的状态,也就是说,这时应该还是ppi数据线在通信,而不是modbus通信模式。

为什么会是这样呢?请各位前辈帮忙分析一下,多谢
[此贴子已经被作者于2016/8/31 8:27:07编辑过]
28431
guanyumou 版主
文章数:10606
年度积分:409
历史总积分:28431
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2016/8/31 3:58:39
#1楼
附件 untitled1.jpg
附件 untitled2.jpg
附件 untitled3.jpg
附件 untitled4.jpg
你用串口调试助手发的什么命令给PLC呢?
基于各种组态软件\触摸屏\PLC\单片机\变频器Modbus TCP\RTU\ASCII通信编程服务,需要请直接
联系!腾讯扣扣149034219
1161
fnachille
文章数:139
年度积分:50
历史总积分:1161
注册时间:2016/8/31
发站内信
发表于:2016/8/31 8:15:20
#2楼
读0001地址的命令,手动计算crc校验码。
此帖发自手机工控论坛
5536
qinhya
文章数:2022
年度积分:50
历史总积分:5536
注册时间:2012/4/7
发站内信
发表于:2016/8/31 8:40:23
#3楼
读回来的数据正确吗?
天道酬勤!
1161
fnachille
文章数:139
年度积分:50
历史总积分:1161
注册时间:2016/8/31
发站内信
发表于:2016/8/31 9:05:21
#4楼
回复 #3楼 qinhya
只有2-3个hex,数据应该是不正确的。
刚才看了一下分配的存储区,原来分配的数太靠前了,照着您的图把存储区分配到2000往后,现在貌似可以启动modbus了。(开I0.2时,STEP 7 软件用ppi监控不了了)
可能是原来的地址有冲突。

不过现在还是不能和HMI通信上。
4859
528工控科技
文章数:1574
年度积分:50
历史总积分:4859
注册时间:2014/1/3
发站内信
工控人谈电商
发表于:2016/8/31 9:14:46
#5楼
通讯不上有可能的原因是
通讯格式不对应。
gk528.com
1161
fnachille
文章数:139
年度积分:50
历史总积分:1161
注册时间:2016/8/31
发站内信
发表于:2016/8/31 9:35:43
#6楼
回复 #3楼 qinhya
确实是分配存储地址的问题。
现在基本上都能通讯上了,不过发现一个问题,为什么只有一根线的时候也能通讯呢,一根485-或是一根485+都可以通讯上,指示灯也显示正常,好奇怪

而且,通讯成功后,我用串口调试,发送不出去,也没有接收回来,但连hmi又正常,这是什么原因呢
5536
qinhya
文章数:2022
年度积分:50
历史总积分:5536
注册时间:2012/4/7
发站内信
发表于:2016/9/5 13:41:41
#7楼
以下是引用fnachille2016/8/31 9:35:43的发言:
确实是分配存储地址的问题。
现在基本上都能通讯上了,不过发现一个问题,为什么只有一根线的时候也能通讯呢,一根485-或是一根485+都可以通讯上,指示灯也显示正常,好奇怪

而且,通讯成功后,我用串口调试,发送不出去,也没有接收回来,但连hmi又正常,这是什么原因呢




你有串口调试助手,很主便,可以将读回来的数据分析下,MODBUS的数据格式是很有规率的!
天道酬勤!
1161
fnachille
文章数:139
年度积分:50
历史总积分:1161
注册时间:2016/8/31
发站内信
发表于:2016/9/5 21:33:44
#8楼
回复 #7楼 qinhya
按理来说是这样的,但是S7-200modbus模式下返回的格式很不正确,好奇怪。
5536
qinhya
文章数:2022
年度积分:50
历史总积分:5536
注册时间:2012/4/7
发站内信
发表于:2016/9/7 8:32:30
#9楼
以下是引用fnachille2016/9/5 21:33:44的发言:
按理来说是这样的,但是S7-200modbus模式下返回的格式很不正确,好奇怪。



我碰到过,最后发现,是两根数据线接反了!!!
天道酬勤!

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004