mavlink/MAVSDK

API and library for MAVLink compatible systems written in C++

解決する課題

MAVSDKは、MAVLinkと対話するための高レベルで使いやすいAPIを提供し、ドローンやその他の無人機の制御プロセスを簡素化します。生のMAVLink通信の複雑さを取り除き、開発者が車両の制御や監視を実装するためのよりシンプルなインターフェースを提供します。

仕組み

このプロジェクトは、基本的なMAVLink通信を処理するC++コアライブラリと、機能固有のプラグインライブラリを中心に構築されています。言語間でAPIを定義するためにproto IDLを使用しています。

言語に応じて、バインディングは2つの方法で実装されます:

  • 直接: C、Python、Kotlinのバインディングは、Cラッパーを介してC++ライブラリを呼び出し、別のプロセスやgRPCを必要としません。
  • gRPC経由: その他の言語クライアント(Swift、Java、Goなど)は、ローカルポートでAPIを公開する mavsdk_server プロセスと通信します。

対象ユーザー

MAVLink準拠のハードウェアと通信するために、クロスプラットフォーム(Linux、macOS、Windows、iOS、Android)で軽量なSDKを必要とする無人機向けアプリケーションの開発者。

ハイライト

  • 多言語サポート: Python、C++、C、Kotlin、Swift、Javaなどの慣用的なAPIを提供します。
  • クロスプラットフォーム: デスクトップおよびモバイルオペレーティングシステム全体で動作します。
  • 柔軟なAPI: 同期(ブロッキング)呼び出しと非同期(コールバックベース)呼び出しの両方をサポートします。
  • 標準準拠: MAVLink標準および定義に完全に準拠しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト