🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

Q&A

5回答

7112閲覧

モーター ノイズ Bluetooth

xxxrrrr

総合スコア17

Arduino

Arduinoは、AVRマイコン、単純なI/O(入出力)ポートを備えた基板、C言語を元としたArduinoのプログラム言語と、それを実装した統合開発環境から構成されたシステムです。

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

0グッド

0クリップ

投稿2019/12/25 13:22

編集2020/01/12 14:28

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

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

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

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

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

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

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ozwk

2019/12/25 14:29

bluetooth使わずにモーターを回せますか?
xxxrrrr

2019/12/25 14:42

wifiで試したところうまくいきました。
ozwk

2019/12/27 09:56

アンテナの位置関係はこの図の通りですか?
xxxrrrr

2019/12/27 10:03

ブレッドボード上の配置はすべてこの通りです。 ドライバの真下あたりにモーターがある状態です。
thkana

2019/12/27 10:52

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

2020/01/12 13:51

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

2020/01/13 01:44

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

回答5

0

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

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入力、つまりモータ系電源とロジック系電源に分かれているはずですので、配線もそのようにしないと誤作動の元になるとおもいます。

投稿2020/01/10 12:53

TsukubaDepot

総合スコア5086

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

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

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

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

投稿2019/12/26 00:52

thkana

総合スコア7703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

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

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

投稿2019/12/25 13:54

y_waiwai

総合スコア88040

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xxxrrrr

2019/12/25 14:23

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

2019/12/25 14:25

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

2019/12/25 14:34

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

2019/12/25 14:41

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

0

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

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

投稿2020/01/10 09:13

coco_bauer

総合スコア6915

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xxxrrrr

2020/01/10 10:52

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

0

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

投稿2019/12/25 13:51

TaroToyotomi

総合スコア1449

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xxxrrrr

2019/12/25 14:37

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

2019/12/26 17:39

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

2019/12/27 09:33

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問