s7-200自由协议接收数据问题 点击:1049 | 回复:15



蓝雨蓝星

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-06 16:51:00
楼主
   小弟刚接触S7-200,用RCV指令接收数据不对,哪位大哥指点下啊?部分程序如下SBR1
LD     SM0.0
ATCH   INT_0, 26
ENI

LD     SM0.0
AN     T35
TON    T35, 100

LD     SM0.0
AW>    T35, 30
EU
AB<>   SMB186, 0
XMT    VB500, 1

LD     T35
R      T35, 1

   



蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-06 17:06:00
1楼
哪位高人指点下啊
能接收到正常数目的数据
但就是不对
不知道什么原因

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-07 19:05:00
2楼
首先你应该确保通讯格式正确,你说的能收到正常的数目但是数据内容不对,你可以通过在接收RCV前进行一下判断,第当接收的开始字符正确时再进行RCV接收。

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-13 09:32:00
3楼
开始字符是16#02,用了开始字符也试过了,在SMB188中就定义了,另外在程序接收数据前加起始字符检测,要么就接受不到,要么还是数据内容不对!好麻烦.

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-13 11:50:00
4楼
你试一下将SMW192忽略就是不用,看是否可以接收到数据。

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-13 16:52:00
5楼
试过了
还是一样的
好奇怪
是不是时序问题啊?

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-13 17:08:00
6楼
不用SMW192接收不会停止,因为接不到结束字符,一直都接收

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-13 18:37:00
7楼
仔细看了一下程序,觉得只用中断事件24,26就可以了,还有你可以将SM186<>0这个判断用SM4.6来替换,同时在发送XMT时启用一个定时中断如21,这样就可以设置一下T32的时间来实现若通讯超时即接收超时T32到设定值时可以复位接收RCV的控制字SMB87重新发送XMT,以上只是个人想法,不对之错请指点。
还有你说 “不用SMW192接收不会停止,因为接不到结束字符,一直都接收”那如果使用SMW192时能接到结束字符吗?

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-19 10:57:00
8楼
接不到
谢谢
我试下看

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-20 09:46:00
9楼
xiao a 
我姓罗
请问您贵姓?
用过MODBUS做主站吗?
我现在要以S7-200做主站和温湿度板连,不知道怎么办.可以教我不?

chinaplc

  • 精华:2帖
  • 求助:0帖
  • 帖子:15帖 | 322回
  • 年度积分:0
  • 历史总积分:1101
  • 注册:2000年12月01日
发表于:2007-03-20 10:01:00
10楼
Haiwell(海为)国产PLC,编程软件带内置仿真器,它可以方便地和第三方设备通讯,支持多种通讯协议(Modbus RTU/ASCII协议、自由通讯协议以及海为公司的HaiwellBus高速通讯协议)。极为便利的通讯指令系统,使你无论使用何种通讯协议都只需一条通讯指令便可完成复杂的通讯功能,你不用再为通讯端口冲突、发送接收控制、通讯中断处理等问题烦恼,你可以在程序中混合使用各种协议轻松完成你所需的各种数据交换。
你可以到海为网站(http://www.haiwell.com)了解并下载编程软件、程序示例(包括与仪表、变频器通信等)及其他所有资料

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-20 20:32:00
11楼
蓝雨蓝星你好,我姓王,我也是刚接触西门子不久,谈不上教呀,不知道你现在进展如何了,我给你的这个3297355@63.com邮箱发了一个自由口编程的例子,你可以看一下,看有没有帮助。大家互相学习。

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-20 20:40:00
12楼
你的那个邮箱发不过去,能不能提供一个新的邮箱地址,我好发给你。

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-21 10:56:00
13楼
现在还是不行,连不上.自由口的那个应该是是板的协议的波特率问题,我和计算机连了,接收正常.就是收板的不行,就只有第一个起始字符是对的.
做主站的现在没有反应,用的标准的MODBUS,我写了个大概的程序,你的邮箱是多少?
我发过来,帮我分析下啊!
我的是3297355@163.com 和llbyy@163.com
我有个QQ18102205
可以聊下吗?

蓝雨蓝星

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 15回
  • 年度积分:0
  • 历史总积分:27
  • 注册:2007年2月27日
发表于:2007-03-21 11:00:00
14楼
自由口的那个很麻烦
搞了好久了
现在都没有成功

xiao a

  • 精华:1帖
  • 求助:0帖
  • 帖子:102帖 | 555回
  • 年度积分:0
  • 历史总积分:958
  • 注册:2005年12月10日
发表于:2007-03-21 12:48:00
15楼
我给你的3297355@163.com 发了个邮件,你可以看一下,我们上班不许用qq,所以发邮件或者在工控网上互相学习。

热门招聘
相关主题

官方公众号

智造工程师