前回使った「TVOC/eCO2 ガスセンサユニット(SGP30)」の測定値が信用できなかったので, Grove - SCD30搭載 CO2・温湿度センサ(Arduino用)を買ってみた。
前回のM5StackセットにSCD30センサーを追加する。
BME280 / SGP30 / SCD30 環境センサー3種盛り。

GitHubリポジトリ
前回と同じ。 SCD30を追加した。
https://github.com/ak1211/m5stack-azure-iot
毎週のグラフ化
https://github.com/ak1211/m5stack-azure-iot/tree/main/test
M5Stack Core2で測定したデータをAzure Cosmos DBに蓄積してみた。で用意したデータベースから plot_db.py スクリプトで取り出して出力したグラフなので plot_db.py を自分のurl とkey を渡して使えばこんな感じのグラフが手に入る。
- 2021年03月08日より2021年03月14日まで

写真に写っていてグラフに表されているように, SCD30内臓温度センサーは2℃ほど高い測定値になるようだ。
CO2の測定値は窓を閉めていると上昇して, 窓を開けると下がるという行動がわかる。
ところでSGP30センサーはいったい何を測定しているのだろう?手についた消毒用アルコールか?。
まあSCD30は最初のキャリブレーションに7日間必要1なので今週の測定値は参考程度にしておく。
で 最新の月別二酸化炭素全大気平均濃度は
http://www.gosat.nies.go.jp/recent-global-co2.html
によると
2021年4月 414.3 ppm
だと。
換気していて部屋に誰もいない時に SCD30 による測定値が 440 ppm 位になっているので信用できる測定値かな。
ソフトウェアを稼働してからそれなりに経ちました

表示されているのは上側から
- BME280による温度 / 湿度 / 気圧の測定値
- SGP30によるeCO2 / TVOCの測定値
- SCD30による温度 / 湿度の測定値

2021年03月15日より2021年03月21日まで

2021年03月22日より2021年03月28日まで

2021年03月29日より2021年04月04日まで

2021年04月05日より2021年04月11日まで

2021年04月12日より2021年04月18日まで

2021年04月19日より2021年04月25日まで
infinity値が混ざったデータを計算したことによって, ソフトウェアがハングアップしてデータが欠損していた。

2021年04月26日より2021年05月02日まで
途中の異常値はセンサーをケーブルで吊っていたから接続不良になっていた。

2021年05月03日より2021年05月09日まで

2021年05月10日より2021年05月16日まで
ソフトウェアがハングアップしてデータが欠損していた。

2021年05月17日より2021年05月23日まで
なぜか湿度100%になっていた。

2021年05月24日より2021年05月30日まで

2021年05月31日より2021年06月06日まで

2021年06月07日より2021年06月13日まで

2021年06月14日より2021年06月20日まで

2021年06月21日より2021年06月27日まで

2021年06月28日より2021年07月04日まで

2021年07月05日より2021年07月11日まで

2021年07月12日より2021年07月18日まで

2021年07月19日より2021年07月25日まで

2021年07月26日より2021年08月01日まで

2021年08月02日より2021年08月08日まで

2021年08月09日より2021年08月15日まで

2021年08月16日より2021年08月22日まで

2021年08月23日より2021年08月29日まで

2021年08月30日より2021年09月05日まで

2021年09月06日より2021年09月12日まで

2021年09月13日より2021年09月19日まで

2021年09月20日より2021年09月26日まで

2021年09月27日より2021年10月03日まで

2021年10月04日より2021年10月10日まで

2021年10月11日より2021年10月17日まで

2021年10月18日より2021年10月24日まで

2021年10月25日より2021年10月31日まで

2021年11月01日より2021年11月07日まで

2021年11月08日より2021年11月14日まで

2021年11月15日より2021年11月21日まで

ライブラリのアップデートでエラーがでた
こんなエラーが出たので
Compiling .pio\build\m5stack-core2\lib5f0\Adafruit BusIO\Adafruit_BusIO_Register.cpp.o
Compiling .pio\build\m5stack-core2\lib5f0\Adafruit BusIO\Adafruit_I2CDevice.cpp.o
Compiling .pio\build\m5stack-core2\lib5f0\Adafruit BusIO\Adafruit_SPIDevice.cpp.o
Compiling .pio\build\m5stack-core2\lib12b\Adafruit Unified Sensor\Adafruit_Sensor.cpp.o
Compiling .pio\build\m5stack-core2\lib25d\Adafruit BME280 Library\Adafruit_BME280.cpp.o
Compiling .pio\build\m5stack-core2\lib29e\Adafruit NeoPixel\Adafruit_NeoPixel.cpp.o
Archiving .pio\build\m5stack-core2\lib826\libSPI.a
Compiling .pio\build\m5stack-core2\lib29e\Adafruit NeoPixel\esp.c.o
Compiling .pio\build\m5stack-core2\lib29e\Adafruit NeoPixel\esp8266.c.o
.pio\libdeps\m5stack-core2\Adafruit BusIO\Adafruit_I2CDevice.cpp: In member function 'void Adafruit_I2CDevice::end()':
.pio\libdeps\m5stack-core2\Adafruit BusIO\Adafruit_I2CDevice.cpp:44:10: error: 'class TwoWire' has no member named 'end'
_wire->end();
^
*** [.pio\build\m5stack-core2\lib5f0\Adafruit BusIO\Adafruit_I2CDevice.cpp.o] Error 1
=========================================== [FAILED] Took 33.39 seconds ===========================================
ターミナル プロセス "C:\Users\aki\.platformio\penv\Scripts\platformio.exe 'run', '--environment', 'm5stack-core2'" が終了コード 1 で終了しました。
ターミナルはタスクで再利用されます、閉じるには任意のキーを押してください。エラーメッセージに書かれているファイル Adafruit_I2CDevice.cpp をこれから
/*!
* @brief De-initialize device, turn off the Wire interface
*/
void Adafruit_I2CDevice::end(void) {
#ifndef ESP8266
// ESP8266 does not implement Wire::end()
_wire->end();
#endif
_begun = false;
}このように
/*!
* @brief De-initialize device, turn off the Wire interface
*/
void Adafruit_I2CDevice::end(void) {
#if !(defined(ESP8266) || defined(ESP32))
// ESP8266 does not implement Wire::end()
_wire->end();
#endif
_begun = false;
}書き換えてビルドした。

コメント