Arduinoでquadrocopterをプログラミングしたすパヌト1



こんにちは、habrozhiteli
このシリヌズの蚘事では、クアドロコプタヌの蓋をあなたの趣味が必芁ずするよりも少しだけ開き、フラむトコントロヌラヌ甚の独自のプログラムを䜜成、構成、起動したす。これは通垞のArduino Mega 2560ボヌドです。

私たちには先がありたす
  1. 基本的な抂念初心者ヘリコプタヌガむド甚。
  2. 仮想クアドロコプタヌでの䜜業のむンタラクティブなWebデモンストレヌションを備えたPIDコントロヌラヌ。
  3. 実際には、ArduinoのプログラムずQtのチュヌニングプログラムです。
  4. ロヌプでの危険なクアドロコプタヌテスト。 最初のフラむト。
  5. 珟堎でのクラッシュず損倱。 QtずOpenCVを䜿甚した自動航空怜玢。
  6. 最埌に成功したテスト。 たずめたす。 次はどこ

玠材は膚倧ですが、2〜3件の蚘事に収たるようにしたす。
今日は私たちを埅っおいたす私たちのクアドロコプタヌが飛んだ方法のビデオでネタバレ。 基本的な抂念; PIDレギュレヌタヌずその係数の遞択方法。

なんでこんなこず

孊術的な関心。これは、偶然にも私だけではありたせん 1、2、3 。 たあ、もちろん、魂のために。 仕事䞭にそれをずおも楜しんで、プログラムで「IT」が飛んだずき、蚀葉では蚀い衚せないほどの幞せを感じたした:-)

誰のため

この資料は、遠くにいる人や、マルチロヌタヌシステムの䜜業を始めようずしおいる人にずっお興味深いものです。 それでは、クアドロコプタヌのメむンノヌドの指定、それらが盞互にどのように盞互䜜甚するか、基本的な抂念、および飛行の原理に぀いお話したしょう。 もちろん、私たちが必芁ずするすべおの知識はネット䞊で芋぀けるこずができたすが、広倧なむンタヌネット䞊でそれを探すこずを匷制するこずはできたせん。

基本抂念の理解を損なうこずなく、倪字の次のなじみのない甚語、たたは理解できない図たで、知っおいるこずをすべおスキップしおください。

いいえ、1番

かなり倚くの既補の゜リュヌションArdupilot、MegapirateNG、MiltiWii、AeroQuadなどを詊すたでは、フラむトコントロヌラヌ甚の独自のプログラムを䜜成しないでください。 たず、危険です GPSず気圧蚈を䜿甚せずにクアドロコプタヌを制埡するには、緎習が必芁です。さらに、バギヌの堎合、ひっくり返り、本来あるべき堎所に飛行できたせん。これは、最初のテストではほずんど回避できたせん。 第二に、䜕をプログラムする必芁があり、最終的にどのように機胜するかを理解するこずで、プログラムが䜕倍も簡単になりたす。 信じおください 飛行数孊はプログラムコヌドのほんの䞀郚です 。

いいえ2

孊術的な興味を远求しおおらず、すべおを自分で曞いおいる間に、既補の゜リュヌションフラむ、写真を撮る、ビデオを撮る、課題を飛ぶなどだけが必芁な堎合は、フラむトコントロヌラヌ甚の独自のプログラムを䜜成しないでください。あなたが䞀人ではない堎合でも、倚くの時間が経過したす。

基本的な抂念


クアドロコプタヌは異なりたすが、それらはすべお4぀のロヌタヌによっお結合されおいたす。
























芋かけの察称性にもかかわらず、パむロットはクアドロコプタヌが正面にある堎所を区別するこずが非垞に重芁です矢印で衚瀺。 ここでは、ラゞコンカヌモデルず同様に、「forward」コマンドを䜿甚するず、クアドロコプタヌはパむロットが芋おいる堎所ではなく、クアドロコプタヌの仮想錻が向いおいる堎所を飛行したす。 これには危険が䌎いたす初心者が颚に巻き蟌たれ、䜕らかの方法で暪に展開されたデバむスを取り戻すのは難しい堎合がありたすもちろん、䞀人称芖点でカメラを飛行するこずや、コンパスずGPSを䜿甚した「スマヌト」フラむトモヌドに぀いおは話しおいたせん。前面のネゞたたは異なる色の光線、前面のボヌルたたはマルチカラヌLEDがこの問題を郚分的に解決したす。 しかし、ペペラットが急速に地平線䞊のポむントに倉わっおいるずき、これはすべお圹に立たない。

私は「X」ずいう圢のクアッドコプタヌのフレヌムで飛行したす。私はそれがより倖郚的に奜きだからです。 各蚭蚈には、独自の利点ず目的がありたす。 クアドロコプタヌに加えお、他のマルチコプタヌがありたす。 あなたが゚キゟチックなオプションを数えなくおも、それらのタむプはすべお同じです-たくさん


クアドロコプタヌが内郚にどのように配眮されおいるか、プログラムする予定のフラむトコントロヌラヌで䜕をすべきかを把握したす。



ピッチ、ロヌル、およびペヌ角ピッチ、ロヌル、ペヌは、空間内のクアドロコプタヌの方向を決定および蚭定するのに慣習的な角床です。


時々、「角床」ずいう蚀葉が省略され、圌らは単にピッチ、ロヌル、ペヌを蚀いたす。 しかし、 りィキペディアによるず、これは完党に正確ではありたせん。 これら3぀の角床を倉曎するこずで、必芁な方向のクアッドコプタヌ飛行が実珟したす。 たずえば、前方に飛行するには、埌方のモヌタヌが前方のモヌタヌよりもわずかに匷く回転するため、クアドロコプタヌは曲がる必芁がありたす。

クアドロコプタヌガスは、すべおのモヌタヌの回転速床間の算術平均です。 ガスが倚いほど、モヌタヌの総掚力が倧きくなり、クアドロコプタヌを匷くドラッグしたす前方ぞ移動しないでください!!!ここでの「床ぞの滑り止め」は、最も速い䞊昇を意味したす。 通垞、パヌセンテヌゞずしお枬定されたす0-モヌタヌが停止し、100-最倧速床で回転したす。 空䞭ガスは、クアドロコプタヌの高床が倱われないようにするために必芁な最小ガスレベルです。

ガス、ピッチ、ロヌル、ペヌ-これら4぀のパラメヌタヌを制埡できる堎合、クアドロコプタヌを制埡できたす。 制埡チャネルずも呌ばれたす。 2チャンネルのリモコンを賌入した堎合、quadrocopterに察凊できたせん。 3チャンネルは小型ヘリコプタヌに適しおいたす。ロヌル制埡なしで飛行できたすが、クアドロコプタヌでは䟿利ではありたせん。 飛行モヌドを倉曎したい堎合は、5チャンネルのリモヌトに分岐する必芁がありたす。 船䞊でカメラの傟きず回転を制埡したい-専門家はこれに別のリモヌトコントロヌルを䜿甚したすが、別のプラス2チャンネル。

倚くの飛行モヌドがありたす。 GPS、気圧蚈、距離蚈を䜿甚したす。 しかし、基本的なもの-安定化モヌド スタブ、スタビラむズ 、「スタブ」で飛ぶを実装したす。クアドロコプタヌは、倖郚芁因に関係なく、リモヌトコントロヌルから蚭定された角床を保持したす。 このモヌドでは、颚がない堎合、クアドロコプタヌはほが所定の䜍眮にぶら䞋がるこずができたす。 颚はパむロットを補償する必芁がありたす。

ネゞの回転方向はランダムに遞択されおいたせん。 すべおのモヌタヌが䞀方向に回転した堎合、䜜成されたモヌメントにより、クアドロコプタヌは反察方向に回転したす。 したがっお、察向するモヌタヌの1぀のペアは垞に1぀の方向に回転し、もう1぀のペアはもう1぀の方向に回転したす。 回転モヌメントの倖芳の効果は、ペヌ角を倉曎するために䜿甚されたすモヌタヌの1぀のペアは、もう䞀方よりも少し速く回転し始め、今ではクアドロコプタヌがゆっくりず向きを倉えたすなんお恐ろしい




モヌタヌの回転速床は、 フラむトコントロヌラヌコントロヌラヌ、脳によっお制埡されたす。 通垞、これは倚くの入力ず出力を備えた小さなボヌドたたはボックスです。 異なる機胜セット、異なるファヌムりェア、異なるタスクを持぀膚倧な数の異なるコントロヌラヌがありたす。 ほんの䞀郚を次に瀺したす。



フラむトコントロヌラヌの䞀般化されたタスクは、センサヌ読み取り倀の読み取り、制埡チャネルの読み取り、情報の凊理、モヌタヌぞの制埡信号の発行を含む制埡サむクルを実行するための1秒あたり数十回です。 それが私たちがプログラムしようずしおいるこずです。

䜿甚できるセンサヌにはさたざたな皮類がありたす。 すべおのクアドロコプタヌでほが必須ずなっおいる3軞ゞャむロスコヌプず3軞加速床蚈を䜿甚したす。 加速床蚈は加速床を枬定し、ゞャむロスコヌプは角速床を枬定したす。 それらのおかげで、フラむトコントロヌラヌは珟圚のピッチ、ロヌル、ペヌ角を認識したす。 これらのセンサヌはフラむトコントロヌラヌに組み蟌たれおいたすが、倖郚にありたす。 センサヌの読み取り倀から3぀の角床を蚈算するプロセスは、別の蚘事のトピックです。 ただし、ここでこれを知る必芁はありたせん。MPU-6050がすべおを行いたす。 これは、必芁な蚈算ずフィルタリングを内郚で実行し、i2cプロトコルを䜿甚しおほが準備完了の角床を発行する小さなボヌドです。 それらを読み取り、残りのデヌタで凊理し、モヌタヌに制埡信号を発行するだけです。

マルチコプタヌモヌタヌは倧電流を消費するため、フラむトコントロヌラヌは盎接電流を制埡するのではなく、 速床コントロヌラヌ ESC 、control、escず呌ばれる特別なハヌドりェアドラむバヌを介しお制埡したす。 これらのレギュレヌタヌは、メむンのオンボヌドバッテリヌから電力を䟛絊され、コントロヌラヌから制埡信号を受信し、出力にはモヌタヌに盎接぀ながる3本のワむダヌA、B、Cがありたす各モヌタヌには独自のレギュレヌタヌがありたす



レギュレヌタヌずモヌタヌ間の通信の「プロトコル」は、フラむトコントロヌラヌずレギュレヌタヌ間の通信の「プロトコル」ほど重芁ではありたせん。コントロヌラヌからレギュレヌタヌをプログラムで制埡する必芁があるためです。 i2cによっお制埡されるレギュレヌタヌがありたすが、最も䞀般的なレギュレヌタヌは、最小0ボルト、最倧3-5ボルトの長方圢信号によっお制埡されたす PWMたたはPWMず呌ばれ、より正確であるず䞻匵する人もいたす。詳现は、たずえば、 こちら 。

「プロトコル」-倧声で蚀われたすモヌタヌに最倧速床で回転するように呜什するために、コントロヌラヌは10ミリ秒から20ミリ秒の論理れロず亀互に2ミリ秒のパルスを送信する必芁がありたす。 1ミリ秒のパルス持続時間は、モヌタヌ停止、1​​.1 ms-最倧速床の10、1.2 ms-20などに察応したす。 実際には、れロの期間は䜕の圹割も果たさず、パルス自䜓の期間のみが重芁です。

明らかな単玔さのために、ここには埅ち䌏せがありたす。フラむトコントロヌラヌは異なる蚭定で異なり、レギュレヌタヌは異なり、最小1 msず最倧2 msは普遍的ではありたせん。 倚くの芁因に応じお、1〜2ミリ秒の範囲は実際には1.1〜1.9ミリ秒です。 レギュレヌタヌずコントロヌラヌがたったく同じ蚀語を話すために、レギュレヌタヌを調敎する手順がありたす。 この手順の間、レギュレヌタヌの範囲は倉化し、コントロヌラヌの範囲ず等しくなりたす。 手順は各コントロヌラヌのプログラムに瞫い付けられおおり、いく぀かの簡単な手順が含たれおいたす手順はメヌカヌによっお異なる堎合がありたす-説明曞をお読みください。


その埌、察応する間隔の境界がコントロヌラヌに入力されたす。 キャリブレヌションされおいないコントロヌラヌで離陞しようずするず、予期しない結果になるこずがありたす。クアドロコプタヌの突然の急な動きから最も近いツリヌぞの移動、あらゆるガス倀でのモヌタヌの完党な䞍動。

PWMは、たったく同じ原理でオンボヌドレシヌバヌを䜿甚したす。 これは、地䞊から無線制埡信号を受信しお​​フラむトコントロヌラヌに送信する小さなデバむスです。 ほずんどの堎合、各制埡チャネルガス、ピッチ、ロヌルなどのフラむトコントロヌラヌには、PWMが到着する独自の入力がありたす。 盞互䜜甚ロゞックは単玔です。たずえば、「70ガス」などのコマンドは、地䞊から受信機に連続的に送られ、そこでPWMに倉換され、別のワむダを介しおフラむトコントロヌラヌに䟛絊されたす。 ピッチ、ロヌル、ペヌでも同様です。

レシヌバヌずコントロヌラヌの間には友奜的なPWM関係があるため、それらもキャリブレヌションする必芁がありたす。レシヌバヌを備えたリモコンは、動䜜範囲によっお異なりたす。 コントロヌラヌは適応できる必芁がありたす。 ラゞオのキャリブレヌション手順は、芏制圓局のキャリブレヌションずは察照的に、フラむトプログラムの䞀郚ずしお自分で䜜成する必芁がありたす。 䞀般的なキャリブレヌション蚈画は次のずおりです。

そのため、無線のキャリブレヌション䞭、フラむトコントロヌラヌはすべおの制埡チャネルの受信機の範囲を蚘憶したす。 コントロヌラヌのキャリブレヌション䞭に、フラむトコントロヌラヌの範囲がすべおのコントロヌラヌに入力されたす。

フラむトコントロヌラヌ甚のプログラムに加えお、別のプログラムが必芁です フラむトコントロヌラヌ構成むンタヌフェむスです。 ほずんどの堎合、USBを介しおフラむトコントロヌラヌに接続し、ナヌザヌがフラむトプログラムを構成および確認できるようにするPCプログラムです。たずえば、無線のキャリブレヌションを開始し、安定化パラメヌタヌを調敎し、センサヌの動䜜を確認し、マップ䞊のフラむトルヌトを蚭定し、信号が倱われたずきのマルチコプタヌの動䜜を決定したすなどなど。 コン゜ヌルナヌティリティずしおC ++およびQtでカスタマむズむンタヌフェむスを蚘述したす。 未来を芋るずここにありたす



誰も偶然から安党ではありたせん。 小型モヌタヌの10むンチプラスチックネゞでさえ、皮膚に血のあざが残る可胜性があり、それがさらに1週間傷぀く可胜性がありたす個人的に怜蚌枈み。 クアドロコプタヌを持ち運んでいるずきにリモコンにガススティックを匕っ掛けるず、新しいメむクアップやヘアスタむルを䜜るこずが基本になりたす。 したがっお、フラむトコントロヌラヌは、少なくずもある皋床のセキュリティ 歊装/歊装解陀メカニズムを提䟛する必芁がありたす。 クワドロコプタヌの「歊装解陀」状態は、モヌタヌがオフになり、リモヌトコントロヌルからのフルスロットルコマンドでも、電力は䟛絊されたすが効果がないこずを意味したす。 クアドロコプタヌの「歊装」状態は、リモヌトコントロヌルコマンドがフラむトコントロヌラヌによっお実行されるこずを意味したす。 この状態では、クアドロコプタヌが離陞、飛行、着陞したす。 クアッドコプタヌがオンになり、リモヌトコントロヌルのスロットルスティックがれロになっおいないずきに䞍泚意なパむロットがオンにした堎合、盎ちに歊装解陀状態になりたす。 ヘリコプタヌを「歊装」状態にするためには、パむロットはリモコンのスティックを䜿っお䜕らかの皮類の所定のゞェスチャヌを行う必芁がありたす。 倚くの堎合、このゞェスチャヌは、右䞋隅に巊スティックを保持するこずですガス= 0、ペヌ= 100。 その埌、フラむトコントロヌラヌは少なくずも最小限の自己蚺断を行い、正垞に合栌した堎合は「 アヌム 」飛行準備完了 、別のゞェスチャヌガス= 0、ペヌ= 0、クアッドコプタヌが「 歊装解陀 」したす。 もう1぀の優れた安党察策は、ガスが2〜3秒間れロになった堎合の自動軍瞮です。

モヌタヌ、バッテリヌ、レギュレヌタヌ、プロペラに぀いお
マルチコプタヌ甚のアクセサリの遞択は、䞀連の蚘事党䜓のトピックです。 最初のクアドロコプタヌを䜜成する堎合-必芁なものを定匏化し、ベテランのもののヒントを䜿甚するか、他の誰かが䜜成しお正垞に飛行するコンポヌネントのリストを取埗したす。

それでも、䞀般的な理解のために、䞻芁なポむントを知るこずは有甚です。

バッテリヌ


マルチロヌタヌシステムのアマチュアおよび専門家の間では、オンボヌド゚レクトロニクスおよびモヌタヌの䞻な電源ずしお、リチりムポリマヌバッテリヌが最も䞀般的です。 それらは、静電容量、電圧、最倧電流出力によっお区別されたす。 通垞、容量はアンペア時たたはミリアンペア時で枬定されたす。 電圧は、バッテリヌの「猶」の数で枬定されたす。 1぀の「バンク」-平均3.7ボルト。 完党に充電された「猶」は4.2ボルトです。 猶の数が3〜6の最も䞀般的なバッテリヌ。 最倧電流出力はアンペアで枬定され、たずえば次のようにマヌクされたす25C。 C-バッテリヌ容量、25-乗数。 容量が5アンペアの堎合、そのようなバッテリヌは25 * 5 = 125アンペアになりたす。 もちろん、珟圚の出力パラメヌタヌは䜙裕を持っお取埗する方が良いですが、基本的には、それが倧きいほど、バッテリヌは高䟡になりたす。 ラベルの䟋25C 3S 4500mah。

各ゞャヌは個別のバッテリヌです。 それらはすべお盎列にはんだ付けされおいたす。 すべおのバンクを均等に充電するために、各バンクにアクセスできるバランスコネクタが個別に提䟛され、特別な充電噚が䜿甚されたす。

モヌタヌ、プロペラ、レギュレヌタヌ


ブラシレスモヌタヌの䞻なパラメヌタヌはkvです。 これは、䟛絊電圧の各ボルトに察する1分あたりの回転数です。 300〜1100のkvのモヌタヌが最も䞀般的です。通垞、1000に近いKvは、小型のクアドロコプタヌ1〜2キログラム+ペむロヌド500グラムに遞択され、盎埄12むンチたでのプラスチックプロペラが眮かれたす。 倧型マルチコプタヌ良奜で重量のある写真ビデオ機噚を䞊げるためたたは長期飛行飛行時間の蚘録の堎合、モヌタヌは通垞、䜎kv300-500ず巚倧なカヌボンプロペラ盎埄15-20むンチを持っおいたす。 Kvはモヌタヌの唯䞀の重芁なパラメヌタヌではありたせん。倚くの堎合、モヌタヌの出力ず駆動力が印加電圧ず取り付けられおいるプロペラのタむプに䟝存するこずを瀺す衚党䜓を芋぀けるこずができたす。 さらに、各モヌタヌは、独自の電圧範囲バッテリヌ猶の数および独自の最倧電流甚に蚭蚈されおいたす。 メヌカヌが3-4Sを曞いおいる堎合、5Sバッテリヌず䞀緒に䜿甚しないでください。 同じこずが芏制圓局にも圓おはたりたす。

モヌタヌが最倧30Aの電流甚に蚭蚈されおいる堎合、過熱を防ぐためにレギュレヌタヌは最倧30 + 10Aの電流をカりントする必芁がありたす。 䞍十分たたは䞍適切な芏制圓局は、いわゆる「タむミング停止」ずモヌタヌの飛行を停止させる可胜性があり、あなたは別のマルチロヌタヌ甚語「 惑星を捕たえた 」を認識するでしょう。 もう1぀の重芁なポむントは、ワむダの倪さず品質です。 ワむダの断面積が正しく蚈算されおいなかったり、コネクタの品質が悪いず、空䞭で火灜が発生するこずがありたす。

ご芧のずおり、埮劙な違いがたくさんありたす。 半分もリストしおいなかったので、最初のマルチコプタヌのコンポヌネントを自分で遞択するこずは非垞に困難です。


数孊安定化、PIDコントロヌラヌPID


マルチコプタヌを扱う堎合は、遅かれ早かれ、PIDコントロヌラヌの調敎に察凊する必芁がありたす。これは、この数孊的な装眮がほがすべおの安定化タスクで䜿甚されるためです空䞭のクアドロコプタヌ角床の安定化、飛行およびGPS䜍眮保持、気圧蚈高床保持、ブラシレス機構飛行䞭のビデオカメラを安定させたすカメラのサスペンション。

カメラの2軞ゞンバルを取埗したす。たずえば、GoProを入れお電源を入れるず、安定化の代わりに痙攣、振動、痙攣が発生したすが、すべおのセンサヌが范正され、機械的な問題は解消されたす。 その理由は、PIDコントロヌラヌのパラメヌタヌが正しくないためです。

あなたはマルチコプタヌを集め、センサヌ、レギュレヌタヌ、ラゞオを范正し、すべおをチェックし、離陞しようずしたす。 たたはその逆それは非垞に鋭利であるため、突然蚱可されずに䞉重の宙返りを壊し、ねじりたす。 理由は同じですPIDコントロヌラヌのパラメヌタヌ。

PIDコントロヌラヌを䜿甚する倚くのデバむスには、ナヌザヌ自身からの倚数のビデオ指瀺に加えお、セットアップの指瀺、たたはいく぀かの指瀺さえありたす。 しかし、この倚様性を簡単にナビゲヌトするには、これらのレギュレヌタヌが内郚にどのように配眮されおいるかを理解するこずが圹立ちたす。 さらに、独自のクアドロコプタヌ安定化システムを䜜成したす PIDコントロヌラヌの公匏を理解するために、改めお「指で」再発明するこずを提案したす。 ドラむな数孊蚀語がもっず奜きな人には、 英語の蚘事 Wikipediaをお勧めしたす。 ロシア語では、資料はただそれほど詳しくありたせん。

Quadrocopterを2次元空間で怜蚎したす。この堎合、1぀の角床かかずの角床ず2぀のモヌタヌ巊右しかありたせん。



フラむトコントロヌラヌは、地䞊からコマンドを継続的に受信したす。「30床のロヌル」、「-10床のロヌル」、「0床のロヌル地平線を維持」。 そのタスクは、颚、クアドロコプタヌの重量の䞍均䞀な分垃、モヌタヌの䞍均䞀な摩耗、クアドロコプタヌの慣性などを考慮しお、モヌタヌの助けを借りお可胜な限り迅速か぀正確にそれらを実行するこずです したがっお、フラむトコントロヌラヌは、motor角の珟圚の倀ず必芁な倀を考慮しお、各モヌタヌに適甚する回転速床の問題を継続的に解決する必芁がありたす。継続的に-もちろん、これは倧声で蚀われたす。それはすべお、特定のハヌドりェアのコンピュヌティング機胜に䟝存したす。Adruinoでは、凊理および制埡サむクルの1぀の反埩を10ミリ秒に収めるこずができたす。぀たり、10ミリ秒ごずに、クアドロコプタヌの角床の読み取り倀が読み取られ、それに基づいお制埡信号がモヌタヌに送信されたす。この10ミリ秒は芏制期間ず呌ばれたす。小さいほど、より頻繁に、より正確に芏制が行われるこずは明らかです。

ガスレベルは、レシヌバヌからコントロヌラヌに流れたす。聞かせお 。 これは、すべおのモヌタヌの回転速床間の算術平均であり、最倧回転速床の割合ずしお衚されるこずを思い出させおください。 もし そしお -次に、巊右のモヌタヌの回転速床




どこで -クアドロコプタヌの反䜜甚力。これは、巊のモヌタヌがガスよりも速く回転し、右のモヌタヌが同じくらい遅いずいう事実により回転の瞬間を䜜り出したす。負の倀を取るこずができ、適切なモヌタヌがより速く回転したす。凊理サむクルの各反埩でこの倀を蚈算するこずを孊べば、quadrocopterを制埡できたす。少なくずも、珟圚のヒヌルの角床ず、コントロヌルパネルからの垌望のヒヌルの角床に䟝存する必芁があるこずは明らかです。

状況を想像しおくださいコマンド「地平線を保持」= 0が受信され、クアドロコプタヌは巊にロヌルしたす



-間の差゚ラヌ そしお コントロヌラヌが最小化しようずしたす。

垌望するロヌル角ず珟圚のロヌル角の差が倧きいほど、反応が匷くなり、巊のモヌタヌが右に比べお速く回転したす。これが衚蚘を䜿甚しお蚘述されおいる堎合



ここで、Pは比䟋係数です。それが倧きいほど、反応が匷くなり、クアドロコプタヌは必芁なヒヌルの角床からの逞脱に鋭く反応したす。この盎感的でシンプルな匏は、比䟋コントロヌラの操䜜を説明しおいたす。本質は基本的なものです。クアドロコプタヌが望たしい䜍眮から倧きく倖れおいるほど、それを戻そうずする必芁が匷くなりたす。残念ながら、この匏は耇雑でなければなりたせん。䞻な理由はオヌバヌシュヌトです。

数十ミリ秒凊理サむクルの数回の反埩以内に、比䟋コントロヌラヌの圱響䞋で、クアドロコプタヌは必芁なこの堎合は氎平䜍眮に戻りたす。この間ずっず、゚ラヌず劎力の笊号は同じになりたすが、絶察倀はたすたす小さくなりたす。ある皮の回転速床角速床を入力するず、クアドロコプタヌは単玔に反察偎に萜ちたす。これは誰も必芁な䜍眮で停止しないためです。垞に最初の䜍眮に戻ろうずするバネず同じですが、匕き戻されお解攟されるず、摩擊が匕き継ぐたで倉動したす。もちろん、摩擊はクアドロコプタヌにも䜜甚したすが、実際には十分ではないこずが瀺されおいたす。

このため、比䟋レギュレヌタにもう1぀の甚語を远加する必芁がありたす。これにより、クアドロコプタヌの回転が遅くなり、オヌバヌシュヌト反察方向ぞの転倒が防止されたす。合理的な制限。回転速床゚ラヌの倉化率はで衚されたす。



ここで、Dは調敎可胜な係数です。倧きくなるほど、停止力が匷くなりたす。挠然ずした蚘憶は、物理孊の授業で、倀の倉化率は時間に察するこの倀の導関数であるずいうこずを瀺しおいたす。

。

そしお、ここで比䟋レギュレヌタヌは比䟋埮分比䟋項ず埮分に倉わりたす。

。

゚ラヌは蚈算が簡単です。なぜなら、各反埩でわかっおいるからです。 そしお ;PおよびDは、開始前の構成可胜なパラメヌタヌです。導関数倉化率を蚈算するには、前の倀を保存し、珟圚の倀を知り、枬定間で経過した時間芏制期間を知る必芁がありたす。そしお、圌女はここにいたす-孊校の6幎生の物理孊速床=距離/時間

。

-芏制期間; -芏制サむクルの前回の反埩からの゚ラヌ倀。ずころで、この匏は数倀埮分の最も簡単な方法であり、ここで私たちに非垞に適しおいたす。

フラットな「バむコプタヌ」に比䟋埮分コントロヌラヌがありたすが、もう1぀の問題が残っおいたす。巊端の重量を右端よりもわずかに倧きくするか、同じこずですが、巊のモヌタヌの動䜜は右よりもわずかに悪くなりたす。クワッドコプタヌは少し巊に傟いおおり、元に戻りたせん埮分項はれロに等しく、比䟋項は正の倀を取りたすが、クワッドコプタヌを氎平䜍眮に戻すだけでは十分ではありたせん。その結果、クアドロコプタヌは垞に巊に匕っ匵りたす。

このような逞脱を远跡しお修正するには、メカニズムが必芁です。このような゚ラヌの特城は、時間の経過ずずもに珟れるこずです。䞍可欠な甚語が助けになりたす。凊理サむクルのすべおの反埩のすべおの゚ラヌの合蚈を保存したす。これはどのように圹立ちたすか比䟋項が小さな誀差を修正するのに十分ではないが、ただ残っおいる堎合-埐々に、時間ずずもに積分項が匷床を獲埗し、反応が増加し、クアドロコプタヌが必芁なロヌル角を取りたす。

ニュアンスがありたす。仮に1床、調敎サむクルに等しい-0.1秒。その埌、1秒で、゚ラヌの合蚈は10床の倀になりたす。凊理サむクルが0.01秒の堎合、量は100床も増加したす。そのため、同じ期間に積分項が異なる芏制期間で同じ倀を埗るため、結果の量に芏制期間自䜓が乗算されたす。どちらの堎合でも、結果は1床の量であるず蚈算するのは簡単です。ここにありたす-積分項これたでのずころ、カスタム係数なし

。

この匏は、れロから珟圚の瞬間たでの区間の関数の時間積分にすぎたせん。それが甚語が積分ず呌ばれる理由です

、

ここで、Tは珟圚の時刻です。
比䟋積分埮分コントロヌラの最終匏を曞く時が来たした

、

どこで -カスタマむズ可胜なパラメヌタヌの1぀。そのうち3぀がありたす。 。 この匏はプログラムコヌドから䜿甚するず䟿利ですが、教科曞に蚘茉されおいる匏は次のずおりです。

。

これにはいく぀かのバリ゚ヌションがありたす。たずえば、積分項のモゞュヌルを制限しお、特定の蚱容しきい倀を超えないようにするこずができたすそのようにしたす。

緎習する

さお、今は係数を遞択する緎習の時間です。読者は、仮想のquadrocopterを䜿甚したJavaScriptペヌゞに招埅されおいたす。これは、すでに写真で芋たずおりです。quadrocopterのPIDコントロヌラヌパラメヌタヌの遞択JSFiddle最初の開始時に、オヌバヌシュヌトがすぐに衚瀺されたす-目的の䜍眮の呚りの倉動。振動が停止するず、「非察称」クアドロコプタヌ「非察称」の目盛りで蚭定による比䟋係数が゚ラヌに察凊できないずいう効果を芳察できたす。パラメヌタヌP、I、Dをチュヌニングに䜿甚できたす。クアドロコプタヌの䞋の「スクロヌル」により、垌望のロヌル倀を制埡できたす。 「間隔ms」-芏制間隔。枛らすこずは「䞍正行為」ですが、それが安定化の品質にどのように圱響するかを確認するこずは非垞に䟿利です。

「玔粋な」数孊を愛する人のために、抜象PIDコントロヌラヌの構成を提案できたす。

入力したパラメヌタヌは自動的に適甚されたせん。「適甚」をクリックする必芁がありたす。いく぀かの小さなヒントクアドロコプタヌが制埡するには反応が遅すぎるず思う堎合-Pを増やすこずができたすが、Pが倧きすぎるずオヌバヌシュヌトに぀ながる可胜性がありたす。パラメヌタDはオヌバヌシュヌトに圹立ちたすが、倀が倧きすぎるず頻繁に倉動するか、再床オヌバヌシュヌトしたす。パラメヌタIは通垞、パラメヌタPの10〜100倍小さいため、圌の匷みは時間の経過に䌎う蓄積にあり、迅速な察応にはありたせん。

PIDパラメヌタヌの手動調敎には緎習が必芁です。それらを蚈算するための分析方法がありたすが、それらは特定のカスタムシステムの倚くのパラメヌタヌの適切な準備ず正確な知識を必芁ずしたす。手動遞択ず分析蚈算の䞭間点ずしお、さたざたな研究者によっお提案された幅広い経隓的方法がありたす。

2Dクアドロコプタヌでは、1぀の角床しか倉化したせん-かかずの角床です。チュヌニング3Dクアドロコプタヌでは、角床ごずに3぀の独立したPIDコントロヌラヌが必芁であり、特定のモヌタヌを制埡するこずは、すべおのコントロヌラヌの努力の合蚈を衚したす。

前半のたずめ

この蚘事では、クアドロコプタヌずフラむトの原理、ピッチ、ロヌル、ペヌ、ガス、ホバリングガス、フラむトモヌドの安定化、フラむトコントロヌラヌ、ゞャむロスコヌプ、加速床蚈、速床コントロヌラヌ、PWM、コントロヌラヌキャリブレヌション、無線キャリブレヌション、オンボヌドレシヌバヌ、フラむトコントロヌラヌの蚭定むンタヌフェむス、歊装/歊装解陀状態、自動歊装解陀。

その埌、数倀の埮分ず統合に少し觊れおPIDコントロヌラヌの公匏を再発明し、仮想quadrocopterでパラメヌタヌP、I、Dを構成する方法を独自のスキンで経隓したした。

さお、ラむトセヌバヌプログラミングを所有しおいる堎合は、quadrocopter安定化プログラムに着手できたす。たたは、さらに良いこずに、新鮮なアむデアで新鮮なオヌプン゜ヌスプロゞェクトに参加できたす。たあ、1、2週間で、品質に匹敵する力ず時間があるずき、プログラミング、テスト、萜䞋、指を切っお未知の方向に完党に飛び去った方法の話を続けたす。本圓に継続したい堎合は、ここで私を蹎るこずができたす。たずえば、Vkontakteこれは少しむンセンティブを䞎えたす。

最初この郚分の結論ずしお、私はちょうどファヌムりェアMegapirateNGに耇雑なQuadrocopterのコンポヌネントず構成を遞ぶ際に私を助けたし、蟛抱匷くこれらの最も基本的な抂念に疑問の数癟に答えた人蚀及する必芁がありSovGVD、あなたに感謝を :-)

このシヌト党䜓を浪費するこずができた人々ぞの報酬ずしお、私たちの「発明された」PIDコントロヌラヌを備えたクアドロコプタヌのような玄束された小さなビデオを投皿し、Arduino Mega 2560のプログラムを飛ばしたす



もちろん、圌はGPSを欠いおおり、商業補品や量産品ず同様に、圌は安定性を少し欠いおいたすが、䞀方で私たちは、積分係数を持぀最埌の因子たでそれを知っおいたすそしお、そのような技術が今日私たちに利甚可胜であるこずは本圓にクヌルです。

楜しい時間を過ごしおいたせんか




All Articles