connect

Соединитесь с клиентами MAVLink через порт UDP

Синтаксис

connectionName = connect(mavlink,"UDP")
connectionName = connect(___,Name,Value)

Описание

пример

connectionName = connect(mavlink,"UDP") подключения к клиенту mavlinkio через порт UDP.

connectionName = connect(___,Name,Value) дополнительно задает аргументы с помощью пар "имя-значение".

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Примеры

свернуть все

ПРИМЕЧАНИЕ: Этот пример требует, чтобы вы установили Библиотеку UAV для Robotics System Toolbox®. Вызовите roboticsAddons, чтобы открыть Проводник Дополнений и установить библиотеку.

Соединитесь с клиентом MAVLink.

mavlink = mavlinkio("common.xml");
connect(mavlink,"UDP");

Создайте объект для того, чтобы хранить клиентскую информацию. Задайте систему и ID компонента.

client = mavlinkclient(mavlink,1,1)
client = 
  mavlinkclient with properties:

         SystemID: 1
      ComponentID: 1
    ComponentType: "Unknown"
    AutopilotType: "Unknown"

Разъединитесь от клиента.

disconnect(mavlink)

Этот пример показывает, как соединиться с клиентами MAVLink, осмотреть список тем, связей и клиентов, и отправить сообщения через порты UDP с помощью протокола связи MAVLink.

ПРИМЕЧАНИЕ: Этот пример требует, чтобы вы установили Библиотеку UAV для Robotics System Toolbox®. Вызовите roboticsAddons, чтобы открыть Проводник Дополнений и установить библиотеку.

Соединитесь с клиентом MAVLink, использующим диалект "common.xml" . Этот локальный клиент связывается с любыми другими клиентами через порт UDP.

dialect = mavlinkdialect("common.xml");
mavlink = mavlinkio(dialect);
connect(mavlink,"UDP")
ans = 
"Connection1"

Можно перечислить все активные клиенты, связи и темы для связи MAVLink. В настоящее время существует только одна клиентская связь, и никакие темы не получили сообщения.

listClients(mavlink)
ans=1×4 table
    SystemID    ComponentID    ComponentType          AutopilotType     
    ________    ___________    ______________    _______________________

      255            1         "MAV_TYPE_GCS"    "MAV_AUTOPILOT_INVALID"

listConnections(mavlink)
ans=1×2 table
    ConnectionName      ConnectionInfo   
    ______________    ___________________

    "Connection1"     "UDP@0.0.0.0:64627"

listTopics(mavlink)
ans =

  0×5 empty table

Создайте подписчика для получения сообщений на клиенте. Этот подписчик прислушивается к теме сообщения "HEARTBEAT" с ID, равным 0.

sub = mavlinksub(mavlink,0);

Создайте сообщение "HEARTBEAT" с помощью объекта mavlinkdialect. Укажите информацию полезной нагрузки и отправьте сообщение по клиенту MAVLink.

msg = createmsg(dialect,"HEARTBEAT");
msg.Payload.type(:) = enum2num(dialect,'MAV_TYPE','MAV_TYPE_QUADROTOR');
sendmsg(mavlink,msg)

Разъединитесь от клиента.

disconnect(mavlink)

Входные параметры

свернуть все

Клиентская связь MAVLink, заданная как объект mavlinkio.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'LocalPort',12345

Идентификация имени подключения, заданного как пара, разделенная запятой, состоящая из 'ConnectionName' и скаляра строки. Именем подключения по умолчанию является "Connection#".

Типы данных: string

Локальный порт для связи UDP, заданной в виде числа. Значение 0 связывает со случайным открытым портом.

Типы данных: double

Выходные аргументы

свернуть все

Идентификация имени подключения, заданного как скаляр строки. Именем подключения по умолчанию является "Connection#", где # является целым числом, запускающимся в 1, и увеличивается с каждой новой созданной связью.

Типы данных: string

Введенный в R2019a