前提
最近arduinoの勉強をしている者です。
実現したいこと
サーボモーターを動かす時に5vピンを差すと、Youtubeの動画に書いてあったので真似しました。
そこで、ん???と思いました。
ledを点滅させた時、5vピンは使ってはいませんでした。
調べたらデジタル入出力ピンからは5vの電圧が流れるらしいのですが,それだと5v、3.3vは何のためにあるのですか?
補足情報
arduinoの種類?はarduino mega2560です
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答4件
0
・IOのHレベルは電源電圧そのままとは限らない
一般に、回路には抵抗成分があるので電流に対して電圧降下が起こり、出力電圧は小さくなっていきます。この度合いについて使われているマイコンATMega2560の仕様書に書かれています。31.1章DC CharacteristicsにVOHという項目があり、電源5V時-20mAで4.2V, 3V時-10mAで2.3Vと書かれています。5V電源で使用時(Arduino Megaの通常使用時)、IOから20mAの電流を流しだしたら少なくとも4.2Vの電圧は出てくるということですが、逆にそれ以上の電圧は期待してはいけないということでもあります。決して、電源電圧がそのままIOに出てくるわけではありません。(もちろん、最高電圧としては電源電圧がそのまま出てくる可能性もあります)
一方、外部電源ジャックから給電したときは5V端子には800mA定格の三端子レギュレータ(電圧安定)ICを通して電源を供給されています。STMicro社のLD1117という部品が使われているようですが、これの仕様書のTable7を見ると、5V出力から0~800mAを取り出した時、4.9~5.1Vの範囲になると書いてあります。実使用上どうなるかは外部に接続した電源の性能にもよりますが、とりあえずArduino Mega単体としてはそういう性能を持っているということになります。
USBコネクタから電源供給する場合は、500mAの電流制限素子(自然復帰するヒューズのようなもの)を通していますから、5V端子から取り出す電流が500mAを超えると電源が遮断されます(実際にはもっと少ない電流で使わないと制限素子が劣化しますが...)。それより小さい電流でどうなるかは外部の回路次第。特にUSB2.0でバスパワーのUSBハブを使ってあちこちに電源を供給していたりすると、小さな電流で電圧が落ちてしまうかも知れません。
・規定以上の電流を流したら命の保証はない
前述のマイコン仕様書の31章冒頭 Absolute Maximum Ratings, 「一瞬でもこのレベルを超えたら部品の正常動作を保証しません」という値ですが、DC Current per I/O Pin は40.0mAとなっています。つまり、IOピンから40mAを少しでも超える電流を流したらもうそのマイコンは工業的には壊れたものと考えろ、ということです。
一方、5V端子は、電源ジャックからは800mA定格の三端子レギュレータ、USBから給電しているときはUSB端子から500mAの電流制限素子を通して給電しています。これが即800mA/500mAを流し続けていいということを意味するものではありませんが、とりあえず800mA/500mAを流してもすぐには壊れない、と言ってもいいでしょう。
以上を前提知識として...
サーボモーターの電源には(型式によっていろいろですが)通常起動時には瞬間数百mAの電流が流れようとするでしょう。とすると、IOピンからサーボモーターの電源を供給しようとしたら、
- マイコンが壊れるかもしれない(実際、すぐには壊れないことが多いですが、劣化して寿命が短くなったりします)
- 5Vより低い電圧しか供給されず、モーターが起動しない(電流が流れると電圧が下がってしまう)かもしれない
なんていう現象が起こる可能性が出てくるわけです。
LEDの場合は数mAも流せば十分に光りますから、ピン電圧が多少下がろうと十分な電流が流れるし、それでマイコンを壊すこともありません(もちろん、適切に使っている前提ですが)。
なお、「電圧が流れる」ことはありません。電圧はかかるもの、流れるのは電流です。
投稿2022/09/24 09:05
総合スコア7723
0
ベストアンサー
流せる電流が違います
電源ピンのほうがより多くの電流を流せます
投稿2022/09/24 06:59
総合スコア13553
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/09/24 07:51
2022/09/24 09:07

0
5v、3.3vは何のためにあるのですか?
まず、電気で動くデバイスには、通常、動作するための適切な電圧というものがあります。日本の家電製品はたいてい100Vです。 そのままアメリカに持っていって200Vの電源に挿すと壊れてしまいます。
ICも動作には電源が必要で、適切な電圧は5Vのものと3.3Vのものが主流です。 そして、arduinoにそれらのICを接続するときに、別に電源を用意するのではなく、arduinoから電源が供給できれば便利ですよね。 ということで、 5Vや3.3Vを供給できるようになっているのです。
サーボモーターを動かす時に5vピンを差すと、Youtubeの動画に書いてあったので真似しました。
arduionが供給できる電力(電圧×電流)はそれほど大きくありません。どれくらい出せるかはスペックシートを確認してください。 ICであれば駆動するのに必要な電力は大抵それほど大きくありませんし、LEDもそれほど大きくありません。
モータは違います。大抵のモータはarduinoが供給できる電力では動かすことができません。そのYoutubeの投稿でどのようなことをしていたかはわかりませんが、たぶん、モータ制御用の基板をarduinoに接続して、その基板でモータを制御しているのだと思います。「サーボモーターを動かす時に5vピンを差す」と書いてあったのは、その基板が5Vで動作する/5Vで制御するものだったのでしょう。
投稿2022/09/24 08:24
総合スコア14245
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。