线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
库卡机器人和IO调用。
你好,

我使用PythonAPI来控制机器人使用在线编程使用kukbridge驱动程序。

我试图实现一个功能,暂停机器人当用户打开连接到数字输入的门。

进程1像往常一样指挥机器人。

进程2正在读取DI1并呼叫机器人。暂停或根据需要设置其他参数。

我在这里有两个问题,不确定它们是否相关。

首先,读取一个表情中的数字输入似乎在某种程度上搞乱了机器人司机。如果我在进程2中运行以下代码,我将得到一堆在任何其他情况下都没有看到的targe叛国错误。

代码:
而真正的:
print(机器人。setParam(“Driver”,“GET $IN[1]”))
time . sleep (0.2)


其次,像waitDI或getDI这样的其他DI API调用似乎都不能为我工作。您可以想象一个更好的实现,上面的循环只是等待一个信号。

看起来其他一些人也有与此API相关的问题://m.sinclairbody.com/forum/Thread-getDI-io...UKA-driver
# 2
嗨,瑞克,
让我们开始找出问题所在。
首先,我们需要运行kukabridge交互模式下的驱动程序:
代码:
user@ubuntu:~$ cd ~/RoboDK/bin
user@ubuntu:~/RoboDK/bin$ export LD_LIBRARY_PATH="$(pwd)/lib"
user@ubuntu: ~ / RoboDK。美元/ bin / kukabridge
现在kukabridge应该准备好执行命令。我们用选项命令:
代码:
选项
短信:工作…
reconnectLimit = -1
connectTimeout = 0
dataTimeout = 0
keepAliveInterval = 0
短信:准备好了
用命令连接机器人CONNECT [port] [number_of_robot_axes]
代码:
连接192.168.0.108 7000
短信:连接
连接
短信:工作…
短信:准备好了

现在我们可以使用命令查询变量的值得到< variable_name >并使用命令设置新值SET
代码:
得到AXIS_ACT美元
短信:工作…
Re:{e6axis: a1 0.0, a2 0.0, a3 0.0, a4 0.0, a5 0.0, a6 0.0, e1 0.0, e2 0.0, e3 0.0, e4 0.0, e5 0.0, e6 0.0}
短信:准备好了

设置$ ov_pro 25
短信:工作…
再保险:好的
短信:准备好了

得到OV_PRO美元
短信:工作…
再保险:25
短信:准备好了
现在我们来看看数字输入状态查询命令的操作,GETDI < input_number >

代码:
GETDI 1
短信:工作…
再保险:假
短信:准备好了
GETDI 1等于命令在美元[1]

接下来,我们需要确保您使用的是最新版本的KRL程序(RoboDKsync543.src).
你可以在档案中找到它://m.sinclairbody.com/doc/drivers/Connect-K...RoboDK.zip
此外,kukabridge可以自动上传程序到您的控制系统。
在这种情况下,您需要删除RoboDKsync ? ? .src文件从控制系统事先,以便kukabridge一定会写出正确的版本。使用命令配置(力)小心点选项,则会导致config.dat美元要自动修改的文件):
代码:
配置
短信:工作…
请求机器人程序状态
当前机器人程序状态为#P_FREE
读取当前配置($config.dat)
读取完成,正在更新配置
配置不需要更新
检查程序文件是否存在(RoboDKsync543.src)
程序文件不存在
编写机器人系统程序文件
配置完成
短信:准备好了

现在检查命令WAITDI
例如,如果我们期望真正的输入1,命令将被写为:Waitdi 1 1,如果我们期望,它将被写成:Waitdi 10
代码:
Waitdi 10
短信:工作…
短信:准备好了

请执行以上步骤,并告诉我们你的结果。

最好的问候,
德米特里。
# 3
谢谢Dmitry,当我有机会的时候我会尝试一下,可能是下周。




浏览此主题的用户:
1客人(年代)