存储PLCNext社区LinkedIn上的PLCNEXT.Instagram上的PLCNEXT.  youtube上的plcnext. github plcnext社区存储PLCNext社区

  1. dlabelle@phoenixcontact.ca.
  2. PLCNEXT技术和PLCNEXT控件
  3. 2020年6月17日星期三

你好,

以循环方式执行在PLCNext上安装的脚本的最简单方法是什么?

示例,我们在PLC中有一个Python脚本,通过REST数据接口读取变量,我们希望循环执行该脚本。

有没有办法从PLC编程(通过PLCNext Engineer)调用它?

谢谢

罗宾

Dan Clark 接受答案 等待审核
0
Votes
撤消

罗宾,

您可以创建一个循环,请参阅以下示例。

delay = 100  #100ms

try:

  print("Press Ctrl+C to stop the script.")
  while 1:
    Inputs = Pullloop()
    #(logic here)
    Postloop(Outputs)
    time.wait(delay)
except KeyboardInterrupt:
  sys.exit()

您可以从工程师称之为,但请记住HTTP请求是同步的(这意味着它们不会执行下一行代码,直到它完成),并且Pulls之间的时间不会与程序中的执行情况一样一致。 

Martin PLCnext Team 接受答案 等待审核
0
Votes
撤消

嗨罗宾,

在下次版本的PLCNext基础库 - 临时即将到来,我认为 - 将有一个“shell”功能,您可以从PLCNext Engineer调用,您可以使用它来执行Python脚本。然后,您可以使用ESM循环任务来实现定时调用周期。此shell命令将异步执行,因此它不会阻止实时任务的处理。

〜马丁。

Phoenix联系电子总部 - PLCNext运行时产品管理和支持
smaher4 接受答案 等待审核
0
Votes
撤消
Hi Martin,
Was the "shell"你提到的功能释放了吗?
我也希望以定时的方式从PLCNext执行Python脚本
Martin PLCnext Team 接受答案 等待审核
0
Votes
撤消
是的,Linux shell功能块现在包含在PLCNextBase库中,在PLCnext存储中。
~ Martin.
Phoenix联系电子总部 - PLCNext运行时产品管理和支持
  • 页 :
  • 1


这篇文章没有答复。
但是,您不允许回复此帖。