QQ登录

只需一步,快速开始

威纶通宏指令如何每隔一小时传输数据给三菱PLC

[ 复制链接 ]
提问:
麻烦高手帮忙写一个宏指令,通电就计时,以小时为单位,
计时到设定值,传送一个常数到三菱FX2N D200。

回答:
每个宏指令可以设置每隔一段时间执行一次,当前最小可设为100毫秒执行一次宏。
通过这个功能就可以进行时间的累加达到指令时间后,触发一次数据的传输。
这里也编写一个实现供大家下载,并解释实例的编写过程。

首先是在自己工程里添加三菱PLC硬件,如果这一小步也不会,说明自己是一个新手,
可以下载我录制的威纶通触摸屏视频教程101集系统的学习一下。

添加了PLC后,可以在界面上添加两个数值输入元件,一个用于设置间隔时间,
一个用于显示向PLC写入的数据。
界面如下图:
2019-11-17_123827.jpg
RW0寄存器对应时间段的设置,三菱的D200对应数据的显示。
通过宏指令就可以实现每隔指定的小时数,向三菱PLC写入数据。
宏指令代码如下:
  1. macro_command main()
  2. short nNum=0,nNum1=0
  3. //RW0为界面设置有小时数。
  4. GetData(nNum, "Local HMI", RW, 0, 1)
  5. //LW1用于小时的累加
  6. GetData(nNum1, "Local HMI", LW, 1, 1)
  7. nNum1=nNum1+1
  8. if nNum1>=nNum then
  9. short nRand=0
  10. RAND(nRand)
  11. //向三菱PLC的D200寄存器写入一个随机数
  12. SetData(nRand, "Mitsubishi FX2N", D, 200, 1)
  13. nNum1 = 0
  14. end if
  15. SetData(nNum1, "Local HMI", LW, 1, 1)
  16. end macro_command
复制代码
例程里,宏指令每隔1秒执行一次可以查看代码执行的效果。
都测试无误后, 可以将时间调整为36000,如下图。
我们知道1小时为3600秒,秒再转换为毫秒就为此数值。
2019-11-17_124056.jpg
例程下载地址:
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:威纶通宏指令如何每隔一小时传输数据给三菱PLC.rar 
文件大小:305.86 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索