Modesフライトモードは、任意の時点におけるシステムの状態を定義します。ユーザは、遠隔制御装置または地上制御局のスイッチを介して飛行モード間を遷移する。本日(9月4日)ローンチした。イベントでソフトウェアを公開される予定。Dronesのテスト済み、認定済み、信頼性の高いオペレーティングシステムAuterionは無人機業界に動力を与えるように設計されたソフトウェアプラットフォームです。自律型ロボットの安全な運用のために、PX4のテスト済み、認定済み、および長期的にサポートされているディストリビューションを構築します。PX4は、あらゆるタイプの自律型ロボットを動かすために許可されたライセンスを持つ最も広く配布されているオープンソースのフライトソフトウェアです。exampleにコード例があります。このノードを起動するとドローンが離陸して2mの高さでホバリングします。fcu_url:="udp://:14540@127.0.0.1:14557"MAVROSを起動後先ほどのノードを起動するとドローンが離陸する。Launchファイルから起動するシミュレーションはmakeコマンドを実行しなくても、Launchファイルを用いて起動することもできる(参考)。Testing統合テストこれはエンドツーエンドの統合テストに関するものです。テストは自動的に実行されます。exampleオフボード制御は危険です。以下のチュートリアルでは、GazeboでシミュレートされたIrisクワドコプターに適用されるmavrosによるオフボード制御の基本について説明します。Irisクワドコプターが2メートルの高度まで離陸するはずです。最近、オープンソースのオートパイロットは、オープンソースコミュニティによって統合された様々なフェールセーフ機能によって信頼性が高まっています。アプリケーションごとに異なるソフトウェアを開発することは、時間がかかり、ソフトウェアの信頼性を確認するのが難しい場合があります。オートパイロットソフトウェアを変更する代わりに、オンボードコンピュータを使用して高レベルのコマンドを使用してオートパイロットを指令することもできます。的で開発されたソフトウェアを使用することができます。単かつ実用的に紹介します。素敵なチュートリアルはPX4のウェブサイト上にありますが、ちょっとした不都合があります。私はシステムを実装しているうちにいくつかのトラブルシューティングの経験を共有したいと思っていました。ROSとはROSは、モジュールをTCPネットワークとして構成することで、さまざまなロボットのモジュールを組み込むためのフレームワークです。ROSコミュニティは現在、コミュニティと業界の両方で非常に速いペースで成長しています。wikiには、フレームワークを理解するための素晴らしいチュートリアルがあります。チュートリアル1〜9に従って、ROSの使用に慣れてください。チュートリアルのページは、ここにあります。MAVROS入門MAVROSは、ROSがMAVLinkプロトコルを使用してオートパイロットソフトウェアと対話できるようにするROSパッケージです。MAVlinkは、17バイトで構成され、メッセージID、ターゲットID、およびデータを含みます。メッセージIDは、データが何であるかを示します。メッセージIDはmessageIDコマンドセットで確認できます。これにより、メッセージが同じチャネルで転送される場合、MAVLinkが複数のUAVから情報を取得できるようになります。メッセージは、無線信号で送信することもできます。MAVROSのインストールMAVROSは、mavrosリポジトリのソースを使用してインストールできます。MAVROSのデフォルトの方言はapmです。pixhawkのフライトコントローラにpx4をインストールするときは、以下のコマンドでmavrosを設定することによって、MAVROSをソースから構築する必要があります。ROSの設定コンパニオンコンピュータがフライトコントローラと通信するためには、通信レベルの電圧を変換するためにUSB2TTLコンバータが必要です。pixhawkでコンパニオンコンピュータを設定する簡単な概要がこのリンクに示されています。オフボード制御はTELEM2ポートを介して行われることが推奨されます。Telem2ポートは、SYS_COMPANIONパラメータを使用してアクティブ化できます。これは、qgroundcontrolのパラメーターを変更することで実行できます。921600PX4用MAVROSの設定MAVROSを起動する最も簡単な方法は、以下の起動ファイルを使用します。px4.launchMAVROSを起動すると、初めて動作しないことがあります。パニックにならないでください。一部のパラメータは、フライトコントローラと会話することができるように変更する必要があります。デバイス名とボーレートは、オートパイロットと通信できるように設定する必要があります。設定値は0.5秒のタイムアウトでフライトコントローラに送信する必要があります。これは、制御が特定の目的に収束するように安全係数です。なければ、フライトコントローラはオフボードモードに入りません。使用できる設定値は以下の通りです。Controlcppで書かれたノードの例を以下に示します。ノードはsetpoint_poistion_localメッセージを発行する。コンパニオン・コンピュータとquadrotorの統合quadrotorはF330フレームに基づいており、現在の統合は以下の通りです。330フレームは、オンボードのコンピュータでは少し小さく感じました。将来の統合のためには、450フレームがより適切です。位置制御のために、より正確な位置測定のために、Viconモーションキャプチャシステムを用いた外部位置推定を使用した。rtq_graphを使って可視化したブロック図を示します。これは、setpoint_positionトピックを使用してquadrotorを制御する方法を示す例です。外部位置推定は、バイコンモーションキャプチャシステムを使用して使用した。姿勢を制御するときのヨーの偏りを示しています。私はこれが高い姿勢で磁場を相殺するモーター電流から誘導された磁場によると信じています。simulation異なる航空機を選択してシミュレーションを実行できます。サポートされている飛行機には、マルチトール(オプティカルフローセンサー有/無)、飛行機、VTOL(テールシッター、クワドプレーン)が含まれます。qgroundcontrolmavlinkのデフォルトのUDPアドレスは次のとおりです。"udp://:14540@127.0.0.1:14557"qgroundcontrolが正しくインストールされていれば、シミュレーション実行中に自動的にUDPポートに接続します。ROSROSを介してSITLに接続する最大の利点は、実際のフライトコントローラとのインターフェースと同じインターフェースを備えていることです。MAVROSのfcl_urlを変更するだけです。引数を付けることは良いことです。MAVLinkは、内部通信と外部通信の両方に使用される標準プロトコルです。これは、PX4、Ardupilot、Betaflightなどの飛行コントローラの一般的なインターフェイスです。PlannerなどのGCSに使用されていました。信を処理する場合にも便利です。opensourceプロジェクトです。Aeroで最初に実装されました。ルーティングストリームに加えて、mavlink-routerには非常に便利な機能があり、ワークフローが向上します。これは、手動で行うことも、構成ファイルを構成することもできます。手動で実行するには、-eフラグを使用してエンドポイントを定義できます。LTS(16.04)は標準/優先Linux開発OSです。Flightハードウェア、Linuxベースのハードウェア、シミュレーション、ROS)を構築できます。以下の手順では、サポートされている各ターゲットを手動で開発環境に設定する方法について説明します。bashスクリプトを使用してSimulatorsやNuttXツールチェーンをインストールすることをお勧めします(これは以下の手順で入力するよりも簡単です)。Piなど)の追加手順に従ってください。SimulatorsやNuttXのツールチェーンをインストールするために使用できるいくつかのbashスクリプトを作成しました。Firmware)にダウンロードすることもできます。LTSにクリ-ンインストールでテストされています。既存のシステムの上にインストールした場合、期待どおりに動作しない可能性があります。共通依存関係、jMAVSimシミュレータ、Gazebo8シミュレータ。これには、すべてのPX4ビルドターゲットの共通の依存関係が含まれています。