(0)センサはどのようなものを用いてもよい。一つ以上。
例:M5StackCore2内蔵6軸IMUとENVIIIセンサ、TVOC/eCO2 ガスセンサユニット(SGP30)、UNIT加速度センサなど (ロングケーブルも利用してね)、タッチセンサ、等々
https://docs.m5stack.com/en/unit/envIII
岩井研にあるセンサも貸し出せます。
(1)アクチュエータを取得したセンサ値の変化に応じて制御させること。例えばアクチュエータは以下があるLED、 振動、LCD(液晶)、NEOPIXEL、音ブザー、モータ、ステッピングモータ、サーボモータなど一つ以上。動作写真を掲載すること。
アクチュエータの要件としてM5StackCoreのディスプレイに値を表示、あるいは振動や音を出すでもOKです。
(2)M5StackにてWifi経由でダイレクトにデータ送信してくだしさい。Wi-Fiルータは802.11ngbでしか送信できない(ac,axは5G帯は不可)ので注意すること。自宅が2.4GのWi-Fi環境がない人は大学で行うこと。また岩井と相談すること。
提出:ソースコード(inoファイル) と 動作写真をレポートに掲載すること。 できれば数時間以上or 複数日にわたる運用を期待する。
Ambientの送信周期は10秒など余裕をもって行ってください。上限があり3000件数が限界
※ どうしてもAmbientの設定がうまくいかず更にThingSpeak、GoogleSpreadSheetが難しく感じる場合は(2)は最終手段としてクラウド送信をスキップしてもよい。その場合シリアルコンソールからデータをcopy & pasteすること。or SDカードを利用してもよいがSDは以外にコードが難しい。
※ 自分でセンサ受信サーバを立てた場合は加算しますが無理をしないでね。大学の学内無線ではfirewallがありnode-redなどサーバをたてるのは無理なので自宅で
https://qiita.com/NWLab/items/cb3f434705708c40755b
node-redも面白いです.興味があれば自分でとりくんでみてください。
https://note.com/kazulabo/n/n069b74272d94
https://sites.google.com/cps.im.dendai.ac.jp/iot-tokuron-2023/node-red
(3)取得したセンサデータをAmbient等のクラウドからCSV等でダウンロードし、python mathplotpy pandas seabornなどを用いて解析した結果をグラフで表示し、考察せよ。時系列プロットやヒストグラムや相関性を確認するなど。ソースコード 図の画像を掲載すること。
(データ分析にはGoogleCollaboをつかおう。)
提出フォーマット:
一つのファイル(docx,pdf)にまとめてください。GoogleドキュメントやWEBで作成した人はWEBをPDF印刷したものを認めます。記事にするのもいいでしょう。
タイトル 学籍番号 氏名を必ず記載してください。
課題提出先:
BOXになります。すでに共有しています。
TDUBOXの「FMI_IoT特論2023課題提出フォルダ」->「最終課題_14回目で全員発表」です。アップできないひとは教えてください。
最終課題BOX提出 7月11日(火曜日曜日)13:35!
当日最終回_全員説明の予定(デモはできればビデオで)
レポート記述内容:
-システムの目的
-センサの種類と型、アクチュエータの種類を記載 光方の変化など写真で動作外観や様子(Arduino基盤の人は回路接続の)がわかるようにすること。
-M5Stack/(Arduinoソースコード+python送信側コード)
-pythonグラフ可視化コード
考察や今後の発展もレポートに記載すること。
BOXにファイルとしてもpython (jynb)ファイルとArduinoのinoファイルも提出してください。
完成した様子動画ファイル、動画ファイルへのリンクをアップ、第3者が閲覧できるリンクをレポートにつけてほしい。
最終課題提出先
https://tdu.box.com/s/cbrgvh3eoegriidy71l3qnxx4b8giq8j
※また上記の課題をスキップしてEdegeImpluseを用いたAI-IoTデバイス開発のレポートに変更してよい。EdgeImplseを用いた開発を選ぶ学生はオリジナリティや努力する点など事前に岩井の相談をしてから取り組むこと。 当然授業中に提示したサンプルそのままではだめである。
※M5Stackを組み込んだものづくりシステムに特化しても良いです。その場合も岩井と相談
CO2センサのサンプルは
以下の中のTOVであるので注意すること。
https://github.com/m5stack/M5Core2/tree/master/examples/Unit
※UNIT_ENV内にあるCO2でない。
ENVIIIのサンプルがうまく動かない場合は以下を参考にしてください。
https://github.com/m5stack/M5Unit-ENV/tree/master/examples/Unit_ENVIII_M5Core2