発行済み 2026-03-27
二軸に取り組む仲間たちサーボ開発者は、最大の恐怖はコードが書けないことではなく、大量のケーブルやモーターに直面して頭の中の制御ロジックがまったく接続できないことであることを知っています。今日は「」についてお話します。二軸ステアリングギア制御システムのフローチャート」 これは多くの人に頭痛の種を与えますが、この難しい問題を解決するのに役立ちます。
こんな経験はありませんか?モーターは回転し、センサーは読み取りを行うことができますが、2 つの軸が連動すると動かなくなってしまいますか?実際、問題の多くは、制御プロセス全体の明確なマップがないという事実にあります。このフローチャートがなければ、ナビゲーションなしで見知らぬ街に入るようなものです。一歩ずつ進めていては当然効率は上がりません。
2軸と言えばサーボ実際には、水平方向と垂直方向の両方に同時に動きます。これはジンバルに頭脳を追加したものと考えることができ、ジンバルはターゲットを水平に追跡し、垂直に狙い続ける必要があります。多くの初心者が犯すよくある間違いは、2 つの軸を別々にデバッグすることです。その結果、リンクされるとすべてがうまくいかなくなります。
真に信頼性の高い制御システムは、2 つの軸の信号を同じロジックのセットに統合する必要があります。言い換えれば、フローチャートでは、水平軸が特定の角度コマンドを受け取ったときに垂直軸がどのように応答するかを明確に示す必要があります。ドラマーとギタリストに自分の役割をやらせることができないバンドのリーダーのようなものです。
新しいプロジェクトを手に入れるとき、私は通常、入力信号から始めます。 2軸の最も重要な入力サーボシステムは、多くの場合、リモコンからの PWM 信号、またはシリアル ポートから送信される角度値です。フローチャートを描くときは、ペリフェラル割り込み読み取りかタイマーポーリングかにかかわらず、信号のソースで開始点を明確にマークする必要があります。
友人の中には、データがどこから来たのか、どのような形式なのかが理解できず、いつも最初の段階で行き詰まってしまう人もいます。たとえば、STM32 をメイン制御として使用する場合は、どの IO ポートが信号の受信を担当するのか、およびデータ検証に失敗した出口がどこを指しているのかをフローチャート上で明確にマークする必要があります。入り口が明確であれば、その背後にあるロジックはスムーズになります。
PIDアルゴリズムは2軸制御の心臓部ですが、多くの人は単に四角を描いてフローチャートに「PID計算」と書くだけで、まったく不十分です。本当に効果的なフローチャートは、PID の 3 つのリンクを分離し、比例項が計算される時期、積分が制限される時期、および微分項がどのサンプリングから取得されるかを明確にマークします。
また、2 つの軸間の優先順位にも注意してください。たとえば、横軸が安定してから縦軸を計算するのか、それとも2つの軸を並行して処理するのかなどです。このシーケンスは、ジンバルが高速で移動するときに「うなずく」かどうかに直接影響します。判定ダイヤモンド ボックスを使用してフローチャート内の優先条件をマークすると、隠れた多くのバグを事前に発見するのに役立ちます。
制御システムを構築するときに最も恐れていることは何ですか?モーターの停止やセンサーの断線などの緊急事態です。優れたフローチャートは、通常のプロセスを描画するだけではなく、分岐を開いて例外処理を描画する必要があります。たとえば、メイン ループの隣に「障害検出」モジュールを描画し、電流が制限を超えるとシャットダウン プロセスにジャンプすることができます。
美しいフロー図を持っているエンジニアを何人も見てきましたが、電源を入れた瞬間にサーボがもみがらのように震えました。結局、リミットスイッチがフロー図に全く反映されていないことが判明した。ソフトリミットとハードリミットをそれぞれチェックする箇所と、チェックに失敗した場合に直接電源を遮断するか、センター復帰動作を行うかを図上に明確に記入することをお勧めします。
フローチャートは、描いた後にキャビネットに放り込んで埃をかぶるものではありません。これはパラメータを調整するためのナビゲーション チャートとなるはずです。たとえば、PID パラメータを調整する場合、比例係数の調整によってどの判断ブランチが影響を受けるか、積分リンクにバイアスがかかるかどうかをフローチャートで段階的に確認できます。このように、パラメータの調整は意図的なものであり、運の問題ではありません。
さらに、フローチャートを使用して問題をトラブルシューティングすると、特に効率的です。一度サーボのゼロ点ドリフトに遭遇して、フローチャートに従って実行したところ、初期化部分の「校正値の読み取り」のリンクが抜けていることが分かり、すぐに修復されました。したがって、フローチャートは、組み込み開発に携わる私たちにとって本当に命を救うツールです。
長年制御フローチャートを描いてきて、各軸を独立したタスクとして描き、最後に同期線を使って 2 つの軸の交点を結ぶのが最も現実的な方法だと思います。たとえば、横軸と縦軸の両方のデータを収集した後、「座標変換」モジュールを使用して 2 つの軸のデータを統合します。
もう 1 つの小さなトリックは、フローチャート内の各モジュールに推定実行時間をマークすることです。たとえば、「読み取り」は 5 マイクロ秒、「PID 動作」は 3 マイクロ秒でマークされるため、どのリンクがボトルネックになっているかが一目でわかります。特に 2 軸システムの場合、横軸の計算に時間がかかりすぎると縦軸の応答が遅くなります。この詳細を図上で明確にマークすると特に便利です。
これを見た人は、たまたま二軸ジンバルプロジェクトを手元に持っているのではないかと疑問に思うかもしれません。あなたのアイデアに基づいて標準的なフローチャートを作成できますか?実際、各プロジェクトの要件は異なりますが、同じです。信号の流れ、アルゴリズム ロジック、例外処理の 3 つの主要なラインを理解している限り、フローチャートから逸脱することはありません。実際のプロジェクトでは、フローチャート上のどのリンクが二軸調整の問題を引き起こす可能性が最も高いと思いますか?コメント欄であなたの経験についてチャットしてください。今日のコンテンツがあなたにインスピレーションを与えたと思われる場合は、「いいね」を押してサポートすることを忘れないでください~
更新時間:2026-03-27