上位机PC控制UR3机器人实现方式

2023-05-16

一、在计算机上安装urx 库

终端输入:pip install urx;
参考和例程下载见: https://github.com/SintefManufacturing/python-urx;

二、利用网线连接UR3机器人和计算机

用一根网线连接ur3机器人控制箱和电脑,搭建计算机与机器人通信通路;
(注意,控制箱网线口在箱体底部)

三、设置 UR3机器人网络

打开示教器,选择设置机器人(Setup Robot)>> 网络(Setup Network)>> 静态地址 (Static Address) ;

等到网络符号提示连接成功,即表示网络设置成功;

详细设置(仅供参考)
IP地址 192.168.1.100 (注意,IP地址前三位要和计算机保持一致,192.168.1.X)
子网掩码 255.255.255.0

在这里插入图片描述

四、设置计算机网络

关闭 计算机WiFi连接;
打开 网络连接 (Network Connections) 选择对应的有线网络连接;
打开 以太网状态 >> 属性 >> 手动设置IPv4 >> 填写IP地址和子网掩码

详细设置(仅供参考)
选择 IPv4设置 (IPv4 Settings)
开启 手动设置 (Manual)
IP地址 192.168.1.1(注意,IP地址前三位要和机器人一致,192.168.1.X)
掩码 255.255.255.0

在这里插入图片描述

五、测试网络

在计算机终端输入:ping 192.168.1.100(机器人IP地址);

查看有无数据收发信息;

(注意,很多问题都是出在机器人和电脑的ip地址设置上,导致计算机和UR3机器人不能建立通讯)

六、测试机器人运动

代码如下(示例):

import urx
import logging
 
if __name__ == "__main__":
    logging.basicConfig(level=logging.WARN)
 
    rob = urx.Robot("192.168.1.100")  # your robot ip
    rob.set_tcp((0,0,0,0,0,0))          # tool center point
    rob.set_payload(0.5, (0,0,0))
    
try:
        l = 0.05                    # unit: meter
        v = 0.01
        a = 0.1
        pose = rob.getl()            # x, y, z, rx, ry, rz
        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()

七、出现的问题及解决办法:

以上示例程序无法全部运行,UR3机器人执行一次动作指令就停止,并显示错误: Robot.Stopped;
实际上,运行完代码rob.movel(pose, acc=a, vel=v) 程序就停止了;

解决办法:笔者认为这与urx包版本有一定问题,最后下载新本版urx包对已安装的urx进行替换即可;
下载链接:https://hub.nuaa.cf/jkur/python-urx。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

上位机PC控制UR3机器人实现方式 的相关文章

随机推荐