Mira&Luna's nursery lab

旅乙女と発明娘の子供部屋

ESP32でWi-Fiミニ四駆をラジオコントロール。4回目「リレー回路の実装☆第1弾」

f:id:miraluna:20200916184356j:plain:w100Mira

ミニ四駆🚗Wi-Fiでラジオコントロール
ESP-WROOM-32Dを使った制御に挑戦します🍌
           ~ミラの苦難の道のり

【その4】
リレーによるモーター制御装置を実装する☆第1弾
逆起電流って何よ!?


    今までの道のり
     ・ESP-WROOM-32DをスマホからWi-FiでLチカ
     ・ミニ四駆パーツの入手
     ・トランジスタでモーター制御【失敗】
     ・リレーを使ってモーターの正転と逆転を制御するしくみ作り
     ・リレーを安定してスイッチさせる(今ここ)

🍎リレーによるモーター制御装置を実装する☆第1弾
ESP-WROOM-32Dというマイコンボードを使って、ミニ四駆Wi-Fiで遠隔操作しようとしています。
Wi-FiでLEDを点けたり消したり操作することはできました。トランジスタをスイッチ代わりにしてモータを制御しようとしたところ熱暴走で失敗。きっとトランジスタの定格電流を上回った配線をしちゃったんだと思う。
そして前回、物理的なスイッチとしてリレーを使った回路を組みました。ブレッドボード上でのモーター操作は順調。いよいよ回路を実装していきたいと思います。

◆ リレーを使って物理的にスイッチング ◆ Wi-Fi通信O.K.
f:id:miraluna:20200426165614j:plain:w290 f:id:miraluna:20200426165701j:plain:w290

リレーは 5vで動作するものを使っているので、ESP32からの信号線だけではスイッチが切り替わりません。そこでESP32の 5v出力と信号線をNPN型トランジスタにつないで、信号pinがONになると 5vが流れるようにしました。

◆ ブレッドボードでのリレーテスト
f:id:miraluna:20200426165909j:plain:w290 ←USBによる 5v給電

◆ 宇宙卵による 5v電源動作       ◆リチウムバッテリによる 3.7v電源動作
f:id:miraluna:20200426165825j:plain:w290 f:id:miraluna:20200426165744j:plain:w290

実験段階では 5vでも 3.7vでもリレーを切り替えることができたけれど、のちのち 5vの方が安定することを知ることになるので、電源には 5v出力の宇宙卵を使っていきます。
  「宇宙卵」についての記事 ↓
miraluna.hatenablog.com

モータとリレーは下の図のように配線します。ESP32の27pinをONにするとオレンジの線の回路に切り替わって、26pinをONにすると紫の線の回路に切り替わります。つまり正転と逆転をコントロールできるというわけ。ONの時間は0.1秒でOFFに戻るようにプログラムを書いているから、通常はどちらもOFFの状態よ。

◆ モータとリレーの配線図
f:id:miraluna:20210128120003j:plain

◆ モーター配線
f:id:miraluna:20200426170113j:plain:w195 f:id:miraluna:20200426170154j:plain:w195 f:id:miraluna:20200426170236j:plain:w195

さあ、
トランジスタも使って回路を実装しましょう(∂。∂🎀/

f:id:miraluna:20180521193651j:plain:w300


🍎逆起電流って何よ!? バカぁ。

じゃんっ🥕
実装完了しました。
f:id:miraluna:20200616183043j:plain
f:id:miraluna:20200616183145j:plain

コンデンサを付けたあたりが私らしいでしょ。
私の二つ名"コンデンサのミラ" で決まりね。

スマホでコントロール
f:id:miraluna:20210128120849j:plain

これはESP32とWi-Fi接続したスマートフォンの画面。
「7pin」の左側が文字化けしてるのは、まだ画面表示を実験中で、私がいろいろいじったから。なんて書いたのか覚えていなくてさっきプログラムを開いて見たら「あいう」って書いてあった。そういえば日本語表示を試そうとしてたんだっけ。
「Front」と「Back」の所をタッチすると26pinと27pinが0.1秒ONになって、リレーが切り替わる仕組み。「ON」と「OFF」のボタンはモータ駆動用のスイッチで、回転と停止を切り替えるもの。

ブレッドボードではうまくモータが回ったのよ。きっとミニ四駆も私の思うままに走らせられるはずだわ。
と、思っていたのに......。
なんでよ~~..p_q.. f:id:miraluna:20200916184356j:plain:w100

実際モータは回りました。前進と後退も切り替えられました。でも、一番肝心な"走る"ことができないの。タイヤが回っていても床に置くと動かなくなっちゃう。しかも動かないだけじゃなくて、ESP32にエラーが出るみたいで、接続をやり直さなきゃいけないの。どうして~!?

◆ 駆動電源をパワーアップ
f:id:miraluna:20200426170033j:plain:w300

電圧か電流が足りないのかと思い、駆動電源に手を加えてみました。
電池を2個、3個、4個つないだ状態に切り替えられるようにピンソケットをつないでそれぞれ試してみたんだけどうまくいかない。電池4個で空転させると今度は速すぎてエラーが出るのか、やっぱり動かなくなっちゃう..p_q..
宇宙卵と乾電池4本を積んでるから重すぎるのかな? ジャンクパーツで買ったギヤが滑らかじゃないから引っかかるのかな? ゆっくり空転させれば問題ないんだけどな。それにどうしてESP32がエラーになるんだろう?

いろいろと調べていくうちに「逆起電流」という言葉に行き当たりました。
(前回の記事に逆起電流対策をした試運転のことを書いたけれど、それはもう少し先の話で、このリレー回路を実装したときにはまだ知らなかったの)
逆起電流とは回転しているコイル(ここではモータ)が始動したり停止したりするときや外部からの力で回転したりするときに起こる逆向きの電流のことみたい。もしかしたらその電流がESP32に流れ込んでエラーを起こしているのかもしれない。

そんなことを考えながら何度も何度も実験をしていたら、リレー回路がうまく動作しなくなってきちゃった。乾電池の電流はおよそ350mA。4本で1400mA。駆動電源のスイッチに使ったトランジスタの定格電流は1A=1000mA。大変、また熱暴走しちゃう。ちょっと無茶させすぎちゃったみたい。
もうこうなったらもう一度回路を実装し直しましょう。f:id:miraluna:20191015184116j:plain:w50
今度は電流が逆流しないようにダイオードを組み込んで。

◆ 次回の配線予定図
f:id:miraluna:20210128160419j:plain

今度はうまくいくといいなぁ。
f:id:miraluna:20180105114819j:plain:w200

    今までの道のり
     ・ESP-WROOM-32DをスマホからWi-FiでLチカ
     ・ミニ四駆パーツの入手
     ・トランジスタでモーター制御【失敗】
     ・リレーを使ってモーターの正転と逆転を制御するしくみ作り
     ・リレーを安定してスイッチさせる
     ・リレーによるモーター制御装置を実装する☆第1弾【失敗】
     ・逆起電流って何よ!? (今ここ)

               🚗 苦難の道のりは次回につづく 🚘


🐤ESP32      🐤2連リレー     🐤DCモータ