MATLAB可以与websocket交谈吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB可以与websocket交谈吗?相关的知识,希望对你有一定的参考价值。
我想知道MATLAB是否可以与websocket交谈。如果是这样,我应该使用哪个MATLAB库?我需要在我的项目中使用这些信息,我通过rosbridge(连接到ROS的websocket服务器)在ROS和MATLAB之间进行通信。任何帮助将非常感激。
例如对于C,它是这样的:
struct addrinfo *address;
getaddrinfo("192.168.0.111", "9090", NULL, NULL);
int sockfd = socket(PF_INET, SOCK_STREAM, 0);
connect(sockfd, address->ai_addr, address->ai_addrlen);
char* message = "raw
";
send(sockfd, message, strlen(message));
从该代码,它看起来像一个常规的TCP连接。 “websocket”意味着不同的东西。对于TCP连接,请使用此处的免费TCP / UDP / IP工具箱:
http://www.mathworks.com/matlabcentral/fileexchange/345-tcpudpip-toolbox-2-0-6
它至少与MATLAB Instrument Control Toolbox中提供的官方网络工具一样好。
等效代码看起来像这样:
con=pnet('tcpconnect','192.168.0.111', 9090);
pnet(con,'printf','raw
');
pnet(con,'close');
我知道这是一个老问题,但我的答案可能会在将来帮助其他人(我希望)。
使用Matlab 2015a,在SIMULINK中有一个Robotics工具箱,您可以毫不费力地使用ROS。您可以毫无问题地订阅/发布到ROS主题。
是的,它可以。
由Java WebSocket库支持的Matlab库
在GitHub上有一个几乎可行的MatlabWebSocket项目。使用包含的示例代码,您可以通过WebSocket建立连接和发送/接收消息。 MatlabWebSocket代码依赖于Java-WebSocket库并提供必要的回调代码。
我正在使用这个库,性能很棒。
Super simple Matlab client example
server = 'ws://echo.websocket.org';
client = SimpleClient(server);
client.send(char('Hello, world!'));
以上是关于MATLAB可以与websocket交谈吗?的主要内容,如果未能解决你的问题,请参考以下文章