Socket编程进行远程通讯控制UR5机器人

(1)IP相关基础知识

1.如何查询本机IP 

1.利用CMD命令窗口,输入 ipconfig ,会返回本机的IP信息

2.控制面板\网络和 Internet\网络和共享中心->无线网络连接->详细信息  ,也可以查询本机IP信息。

2.如何查询某个IP是否可以被访问

利用CMD窗口,输入 ping   targetIP   ,targetIP是测试的IP地址

3.127.0.0.1是默认指向本机IP地址的IP

4.Public IP和Private IP

1.Public IP是指这个IP可以被任何连接互联网的电脑访问,通常是网络服务器。例如各个网站的网络服务器,浏览器访问网页的时候实际就是访问这些IP。

如何远程登录网络服务器:具有Public IP的网络服务器一般需要租赁,用来开发个人网站或者私人博客等,这种服务器实用的大多是没有图形界面的Linux系统。可以通过SSH2软件来远程登录Linux服务器。方法查考如下网址:     http://jingyan.baidu.com/article/86fae346d246073c48121a40.html

2.Private IP是指这个电脑IP在某一个局域网内,他的IP是该局域网分配的。虽然连接了互联网,却无法被该局域网之外的电脑访问。这种通常是普通电脑的IP。

常见的局域网IP格式: 

(2)UR5机器人

UR5机器人是中型六轴工业机械臂。

UR5机器人的控制方法:

1.通过自带的触屏面板控制,该面板有一个控制软件可以控制UR5机器人的配置与运动。

2.通过网络控制:UR5机器人安装好之后可以设置IP和端口。这样UR5机器人就是本局域网内的一个固定IP。 可以往UR5机器人的IP和端口上发送控制命令来控制UR5机器人运动。 使用各种开发工具实现与UR5机器人的IP和端口通讯就实现了UR5机器人的控制。

(3)问题:UR5机器人的远程遥控。

上面提到的通过网络控制UR5机器人的方法只对与UR5处于同一局域网的电脑有用,因为UR5机器人的IP是处于局域网的private IP,处于局域网之外的电脑无法直接访问这个IP。 本文希望实现远程遥控UR5机器人,即实现两个private IP直接进行数据通讯。

(4)处于不同局域网的Private IP实现网络数据通讯。

1.解决思路:通过服务器进行桥接

需要通讯的两台电脑都是Private IP,无法直接互相访问,我们准备一个具有Public IP的网络服务器,两个Private IP电脑都使用Socket与服务器网络连接,电脑A发数据给服务器,服务器再转发给电脑B。 这种采用Socket与网络服务器通讯的方法,访问网站就是个例子,我们与网址建立socket连接,可以在网站中进行各种操作,实现可交互性的连接。

(注:不同局域网的Private IP进行通讯,通常想到的都是QQ等即使通讯软件,他们的实现方式也是通过服务器转发数据, 他们使用的有一种方法是网络API方法,通讯客户端可以周期性的查询网络API得到账号的未读消息等信息)

2.Socket说明

https://baike.baidu.com/item/socket/281150?fr=aladdin

可以使用SocketTest软件创建简单的SoketClient和SocketServer对象,帮助理解和实验Socket通讯,SocketTest软件可以在网上下载得到。

3.编程实现

1.Python实现Socket编程。

参考网址:http://www.cnblogs.com/aylin/p/5572104.html

总结的说,Python关于Socket编程的模块有两个,分别是Socket和SocketServer,Socket类可以用来创建Socket Server和Socket Client对象,而SocketServer智能用来创建Socket Server对象,但它已经集成了Server处理多线程的能力。本文使用的开发环境是Python3。

例子1:使用SocketServer实现Socket Server,显示连接到Server的Client的IP信息和他们发送来的消息。

 

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import socketserver
import subprocess
import socket

class MyServer(socketse
  • 2
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB是一种功能强大且广泛使用的科学计算软件,它提供了一种控制UR5机器人的方法。UR5是一种先进的工业机器人,可以执行各种复杂的任务。 在MATLAB中控制UR5机器人需要使用Robotics System Toolbox。该工具箱提供了用于建模、仿真和控制机器人的函数和工具。 首先,我们需要将UR5机器人的模型导入到MATLAB环境中。通过使用URDF(Unified Robot Description Format)文件,我们可以定义机器人的几何结构和动力学参数。然后,我们可以使用robot模型类来加载该模型。 接下来,我们可以使用正逆运动学方法来控制UR5机器人。正运动学可以根据机器人的关节角度计算出末端执行器(末端执行器可用于抓取或执行任务的部件)的位置和姿态。反向运动学则可以根据末端执行器的位置和姿态计算出对应的关节角度。MATLAB提供了可以实现这些计算的函数。 一旦我们得到了所需的关节角度或末端执行器的位置和姿态,我们就可以通过编写控制指令来控制UR5机器人的运动。例如,我们可以定义一个关节空间的轨迹,并使用插补方法来生成平滑的运动轨迹。然后,我们可以使用robot模型类的控制函数来发送轨迹点并控制机器人的运动。 此外,MATLAB还提供了用于实时控制和数据采集的功能。我们可以使用MATLAB的实时工作站(RTW)功能将控制算法部署到嵌入式计算机或实时控制器上,并与UR5机器人进行实时通信。 总之,MATLAB提供了丰富的函数和工具,可以帮助我们控制UR5机器人。通过合理利用这些功能,我们可以实现对机器人的精确控制,并执行各种复杂的任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值