Поиск и устранение проблем с интерфейсом клиента TCP/IP

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

Проблема

Если вам не удается подключиться к удаленному узлу или связаться с ним, попробуйте эти советы по устранению неполадок.

Возможные решения

Поддерживаемые платформы

TCP/IP поддерживаются на следующих платформах:

  • Linux®

  • macOS

  • Windows® 10

Клиентский интерфейс TCP/IP поддерживается на тех же платформах, что и MATLAB®. Обновления списка поддерживаемых платформ см. в разделе Системные требования.

Строение и подключение

  1. Убедитесь, что вы можете создать объект клиента TCP/IP. Вы создаете объект клиента с tcpclient функция, которая требует имя удаленного хоста в качестве входного параметра. Вы также должны задать значение удаленного порта.

    Каждый объект клиента связан с одним инструментом. Например, чтобы создать объект клиента для Sony/Tektronix® AWG520 Solumbary Waveform Generator вы используете имя удаленного хоста прибора и номер порта, который можно найти в документации прибора.

    t = tcpclient("sonytekawg.yourdomain.com",4000);
  2. После подключения к устройству с ним можно общаться. Если отправка и прием не работают, можно проверить следующее:

    • Убедитесь, что данные отправляются в формате, ожидаемом сервером.

    • При подключении к веб-серверу может потребоваться отправка HTTP- get или post команды. Можно также использовать urlread или webread функций для связи с веб-серверами.

    • Многие серверы TCP/IP ожидают получения информации о заголовках внутри пакета TCP/IP.

    Пример связи по протоколу TCP/IP см. в разделе Запись и чтение данных по интерфейсу TCP/IP.

Коммуникация VISA-TCP/IP

Можно также использовать visadev интерфейс с именем ресурса VISA-TCP/IP вместо tcpclient интерфейс для связи TCP/IP с приборами.

Неправильный тип данных

Убедитесь, что правильный тип данных - например int16, uint16, double- используется с read и write. Используйте тот совпадающий тип данных, что и инструмент. Если чтение и запись типов данных, отличных от uint8 или int8, убедитесь, что ByteOrder верно.