Let's learn IoT ready Analog Sensor device M5Stack and M5Stick C Programing with bokunimo.net.
M5Stack 製の IoTデバイス M5Stack または M5StickC と内蔵の A/Dコンバータを使って、 IoT センサ・デバイスを製作してみましょう。
開発環境には実際の IoT センサの開発で使用されている C/C++ 言語に触れるために、 Arduino IDE を使用します。
- IoT センサ C/C++ 言語
- (IoT サーバ Python 言語)
以下のデバイスを使った IoT センサ を製作します(両方のデバイスのサンプル・プログラムを用意してあるので、実験に必要なのは、どちらか1台です)。
M5Stack 用のサンプル・プログラムは m5stack フォルダ、M5Stick C 用のサンプル・プログラムは m5stickc に収録しました。
-
example01_serial
Example 01: ADC Input Voltage Monitor
A/Dコンバータの読み値をシリアル・モニタへ表示します -
example02_lcd
Example 02: ADC Input Voltage Checker
A/Dコンバータの読み値をLCDに数値で表示します -
example03_meter
Example 03: ADC Input Voltage Meter
A/Dコンバータの読み値をアナログ・メータ表示します -
example04_test
Example 04: ADC for Loopback Tester
A/Dコンバータの読み値の誤差をグラフ表示します
(DAC_PINとADC_PINをジャンパ線で接続していてください。)
左下から右上に向かう斜め曲線の横軸はDAC出力、縦軸はADC値。斜め直線との乖離が誤差。**の横曲線は誤差。詳細については、READMEforEx4toEx5.pdfをご覧ください。
-
example04_test_cal
起動時にD/Aコンバータの出力を使って校正値を保持し、補正します
(DAC_PINとADC_PINをジャンパ線で接続していてください。)詳細については、READMEforEx4toEx5.pdfをご覧ください。
-
example04_test_sd (M5Stackのみ)
A/Dコンバータの非線形歪を補正し、変換精度を高めます
(DAC_PINとADC_PINをジャンパ線で接続していてください。)詳細については、READMEforEx4toEx5.pdfをご覧ください。
-
example05_ads1100 Example 05: ADS1100 Input Voltage Meter【自動レンジ対応版】
M5Stack製オプション ADC HAT (TI ADS1100)を使用
A/Dコンバータ ADS1100 の読み値をアナログ・メータ表示します
M5Stack製オプション ADC HAT (TI ADS1100)を装着したときの様子。詳細については、READMEforEx4toEx5.pdfをご覧ください。
-
example06_udp
Example 06: ADC Input Voltage UDP Sender
A/Dコンバータの読み値を Wi-Fi UDP 送信します -
example07_illum
Example 07: Wi-Fi Illumination Sensor
照度センサ NJL7502L (新日本無線) の読み値を Wi-Fi UDP送信します -
example08_ambient
Example 08: Wi-Fi Illumination Sensor for Ambient
照度センサ NJL7502L (新日本無線) の読み値を Ambient へ送信します
古いセットアップ方法は、レポジトリ内に収録しています。
最新のセットアップ方法は、下記をご覧ください。
-
M5Stack公式サイトのセットアップ方法に関する情報(英語):
Arduino IDE と M5Stack 用ボードマネージャ
https://docs.m5stack.com/en/quick_start/arduino
https://docs.m5stack.com/#/en/arduino/arduino_developmentM5Stack BASIC
https://docs.m5stack.com/en/quick_start/m5core/arduinoM5StiickC
https://docs.m5stack.com/en/quick_start/m5stickc/arduino
以下のデバイスを使った IoT サーバ を製作します。
- Raspberry Pi
- Windows 上で動作する Cygwin + Python3 (Power Shell + Python 3でも動作確認済み)
- セットアップ方法
pi@raspberry:~ $ git clone https://github.com/bokunimowakaru/m5adc
pi@raspberry:~ $ cd m5adc/tools
pi@raspberry:~/m5adc/tools $ ./udp_logger.py
UDP Logger (usage: ./udp_logger.py port)
Listening UDP port 1024 ...
2019/11/24 19:37, 192.168.1.3, adcnv_5,1.929
2019/11/24 19:37, 192.168.1.3, adcnv_5,0.646
2019/11/24 19:37, 192.168.1.3, adcnv_5,0.653
2019/11/24 19:38, 192.168.1.3, adcnv_5,0.000
2019/11/24 19:38, 192.168.1.3, adcnv_5,1.571
- ライセンスについては各ソースリストならびに各フォルダ内のファイルに記載の通りです。
- 使用・変更・配布は可能ですが、権利表示を残してください。
- 提供情報や配布ソフトによって、被害が生じた場合であっても、当方は、一切、補償いたしません。
- ライセンスが明記されていないファイルについても、同様です。