Свяжитесь Используя Сокеты Сервера TCP/IP

О сокетах сервера

Поддержка сокетов сервера является доступным использованием tcpserver функция. Эта поддержка для одной удаленной связи. Можно использовать эту связь, чтобы связаться между клиентом и MATLAB® или между двумя экземплярами MATLAB.

Например, вы можете собрать данные, такие как форма волны в один экземпляр MATLAB и затем передать его другому экземпляру MATLAB.

Примечание

Использование сокета сервера или на клиентской или на серверной стороне должно быть сделано в соответствии с лицензионным соглашением, когда это относится к вашему конкретному параметру лицензии и типу активации. При наличии вопросов, необходимо консультироваться с администратором для лицензии или юридического департамента.

Это предназначается для использования позади брандмауэра на частной сети.

Свяжитесь между двумя экземплярами MATLAB

Следующий пример показывает, как соединить два сеанса работы с MATLAB на том же компьютере, показав пример кода для каждого сеанса. Чтобы использовать два различных компьютера, замените "localhost" с IP-адресом сервера в коде для Сеанса 2. Используя 0.0.0.0, когда IP-адрес означает, что сервер примет первую машину, которая пытается соединиться. Ограничить связи, которые будут приняты, замена "0.0.0.0" с адресом клиента в коде для Сеанса 1.

Сеанс 1: сервер MATLAB

Примите связь от любой машины на порте 30000.

server = tcpserver("0.0.0.0",30000)
server = 

  TCPServer with properties:

        ServerAddress: "0.0.0.0"
           ServerPort: 30000
            Connected: 0
        ClientAddress: ""
           ClientPort: []
    NumBytesAvailable: 0

  Show all properties, functions

Сеанс 2: Клиент MATLAB

Этот код работает на втором экземпляре MATLAB.

Создайте клиентский интерфейс.

client = tcpclient("localhost",30000)
client = 

  tcpclient with properties:

              Address: 'localhost'
                 Port: 30000
    NumBytesAvailable: 0

  Show all properties, functions

Создайте форму волны и визуализируйте ее.

data = sin(1:64);
plot(data);

Запишите форму волны в сеанс сервера.

write(client,data,"double")

Сеанс 1: сервер MATLAB

Считайте форму волны и подтвердите его визуально путем графического вывода его.

data = read(server,server.NumBytesAvailable,"double");
plot(data);