凹凸曼
级别: 探索解密
精华主题: 0
发帖数量: 40 个
工控威望: 141 点
下载积分: 1170 分
在线时间: 102(小时)
注册时间: 2015-10-16
最后登录: 2024-06-28
查看凹凸曼的 主题 / 回贴
楼主  发表于: 2016-08-11 16:33
我在触摸屏上做了两个输入值显示,一个是直径,一个周长。触摸屏上输入直径然后周长根据程序运算变化,同时如果改变周长,直径也会根据程序运算变化。但是现在只能输入直径周长跟着变化,反过来就不行了
laihuaxun200
级别: 略有小成
精华主题: 0
发帖数量: 219 个
工控威望: 362 点
下载积分: 1168 分
在线时间: 316(小时)
注册时间: 2013-11-20
最后登录: 2024-08-19
查看laihuaxun200的 主题 / 回贴
1楼  发表于: 2016-08-11 17:21
可能通过宏指令实现啊,条件设为显示元件输入后执行。要做两个不同宏指令,一个是直径转换为周长的,当输入直径后,把计算出的周长传送给周长显示元件;一个是周长转换为直径的,当输入周长后把计算出的直径传送给直径显示元件。这两个宏指令分别对应相应的显示输入元件。
laihuaxun200
级别: 略有小成
精华主题: 0
发帖数量: 219 个
工控威望: 362 点
下载积分: 1168 分
在线时间: 316(小时)
注册时间: 2013-11-20
最后登录: 2024-08-19
查看laihuaxun200的 主题 / 回贴
2楼  发表于: 2016-08-11 17:22
没用宏指令的话,可以通过PLC来执行转换程序。
laihuaxun200
级别: 略有小成
精华主题: 0
发帖数量: 219 个
工控威望: 362 点
下载积分: 1168 分
在线时间: 316(小时)
注册时间: 2013-11-20
最后登录: 2024-08-19
查看laihuaxun200的 主题 / 回贴
3楼  发表于: 2016-08-12 10:07
1、监控地址和写入址用一个就好了,没有必要另外搞一个监控地址。这样数据太多,容易把自己搞晕。
2、触摸屏如果输入的是32位数据,你的PLC的D寄存器应该是每两个为一个双字节数据。单个D寄存器是16位的。浮点数的话是32位的,一个数据要占用两个D寄存器。如:D0,D1只能表示一个小数的数据。

你只需要设定直径为D0 ,周长为D2,触摸屏输入直径后后把D0,的数据转换后传送给D2,触摸屏输入周长后,把D2的数据转换后传送给D0就好了,要用DMOV指令。