exponenta event banner

disconnect

Отключение от клиентов MAVLink

Описание

пример

disconnect(mavlink) отключается от всех клиентов MAVLink, подключенных через mavlinkio клиент.

disconnect(mavlink,connection) отсоединяется от определенного имени клиентского соединения.

Примеры

свернуть все

Подключение к клиенту MAVLink.

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

Создайте объект для хранения информации о клиенте. Укажите систему и идентификатор компонента.

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

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

Отключиться от клиента.

disconnect(mavlink)

В этом примере показано, как соединиться с клиентами MAVLink, просмотреть список тем, подключений и клиентов, а также отправить сообщения через порты UDP с помощью коммуникационного протокола MAVLink.

ПРИМЕЧАНИЕ. Этот пример требует установки библиотеки БПЛА для 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:38489"

listTopics(mavlink)
ans =

  0x5 empty table

Создайте абонента для приема сообщений на клиенте. Этот абонент слушает "HEARTBEAT" тема сообщения с идентификатором, равным 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 объект.

Имя соединения, заданное как строковый скаляр.

Введенный в R2019a