西门子300PLC与威纶通人机界面通信问题。

我公司有个设备是用威纶通eb8000人机界面跟西门子300来控制,现在开关量都没什么问题,就是有一个模拟量有问题,是人机界面一个给定值到PLC,进行控制,但是这个给定值比... 我公司有个设备是用威纶通eb8000人机界面跟西门子300来控制,现在开关量都没什么问题,就是有一个模拟量有问题,是人机界面一个给定值到PLC,进行控制,但是这个给定值比PLC的值大256,刚好大一个字节,也就是说我在人机界面给定是0,PLC那里是256,人机界面显示也是256,;我给定是1,PLC那里是257。感觉就是变量数据类型设置问题,那个高手知道在step7里面怎么设置这个变量啊?请详细点,谢谢了! 展开
 我来答
枫叶shadow
推荐于2016-09-03 · TA获得超过270个赞
知道小有建树答主
回答量:361
采纳率:0%
帮助的人:222万
展开全部
你是不是要的数据是16位1个字节, ,但是改的FC块写成双字节传送了?比如只需要DB0.0的数据(DB0),如果双字节传送(DW0),但是你触摸屏写的是写入高位的数据.就会产生这样的情况. 显示里是设置的32位. 查看一下数据类型
追问
我的意思就是问,我现在不用动触摸屏的程序,怎么改300PLC里面的程序?或者需要怎么设置FC2块啊!谢谢了说详细点吧!因为之前都是好好的,所以触摸屏的程序应该没什么问题吧,现在怎么去修改300 的程序!
追答
你查看一下你PLC里不一致的数据.  传送方式有没有问题.  比如DB0有问题就查找一下是不是 
L DB0
T DB??
被改写成了
L DW0
T DW??
大概这种形式,你得知道程序改动了哪里才好办
我只能说原理:
每个字=8位 即 11111111=255
双字就是两个字的组合 为16位/高8位/低8位. 255=高位0+低们255 256=高位1+底位的0 257=高位1+低位1
所以,你输入0显示255 如果你触摸屏没改过,都是双字写入双字读出,那就只可能是你在传送的时候没有传送双字,
比如写入的是 DB0-DB1 双字 读取是 DB10-DB11 双字
传送应该为 L DW1 TDW10   (表示传送DB0和DB1到DB10-DB11)
但是变改成 L DB0 T DB11(输入1,单字1传送到高位高位1+低位000=257)  
niu9807
2013-12-04 · TA获得超过1819个赞
知道小有建树答主
回答量:1802
采纳率:52%
帮助的人:419万
展开全部
S7-300PLC中高低字节与日系的定义相反,在EB8000屏幕中你指定了不正确的地址,像DB2.9就会出现这种情况,地址必须是偶数。DB2.10就可以
追问
人机界面的程序我没有动,我就是把300里面FC2程序块重新给下了个,就出现这样的问题了,那在300程序里面怎么改啊!谢谢了!
追答
有可能你修改了db块中的数据类型,由于不同的数据类型长度不同,造成了数据地址的变化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式