sg90 マイクロサーボモーターコード arduino_Servo_Industry Insights_Kpower
家 > 業界の洞察 >サーボ
テクニカルサポート

製品サポート

sg90マイクロサーボモーターコードarduino

発行済み 2026-01-19

マイクロ サーボを入手: SG90 と Arduino を使った簡単な旅

これはあなたにも起こったことがありますか?私は、ロボット アームを動かしたり、家の自動ドアを設置したりするなど、小さなプロジェクトを興奮して始めましたが、最終的には最も基本的なリンクで行き詰まってしまいました。小さなサーボが従わないということです。プログラムはアップロードされ、ケーブルは正しく接続されていますが、揺れたり、まったく動かなくなります。この時点で、あなたは Arduino ボードとその隣にある静かな SG90 マイクロ サーボを見つめているので、どこから始めればよいか少し混乱するかもしれません。

心配しないでください。多くの人がこの小さなトラブルに遭遇しています。サーボ、特に SG90 のような一般的なモデルは、非常に信頼できる小さなやつです。問題は多くの場合、私たちがそれと「コミュニケーション」する方法にあります。今日は、SG90 と Arduino ボードがスムーズに通信し、あなたのアイデアを感動的な現実に変える方法について、カジュアルにお話します。

サーボは正確に何を「聞いている」のでしょうか?

サーボがどのような信号を待っているかを知る必要があります。通常のモーターとは異なり、電源を入れると回転します。内部には、コントローラー (Arduino など) からの特定のパルス信号を常に待機する小さな回路があります。このパルスの幅によって、サーボ軸が回転する角度が決まります。非常に短いコマンドを受け取ると考えることができます。コマンドの長さは、「左に 30 度回転」または「右に 90 度回転」に相当します。

一般に予想される SG90 のパルス周期は約 20 ミリ秒、パルス幅は 0.5 ミリ秒から 2.5 ミリ秒の間で、0 ~ 180 度の角度変化に対応します。信号が間違っている場合は、信号を理解できないか、奇妙な動作をします。

私のコードでは動かないのはなぜですか?

考えられる理由はいくつかあります。おそらく最も単純な配線の問題です。サーボには、電源 (通常は赤)、アース (通常は茶色または黒)、および信号 (通常はオレンジまたは黄色) の 3 本のワイヤがあります。電源線とアース線は正しく接続する必要があり、信号線は Arduino の正しいデジタル ピンに接続する必要があります。

さらに、電源が十分に強力ではない可能性があります。 Arduino ボードの USB ポートまたは 5V ピンは、特にサーボの起動時またはロード時に、ボードとサーボに同時に十分な電流を供給できないことがあります。このとき、サーボが回転できなくなったり、Arduinoボードが予期せず再起動したりする場合があります。多くの場合、サーボ用の独立した 5V 電源が問題解決の鍵となります。

次にコードが来ます。 Arduinoの使用サーボこのライブラリは非常に便利で、わずか数行のコードで制御できます。しかし、ライブラリは正しくインポートされましたか?サーボオブジェクトは作成されましたか?ピン番号は正しく定義されていますか?これらの詳細は、間違った文字を入力するとコマンド全体が無効になるようなものです。

最初に挨拶をさせるための簡単なコードを次に示します。

ここまで話してきたので、ちょっとした例を見てみましょう。 SG90 信号線を Arduino のピン 9 に接続するとします。

#include <サーボ.h> //サーボライブラリを導入するサーボ私のサーボ; // サーボ オブジェクトを作成し、myServo という名前にします int servoPin = 9; // 信号線が接続されるピンを定義 void setup() { myServo.attach(servoPin); // サーボがどのピンに接続されているかを Arduino に伝えます } void loop() { myServo.write(0); // サーボを 0 度の位置まで回転させます。遅延(1000); // 1 秒待ちます myServo.write(90); // サーボを 90 度の中間位置まで回転させます。遅延(1000); myServo.write(180); // サーボを 180 度の位置まで回転させます。遅延(1000); }

このコードをアップロードすると、すべてがうまくいけば、サーボがこれら 3 つの位置の間でゆっくりと前後に揺れ始めるのが確認できるはずです。それは握手して基本的なつながりを確立するようなものです。

動きをよりスムーズに、より想像力豊かに

基本的なスイングは機能しますが、動きが少し唐突に感じられ、よりゆっくりと優雅にしたいと思うかもしれません。このとき、write()関数は瞬時に指定角度に到達します。別のアイデアを使用することもできます。角度の値を少しずつ変更します。

#include  サーボ myServo; int pos = 0; // 変数を使用して現在の角度を保存します void setup() { myServo.attach(9); } void loop() { // 0 度から 180 度までゆっくりと増加します for (pos = 0; pos <= 180; pos += 1) { myServo.write(pos);遅延(15); // 速度を制御するために各変更の後に少し遅れます } late(1000); // その後、180 度から 0 度までゆっくりと減少します。 for (pos = 180; pos >= 0; pos -= 1) { myServo.write(pos);遅延(15);遅延(1000); }

これで、サーボはスムーズに前後にスキャンします。値はlay(15)で調整できます。数値が大きいほど動作が遅くなります。このプログラミングを使用すると、レーダー スキャン、ファン ブレードのゆっくりとした開閉、または穏やかな動きが必要な効果をシミュレートすることができます。

適切なパートナーを選択すれば、戦いは半分終わります

慣れてきたら、さらに多くのプロジェクトを開始できるかもしれません。現時点では、安定した信頼性の高いステアリングギアが非常に重要です。市場には多くの SG90 モデルがありますが、使用感は大きく異なります。いくつかの製品は、数回使用すると振動し始め、騒音が大きくなります。少し力を加えると角度が不正確になるものもあります。

結局のところ、マイクロサーボは精密な電気機械部品です。内部のギアの材質、モーターの効率、制御回路の安定性によって応答速度、トルク、耐久性が決まります。選ぶ際には、ギアの滑らかさ、モーター走行時の静粛性、繰り返しのテストで安定した精度を維持できるかなど、細部にまでこだわった製品のほうが注目できます。

優れたコンポーネントは、暗黙のパートナーのようなものです。指示を与えると正確に実行されるため、デバッグやトラブルシューティングにおける多くの問題がなくなり、プロジェクト自体の興味深い部分により多くの時間と創造性を集中できるようになります。

試してみてください、楽しいことはその過程にあります

SG90サーボを動かすことから精密な制御、そして複雑なアクションシーケンスを実現することは、それ自体が楽しいプロセスです。それは、ロボット工学や自律型デバイスのより大きな世界への小さな扉のようなものです。信号の問題、電源の問題、コードのスタックが発生するのは当然のことであり、それらを解決することは学習の一部です。

これらの分散した共有が、この小さなデバイスでより簡単に遊び始めるのに役立つことを願っています。コードが初めて目的のアクションを実行することに成功したとき、その小さな達成感は、実践的な制作において最も魅力的な瞬間の 1 つです。楽しんで、もっと感動的な小さな奇跡を起こしてください。

2005 年に設立された Kpower は、中国広東省東莞に本社を置く、コンパクトモーションユニットの専門メーカーとして活動してきました。 Kpower は、モジュール式ドライブ技術の革新を活用して、高性能モーター、高精度減速機、マルチプロトコル制御システムを統合し、効率的でカスタマイズされたスマート ドライブ システム ソリューションを提供します。 Kpower は、スマート ホーム システム、自動エレクトロニクス、ロボティクス、精密農業、ドローン、産業オートメーションなどのさまざまな分野をカバーする製品で、世界中の 500 を超える企業クライアントにプロフェッショナルなドライブ システム ソリューションを提供してきました。

更新時間:2026-01-19

未来に力を与える

お客様の製品に適したモーターまたはギアボックスを推奨するには、Kpower の製品スペシャリストにお問い合わせください。

Kpowerにメールする
お問い合わせを送信
WhatsApp メッセージ
+86 0769 8399 3238