ArduinoでESP8266(ESP-01)を制御+通信する #3

こんにちは、ばいろんです。今回はESP8266を使おう企画第3弾として安定して通信を行うにはそうすればよいのか考えようと思います。

安定した通信のために必要なポイントを以下に挙げます

  • 電流
  • ボーレート

通信を安定させるためには1にも2にも電流です。ESP8266で通信を行う際には最大で300mA程度の電流が必要で、通信が不安定な場合はまず電流を疑うべきです。(ちなみに純正のArduinoで出力できる電流は50mAから150mAだったはず…)

電流の問題を解決するために私はサインスマート社製のArduino互換機を使っています。このボードは200mAまで出力できます。価格的にもいい感じです。

 

次にボーレートについて

ボーレートとは異なる機器同士でデータのやり取りをする際の通信速度(のようなもの)です。Arduinoでよく使われるボーレートは9600bps~115200bpsです。

機器同士のボーレートが異なると文字化けを起こすのでこちらも要チェック事項です。

(現在販売されているESP8266はデフォルトのボーレートが115200bpsのものが多いのでArduino側でボーレートを合わせてやる必要があります。ESP8266側のボーレートを変更する方法は過去記事で)

また、ボーレートについては体感的に低い方が通信が安定します(9600bpsあたり)。115200bpsで通信したときはビットの取りこぼしのようなものが見られました。

9600bpsはボーレートとしては低いですが、運用する分には十分なスピードです。

今回はESP8266での通信にあたって安定化させるコツについて触れました。

次回はTCPとUDPについて少し触れようと思います。

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to top