Протокол управления передачей (TCP) является транспортным протоколом, расположенным на верхнюю часть из Межсетевого протокола (IP) и одним из наиболее широко используемых сетевых протоколов. Можно использовать коммуникацию сетевых сокетов для подключения к удаленным хостам для чтения и записи данных.
Если вам не удается подключиться к удаленному узлу или связаться с ним, попробуйте эти советы по устранению неполадок.
TCP/IP поддерживаются на следующих платформах:
Linux®
macOS
Windows® 10
Клиентский интерфейс TCP/IP поддерживается на тех же платформах, что и MATLAB®. Обновления списка поддерживаемых платформ см. в разделе Системные требования.
Убедитесь, что вы можете создать объект клиента TCP/IP. Вы создаете объект клиента с tcpclient
функция, которая требует имя удаленного хоста в качестве входного параметра. Вы также должны задать значение удаленного порта.
Каждый объект клиента связан с одним инструментом. Например, чтобы создать объект клиента для Sony/Tektronix® AWG520 Solumbary Waveform Generator вы используете имя удаленного хоста прибора и номер порта, который можно найти в документации прибора.
t = tcpclient("sonytekawg.yourdomain.com",4000);
После подключения к устройству с ним можно общаться. Если отправка и прием не работают, можно проверить следующее:
Убедитесь, что данные отправляются в формате, ожидаемом сервером.
При подключении к веб-серверу может потребоваться отправка HTTP- get
или post
команды. Можно также использовать urlread
или webread
функций для связи с веб-серверами.
Многие серверы TCP/IP ожидают получения информации о заголовках внутри пакета TCP/IP.
Пример связи по протоколу TCP/IP см. в разделе Запись и чтение данных по интерфейсу TCP/IP.
Можно также использовать visadev
интерфейс с именем ресурса VISA-TCP/IP вместо tcpclient
интерфейс для связи TCP/IP с приборами.
Убедитесь, что правильный тип данных - например int16
, uint16
, double
- используется с read
и write
. Используйте тот совпадающий тип данных, что и инструмент. Если чтение и запись типов данных, отличных от uint8
или int8
, убедитесь, что ByteOrder
верно.