使用MATLAB作为客户端从UR5机器人的TCP / IP套接字读取数据

时间:2018-04-11 23:47:47

标签: python matlab type-conversion tcpclient robot

我正面临从UR5机器人的TCP / IP端口读取数据的任务问题。我需要特别阅读笛卡尔坐标 Gripper状态(无论是打开还是关闭)的数据。

https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/remote-control-via-tcpip-16496/中有一个excel表,其中包含有关此数据的信息,我正在使用版本3.5的那个

我看到了我需要的完全相同的程序,它是用Python编写的,它运行完全相同的输出(X,Y,Z,RX,RY,RZ值)结果如同http://www.zacobria.com/universal-robots-knowledge-base-tech-support-forum-hints-tips/knowledge-base/client-interfaces-cartesian-matlab-data/中的机器人

到目前为止,这是我的MATLAB代码,我得到的结果与我的机器人(URSim 3.5.3虚拟环境)上的结果不同:

rgb_transform.max()

获得的结果:

clear all

HOST = '192.168.56.101';
PORT_30003 = 30003;

while (true)
s = tcpclient(HOST, PORT_30003);
disp('connected and starting program');
disp('data received:');

data = read(s, 80, 'double');

disp(data(56:61));
disp(data(74:79));

pause(1);
end

由于机器人没有移动但与我的机器人中的值非常不同,因此持续相同。第一行是笛卡尔坐标(X,Y,Z,RX,RY,RZ),但运行程序时机器人的值为:-120.11mm,-431.76mm,146.07mm,0.0012, - 3.1664,-0.0395,第二个用于Gripper状态(X,Y,Z,RX,RY,RZ)。

我不知道问题是否在程序中错误使用数据类型,因为我只是认为 uint8 应该是正确的类型。

STEPS 1.安装MATLAB和URsim
2.对于URsim,您必须通过Virtual Box安装 3.作为客户的MATLAB代码 4.启动你的URSim并打开UR5启动并运行
5.然后运行您的MATLAB代码

0 个答案:

没有答案