Main Content

MAVLink のサポート

Micro Air Vehicle Link 通信プロトコル、ダイアレクトおよびメッセージ

Micro Air Vehicle Link (MAVLink) 通信プロトコルは、UAV 間でメッセージを送受信するためのメッセージ プロトコルです。このプロトコルは、特定のトピックとメッセージ タイプをもつデータ ストリームにパブリッシュ-サブスクライブ パターンを使用します。ミッションとパラメーター用には、異なるサブプロトコルがあります。MAVLink 対応の関数を使用して、事前定義ダイアレクトまたはカスタム ダイアレクトの指定、クライアントの設定、およびメッセージの送受信を行います。

未承認のメッセージから UAV を保護するために、MAVLink ではメッセージの署名を使用しています。メッセージの署名はメッセージの暗号化とは異なり、MAVLink ではメッセージの暗号化を行わない点に注意してください。MAVLink でのメッセージの署名の詳細については、MAVLink の Message Signing (Authentication) を参照してください。

UAV Toolbox 内の MAVLink メッセージ定義 (ダイアレクト) および MAVLink シリアル化補助関数は、それぞれ mavlink/message_definitions/v1.0/ version および mavlink/c_library_v2 version のリポジトリから取得されています。

メッセージ定義の XML ファイル、および C 言語バージョンのシリアル化補助関数は、MIT ライセンスの下で提供されています。

関数

mavlinktlogRead MAVLink message from TLOG file (R2019a 以降)
mavlinkioConnect with MAVLink clients to exchange messages (R2019a 以降)
mavlinkclientMAVLink client information (R2019a 以降)
mavlinksubReceive MAVLink messages (R2019a 以降)
mavlinkdialectParse and store MAVLink dialect XML (R2019a 以降)
mavlinksigningStore MAVLink signing channel information (R2022a 以降)
addmavlinkkeysAdd MAVLink keys from .env file (R2023a 以降)
lsmavlinkkeysList MAVLink keys in MATLAB session (R2023a 以降)
rmmavlinkkeysRemove MAVLink key from MATLAB session (R2023a 以降)

ブロック

MAVLink Blank MessageCreate blank MAVLink message bus by specifying payload information and MAVLink message type (R2020b 以降)
MAVLink DeserializerConvert serialized uint8 MAVLink data stream to Simulink nonvirtual bus (R2020b 以降)
MAVLink SerializerSerialize messages of MAVLink packet by converting Simulink nonvirtual bus to uint8 data stream (R2020b 以降)