mavlink/MAVSDK-Python

MAVSDK client for Python.

解決する問題

MAVSDK-Python を使用すると、Python 開発者は低レベルの MAVLink コードを書かずに、ドローンやその他の MAVLink ベースのビークルを制御できます。C++ バックエンドと通信する asyncio ベースの Python API を提供するため、簡単な Python スクリプトから離陸や着陸などのコマンドを送信できます。

仕組み

このラッパーは、C++ で書かれた gRPC サーバー(「バックエンド」または mavsdk_server)と通信する gRPC クライアントです。Python コードのほとんどは、proto ファイル(MAVSDK-Proto)から自動生成されます。await drone.connect() で接続すると、パッケージはデフォルトでポート 50051 で組み込みの mavsdk_server を自動的に起動します(別のサーバーアドレスを指定しない限り)。mavsdk_server を手動で実行して接続することもできます。これは、組み込みバイナリが動作しないプラットフォーム(古い Raspberry Pi など)で役立ちます。

対象読者

高レベルで非同期の API を使用して、ドローン、地上局、その他の MAVLink デバイスを制御したい Python 開発者向けです。MAVSDK を使用していて、ネイティブの C++ API よりも Python を好む人向けです。

ハイライト

  • proto 定義から自動生成 – API は常に公式の MAVSDK プロトコルと同期しています。
  • Async/await サポート – Python 3.7+ が必要で、非ブロッキング操作に asyncio を使用します。
  • バンドルされたサーバー – mavsdk_server が含まれており、接続時に自動的に起動します。
  • mavsdk-grpc に改名 – パッケージは PyPI で mavsdk から mavsdk-grpc に移動しました。古い名前は現在、別のネイティブバインディングを指します。

関連

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