UAV開発のひとつ:アルドゥイーノとPixhawkを簡単に

1. Pixhawkの開発の歴史

  • 開発:APM - > PX4FMU / IO - > Pixhawk:

    1.1。Arduinoの紹介


    Arduinoのは(もちろんありますが、ないSTM32の公式バージョンは、だけでなく、他のコアのインテルガリレオ、例えば)コアコントローラとしてAVRマイクロコントローラとメインマイコン開発ボードである、または何ボード学ぶために、Arduinoの開発そのスタッフが良い、マイクロコントローラベースのArduinoのは、あなたが欲しいものを作るために使用することができる必要はありませんので、簡単な関数は、多くのアプリケーションのライブラリがあるので、レジスタの動作に直接行っていません。Arduinoの開発者はまた、開発したシンプルなIDE(統合開発環境)がPCソフトウェアをダウンロードし、コード、コンパイル、デバッグを書くことです。

    ArduinoのアトメルのAtmelTinyシリーズを含むMCUの様々な、サポートできるだけのオープンソース開発プラットフォーム、avr8、ARMのCortex M0、ARMのCortex M3、STさんARMのCortex M3プロセッサ、TIのエネルギアプラットフォームは、Arduinoのを使用しますプラットフォームの構造はそうでMSP430、C2000および開発に使用することができます。

    原則として、ArduinoのMCUプラットフォームは限定されないが、現在は限られたMCUをサポートしていません。現在は有名なESP8266、ESP32と他のARMコアボードの開発を支援してきました。しかし、コアボードArduinoのAVRマイクロコントローラのほとんどがコアとして使用されています。Arduinoのハードウェアに依存しないとハードウェア関連の層であり、ハードウェア抽象化層を有する分離層を実現します。コンパイルされたオープンソースのGNU成熟使用して、CおよびC ++混合プログラミングを使用してのArduino。Arduinoのライブラリは、単純なものから、ユーザーが迅速かつアプリケーションの例ライブラリの実装をベースとすることができるアプリケーションの例の複雑な多数に、多くの支持を持っています。あなたが基本的な実装を理解したい場合しかし、あなたはまた、ソースコード基礎となる実装を見ることができます。主にフロントエンドのためのArduino制御指向環境では、フロントエンドロボット制御、航空機の4つのフロント制御、プリンタ制御の3Dフロント。簡単な制御システムでは、あなただけのArduinoの開発を使用することができます。

1.2。APMプロフィール

PX4FMU / IOとPixhawk 公式ウェブサイトのアドレス:

APM(ArduPilotMega)はDIY UAVコミュニティ(DIYドローン)飛行制御製品により、2007年に発売された、ほとんどがオープンソースハードウェアのプロジェクトを成熟です。加速度計、ジャイロスコープ及び慣性測定ユニット(IMU)の磁力計を含む多くのハードウェアの改良、からなるAPM基づいてArduinoのオープンソースプラットフォーム。データが良いAPMのカスタマイズ可能な、オープンソースソフトウェアミッションプランナーであるので、開発者が設定APMを構成することができ、受け入れ、ディスプレイセンサー。現在APM飛行制御飛行制御は、マルチローター、固定翼、ヘリコプターや無人航空機と他の無人のデバイスをサポートすることができるオープンソースのベンチマーク成熟になってきています。

三軸ジャイロスコープ、三軸加速度計、気圧センサの高さを、A電圧センサ10HzのGPSモジュールを監視するバッテリ状態、4Mbのボードデータ格納メモリ(ジョブデータ:Atmega2560メインマイクロプロセッサ・アーキテクチャであって、ハードウェアへのAPM自動的に記録し、KML形式にエクスポートすることができる)、内蔵ハードウェア、プロセッサ障害(暴走が開始時点で戻すことができる)、(オプション)三軸磁力計、(オプション)対気速度センサ、(任意に)電流センサ。APMボードフライトコントロール上に構築されたArduinoのプラットフォームは、Arduinoのマイクロコントローラに相当し、Arduinoの開発環境で直接開発することができます。

Pixhawk世界で最も有名なオープンソースの飛行制御ハードウェアは、3DRは最近、最新世代の飛行制御システムを導入ベンダー。プロセッサが近いフル稼働(8ビットプロセッサを使用してAPM)に、より複雑な演算処理を満たすために方法がないされているため、過去の人生は、ハードウェアメーカーは、最新の標準の32ビットARMプロセッサを使用するために、有名なAPM、APMそれをあるです第一世代は、それが飛行制御プロセッサ及び入出力インターフェースボードPX4FMU PX4IOに分割され、PX4のシリーズです。PX4系列は、入力および出力インターフェイスと、単独PX4FMU(しかし非常に複雑な配線)を用いてもよい中古PX4IOボードであるが、複雑なので、基本的に発電実験バージョンを使用すると連結固定されていない統一ハウジングは、存在しないのでよいです。経験PX4シリーズを通じ、メーカーは最終的構造を簡素化し、本製品Pixhawkの第二世代であるプラスの骨状シェル、ハードウェアおよび配線の最適化、ボード上にPX4FMU PX4IOを統合します。Pixhawk次の特徴:

  • 明確なハードウェア:
    何それに使用されるチップ、一目でどのようなセンサー、およびほとんどすべてのバス、周辺機器が描画されます、それは非常に便利な、将来的には、だけでなく、開発する能力を持つユーザーのために、他の周辺機器との互換性がありますだけでなく、これではありませんキーは、キーが保証されています!このPixhawkを取り、彼はデュアルプロセッサ、強力なコンピューティングは、32ビットSTM32F427のCortex M4コア168 MHzの/ 256キロバイトのRAM / 2に特化している MBのFlash プロセッサは、主にコプロセッサの産業利用に位置してあり、それは、セキュリティおよび安定性によって特徴付けられる32ビットSTM32F103。そうであっても、メインプロセッサのクラッシュだけでなく、セキュリティを提供するコプロセッサの場合。他のセンサジャイロスコープ、加速度計、気圧計、などについては、我々はすべての公式サイトhttp://www.pixhawk.comにアクセスすることができます。githubの上の概略的なハードウェアボードと、図のPCB URL.SCHと.brdファイルが開くようにAltium Designerのビューアを使用する必要があります。ファイルの読み取り専用アクセスので、回路図やPCBファイル。

  • 複雑さ:
    このことは、実際に商用飛行制御システムよりも複雑であり、ソフトウェアを使用すると、エレクトロニクス関連の知識を持っていない場合、私は本当に混乱していることを恐れて、それはこれらの周辺インタフェースである、話すことはありません。ほとんどの人にとって、これは確かに障害となっています。
  • 安全性と実用性:
    それはプロセッサの安全設計に来るが、ソフトウェアはこれまでのところ、また重要な要因であるときだけで上記のように、この飛行制御システムは、ファームウェアシステムの2つのセットがあり、移植はAPM APMヘリコプターで、別のそれはAPMヘリコプター、3Dロボット工学などの独立した研究室システムや自動制御研究所だけでなく、いくつかの優れた個人によってスイス連邦工科大学チューリッヒ校(ETHチューリッヒポリU)コンピュータビジョンと幾何学研究室のPIXHAWKプロジェクトによって設定され、サポートされていますそして、国際3DRディストリビュータの開発者。PX4シリーズは、システムファームウェアのために特別に開発されました。ファームウェアの二組は、早期に適切な初期化を行うために地上のニーズに、安定した飛行によって測定することができます。ArduCopterファームウェアはQgroundcontrol地上局を使用してミッションプランの地上局、PX4Firmwareを使用しています。

。1.3 APM、PX4FMU / IO、Pixhawk 3つのシステムを比較します。

(1)APM2.5と2.6は、従来のardupilot飛行制御の最新の(そして最後の)バージョンです。
PX4IOと(2)PX4FMUは、新たな飛行制御ファミリの最初の二つのバージョンです:; Px4FMU概要とPx4IO概要
(3)Pixhawkです単一の回路基板バージョンの開発PX4FMU / PX4IO改善を結合PX4飛行制御、
APMストレージとCPUパワーの8ビットCPUの欠陥(4);
ここで、ローレンツマイヤーのPX4FMU / PX4IOスイスパネル(5)。先進学校プロジェクト、
PX4分散処理方法の使用を含み、浮動小数点コプロセッサ、32ビットプロセッサを有する、より多くのメモリ(6)、
(7)APMと比較して、PX4 / Pixhawk 10は、その有します複数回より多くのCPU性能やその他の改善;
(8)DIYDronesによってPixhawk、3DR第スイスチームPX4共同開発、
PX4開発システムが遅れてもよいようにフォーカス(9)は、Pixkawkによって開発されいくつかの問題に長い時間が解決されなくてもよい;
(10)APMシステムは、その端部に来たPX4FMU / IOシステムは、開発の唯一の遷移Pixhawkあります。

今日のGitHubの中に概念のいくつかの1.4注意:

Pixhawkハードウェアプラットフォーム、PX4はpixhawkのために特別に開発された、pixhawkネイティブファームウェアです。PX4用GitHubのコードPX4ハードウェア情報

APM(Ardupilotメガ)は、ハードウェアで、ArdupilotのでArduPilotはファームウェアもAPMと呼ばれると呼ばれる、APMのファームウェアです。APMのGitHubのコード

Ardupilotは、最新のコードを実行することはできませんし、その後、開発者はとの互換性、コードがPixhawkプラットフォームに移行Ardupilotを置く大規模なソフトウェアコード、オリジナルのハードウェアAPM2を続け、その後、早いAPM1、APM2から、維持愛好家のグループによって開発されましたPX4のpixhawkハードウェアプラットフォームは、ファームウェア(ネイティブファームウェア)を実行できるようにPixhawhハードウェアプラットフォーム、そうPixhawkの飛行制御コードの二組につながった理由は、そこにある、あなたはまた、APMのファームウェアを実行することができます。

APMは、断片化、混沌としたファームウェア。ディフェンダーより多くのコードスタイルは一様ではないが、これは、シングルチップの発信者、開始されません。しかし、成熟し、安定した、ハードウェアのサポートとより。PX4ファームウェア、nuttx組込みリアルタイム・オペレーティング・システム上で実行されています。マルチタスク、モジュラー設計。はじめに比較的容易に、比較的統一コードスタイルです。しかし、ハードウェア、ファームウェア少ない安定のためのより少ないサポートがAPMに比べて。

1.5主要な歴史的なイベント:

  • 開発の歴史
    2007年5月-ときクリス・アンダーソンレゴマインドストームビルド無人航空機、DIYDrones.com設立。
    2008年9月-ジョルディは、伝統的なヘリコプターの無人偵察機が自動的に飛ぶことができる作り、最初に勝ちましたSparkfun AVCコンテスト。
    2009 -クリス・アンダーソンとジョルディ・ムニョスは、ロボティクス3D(3DR)を設立
    ジョルディ/ 3DRobotics(赤外線温度センサを使用して)最初Ardupilotボードリリース- 2009 5越は
    2009年11月-ジョルディが作成しましたardupilotコードリポジトリ
    2009年11月-ホセフリオはArduIMUのDCMを使用して、ウィリアムPremerlaniアルゴリズムの最初の版を書いたジョルディ、ダグ・ヴァイベル、
    スクラッチ(V2.5)から書き直さジェイソン、 - 2009年11月志2010インディアン2越を割り込み駆動型の遠隔制御信号入力、遠隔スロットル保護、リターン、ホバー、旋回、垂直経路補正、良好な安定性、フライデジタル、システムイベント、RC、通信回線の4チャネル出力の使用を含む2データ送信(ポスト)。
    2009インディアン12越-ダグはサポートIMU最初の航空機の飛行ミッション、ArdupilotのV2.4を改善導入
    3DロボットはAPM1発足- 2010年に
    2010 早期-ダグとジェイソンは、Ardupilot 2.6をリリースしたスロットル制御を改善し、サポートArduIMU
    2010夏- APMコード開発:
    ジェイソン-タスクスクリプト、機内モード、ナビゲーション
    ホセ-コードベース、DCM、およびハードウェアセンサーは、支持
    ダグを-高度飛行制御、フライトログ、DCM
    マイクス-パラメータ、CLI、高速シリアルインターフェース、最適化された高度なハードウェア
    2010年5月- Ardupilotは(ヤニHirvinen含む)AeroQuadを合併し、開始ArduCopterNG(海賊)での作業。
    2010年6月- SWのAPM 1独立したタスクスクリプト飛行を達成し
    、2010年6月に- APM1初めての固定翼航空機を作るには、自律飛行を実現した
    2010年6月-ジェイソンは、Perlの半種類に基づいて、X平面上で実行するために開発することができます新しいAPMタスクスクリプトコマンド(後Mavlinkに統合)テストするためのシミュレーション
    2010インディアン8越-ヤニを/ jDronesはDIYキットラックオリジナルの4軸航空機などの標準を受け
    ArduCopterNG(AeroQuad / ArduCopter - 2010年10月にコード組み合わせ)プロジェクトArdupilotチームはあきらめ、より長期的な発展を取得するためにArduPiratesチームに引き渡された。ジェイソンはArduPlaneに基づいてArduCopterをオーバーライド別の制御ロジックを使用してより多くの自治を作ります。モード、リターン、スクリプトタスク、フェイルセーフ、離陸、着陸などをクルージング、ホバーモードを増やします。
    2010年8月には-マイケルOborneミッションプランナーリリース
    2010年8月-ランディはのTradHeliのサポートが追加され
    2010 12月-初期ArduCopterNG MegaPiratesコードから展開されてきた最初の成功分岐ardupilotになりました
    2011年4月-ジェイソンはAVC Sparkfunの最初の完全自律飛行Arducopterタスク実現
    APM2リリースした3Dロボット- 2011インディアン
    2011インディアン11越- TridgeがAutoTester作成した
    2012年のインディアン- 3DロボットがリリースしたAPM2.5 / 2.6
    2012年2月-ジェイソンはランディがArducopterリード開発者を引き継ぐとなることを聞かせて、ダグは彼の博士号を取得するためにチームを去り、TridgeはArduPlaneを引き継いだ
    2012年2月-マルコRobustini参加し、リードArduCopterテスター
    2012 7月-テクノロジーのチューリヒ連邦工科大学(ローレンツマイヤー、マイク)/ 3DロボットはPX4リリースした
    パット・ヒッキーは、ハードウェア抽象化レイヤ(AP_HAL)を簡素化し、他のボードのサポートを追加- 8越で2012を
    2012年10月-ロブ・ルフェーブルが実現しますTradHeli最初の自律飛行タスク
    2012年10月- TridgeとCanberraUAV使用APM2&PandaboardはUAVアウトバックチャレンジを獲得した
    2012年11月-に登場した最初のバージョンのAPM2.5コテージ
    2012年12月-ランディレナードはArduCopterにおけるINS(AC2.9)に基づいて、自動高さ制御に参加し、ジョナサンChallingerのおかげで成功3次相補フィルタを設計します Prototypeの
    2013年1月- githubのに移動googelコードからardupilotコード
    2013年1月/ 2月-地球局のAndroidのバージョン(DroidPlannerアーサーさん、AndroPilotのケビン・ヘスター)
    2013インディアン4越-ポールRiseborough、ブランドン・ジョーンズ、TridgeはArduPlane L1コントローラベースのウェイポイント飛行準備
    2013月-レナードとランディは途中ArduCopterは慣性航法支援(AC3.0)に入社して
    速度や高度制御に統合ArduPlaneにポールRiseborough、Tridge - 2013年7越を
    2013年9月-マイク・マッコーリー、TridgeをFlymapleボードのサポートが追加されました
    ETH(ローレンツマイヤー、マイク) - 2013年11月における 3Dロボットが/ Pixhawkリリースした
    2014インディアン1越-ポールRiseboroughは、Tridgeは拡張カルマンフィルタ(EKF)を大きく、飛行制御を得ることができますより信頼性の高い態度と位置情報
    2014年5月中-エミール・カステルとTridgeがVRBrainボードのサポートを追加
    2014年8月に-初めてArduPlane Linuxベースの飛行制御ボード(PixhawkFire)
    2014インディアン9越- Tridge&キャンベラなしヒトへの使用は、固定翼のUAV arduplaneはアウトバックの挑戦(Tridgeの成果報告)を獲得したベース。
    2014萬年10月-オープンソースプロジェクトのUAVドローン コードスタート
    2014年10月 - のArduPlaneに関する最初の報告は:成功した欠落している軽飛行機のための検索を含む、フロリダ州での捜索救助に使用されています

おすすめ

転載: www.cnblogs.com/hellocxz/p/12104923.html