RoboDK论坛
RoboDK的I/O问题(使用ABB 6700进行3D打印)-打印版本

+- RoboDK论坛(//www.w5838.com/forum
+——论坛:RoboDK (EN) (//www.w5838.com/forum/Forum-RoboDK-EN
+——论坛:关于RoboDK的一般性问题(//www.w5838.com/forum/Forum-General-questions-about-RoboDK
+——线程:RoboDK的I/O问题(用ABB 6700进行3D打印)(/线程——问题——-我- o - robodk - 3 - d -印刷- - abb - 6700



RoboDK的I/O问题(使用ABB 6700进行3D打印)-aditya.r-08-10-2018

嗨,伙计们,
我试图让一个ABB 6700机器人用一些混凝土进行3D打印。(这里是初学者;))

我发现ROBODK将是这项工作的最佳软件,它已经有很好的记录3D打印项目。

然而,在机器人的I/O方面,我知道如何连接硬件(主要是高扭矩电机驱动单螺杆式挤出机和PID温度控制器)。

在一定程度上,我知道如何使用ABB软件配置I/O。

但我不知道我应该在哪里指定像“打开电机在这里挤出”或“为温度控制器提供这么多伏特”这样简单的事情。这些是ROBODK软件的一部分吗?

换句话说,RoboDK软件是否直接与ABB 6700机器人上的I/O端口进行通信并允许控制?还是需要在其他地方做?
(如果你碰巧知道哪里有用的话,哈哈)

非常感谢大家!非常感谢您的帮助!


关于RoboDK的I/O问题(使用ABB 6700进行3D打印)-艾伯特-08-14-2018

是的,您可以将挤出机命令转换为数字输出。

当您为3D打印准备项目时,切片机算法会自动在g代码中生成E命令来驱动挤出机。这个命令是为了在机器人移动时激发材料沉积。默认情况下,在RoboDK中,这个E命令会触发一个程序调用,例如Extruder(0)。0值触发一个新的挤出机路径的开始,随着机器人沿着路径移动,它不断增加。然后,在后退/接近运动之前,该值为负。

这些挤出机命令由RoboDK中名为ABB_RAPID_IRC5的ABB后处理器自动解析。然而,你需要做一个小的改变来保存这个变量,并将其用于你的线性运动。看一下RunCode,以及如果在检测到Extruder时删除return命令,如何解析Extruder调用。

与挤出机最简单的集成将使用一个单一的数字输出。当挤出机长度为负时,该输出可以关闭。您可以通过其他方式激活它。要做到这一点,你可以在你的后期处理器的MoveL命令中添加以下代码:
def MoveL(self, pose,关节,conf_RLF=None):
""" "添加一个线性运动""" "

如果自我。New_e_length < 0:
自我。addline('SetDO D_OUT_Extruder, 1;')
其他:
自我。addline('SetDO D_OUT_Extruder, 1;')