S7-200自由口通讯问题 点击:355 | 回复:4



西门子200爱好

    
  • 精华:0帖
  • 求助:5帖
  • 帖子:5帖 | 9回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2012年11月04日
发表于:2012-11-13 12:19:37
楼主
求助帖20分-已结帖

各位大侠,帮小弟一下吧,就是用两台S7200自由口通讯,1#机启停2#机的星三角(M10.0-M10.3),2#机启停1#机的星三角(M10.0-M10.3)。

1\S7200用自由口通讯的时候,用SMB88定义起始字符,SM B89定义结束字符,我看他们都用16#0D作为结束字符,为什么啊?SMB88怎么定义起始字符啊。。。小弟谢谢各位哥了

2\程序中一部份是这样的:  网络1:   

16#09   传送到SMB30

2#10110000传送到SMB87

16#0D   传送到SMB89

5    传送到SMB90

14   传送到SMB94

我想问的是16#0D是怎么来的啊???我知道一般都用回车,换行做为结束字符,可就是不知道是怎么来的?

还有一部分中断程序是这样的》

2   传送到VB100

MB10 传送到VB101

16#0D  传送到VB102

XMT  VB100,0

此处的16#0D是怎么来的啊???是不是因为上面定义了字符的长度为14个字节,因为字节数目占了1个,也就是“

2 传送到VB100”这个占用了VB100,剩下的从VB101开始共13个,用16进制表示就是D,是不是这样的啊?拜托各位了




ye_w

  • 精华:21帖
  • 求助:1帖
  • 帖子:69帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2012-11-13 13:29:28
1楼
不一定非要使用16#0D作为结束符。既然是自由口通讯,完全可以自定义,不过要考虑数据与控制字符两者不能相冲突

西门子200爱好

  • 精华:0帖
  • 求助:5帖
  • 帖子:5帖 | 9回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2012年11月04日
发表于:2012-11-13 13:34:26
2楼
回复内容:
对:ye_w关于不一定非要使用16#0D作为结束符。既然是自由口通讯,完全可以自定义,不过要考虑数据与控制字符两者不能相冲突 内容的回复:

能用实例说明一下吗?非常感谢

bhdxzgp

  • 精华:5帖
  • 求助:8帖
  • 帖子:141帖 | 5451回
  • 年度积分:0
  • 历史总积分:21609
  • 注册:2006年4月16日
发表于:2012-11-13 23:51:53
3楼
既然是自由口通信;所以的报文就是自己来组织的啊!!!!

纵横军团-棋影

  • [版主]
  • 精华:5帖
  • 求助:21帖
  • 帖子:728帖 | 5626回
  • 年度积分:78
  • 历史总积分:82244
  • 注册:2004年5月28日
发表于:2012-11-27 15:06:36
4楼
用MODBUS RTU吧 多方便 西门子200的MODBUS RTU库实际也是用自由口编写的

热门招聘
相关主题

官方公众号

智造工程师