RoboDK论坛
getDI(io_var)与后处理器-打印版本

+- RoboDK论坛(//www.w5838.com/forum
+——论坛:RoboDK (EN) (//www.w5838.com/forum/Forum-RoboDK-EN
+——论坛:RoboDK API (//www.w5838.com/forum/Forum-RoboDK-API
线程:getDI(io_var)与postprocessor (/ Thread-getDI-io-var-with-postprocessor



getDI(io_var)与后处理器-JanisP-03-31-2021

我尝试将数字输入集成到我的机器人程序中,这是由后处理程序生成的。
如getDI(io_var)的手册所写:这个函数只有在使用机器人驱动程序连接到真正的机器人时才有用。
这是逻辑,如果没有机器人连接到RoboDK, getDI在模拟程序中没有功能。但我可以给模拟一个样本值,然后用它来工作。但如果我想在脱机机器人程序中获得一个数字输入,由后处理程序生成,我该如何实现呢?


也许下面的代码解释了我的意思。我得到了一个Python-Script,它检查DI是否为真。如果这是真的,一场运动将会开始。R是机器人。

代码:
如果getDI (2):
r.MoveJ (somePoint)
r.MoveJ (somePoint2)

这段代码将被解释并像这样发送到后处理程序:

代码:
r. runmessage (r"""getDI(2)命令仅在使用API""", True)
r.MoveJ (somePoint)
r.MoveJ (somePoint2)

从技术上讲,我可以捕获这个RunMessage,并且知道if条件从哪里开始。但是我没有得到关于if条件达到的距离以及MoveJ(somePoint2)是否在条件内部的信息。有没有可能让它起作用?
谢谢。