arduinoでファンを回す方法とは?

このQ&Aのポイント
  • arduino UNO R3を使用してファンを回そうと思ったが上手く行かない。DC 5V、0.45wのブラシレスモータを使用しており、マイコンの出力電圧は5Vなので出力ピンとGNDにつないだが動かない。10ミリ秒感覚でHIGHとLOWを繰り返したらゆっくり回るが、上手にモータを回す方法はあるのか。
  • arduino UNO R3を使用してファンを回そうとしているが、うまくいかない。DC 5V、0.45wのブラシレスモータを使用しており、マイコンの出力電圧は5Vである。出力ピンとGNDにつなげば動くはずだが、電圧をかけた瞬間に動きが止まってしまう。10ミリ秒ごとにHIGHとLOWを繰り返すと、ゆっくりと回るが、より上手にモータを回す方法はないだろうか。
  • arduino UNO R3を使ってファンを回したいが、上手くいかない。DC 5V、0.45wのブラシレスモータを使っているが、マイコンの出力電圧は5Vである。出力ピンとGNDに接続しても、動かずに止まってしまう。10ミリ秒ごとにHIGHとLOWを繰り返すと、ゆっくりと回るが、モータを正常に回す方法はあるのだろうか。
回答を見る
  • ベストアンサー

arduinoでファンを回したい

先日arduino UNO R3 というマイコンを入手しました。 これを使ってファンを回そうと思ったのですが上手く行きません。 1.5vの単三電池を3つ直列にして電気を流したらファンは勢いよく回りました。 ファンはDC ブラシレスモータと言うもので、DC 5V、0.45wと書かれています。 マイコンの出力電圧は5Vなので出力ピンとGNDにつないだら動くと思うのですが電圧をかけた瞬間に少し動こうとして止まります。 10ミリ秒感覚でHIGHとLOWを繰り返したら、ゆっくりですか回りました。 上手にモータを回すにはどうすればいいのでしょうか? 完全な初心者なので、根本的な勘違いをしていたらすみません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • RTO
  • ベストアンサー率21% (1650/7788)
回答No.2

仕様書これですかね http://arduino.cc/en/Main/ArduinoBoardUno 「DC Current per I/O Pin 40 mA 」と書いてありますね このような電子部品の場合 モーターなどの電力を食う機器を直接制御できるほど大電流を流せないと思われます。あくまでもデジタルICに信号を送ったり せいぜいLEDの店頭程度。 0.45wというと せいぜい100mA程度なのですけどね。 トランジスタやリレーで「間接的に」制御してみましょう

taka1250
質問者

お礼

別に電流限を確保して、トランジスタを繋いでみます。ありがとうございました。

その他の回答 (2)

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.3

既に回答ついていますが…… マイコンからの出力で動かすには電流が足りないでしょう。 「arduino モーター」で検索するといろいろ見つかるハズです。 # リレーで動かす場合はダイオードの追加を忘れずに…。 # 理由は「リレー ダイオード」辺りで検索を。

taka1250
質問者

お礼

言われたとうり検索したら色々とわかりました。ありがとうございます!

  • ziv
  • ベストアンサー率27% (426/1542)
回答No.1

FANとかモーターを回すなら、 電圧だけでなく、電流値も重要かと。 arduino UNO R3の出力電流値が足りてないのでは? そういった場合は、マイコンからの出力はリレーのオンオフに使用して、 ファン用の電源は別途用意するのが普通かも。

taka1250
質問者

お礼

電流の値も考えないといけないのですね。ありがとうございました。

関連するQ&A

  • 【Arduino】モーターが最高速でも遅い

    Arduinoからブラシレスモータを4つ制御しようとしています。 Arduinoと4つのモータドライバを繋げ、各モータドライバとモータを繋げています。 モータドライバのSet Value Speedというピンに0~5Vの電圧をかければそれに応じた回転数が得られる事になっています。 しかし、5Vをかけてもモータの本来の最高速の1/3くらいしか得られません。 Set Value Speedにかける電圧を徐々に上げていくと、0.5Vくらいまでは回転数が上がっていくのですがそれ以降は変化しません。 使用しているのは以下の通りです。よろしくお願い致します。 Arduino: Arduino UNO モータドライバ: maxon DEC Module 50/5 http://www.maxonjapan.co.jp/media_releases_10284.html http://www.maxonjapan.co.jp/manual/dec/DEC%20Module50-5_J(380200).pdf モータ: maxon EC 22 100W http://www.maxonjapan.co.jp/media_releases_10331.html http://www.maxonjapan.co.jp/products/datasheets/151.pdf ギアヘッド: maxon GP22 HP http://www.maxonjapan.co.jp/products/datasheets/224.pdf

  • arduinoのsetup()について

    現在,arduino uno R3によって,モータドライバTA7291Pを通して,DCモータを制御しております. arduinoにスケッチを送った直後にDCモータを回転させないようにするにはどうすればよいでしょうか? setup()関数の中で,モータドライバの入力端子2つにつながっているarduinoの端子2つを出力に設定した上で,これらの端子の出力をHIGHにしました. しかし,arduinoにスケッチを送った直後はDCモータが回転してしまいます. ご教授のほどよろしくお願いいたします.

  • Arduinoとモータドライバのつなぎ方...

    卒論でDCブラシレスモータをArduinoで制御することにしました。 ArduinoとDCブラシレスモータ、モータドライバは以下のものを購入しています。 プログラムについてまだまだ勉強不足で申し訳ないのですが、Arduinoとモータドライバのつなぎ方をどのようにしてよいかイマイチよくわかっていません... 申し訳ありませんが、お詳しい方教えてください。 ・ArduinoMega2560 ・EC45flatΦ42.8mm ブラシレス50Watt(DCブラシレスモータ) ・DECModule50/5(モータドライバ)

  • 私はArduinoで冷却ファンを回そうと考えていま

    私はArduinoで冷却ファンを回そうと考えています。 ファンは5v0.3Aのもので、特にPWMはやりません。 DCファンのため、DCモータと同じ認識でいいしょうか? できるだけ外部電源は使わずGPIOで回したいですが、モジュールなどありましたらお願いします。

  • ソリッドステートリレーの使い方

    マイコン(arduino uno)による制御により、AC100Vで動く装置をONOFFしたいと思っています。 そこで以下の様なソリッドステートリレーを買いました。 ◆入力制御電圧:DC3~8V(24V),5mA ◆出力制御電圧:AC100V,25A(十分に放熱した場合) 放熱しない場合は2Aぐらい(200W)ま ソリッドステートリレーの使い方を検索すると、マイコンのOUTPUTにトランジスタをかまして、若しくはNOT回路をかまして、リレーの入力につないでいます。これはなぜでしょうか? arduino unoから5Vが出力されるわけで、5mAを取りたいということならば、ただ単に1kΩの抵抗を直列に入れて5mAになるように端子から出る電流を調整し、リレーに繋げばいいのではないでしょうか。 私の理論の何が間違っているのか、または私の理論でも動くのか、教えてください。

  • Arduino UNO R3とモーターシールド

    Arduino UNO R3とモーターシールドL298を使用して制御を行おうとしています. シールドはArduinoだけでは電流値が足りず, 外部電源(単三乾電池4本)を用いるために導入したのですが, このシールドを用いるとテスターで確認してもプログラム通りに電圧を出力してくれません. プログラムは,Arduino単体で動かした時には正常に動いたものを モーターシールドを動かすために改変したもので,間違いは無いと思われます. モーターシールドはこれを使っています. http://www.elecfreaks.com/wiki/index.php?title=L298_Motor_Shield 電圧が供出力されない原因はなにか,まったくわかりません. 回答の程よろしくお願い致します.

  • arduinoとDCモーターとポテンショメーターな

    arduinoとDCモーターとポテンショメーターなどを使って、DCモーターのフィードバック制御をしようと思っています。DCモーターのモータードライバーとして、モーターシールド( https://www.amazon.co.jp/Arduino-A000079-モータシールド-Rev3/dp/B00THGHNEE )を使う場合、モーターシールドがarduinoを全て覆ってしまうので(arduinoのピンがモーターシールドによって塞がれてしまうので)、ポテンショメーターの出力信号などはarduinoに取り込めないのでしょうか? よろしくお願い致します。

  • Arduinoのスケッチでエラーがでてしまいます。

    【電子工作関連】Arduinoでボタンを押すとランダムに3つのモーターのうち一つが回転するというスケッチを書きたいのですが、エラーが出てしまいます。どこが間違っているのでしょう? Arduinoで、ボタンを押すとランダムに3つのモーターのうち一つが回転するというスケッチを書きたいのですが、コンパイル使用とすると、 「error: expected unqualified-id before numeric constant」 というエラーが出てしまいます。 どこが間違っているのでしょう? 下がそのスケッチです。 なお、モータードライバにはTA7291Pを使用。 信号ピンである5番6番ピンをArduino5~10番ピンに振り分けて、それぞれにモーターを接続、 電源やGNDは共有してます。 なお、ボタンを使わず、単純に3つのモーターのうち一つが回転するというというスケッチは出来ていて、実際にその通り動いています。 ------------------------------ //3つのモーターをランダムに動かす int val = 0 //入力ピンの状態がこの変数に記憶される void setup(){ pinMode(2,INPUT); //ボタンを入力に設定 pinMode(5,OUTPUT); //モーター(1)のドライバー5番ピンを出力に設定 pinMode(6,OUTPUT); //モーター(2)のドライバー5番ピンを出力に設定 pinMode(7,OUTPUT); //モーター(3)のドライバー5番ピンを出力に設定 pinMode(8,OUTPUT); //モーター(1)のドライバー6番ピンを出力に設定 pinMode(9,OUTPUT); //モーター(2)のドライバー6番ピンを出力に設定 pinMode(10,OUTPUT); //モーター(3)のドライバー6番ピンを出力に設定 } void loop(){ val = digitalRead(2); //入力を読み取りvalに格納 if (val == HIGH){ digitalWrite(random(5,8),HIGH);//ランダムにモーターを正回転させる } else { digitalWrite(5,LOW); digitalWrite(6,LOW); digitalWrite(7,LOW);//モータを止める } }

  • Arduinoでランダムにモーターを回したい

    【電子工作関連】Arduinoでボタンを押すたびに、ランダムに3つのモーターのうち一つが回転するというスケッチを書きたいのですが、ランダムになりません。どうすればランダムになるでしょう? 下がそのスケッチです。 今のところ、3つ全てのモーターが回ってしまいます。 なお、モータードライバにはTA7291Pを使用。 信号ピンである5番6番ピンをArduino5~10番ピンに振り分けて、それぞれにモーターを接続、 電源やGNDは共有してます。 なお、ボタンを使わず、単純に3つのモーターのうち一つが回転するというというスケッチは出来ていて、実際にその通り動いています。 ------------------------------ //3つのモーターをランダムに動かす int val = 0; //入力ピンの状態がこの変数に記憶される void setup(){ pinMode(2,INPUT); //ボタンを入力に設定 pinMode(5,OUTPUT); //モーター(1)のドライバー5番ピンを出力に設定 pinMode(6,OUTPUT); //モーター(2)のドライバー5番ピンを出力に設定 pinMode(7,OUTPUT); //モーター(3)のドライバー5番ピンを出力に設定 pinMode(8,OUTPUT); //モーター(1)のドライバー6番ピンを出力に設定 pinMode(9,OUTPUT); //モーター(2)のドライバー6番ピンを出力に設定 pinMode(10,OUTPUT); //モーター(3)のドライバー6番ピンを出力に設定 } void loop(){ val = digitalRead(2); //入力を読み取りvalに格納 if (val == HIGH){ digitalWrite(random(5,8),HIGH);//ランダムにモーターを正回転させる } else { digitalWrite(5,LOW); digitalWrite(6,LOW); digitalWrite(7,LOW);//モータを止める } }

  • モータドライバについて教えてください.

    Aruduinoとモータドライバ,DCモータ,センサなどを使ってライントレーサを作ろうと思っています. モータドライバにはTA7291P,DCモータにはマブチモータFA-130RA(1.5~3.0V)を使用します.また一つの外部電源(電池)を,TA7291Pの出力側電源端子VsとArduinoのVin端子に接続することを考えています(VsとVinの電源を共用).また,ロジック電源端子VccにはArduinoの5Vピンから5Vを供給し,VrefにはArduinoからPWM出力します. ここで質問なのですが, (1)VsとVinの電源を共用しても問題ないでしょうか? (2)VsとVinの電源を共用する場合,電源電圧は何Vが妥当でしょうか? (3)VsとVinの電源を共用しない場合,Vsの電源電圧は,(DCモータの電圧が1.5~3.0Vなので),3V(単三電池2本)が妥当でしょうか?それとも電圧降下を考えて,4.5V(単三電池3本)にする方が良いでしょうか? (4)VrefとVsの差が大きくても問題ないでしょうか?それともその差が大きいとドライバが発熱してしまうのでしょうか? 恐れ入りますが,ご教授の程よろしくお願い致します.

専門家に質問してみよう