アフィリエイト広告
アフィリエイト広告

サーボモータ SG90 に流れる電流は 1.2A

久しぶりに、部品箱からサーボモータ SG90 を出してきました。

じつは、ずっと気になっていたのですが、サーボモータってどれだけの電流が流れるんですか?

購入した秋月電子通商のサイトのデータシートにも書かれていないし、ググっても明確な答えが得られない。300〜500mA 程度は見込んでおかないといけない、との記述は散見したものの、サーボモータを動かした時の電源電圧の変動っぷりは、なんだかもっと大きな電流を予感させます。

わからなかったら自分で調べてみればいい。
そーなんですけど、なかなか機会がなくて (._.)

回路図

サーボモータの電流計測

スケッチ例の Sweep を使ってサーボモータを動かし、その時の電流を計測してみましょう。
ついでに、Arduino Nano Every で動くかどうか、確かめます。

左図のように、サーボモータの GND ラインに 0.1Ω の抵抗を入れ、その両端の電圧を測ることで、流れる電流を算出します。

Sweep をボードに書き込むと、サーボモータが動き出します。スケッチではライブラリを使用していますが、 Arduino Nano Every でもとりあえず動きました。

電流波形

黄色が、抵抗 0.1Ω の両端の電圧波形です。青は、サーボモータの制御 PWM 信号です。

抵抗の両端の電圧は ±40mV で、3ms 毎に最大で +120mV まで跳ね上がります。
電流値は、この電圧を抵抗値 0.1Ω で割った値ですから、+1200 〜 -400mA ということになります。

±400mA 部分の平均値は 0mA です。1200mA のデューティ比は 12% ほどと読み取れますので、平均値は 144mA 。抵抗の両端をテスターで測ると、変動がありますが、13mV 程度を示します。つまり、平均値で 130mA で、近似した値となります。

ということで、サーボモータ無負荷時の平均電流値は 130mA 、最大値 1.2A 、デューティ比が 12% 、周期 3ms ってことになります。

なお、負荷を掛けると、電流の最大値は増えずにデューティ比が大きくなります。
さらに負荷を大きくすると、Arduino Nano Every の制御出力が止まってしまいました。壊れたか、と一瞬冷や汗が出ましたが、リセットで再び動き出しました (;´Д`)

結果:SG90 の最大電流は 1.2A

サーボモータに関する記事では、Arduino の 5V 出力を使うのは避けたほうがいい、と書いていましたが、やっぱり止めるべきですね。モータ用に別途 1.5A ぐらいの容量のある電源を用意したほうが良いです。

気になっていたことがわかったので、次回も Arduino Nano Every でサーボモータを動かしてみましょう。

タイトルとURLをコピーしました