ESP8266でPPM値を読み取る

DIY
スポンサーリンク

Arduino wifiモジュールのESP8266でラジコン業界でよく使われるPPM値を読みたいと思い、 このコードを作成しました。

ソースコードは以下で公開しています。(MITライセンス)

 

目次

 


概要

Arduino wifiモジュールのESP8266でラジコン業界でよく使われるPPM値を読みたいと思い、 このコードを作成しました。

 

必要なこと

 

 

必要なデバイス

 

PPM signal 発生装置

PPMを発生させるデバイスはたくさんあると思います。 私は、FrSky 8CH PWM PPM SBUS Micro Receiverを使用しました。 これは受信機なので、別途送信機(FrSky DHT DFT DJTなど)が必要となります。

 

Arduino wifi module(ESP8266)

日本での購入なら、以下のボード上で動作します。

 

その他の部品

部品型番個数
ジャンパーピン(はんだ付け-メス) -3

 

 

インストールが必要なソフトウェア

 

Arduino IDE

開発用のPCにArduino IDEをインストールします。
https://www.arduino.cc/en/Main/Software

 

(tool) ESP8266 core for Arduino

Arduino IDEのデフォルト設定では、ESP8266ボードはサポートされていません。 そのため、ESP8266 core for ArduinoをArduino IDEにインポートする必要があります。
ESP8266 core for Arduino

 

 

 

使い方

  • 以下のように回路を組みます。

outputのピンは変更可能です。プログラム内のPPM_READE_PINの定義値を変更してください。

 

  • Arduino IDEに"インストールが必要なソフトウェア"をインストールします。

インストールが必要なソフトウェアは「インストールが必要なソフトウェア」の章を参照ください。

 

  • PPM信号の仕様を確認(UP pulse, DOWN pulse)

PPM信号には以下の2パターンがあるので、どちらかを確認します。

ppm_pulse_check_by_serial_plotter.ino を書き込めば、シリアルプロッタでパルスを表示できます。
PPM信号の種類が分かったら、プログラム内のTYPE_OF_PULSE_IS_RISINGの定義値を変更してください。

 

  • Arduino IDEでESP8266基板に本コードを書き込みます。

書き込むコードは「ESP8266_ppm_reader.ino」です。

パラメータは以下です。ご自分の環境に合わせて適宜変更してください。

パラメータ説明 デフォルト値
CPU_MHZESP8266のCPU周波数。ご自分の環境に合わせて設定してください。160
PPM_READE_PIN受信機と接続するESP8266側のGPIOピン番号5
TYPE_OF_PULSE_IS_RISINGパルスの向きを指定(true = UP pulse, false = DOWN pulse)false

 

  • ESP8266基板の電源を入れれば、シリアルモニタでPPM値が表示されます。

 

 

 

関連情報

 

以上!

コメント

タイトルとURLをコピーしました