主要内容

使用TCP/IP服务器套接字通信

关于服务器socket

万博1manbetx方法支持服务器套接字tcpserver函数。这种支持只万博1manbetx针对单个远程连接。您可以使用此连接在客户机和MATLAB之间进行通信®或者在两个MATLAB实例之间。

例如,您可以将数据(如波形)收集到一个MATLAB实例中,然后将其传输到另一个MATLAB实例中。

请注意

在客户端或服务器端使用服务器套接字都应该按照许可协议进行,因为它与您特定的许可选项和激活类型有关。如果您有任何疑问,请向您的许可证管理员或您的法律部门咨询。

这适用于在专用网络的防火墙后使用。

的两个实例之间的通信MATLAB

下面的示例展示了如何在同一台计算机上连接两个MATLAB会话,并显示了每个会话的示例代码。要使用两台不同的电脑,请替换“localhost”在会话2的代码中使用服务器的IP地址。使用0.0.0.0作为IP地址意味着服务器将接受第一个尝试连接的机器。要限制将被接受的连接,请替换“0.0.0.0”在Session 1的代码中使用客户端的地址。

会话1:MATLAB服务器

接受端口30000上任意机器的连接。

服务器= tcpserver(“0.0.0.0”, 30000)
server = TCPServer with properties: ServerAddress: "0.0.0.0" ServerPort: 30000 Connected: 0 ClientAddress: "" ClientPort: [] NumBytesAvailable: 0显示所有属性,函数

会话2:MATLAB客户端

这段代码运行在MATLAB的第二个实例上。

创建连接到服务器的客户端接口。

客户端= tcpclient(“localhost”, 30000)
client = tcpclient with properties: Address: 'localhost' Port: 30000 NumBytesAvailable: 0显示所有属性和函数

创建一个波形并可视化它。

数据= sin(1:64);情节(数据);

将波形写入客户端。由于客户端连接到服务器,因此该数据在服务器会话中可用。

写(客户端、数据“替身”

会话1:MATLAB服务器

读取波形,并通过绘图直观地确认。

数据=读取(服务器,服务器。NumBytesAvailable,“替身”);情节(数据);

另请参阅

|

相关的话题