見出し画像

【イベントレポ】 会津版IoT縛りの勉強会!IoTLT会津 Vol.2

今日2021年6月19日は「IoTLT会津」コロナ以降多くのコミュニティ支部が活動しにくくなっていますが、そんな中でのIoT地方支部久々の開催です。それだけでも嬉しいのに、今回の運営は会津大学を中心とした学生達だそうです。ワクワクしながらYoutubeLIVEから参戦します。

動画はこちら


オープニング

ちょっと配信トラブルがありつつのスタートですが無事スタートしました。
今回は「IoTLT会津 Vol.2」とのことですが、VoL1はかなり前らしく、運営的にも今回が初とのことです。

そこから運営メンバーの紹介があってタイムテーブルの説明です。

LT准は適当です
次の登壇者を毎回決める方式は新鮮

LT1 学校に帰宅したらSlackに通知するシステム作ってみた:しんぶんぶんさん

最初は運営のしんぶんぶんさんです。

背景
学校にあるUBICという施設に住んでいるので、そこに帰宅したらSlackに通知が飛びシステムが欲しいと思い1.5時間で作った。

システム概要
・LINE Simple Beaconとmicro:bitを使用
・iphoneがBLEの電波圏内に入ったら通知を発信
・API Gateway + Lambdaのサーバレスアーキテクチャを使用

画像1

作り方
・Serverless frameworkでデプロイ
・めんどうなBLEもLINE Messaging APIを使ったら11行
・Microbitはソースコード書かなくてもできる。
・LINE API用のブロックがあるのでそれを使った

画像2

まとめ
・LINE Simple Beaconを使うとめんどくさいBLEも簡単

LT2 LチカCraft:朱雀匠さん

次は会津大学2年の朱雀匠さん。

経緯

画像3

・IoTに関するネタがないので悩んでいたらconnpassに「Lチカ最高」の文字
・MinecraftのMODを作ってArduinoとSirial通信してLチカ
・Mincraft内でブロックを置くとLEDが光る を作る

昨日の23:00から徹夜で作ったそうです

Mod作り
とにかく日本語上の資料が少なかった
Minecraftはバージョンがあって、それごとにModが違う

画像4

Sirial通信
・jSerialCommというライブラリを使用
 こちらも簡単な情報を送るというものの資料のが全然無かった
・なぜか複数回贈らないと反応しなかった

デモ
ゲーム内でブロックを置くとしっかり光っています

画像5

まとめ
・ModもSirial通信も情報が少なかった
・楽しかったので今後はタクトスイッチを押したらMinecraft内のランプを光るという逆のパターンをやってみたい


LT3 Homebridgeのススメ:wancomさん

Homebridge?
Apple製品から家電を制御するHomekit対応アクセサリをシミュレーションするサーバソフトウェア
・iphoneやsiriアプリから家電を操作
・外出先から操作、オートメーションができる

デモ

Siriから電灯をつけエアコンを操作できました。温度調整やセンサーから温度湿度を確認することも出来ます。
ブラウザ上から制御も出来ます

画像6

どうやるの?
・RaspberryPi上にHomebridgeを立てる、公式マニュアルあり
・温湿度センサーや自作の学習リモコンを接続
・自作のプラグインを登録・設定
 数多くの便利なプラグインが公開されています。
・プラグイン追加するとGoogleHomeも対応

学習リモコン
・単純に受診した信号をRaspberryPiに保存
・保存した信号を送信
・ArduinoのPWMを使用
・すごく簡単

LT4 センサーのデータをLINEで通知してみた

次のLTは匿名の学部3年生の方です

モチベーション
・家のカギを閉め忘れるのが気になるという問題を解消したい
・高校の時にバス停に向かう途中に鍵の事が気になり遅れた事がよくあった。

作りたいもの

画像7

・スマホで家の鍵の状態を知ることが出来る
・安く作りたい
・カギを閉め忘れている場合、家から離れる前に教えてくれる

使うもの
・ESP32、レーザー、フォトICダイオード、スマホ、抵抗ふたつ

方法
・鍵のところにレーザーを当てESP32でデータ取得
・Wi-Fiでスマホに送る


デモ
レーザーがちゃんと当たれば通知が来ます

画像8

課題
・LINE通知
SLL通信がうまくいかない~必要なルート証明書の間違い?
・BLE通信
BluetoothのアドレスはわかるけどBluetoothをスキャンしてもそのアドレスが出てこない、ServiceUUDがわからない
→ LINE Simple Beaconを使用するといいかも


LT5 エアコンをGoogleAssistantでつける:田代さん

次は会津大学3年でZliの部長の田代さんです。

作ったもの
・以前GoogleAssistantとSwitchBOTを使ってストーブをつくるものを作った
・今回はGoogleAssistantとNature Remoを使ってエアコンをつける

画像9

Nature Remo:スマートリモコン

Daialogflow:自然言語処理ができるGoogleのサービス

言葉を定義してオンオフをつけ、どこにリクエストを送るか指定します。

画像10

node-js Expressを使用
・シンプルなものに
・TypeScriptで書く

nginx
・ウェブサーバー
・今回はHTTPS対応
・Dockerだと環境構築が楽

Natur remo API
・公式のAPI
・HTTPクライアントがNatureサーバへHTTPSリクエストを行う事を利用する
・レスポンスはJSON形式

まとめとこれから
・過去に作ったものをそのまま拡張すればできた
・完成したらどこかで報告します



LT6 光をコントロールしたらQOL爆上がりした話:大川さん

大川さんは4月に卒業して東京で働く非エンジニアのOBです。
コロナでリモートワークになり、仕事とプライベートの切り替えがうまくいかず生活習慣が悪くなっていると実感してHueとSwitchBOTを導入しました。

Hue:光の強さを自由にコントロールできるIoTLED

・決まった時間になったらライトをつける
・仕事/プライベートのシーンによって色を変える
・夜になったら徐々に暗くなって勝手に消える

SwitchBOTカーテン:カーテンの開閉を自動化

・朝になったらカーテンを開ける

実際どうだった
・夜はだんだん眠くなるようになる
・目覚ましが要らず、朝の光で目が覚めるようになった
・集中とリラックスの切り替えが簡単


LT7 一晩でマイコン初心者が左手デバイスを作れるか:ERASERさん

ERAZERさんはLT初登壇で、昨日の夜に登壇することになったそうです。

つくりたいもの
コピー、ペースト、アンドゥができる左手デバイスを作る

機材::MacBook, AruduinoR3、Fabo、

キーボードからの信号
・8バイトの信号らしきものが来ている
・1バイト目は修飾キー(CTRLとかSHIFTなど)
・文字は3バイト目に入る
・残りは同時押ししたものが入る
・00 00 00 00 00 00 00 00 00 00 が送られるまで押しっぱなし状態

Arduinoのファームウェア書き換え
・Arduino自体をキーボードとして認識させる
・この状態ではプログラムを書き込むことが出来ないので戻す
・試しては繰り返し・・・で作業

実装

画像11

SirialWriteという関数でキーボードの動作ができる

左手デバイスの作成
コピー、ペースト、アンドゥの動作を実装

画像12

動作デモ

画像13

ついでに
競プロ部に所属しているので、それのテンプレートを書いてくれるものを作成しました

難航した事
・特殊文字、装飾文字のキーコードがわかりづらい
・調べてもJOS配列ばかりで、違っていた

感想
・実際にモノを作ったのは初めてだったので楽しかった
・キーボードのしくっみについて知識を得た


LT8 ARDUINOで心電図を見てみよう:tariさん

画像14

会津大学の5回生、卒研テーマがIoTとのことです。

今日のテーマ
・心電図をWebブラウザ上でリアルタイムプロット
・生体信号で一番手っ取り早いのは心電図
・役に立つかは別

ハードウェア

画像17


・Arduino Uno
・FaBo #501 OUT/IN Sheid
・FaBo #302 Bluetooth
・自作シールド(Gravity心拍センサ搭載)
・電極(日本光電製)
~すべて大学にあったものでコストは0円(普通は1万円前後)

FaBo?
・プロトタイピングを簡単にするためのモジュールやシールド
・スイッチ・センサー・LEDなど
・Arduino、RaspberryPi、IchigoJamに対応
・日本語ドキュメントが充実
・少し高めの価格・・・おもに教育用

ソフトウェア
・HTML
・Node.js ~サーバサイドのJavaScript、Arduinoとシリアル通信
・Express ~Node.jsのフレームワーク
・Epoch ~リアルタイムプロットに特化したJSのライブラリ
・Socket.io ~サーバサイドとフロントエンドをWebSocketで通信させるためのライブラリ

Arduinoでの処理
・電極から心電データをアナログ値で読み取る
・BluetoothでPCに送信

サーバーサイドの処理
・Arduino側からBluetoothで情報が送られる
・Node.jsで受け取る
・フロントエンドへWebSocketのデータとして送信

フロントエンドの処理
・サーバサイドからWebSocketで情報が送られてくる
・Epochを用いてリアルタイムグラフプロット

完成物
昨日ネットカフェで作ったハードウェア

画像16

ソフトウェア UI

画像17

デモ動画

画像18

動かない・・・不具合内容
・値の表示はうまくいっている
・グラフも描画できている
・そもそも電極がとってくる値がおかしい
 ~今後、電極を変えてみる

動かないけど
・WebSocketやNode.jsなどの技術に触れることが出来た
・ここから卒研に役立つアイデアが思いつくかも?

LT9 eBPFを使ってUSBの送受信を覗いてみた話:じぶりんさん

じぶりんさんは会津大修士1年の人です

eBPFでUSBの通信を暴く
インターンでやった内容の発表です

動機
・中身が同的に変わるUSBメモリを作ろうと頑張っていた
 パソコンに差し替えなくても中身が変わる
・DAMMのカラオケで予約したアニソンのアニメ動画を自動で表示するガジェット・・・これの為
・g_mass_storageの欠点~両方同時に読み取り専用にしないと使えない。
同時の書き込みにも対応できるモジュールを自作したい
USBの通信がわからない

画像19

→インターンに行ってeBPFを使えばカーネルコールから情報を取得できると教えてもらう


やったこと
・LinuxカーネルからUSBっぽいものを探す
・USB.cというそれっぽいものを見つける
・よさげな記事が見つかるが、中身を知る方法はなし
・Linuxカーネルの定義を参考にし、実態が取れそうな関数を発見

画像20

→内容っぽいものを取得できた
→文字化け、Clarとして扱わないでHEXで表示したい

バイナリが取得できるようになった
・整形して表示
・送信なのか受診なのかも識別

デモ
USBキーボードをセット

画像21

キーボードを入力する
5つ以上を同時だとエラーとかいろいろ流れているのがわかります

画像22

ソースコードはこちら


LT10 月の沙漠~ワールドワイドなオープン放射線計測~:河野さん

河野さんは秘密結社としていつも発表している河野さんです

画像24

秘密結社
・世界のいろんな諸問題にアプローチ ピザ、置換など
・かつて会津大学でピザハッカソンをしたこともあります

日本Androidの会原子力部
・四国と会津若松で同時発生
・2011年福島ガイガーカウンター勉強会開催
・原発災害に対応するためデータをクラウドに収集するサービスの開発、
・啓蒙活動

画像25

ガイガーカウンター自作
・独自開発
・高圧回路は写ルンですのフラッシュ回路を分解、
・ダイソーの万歩計からカウンタ回路
・市販のカウンターの原理を調べる
・PC、スマホに接続

データをクラウドに収集

画像26

・規制の放射性測定器(オープンハードウェアのもの)を改造
・スピーカ部分から信号を取り出す

その後、最近は
・10回で一区切りで次の災害に備える
・深センブーム、新線の会社のCTOに
・コロナでリモートでCTO

最近のニュース
中国の原発で放射能漏れの疑い

画像27

・深センから測定してみる
・生データを見えるようにしてみる
・今は測定器は5000円くらい簡単に入手できる
・中身を空けて改造してみて、スピーカーからデータを取得

・・・現在取り組み中


・・・この後は懇親会になりました







この記事が気に入ったらサポートをしてみませんか?