WebsiteTwitterGoogle+YouTubeRSSホーム>プログラミング(開発者向け)>電子工作研究>ESP8266>モーターPWM制御モーターPWM制御2018年3月23日お知らせ今回「ArduinoUNO」ではなく「Arduino」と表記しているのは、ATmega系やATtiny系も同じような結果になるためです。はじめ「モーターPWM制御はArduino側に任せる」と言っていますが、最終的にはコンパクトにするためにATmega168Pを使用しています。今回は、ArduinoとESP8266でモーターのPWM制御方法が「違う」という点についてです。結論:ESP8266の最大出力電流12mAで、なぜかトランジスターを用いたPWM制御ができない。対処方法は、『ESP8266からArduinoにシリアル通信→Arduinoからトランジスターを介してPWM制御』。Arduinoの場合、LEDなど最大出力電流を超えない低電流の部品の場合、PWMに対応しているピンに接続してプログラムを書けば、ちゃんと制御できます。参考URL:http://www.japanese-makers.com/archives/157また、PWM他言うピンは以下の通りです。12・13・15※ココにピンアサイン図がありますモーターなど、最大出力電流を超える高電流を必要とする部品の場合、トランジスターのスイッチング回路を利用したやり方があり、Arduinoの時はこれで上手くいきました。調べてもESP8266でトランジスター(スイッチング回路)を使ったPWM制御をやっている人は見つかりませんでした...それよりも、制御基板やモータードライバーを利用している人が多いようです。※制御基板でのやり方はココ、モータードライバーはココが参考になるかも?なら自分で試してみようと思いましたが、何度やってもArduinoの時のように上手くいかないので、別の方法を考えてみました。一度Arduinoに何かキーワードをシリアル送信して、キーワードで動作を振り分けるのはどうか。モーターPWM制御はArduino側に任せる、という意味です。今回コンパクトにするためにArduino側はATmega168Pを使用しています。(★ATmega168Pはシリアル送信に使用するピン[RX、TX]があって使いやすい★)ちなみにTXが送信、RXが受信です。...アクセス数5000件突破!最近なかなか更新できず、申し訳ありませんでした。...フォローするTwitterGoogle+YouTubeRSSこのサイトについてこのサイトでは電子工作と自作フリーソフトを取り扱っています。注意このサイトを閲覧する際はPCのブラウザの使用をお勧めします。