Raspberry Piへの逆起電力対策について

このQ&Aのポイント
  • Raspberry Piへの逆起電力対策について教えてください。
  • 共通の電源でRaspberry PiやArduinoを動かす際に、モータの逆起電流で電圧が下がり、Raspberry Piが再起動してしまう問題があります。
  • ダイオードやコンデンサを使用して電圧低下を改善しましたが、連続で動かすと再起動してしまうため、他の方法を探しています。
回答を見る
  • 締切済み

Raspberry Piへの逆起電力対策について

わかりづらい図で申し訳ないのですが、1つの5V電源からRaspberry PiやArduinoへの逆起電流対策について教えてください。 1つの共通の電源で、以下のものを動かそうとしています。 - Raspberry Pi - Arduino - Servo x6 この状態でServoを動かすと、モータの逆起電流で電圧が下がりRaspberry Piが再起動してしまいます。 逆起電流対策として、VccとGNDの間にダイオードやノイズ対策としてコンデンサなど挟んでみたものの電圧降下が大きく安定しません。 コンデンサの容量を調整することで電圧低下はある程度程度改善するのですが、連続で動かすとRaspberryが耐えられず再起動してしまいます。 この回路で、モータの影響をマイコン側(Raspberry)が受けないようにする良い方法を教えていただけますでしょうか。 この回路には5Vですが6Aと少々大きめの電流が流れます。 電源をできるだけ1つで対応したく、ご教授お願いいたします。

みんなの回答

noname#252929
noname#252929
回答No.9

>- なんとなく皆さんのご返答で理解が進んでいるのですが、kisinaitui様のおっしゃられているダイオードで分離してという部分がうまくイメージできていないです。 >- 電源ラインにはコンデンサとダイオードについては試しているのですが、ダイオードで分離という部分についてお手数ですがもう少しご説明いただけないでしょうか。 マイコンの基盤からモーター制御が信号なのか直接電力で制御しているのかわかりませんが、 大雑把に添付のような感じです。 電源だけで、制御信号線入れていません。 マイコンの基盤の中でモーターを直接電力制御で制御しているのなら、回路基盤上で、CPUの部分を切り出して、ダイオードで回路を分けてコンデンサを入れれば良いです。 リレーなら問題ないでしょう。ただ、リレー制御電源は、モーター側から撮る必要があります。 単純な考え方で、ダイオードで分離すれば、コンデンサにたまっている電力は、モーター側に逆流して流れませんので、コンデンサにたまっている電力の分までは、電圧が落ちても、マイコンは生きていられるわけです。 一瞬の高負荷で電源側が落ちる場合などに使える単純な分離の方法です。

  • hahaha8635
  • ベストアンサー率22% (800/3609)
回答No.8

Servo x6 も使ってるので 根本的には電源を大きくするしかないです

  • mpascal
  • ベストアンサー率21% (1136/5195)
回答No.7

電源の電流を大きなものに交換する。

回答No.6

モーター停止時に問題が起きていないなら逆起電力ではなく、突入電流の問題と考えます。 この場合はダイオードやスナバー回路(コンデンサ+抵抗)は意味を成しません。 突入電流のエネルギーを供給しきれるだけの大容量コンデンサを搭載するか、電源分離しかないです。 一応、長期運用で無く、消費電流の少ないラズベリーパイ0,1であればラズパイ電源にモバイルバッテリーを中継させて非常電源扱いにするっていう方法があり得ます。

KOTESTU_OK
質問者

補足

- 皆様のご指摘で理解が進んだのですが、おっしゃられる通り、モータの突入電流による電圧降下が原因かと思います。 - いただいたアドバイスをキーに25Fの馬鹿でかいキャパシタで試したところ0.5秒刻みでServoを動かし続けましたがRaspberryは問題なく起動しておりました。 - 別電源も試したのですが、こちらも問題なく動きました。 - Raspberry Piは3B+(Wi-fiは使ってません!)なので電源結構使いそうですが、すが25Fもあるとキャパシタだけで数分の動作確認もできました

  • ohkawa3
  • ベストアンサー率59% (1333/2244)
回答No.5

回答(1)です。 モーターの起動電流による電圧降下の問題であれば、現象が理解できます。 電源を分けるのが望ましいのは他の回答者さんがご指摘の通りと思います。 どうしても1つの電源としたいなら、 (1)モーターの起動電流を下げるか、(2)電源電圧を低下しにくくするかの いずれかです。 (1)の方法 ・モーターの立上がりを遅く設定する ・モーターに電源を供給する経路に、起動電流を制限する抵抗器を設け、  回転数が上昇後に短絡する回路を設ける (2)の方法 ・もっと大きな容量の電源に交換する ・電源回路の過電流保護機能を無効(低減)にするように改造する いずれの方法もデメリット(副作用)がありますので、得失を勘案して 選択してください。

KOTESTU_OK
質問者

補足

- コメントいただきありがとうございます - 皆さんご指摘いただいているように、突入電流による電圧降下という言葉が今回の事象では正しいと思います。 (1) の方法についてですが、この制限する抵抗についてもう少しお伺いしたいのですが、例えば1つのモータに対して5V 1A を流したいとしたら、Wがギリギリなので気になりますが、以下のような5Ωの抵抗を挟むことで対応するという理解であっていますでしょうか。 http://akizukidenshi.com/catalog/g/gR-07955/ (2) ご指摘ありがとうございます。なぜか手元に25Fの巨大キャパシタがあったので0.5秒刻みで5分近く試しましたが問題なく動きました。 質問前に1Fのキャパシタは試してみたのですが、動かずでいろいろご意見いただきありがとうございます

noname#252929
noname#252929
回答No.4

モーターの起動電力(逆起電力ではありません)によって、電圧が落ちて、その電圧降下に耐えられずに、マイコンが落ちるというだけの話でしょう。 なら、モーターの起動時間を調べればいいんですよ。 そして、電源から、マイコン系へは、ダイオードて分離して、その先に、モーターの起動時間分耐えられるコンデンサを付ければ良いだけの話です。 マイコンからの出力もあるのなら、マイコンの電源を守るように、ダイオードで分離して、コンデンサで電力の補償をかけてあげれば良いだけだと思いますよ。 そうすれば、マイコンは起動時にコンデンサというサブ電源で動いている状況を作れますからね。 ただ、電源ラインにコンデンサを乗せたところで、コンデンサの電力は、モーターに持って行かれてしまいます。 なので、持って行かれないようにダイオードで分離しておけばいいんです。

KOTESTU_OK
質問者

補足

- なんとなく皆さんのご返答で理解が進んでいるのですが、kisinaitui様のおっしゃられているダイオードで分離してという部分がうまくイメージできていないです。 - 電源ラインにはコンデンサとダイオードについては試しているのですが、ダイオードで分離という部分についてお手数ですがもう少しご説明いただけないでしょうか。

  • lumiheart
  • ベストアンサー率47% (1097/2289)
回答No.3

>この状態でServoを動かすと、モータの逆起電流で電圧が下がり 恐らく、モータ起動電流による電圧降下でしょうね 逆起電流ではないでしょう 一番簡単確実なのは電源系統を分離する事ですが ご予算的にも一番安価確実でしょう 次点として モータへの電線を可能な限り極太電線にして 尚且つ、渡り配線にせずブスバー接続か1点接続にする 電源------モータ   \_____マイコン http://www.picfun.com/partgnd.html http://www.zuken.co.jp/club_Z/z/analog/007/ana_110224_2.html http://www.miyazaki-gijutsu.com/series2/noise092.html http://www.zukentec.co.jp/zukentecnews/z_expert/cad/61.php http://micro.rohm.com/jp/techweb/knowledge/dcdc/dcdc_pwm/dcdc_pwm03/4838

KOTESTU_OK
質問者

補足

ありがとうございます。 やはり電源を分けることが一番確実ですかね。 毎年、この電源を分けないということが課題で取り組んできているのですが、モーターを使う際の電源を統一する壁がなかなか超えられません。 いただいたURLがとても参考になりそうでしたので、拝見させていただきます! ありがとうございます。

回答No.2

デジタル電源とアナログ電源は分けないんですか?

  • ohkawa3
  • ベストアンサー率59% (1333/2244)
回答No.1

>モータの逆起電流で電圧が下がり モータの逆起電流とは、モータが発電機として動作して、モータから電源側に エネルギーが回生される状況を指すのでしょうか? そうだとすると、電圧が下がるという現象が解せません。 恐れ入りますが、もう少々詳細に現象をご説明願えないでしょうか。

KOTESTU_OK
質問者

補足

あいまいな書き方ですみません。 オシロスコープなどを持ち合わせておらず、テスターで先の図のVccとGNDを見ているだけなのですが、500 msec 刻みでServoを動かすと動く瞬間に5Vの電源が4V前後まで落ちています。 テスターで目チェックなためもっと落ちているのかもしれないのですが、Servoを動かすとこの電圧が下がるようにテスターから見えており、これが原因でマイコン側が落ちていると思われます。 言葉的には、lumiheartさんのおっしゃられている、電圧降下というものが正しい気がいたします。すみません。

関連するQ&A

  • 逆起電力について

    逆起電力ついて色々と調べているのですが (電源+)→(スイッチ)→(コイル)→(抵抗)→(電源-) といった回路があったとします。 1)スイッチをオフにした時にコイルから発生する逆起電力は抵抗の方に向かって発生するのでしょうか?逆だからスイッチの方に向かってですか? 2)スイッチの位置ですがコイルの前につけるのとコイルの後ろにつけるのとではどちらが正しいのでしょうか? 3)その際に発生するのは電圧の事それとも電流の事ですか?電圧だとしたら元の電源が100Vだとした場合、100V以上の電圧を取り出せると言う事でしょうか? また、この回路の電源の+-から並列に別の回路を組んだ場合、別の回路の方にも並列なので同じだけの高電圧がかかってくると言う事でしょうか? 電流だけが変化する場合は、この回路だけに高電流が流れ、他の並列回路は特に問題なしと言う事でしょうか? 以上の3点が色々調べてるうちにこんがらがってきて疑問に思ったのですがすっきりするような解説が見つけられなかったのでよろしくお願いします、ダイオードやコンデンサなどを使っての逆起電力対策の話は別で質問していますのでここで無しでお願いします。

  • 逆起電力を取る方法教えてください。

    逆起電力を取る為に、コンデンサを使用し入力する回路とは別の回路へと切り替えたいのですが、そのようなコンデンサは有るのでしょうか? ちなみに電圧、電流は100V20AがMAXです。 スライダーを使い電圧調整はできます。 逆起電力は1秒に20回発生します。 その逆起電力を直接或いはバッテリーに取りたいのです。 電気の事は素人なので、解かりやすい回答宜しくお願いします。

  • モーターの逆起電力防止回路

    以前に質問したのですが、まだ不明点がありますので改めて質問させていただきます。 私の理解は以下です。 ・添付のようにFETでSTPモーターを駆動する場合、逆起電力によるFET破壊を防止するためにダイオードを挿入する ・しかし逆起防止ダイオードを挿入することでFETをOFFした後もモーターからダイオードを抜けて電流が流れてしまうのでモーターの切れが悪くなる ・FETのドレインの耐圧に近いツェナー電圧をもつツェナーを挿入することで逆起防止ダイオードを流れる、すなわちFETをOFF後にモーターに電流が流れる時間が短くなる。よって切れが良くなる。 という理解をしております。 上記の理解が正しいのであれば、添付の回路の場合、ツェナー電圧は100V近くまで引き上げたほうが良いということでしょうか? またその場合、FETのドレインは定格近くの100Vであるため、モーターに向かって電流が逆流するのではないかという疑問もあるのですが、そんなことは無いのでしょうか? 以上、よろしく御願いいたします。m(__)m

  • 逆起電圧

     毎度お世話になります。  例えば電源、リレー、コイルが直列に接続された 回路があるとします。  SW-OFFにより、リレー接点部には逆起電圧が生じると思います。 ?生じる逆起電圧の大きさ(ピーク値)は電源電圧の  大きさ(回路を流れる電流)によって変わりますか?  実際やってみたところ、CV_12Vでも1Vでも同じような値でした。350V前後。 でも0.1Vくらいでやってみたら60Vくらいでした。  逆起電圧の大きさ(ピーク)というのは、接点部の絶縁破壊電圧までしかならず、電源電圧によってそのサージの時間が変わるだけなんでしょうか?  上記の0.1Vだと、コイルに蓄えられたエネルギはすぐ消費されてしまうので、逆起電圧はそれほど大きくならなかったのか? ?L成分による逆起電圧、1)コイルの自己誘導とか2)コイルに蓄えられた  エネルギがとか出てきますが、1)と2)って違うもんですか?   違うとすると、何が逆起電圧に関係してくるのでしょうか?  この2つだけ?

  • 自己誘導における逆起電力の維持

    直流電源のスイッチを入れて、電流を流すと徐々に電流が増加していきコイルに流れる電流が変化し磁束が増加していくと、その変化を妨げる方向に起電力が発生する。 すると、この起電力と電源電圧が等しくなるところで電流が一定になるということで、このときの起電力は       e=L・I/t   で表され、これは電源電圧と等しくなる。 という説明があります。ここで疑問になるのが、電流が一定になれば磁束の変化が起こらないため、それを妨げる起電力も発生しないのではないかということです。 一方、この逆起電力が無くなってしまうと、電源電圧による電流は永遠と増え続けることになる・・・電流が増加すると磁束の変化が起こり逆起電力が発生する・・・・となにかいたちごっこになってしまいます。 まさしくの逆起電力というのは自己誘導になると思うのですが、自己誘導においては、この逆起電力が維持し続けるということをどのように理解すれば良いのでしょうか。 なお、相互誘導については、誘導される側のコイルには電源がないことから、一次側の磁束が変化する時にしか起電力は発生しないと考えて良いでしょうか。起電力は維持しない。また、二次側にも電源がある場合の相互誘導というのはあり得るのでしょうか。 合成インダクタンス等ついて、 http://personal.okwave.jp/qa3008024.html で教えていただきましたが、コンデンサ、コイルの合成値の求め方を微分・積分を使わずに教えてください。

  • ダイオードを使っても逆起電力が取れません。

    直流の逆起電力を取る為に、電磁石を使用し直流を流して、スイッチの部分に並列して2個ダイオードを使い入力回路とは別の回路から、逆起電力を取ろうと思ったのですが、逆起電力はスイッチの部分から火花を散らし、取るどころか止めることすら出来ません。 前の質問で直流とも交流とも書かなかったので、スナバ回路を使うと書いてあったのですが、色々調べたらスナバは交流で使うもので、直流はダイオードだと判明し31DF(600V×2)を入れました。 ちなみに電圧、電流は50V10A位です。 スライダーを使い電圧は調整できますので、電圧が高いのであれば調整します。 スイッチは自作のスイッチで、切ったり入れたり1秒に20回発生します。 その逆起電力を直接或いはバッテリーに取りたいのですが、どうしたら宜しいでしょうか? 電気の事は素人なのであまり解りませんので、解かりやすい回答お願いします。

  • Arduino の不可解なリセットの回避について

    Arduinoの互換機(ArduinoUNOと同じようなもの)を使って電子工作の練習をしている初学者なのですが、不可解なリセットに悩まされています。リセットが起きてしまう状況を自分なりに調べてみたのですが、よくわかりませんでした。以下に状況を示しますのでリセットの原因や回避方法を教えてください。 ・モータードライバでモーターを動かしたときにリセットする(モーターは別電源で動かしている) ・かなりの確率でリセットするが、モーターを動かしてもリセットしないこともある。 ・テスターで測ったところ異常に大きな電流は流れていなかったし、逆電流もなかった。 ・正転、逆転のどちらでもリセットが起きていた。モーターの両極にコンデンサーをつないでみてもリセットした。 ・Arduino のGPIOピンを2か所のGNDだけ刺さっている状況にして、別電源だけでモータードライバとモータを動作させてもリセットが起こった。 ・GNDのピンを1か所減らした回路にしてみたら、リセットが起こりづらくなった。 ・5Vの電源ピンを別のセンサーにつなぐとリセットが再発した。よってこれを外したところ、リセットは殆ど無くなったように見えた。(Vccは別電源と定電圧レギュレータを用いることにした) ・モータードライバとモーターを2つずつにしてみたところ、リセットが起こった。モータードライバを新品のスペアに替えてみると、リセット確率は低下したが稀にリセットした。 以上です。モータードライバはTA7291P、モーターはFA130を使っています。ぼくはもうお手上げなのでどうかよろしくお願いします。

  • Arduinoから6V駆動のサーボを動かすには?

    Arduinoから6V駆動のサーボモータを動かしてみたいと考えています。信号は5Vで、電源だけ6Vでもいいのでしょうか? 私の予想だと以下のままで一応動きそうですが。 ・6V電源のVCCとGNDをサーボのVCCとGNDに接続 ・ArduinoのPWM可能なPINをサーボの信号線につなげる ・全てのGNDを接続する 信号が5Vでもカタログどおり6V駆動時のトルクがでるんでしょうか? データシートなどを見ても信号が何V以上でないといけないと描いてませんし。 http://eleshop.jp/shop/g/gDBQ412/ たとえば、12V駆動のサーボだとさすがに5Vの信号はまずそうですが。 それとも図のようにして信号も駆動電圧に合せたほうがいいのでしょうか?

  • コイルの逆起電力と回路について

    コイルについて調べていると、図のようなRL回路を見かけます。 スイッチをオフにするとコイルの逆電力が電流を維持するように発生し、電流は時間差を持ってゼロとなるといった解説をよく見ます。 このようにスイッチオフで完全に断線させてしまった回路で電流が流れるとはどういうことが起こっているのでしょうか?(流れた電流はどこに行くのですか?) また、図のように逆起電力が最初の電圧源の電圧を上回るものなのでしょうか? また、スイッチの切り替えで、抵抗とコイルだけの回路になる場合は電流が流れ続けるのはわかるのですが その場合でも逆起電力が元の電力を上回るものですか? よろしくお願い致します。

  • 電圧測定で分圧時に使う抵抗・オペアンプについて

    現在,下図のような回路を作り,電圧(と電流)を測定することでモーターでの消費電力を計測しています. 分圧抵抗では電源電圧(48V程度)を1/10にして,5V以下の電圧をArduinoなどで計測するものです. 最近になって分圧回路について調べ,「分圧時にはオペアンプをボルテージフォロアとして入れると高精度になる」という知識を得たのですが,そこで疑問が出てきたので質問させてもらいます. ・この回路ではオペアンプを入れても意味がないのではないか? 調べた限り,分圧して出てきた電圧を電源として使用する…といった回路の時に,定電圧を得るのにオペアンプが役立つという書き方をしていました. 分圧して電圧を測定するだけならば「理想的な電圧計に電流は流れない」はずですから,電源用途の分圧回路とは異なりオペアンプは不要ということになるのでしょうか. ・そもそもこの回路は完璧か? 本回路の場合,モータへの負荷電流の変化などが測定結果に悪影響を及ぼすことはあるのでしょうか.またその場合,どのように対策すべきでしょうか. また,1/10に分圧するためR1とR2の比率は9:1ですが,その値はどのように決定するべきなのでしょうか. よろしくお願いします.