RoboDK论坛
在Python脚本中使用数字输入-打印版本

+- RoboDK论坛(//www.w5838.com/forum
+——论坛:RoboDK (EN) (//www.w5838.com/forum/Forum-RoboDK-EN
+——论坛:RoboDK API (//www.w5838.com/forum/Forum-RoboDK-API
线程:在Python脚本中使用数字输入(/ Thread-Using-Digital-Inputs-in-Python-Scripts



在Python脚本中使用数字输入-aldomb-10-26-2021

使用:RoboDK v5.2.5(64位),Windows 10, UR5(本例中)/UR5e/UR10机器人,Python。

我在这篇文章中附上了一段视频,以帮助解释我的困惑。我的主要重点是利用UR5上的数字输入(3)。它只是一个我手动按下并松开的开关。看起来Python脚本只是忽略了数字输入状态。起初,我认为它只是没有通过,但我使用ShowMessage()函数对Bool产生一些反馈,它正在注册。

侧面困惑:为什么函数ShowMessage()忽略了我的“False”输入弹出参数?不管怎样,它都会继续弹出窗口。

在另一个测试中,我发现在一个条件IF语句中,使用getDI()并不像我想象的那样工作。基本上,它将忽略输入是否为active/on/true/1,并允许任何在“not true”/(!= 1)……不管实际的getDI()值是1还是0。使用和实现getDI()的正确方法是什么?


(附件= 2695)
(附件= 2696)


回复:在Python脚本中使用数字输入-艾伯特-10-27-2021

你应该把数字输入转换成整数。您正在以字符串的形式检索数字。例子:
代码:
DigitalInput = int(robot.getDI(3))
打印(DigitalInput)

另外,你没有使用RoboDK的ShowMessage。您应该在RDK对象上调用ShowMessage来查看您期望从Robolink类中得到的行为(在状态栏中显示消息):

代码:
RDK。ShowMessage("要显示在RoboDK状态栏中的消息",False)
您还可以使用print(“您的消息”)在控制台中调试输出。