yxc111
级别: 略有小成
精华主题: 0
发帖数量: 204 个
工控威望: 292 点
下载积分: 1669 分
在线时间: 86(小时)
注册时间: 2010-03-12
最后登录: 2020-04-15
查看yxc111的 主题 / 回贴
楼主  发表于: 2010-07-09 22:10
我用的MT6056i的屏
设置一个数值输入器 描述里写的是a
又设置了两个窗口 一个描述为 c 一个位d
然后写一段宏指令
short a,b
bool c,d
b=1234
if a==b then
c=1
else
d=1
end if
  
请各位高手指点下  我要输入a的值 当a输入1234时 弹出窗口c  输入错误时弹出窗口d
正确的要怎么做这个程序
yxc111
级别: 略有小成
精华主题: 0
发帖数量: 204 个
工控威望: 292 点
下载积分: 1669 分
在线时间: 86(小时)
注册时间: 2010-03-12
最后登录: 2020-04-15
查看yxc111的 主题 / 回贴
1楼  发表于: 2010-07-10 20:47
没高手看到吗  自己顶下
ywx163
级别: 论坛先锋

精华主题: 0
发帖数量: 1147 个
工控威望: 1320 点
下载积分: 184629 分
在线时间: 3993(小时)
注册时间: 2007-05-05
最后登录: 2024-11-17
查看ywx163的 主题 / 回贴
2楼  发表于: 2010-07-11 08:55
GetData(A,RW_BIN,507,2)
GetData(B,RW_BIN,505,2)

If A==B Then
C=1
SetData(C,LW_BIN,7,1)
Else
D=2
SetData(D,LW_BIN,7,1)
End If
End Macro_Command
把LW7设置窗口切换
yxc111
级别: 略有小成
精华主题: 0
发帖数量: 204 个
工控威望: 292 点
下载积分: 1669 分
在线时间: 86(小时)
注册时间: 2010-03-12
最后登录: 2020-04-15
查看yxc111的 主题 / 回贴
3楼  发表于: 2010-07-11 21:55
大侠怎么提示PLC不支持此种类型的地址啊!!!!
我是这样写的
macro_command main()
short A,B
bool C,D
GetData(A,RW_BIN,507,2)
GetData(B,RW_BIN,505,2)

if A==B then
C=1
SetData(C,LW_BIN,7,1)
else
D=2
SetData(D,LW_BIN,7,1)
end if



end macro_command
ywx163
级别: 论坛先锋

精华主题: 0
发帖数量: 1147 个
工控威望: 1320 点
下载积分: 184629 分
在线时间: 3993(小时)
注册时间: 2007-05-05
最后登录: 2024-11-17
查看ywx163的 主题 / 回贴
4楼  发表于: 2010-07-11 22:38
上面的MT506可以用,如用6056的把地址改为如下
macro_command main()

int A,B
short C,D

GetData(A, "Local HMI", RW, 507, 2)  
GetData(B, "Local HMI", RW, 505, 2)        
if A==B then
C=1
SetData(C,"Local HMI",LW,7,1)
else
D=2
SetData(D,"Local HMI",LW,7,1)
end if



end macro_command
[ 此帖被ywx163在2010-07-11 22:54重新编辑 ]
ywx163
级别: 论坛先锋

精华主题: 0
发帖数量: 1147 个
工控威望: 1320 点
下载积分: 184629 分
在线时间: 3993(小时)
注册时间: 2007-05-05
最后登录: 2024-11-17
查看ywx163的 主题 / 回贴
5楼  发表于: 2010-07-11 23:22
请到此页,已为你专做http://www.ymmfa.com/read.php?tid=70030
yxc111
级别: 略有小成
精华主题: 0
发帖数量: 204 个
工控威望: 292 点
下载积分: 1669 分
在线时间: 86(小时)
注册时间: 2010-03-12
最后登录: 2020-04-15
查看yxc111的 主题 / 回贴
6楼  发表于: 2010-07-12 22:25
大侠 能否在指令后加上注解  小弟看不懂啊
刚学宏指令才艺星期
beiye1234
级别: 略有小成
精华主题: 0
发帖数量: 255 个
工控威望: 282 点
下载积分: 914 分
在线时间: 250(小时)
注册时间: 2010-02-05
最后登录: 2017-07-31
查看beiye1234的 主题 / 回贴
7楼  发表于: 2010-07-16 13:05
回答:
第一要明白的是宏指令是要触发才会被调用的,上列用的是LB505(即密码输入后的确认按钮,PLC控制或其控制属性下连接发宏指令)。
宏指令的开头一般要定义数据类型,即整型A,B,短整型 C,D,然后将RW, 507, 的数据至A, RW, 505的数据至B,比较A和B是否相等(即密码是否相符),符合跳转基本窗口11(提示密码正确),不符合基本窗口12(提示密码错误)。
注:(lw7放基本窗口编号,在PLC控制中要设置切换基本窗口)
不要多长时间,这个你会了,宏指令就没什么问题,以后就看你怎么活用!
回答完毕!
[ 此帖被beiye1234在2010-07-17 07:59重新编辑 ]
yxc111
级别: 略有小成
精华主题: 0
发帖数量: 204 个
工控威望: 292 点
下载积分: 1669 分
在线时间: 86(小时)
注册时间: 2010-03-12
最后登录: 2020-04-15
查看yxc111的 主题 / 回贴
8楼  发表于: 2010-07-17 20:25
非常感谢7楼的教导