メインコンテンツ

一般的な PX4 アーキテクチャとの統合

UAV Toolbox Support Package for PX4® Autopilots を使用すると、Simulink® でコントローラー、推定器、およびナビゲーターを設計し、PX4 Autopilot ボードに展開できます。Simulink モデルから生成されたコードを PX4 フライト スタックと統合し、同じものを PX4 Autopilot に展開できます。

一般的な PX4 アーキテクチャ

PX4 の大まかなソフトウェア アーキテクチャには、ストレージ用のモジュール、外部接続、ドライバー、uORB パブリッシュ-サブスクライブ メッセージ バス、およびフライト スタック コンポーネントが含まれます。

PX4 Architecture (Image courtesy: https://dev.px4.io/v1.9.0/en/concept/architecture.html)

px4 architecture

一般的な PX4 アーキテクチャの一部のモジュールとインターフェイスを UAV Toolbox Support Package for PX4 Autopilots と統合できます。

PX4 モジュールとのインターフェイスをとるサポートされている Simulink ブロック

UAV Toolbox Support Package for PX4 Autopilots を使用すると、Simulink でコントローラー、推定器、およびナビゲーターを設計し、PX4 Autopilot ボードに展開できます。Simulink モデルから生成されたコードを PX4 フライト スタックと統合し、同じものを PX4 Autopilot に展開できます。

サポート パッケージは、Simulink ブロックを使用して PX4 アーキテクチャの一部のコンポーネントにインターフェイスを提供します。Simulink モデル内のアルゴリズムの入力と出力として次のブロックを使用できます。

PX4 アーキテクチャのコンポーネントサポート パッケージの Simulink ブロック
パラメーターRead Parameter
uORB メッセージ バス

PX4 uORB Read

PX4 uORB Write

PX4 uORB Message

RC 入力Radio Control Transmitter
センサー ハブ

Vehicle Attitude

Accelerometer

Magnetometer

Gyroscope

GPSGPS
位置と姿勢の推定器

Vehicle Attitude

出力ドライバー

PX4 PWM Output

外部シリアル通信

Serial Receive

Serial Transmit

I2C 通信

I2C Controller Read

I2C Controller Write

CAN 通信

PX4 CAN Receive

PX4 CAN Transmit

タイム スタンプ

PX4 Timestamp

px4 modules

ユーザー定義のアルゴリズムに置き換えることができるサポートされているモジュール

一般的な PX4 アーキテクチャ内の Position Controller モジュールと Attitude & Rate Controller モジュールを、UAV Toolbox Support Package for PX4 Autopilots を使用して開発したユーザー定義のコントローラー アルゴリズムに置き換えることができます。

px4 modules

PX4 モジュールとしての Simulink 内のユーザー定義アルゴリズム

Embedded Coder® を使用すると、Simulink モデルで設計されたアルゴリズム用のコードを生成できます。UAV Toolbox Support Package for PX4 Autopilots は、生成されたコードを "px4_simulink_app" と呼ばれる新しいモジュールとして PX4 Firmware に統合します。Simulink からのこの新しいモジュールは、目的のハードウェア用の CMake ビルド構成にも追加されるため、対応する CMake ビルド構成向けに PX4 Firmware がビルドされている場合、このモジュールがコンパイルされて PX4 実行可能ファイルと統合されるようになります。このモジュールは PX4 スタートアップ スクリプトにも追加されるため、Autopilot の起動後に自動的に起動するようになります。PX4 スタートアップ スクリプトと UAV Toolbox Support Package for PX4 Autopilots でのその管理方法の詳細については、Load and Start Modules on PX4 Autopilot After Boot-Upを参照してください。

参考

|