質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.52%

モーター ノイズ Bluetooth

受付中

回答 5

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 520

xxxrrrr

score 11

BlynkからBluetoothでESP32につないで、2つのDCモーターを動かそうとしています。
モータードライバはTB6612FNGを使ってます。
モーターを動かそうと信号を送ると、一瞬だけモーターが回って、すぐBluetoothが切断されてしまいます。
シリアルモニタを見ると、文字化けが大量に出力されています。(ノイズ?)

モータードライバの、
信号用の電源(VCC)と、モーターの電源(VM)のGNDを分離してみましたが、変化はありませんでした。

解決策が何かあればお願いいたします。
電子工作初心者で、モーターのノイズとBluetoothがどう関係しているのかがまだよくわからないので、そちらのほうも解説していただけるとありがたいです。

追記:みなさんの回答を参考に回路を改善したところ、走行可能な状態にはなりました。ですが、スピードが一定以上になるとやはりBluetoothが切断されてしまいます。何かアドバイス等あればお願いします。
みなさんに提案いただいた回路を理解できているかどうかわからないので、回路図を追加します。問題点等あればそちらも回答いただけるとありがたいです。
VCCは電源を接続しなくてもPWM制御ができていたので接続していません。
回路図

追追記:質問内容とは関係ないですが、ESP32のリセットボタンとブートボタンが反応しなくなってしまいました。
USB接続するとPCには認識され給電されますが、シリアルモニタを開いてボタンを押しても反応がない状態です。
原因や解決策がわかればこちらも回答をお願いいたします。

みなさん本当にたくさんの回答ありがとうございます。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • thkana

    2019/12/27 19:52

    よく動いているな、というのが感想。>結線図

    > モーターの電源(VM)のGNDを分離
    そういう結線にする、ということじゃないと思うけど。あくまで電流のループを考えて、大電流の流れるループを別にする、ということ。電位の基準点を無くしちゃいけない。
    > VCCは電源を接続しなくてもPWM制御ができていたので接続していません。
    いやいや...
    あと、006pの電池って容量小さくてすぐなくならない?

    キャンセル

  • jimbe

    2020/01/12 22:51

    とても今更なのですが, ご質問の c のタグは関係ないようですので外して頂けますか.

    キャンセル

  • thkana

    2020/01/13 10:44

    GNDをちゃんとつないでなかったりすると、異常電圧がかかって壊れる、というのはままある事故です。(そういうのも含めて「よく動いているな」だったのですが、やっぱり壊したか、と言ってもいい事態なのかも知れません)
    冬場は静電気もありますし。裸基板の扱いには気をつけましょう。

    キャンセル

回答 5

+1

モータというのは、周りはじめには、定格電流の十倍以上の電流が流れます
また、まわっているときは盛大なノイズが発生します

ということで、CPUと同じ電源でモータは回りません。電源を分離しましょう
モータの電源は、CPUとは別に用意する必要があります
また、モータドライバも含め、モータへ行く配線も、CPUにつながる線とできるだけ分離する必要があります

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/12/25 23:23

    マイコンの電源(USB)、モータードライバの信号電源、モーターの電源と3つに分け、GNDも分けてみましたが、変わりませんでした。
    TB6612FNGには、モーター電源VM、ロジック電源VCC、GND3つがあるのですが、それぞれロジックのGNDなのかモーターのGNDなのか共通のGNDなのかがわかりません。データシートの回路も見てみましたが、勉強不足で、理解できませんでした。
    https://toshiba.semicon-storage.com/info/docget.jsp?did=10661&prodName=TB6612FNG

    キャンセル

  • 2019/12/25 23:25

    分離が不十分です。
    各電源のGNDは、モータドライバのGNDの一点で接続しましょう。
    また、配線もきっちり分離する必要があります

    キャンセル

  • 2019/12/25 23:34

    各電源のGNDをモータードライバの一点に接続すると、以前よりモーターが回る時間は少し長いですがそれでも数秒で切れてしまいました。
    (一点に接続とは、モータードライバの3つのGNDを1つに集中させそこに各電源のGNDを接続するということで間違い無いですか?)
    シリアルモニタにも文字化けが流れる状態です。
    今マイコンの電源はMicroBから供給しているのですが、マイコンのGNDは触らなくて大丈夫ですか?

    キャンセル

  • 2019/12/25 23:41

    マイコンのGNDもドライバのGNDで接続します
    まあ、回路図も配線状況もわからないですが、
    どーしてもダメなら、マイコンのGPIOとモータドライバをフォトカプラで分離して、GNDさえも分離するようにしないといけません

    キャンセル

+1

「電源を分離しました」というのが本当にそう出来ているか(あなたと私で同じ言語を使っているかどうか)気になるところ。図とか写真とかあるとよいかと思います。

文字化けとかなんとかは、Bluetoothというよりはマイコンの動作がおかしくなっているようです。Bluetoothの通信が阻害されてたら文字化けではなく通信が出来なくなるでしょう。アナログじゃないですから。
モーターを外してしまえば(モーター以外の)応答は期待通りに得られるのですね? 
WifiではOKというのはさてどう解釈するかな。通信経路がWifiになった以外はなにも変えていない、ということですか? 

劇的な効果はないかもしれないけど、モーターへの配線は軽く(1cmピッチぐらいでよいかと)より合わせておいた方がいいです。「行き」と「帰り」の線を沿わせることで線から出る電磁界を打ち消すとか、その配線がなすループがノイズを放射するので面積を最小にするとかでノイズが減ります。モーター部の電源ラインも一応同様に。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

他の方も指摘されていますが、モータのノイズが一番怪しいのかな、という気がします。

ESP32でDCモータを回して(実際はミニ四駆を制御して)いる方の記事がこちらにあったので、参考になるのではないでしょうか。モータへのコンデンサ追加方法など、写真入りで掲載されていました。

https://tech-blog.cerevo.com/archives/4952/

半田ゴテもコンデンサもすぐには入手ができないかもしれませんが、万が一ESP32モジュールが壊れたらAmazonなり秋月電子なりで再度購入することになりますよね。だったらまた書い直しになる前に半田ゴテと
コンデンサは手に入れて改善した方がいいと思います。

いまはAmazonでセラミックコンデンサも手に入るようですし。
https://www.amazon.co.jp/s?k=%E3%82%BB%E3%83%A9%E3%83%9F%E3%83%83%E3%82%AF%E3%82%B3%E3%83%B3%E3%83%87%E3%83%B3%E3%82%B5&__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&ref=nb_sb_noss

ほかに気になる点がいくつか。

ESP32のモジュールに直接9Vを入力していますが、ESP32のボードは9V対応なのでしょうか(普通は一瞬で壊れるので気付くかとおもいますが)。すぐに調べられるのは秋月電子で販売されているボードなのですが、こちらは5Vが電源電圧になっています)。

ESP32を搭載しているモジュールに3端子レギュレータを搭載しているのかもしれませんが、6V近くが電圧降下のための発熱として無駄に放熱されるので、ロジック電源はできるだけ低くした方がいいと思います。

モータドライバはTB6612FNGを使っているということですが、このICのデータシートを見るとロジック系とモータ系の電源は別になっているようですね。GNDもモータとロジックでは別になっています。

実体配線図を見てみたところ、モータの電源は9Vとなっているようですが、肝心のロジック系の電源をどのように確保しているのかがわかりません。

実体配線図を見る限り、TB6612FNGを直接使うのではなく、なんらかのボードに搭載されたものを使っているようですが(少なくとも、このボードの品番は載せた方がコメントしやすいです)、このボードのピンアサインはどのようになっていますでしょうか。

このボードもおそらく電源が2入力、つまりモータ系電源とロジック系電源に分かれているはずですので、配線もそのようにしないと誤作動の元になるとおもいます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

DCモーターの端子にコンデンサをつけてみてはどうでしょうか?
とりあえず、0.1uFほどのセラミックコンデンサでいいと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/12/25 23:37

    回答ありがとうございます。
    セラミックコンデンサでノイズが軽減される話は知っていましたが、Bluetoothとの関係性や今起こっている事象の原因が不明なので未実装でした。
    学生で、はんだごてやセラミックコンデンサが今すぐ手に入る状況では無いので、配線などで改善されなければ購入したいと思います。

    キャンセル

  • 2019/12/27 02:39

    ESP32とモータの位置を大きく離すことは可能ですか?
    モーターからの輻射ノイズがESP32内のRF回路に影響しているならば、改善されるかもしれません。

    キャンセル

  • 2019/12/27 18:33

    ラジコンカーを作成しているのでボードは搭載しなければなりませんが、多少なら移動できます。

    キャンセル

0

配線図だと006P型の積層乾電池(9V)を電源に使っているように見えます。
006Pは小さな角形の乾電池を6個積み重ねた構造になっていて、内部抵抗が大きいために流せる電流はわずかです。
通常はラジオなど、せいぜい10mA~50mA程度の電流負荷の機器に使うものです。
それをモーターの駆動に使うのは無茶です。

各006P乾電池を、単1アルカリマンガン電池を6本直列につないだものに変えてみてください。
電源が安定して、動作が安定すると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2020/01/10 19:52

    回答ありがとうございます!
    そういう特徴があるのですね。
    試してみます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる