urx驱动ur3和onrobot rg2
注意:非常重要的一点,urx是可以在Python2和Python3都支持的,随着时间改变,如果有的读者发现Python2中不能使用,报错math3d报错,是因为math3d版本太高,导致在Python2中不可用,解决方法,下载老的版本math3d(支持Python2的),替换掉新版本的math3d
附带一个math3d的github下载网址,
https://github.com/pmbrennan/math3d.git
后期也会传到csdn下载中。
1.安装urx
pip install urx
github链接:
https://github.com/Mofeywalker/python-urx
注意:一定要查看urx下的gripper是否安装了,如果没有安装的话,克隆参考问下的github文件
Python的库安装位置如下图,在home的隐藏文件下,ctrl+h可以查看隐藏文件。
2.连接电脑
2.1设置ployscope的ip地址
首先用一根网线连接ur机械臂控制柜和电脑。
下一步是确保正确配置您的硬件(控制计算机和机器人)以相互通信。 请注意,默认情况下,Universal Robot的网络功能处于禁用状态。 要启用网络连接,请使用UR的示教器导航至设置机器人->设置网络菜单(如下附件所示)。
注意,ip地址有时候都为0.0.0.0,这个我们可以自己设置的,然后点击应用,会有提示网络以连接。笔者的ployscope的ip地址设置如下:
2.2设置电脑的ip地址
首先关掉wiff,验证wiff会对与ployscope连接有影响。
电脑连上网线后,可以点击右上方的系统设置,找到网略,有线连接,点击右下角的选项,打开电脑ip的设置。
在弹出的界面中依次添加上述的四个信息,注意IP地址不是跟机器人一样的,笔者这边机器人的IP地址是192.168.1.10,那为了使电脑跟它处于一个局域网下,只需要将最后一个小数点后面的那个设置得不一样即可,我设置成了192.168.1.11,如下图所示。
注:子网掩码或者网关可以设置一样。
开启机器人,等到网络符号那里提示连接成功,即表示网络设置成功了。
完成以上之后重新启动机械臂系统
注释:很多问题都是出在ployscope和电脑的ip地址设置不正确或者没有设置好,导致电脑和ur机械臂不能建立通讯,一定要注意。
3.运行Python代码
import urx
import logging
if __name__ == "__main__":
logging.basicConfig(level=logging.WARN)
rob = urx.Robot("192.168.1.100")
#rob = urx.Robot("localhost")
rob.set_tcp((0,0,0,0,0,0))
rob.set_payload(0.5, (0,0,0))
try:
l = 0.05
v = 0.05
a = 0.3
pose = rob.getl()
print("robot tcp is at: ", pose)
print("absolute move in base coordinate ")
pose[2] += l
rob.movel(pose, acc=a, vel=v)
print("relative move in base coordinate ")
rob.translate((0, 0, -l), acc=a, vel=v)
print("relative move back and forth in tool coordinate")
rob.translate_tool((0, 0, -l), acc=a, vel=v)
rob.translate_tool((0, 0, l), acc=a, vel=v)
finally:
rob.close()
参考链接: