Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
クラウドを活用して家電をハックしてみた
Search
KMiura
July 13, 2024
Technology
0
140
クラウドを活用して家電をハックしてみた
2024/07/13 Cloud in the Camp 2024 札幌 Horippa
https://connpass.com/event/315715/
KMiura
July 13, 2024
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
43
Pythonでルンバをハックしてみた
miura55
0
94
あなたの知らないクラフトビールの世界
miura55
0
280
Storage Browser for Amazon S3を触ってみた + α
miura55
0
160
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
170
あのボタンでつながるSORACOM
miura55
0
99
Postman Flowsで作るAPI連携LINE Bot
miura55
0
330
Lambdaと共に歩んだAWS
miura55
3
730
Other Decks in Technology
See All in Technology
やさしいMCP入門
minorun365
PRO
147
95k
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
1
240
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #DevOpsDaysTokyo
takabow
0
200
近年の PyCon 情勢から見た PyCon APAC のまとめ
terapyon
0
290
システムとの会話から生まれる先手のDevOps
kakehashi
PRO
0
210
【日本Zabbixユーザー会】LLDを理解するときの勘所 〜LLDのある世界を楽しもう!〜
yoshitake945
0
110
Webアプリを Lambdaで動かすまでに考えること / How to implement monolithic Lambda Web Application
_kensh
7
1.2k
ゆるくVPC Latticeについてまとめてみたら、意外と奥深い件
masakiokuda
2
230
All You Need Is Kusa 〜Slackデータで始めるデータドリブン〜
jonnojun
0
140
Amebaにおける Platform Engineeringの実践
kumorn5s
6
890
.mdc駆動ナレッジマネジメント/.mdc-driven knowledge management
yodakeisuke
24
11k
ウォンテッドリーにおける Platform Engineering
bgpat
0
190
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Practical Orchestrator
shlominoach
186
10k
Why Our Code Smells
bkeepers
PRO
336
57k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
29
5.6k
For a Future-Friendly Web
brad_frost
176
9.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Transcript
クラウドを活用して家電をハックして みた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • Acallのバックエンドエンジニア • JAWS UG名古屋, Cloudflare
Meetup 名古屋 運営 • 北海道で好きなところ:小樽、支笏湖、 余市蒸留所 @k_miura_io koki.miura05
時は2024年3月
会社辞めました
入社直前に人生初の北海道へ
そして入社
4年ぶりのフルリモート ※画像はイメージです
こいつの出番!
在宅勤務あるある? • 作業に集中してコーヒーの存在を忘れる • せっかく淹れたコーヒーが渋くなる • 良い豆ほど損した気分 ↑2500円のコーヒーメーカーと 4000円のコーヒー豆のツーショット
今回はこれをIoTで解決する話
システム構成
デバイスの通信 • デバイスの通信はすべてSORACOMを駆使したセルラー通信を使用 • 在宅勤務に支障をきたさないようになるべくWifiで接続するデバイスの数は減らしたい • SORACOM Beamを使うことでSORACOMのプラットフォームにデータ転送して暗号 化を行いAWSにPublish •
デバイスの通信量が減る&デバイスにAWSの認証情報を持たなくて済む • 用途:コーヒーメーカーにつけたセンサーデータの送信、信号灯の操作 https://soracom.jp/services/beam/
デバイスの通信その2 • SORACOM Funkを使ってサー バーレスなAPIを実装 • AWS、Azure、GCPのFaaSの実 行権限を与えるだけでエンドポ イントを叩くだけで実現できる •
もちろんSORACOMのSIM・バー チャルSIMのアクセスだけ受け 付けるのでAPI Gatewayに認証 つける必要なし • 用途:QRコードスキャナを使っ たチェックイン https://soracom.jp/services/funk/
センサーデータを送信 してからのロジック • IoT Rulesを使ってデバイス から送信されたセンサー データをそのまま別のサー ビスに転送サービスにでき る •
転送先の中にはStep Functionsも含まれる • トピックのデータがJSON だったときはよしなにJSON に変換してStep Functions に入力される
メインのビジネス ロジック • 待ち時間が長いのでStep FunctionsでLambdaの処 理を分割 • Step Functionsでもできる ような処理はStep
Functionsに逃がすことで 一つのLambdaのコード量 を減らせる • IoTのPublishはLambdaで しかできない…
ハードウェアの全体像
ハードウェア(コーヒーメーカー) • 電流センサーでコーヒーメーカーが通電したことを検知して MQTTでデータを飛ばす • SORACOMのSIMを仕込んでSORACOM Beamを飛ばすこ とでマイコンの消費電力、メモリ使用量を抑えられる • センサー自体はアナログ信号なのでジャックプラグで信号を受
け取ったらADコンバータをかましてマイコンにデータを送信 • センサーの特性上、ノイズが乗りやすいので抵抗を挟むと抑え られる • センサーのドキュメントがなにもない&付属品のジャックが初 期不良で辛かった…
ハードウェア(チェックイン&通知) • チェックインには某T様系企業製のQRコードリー ダーを使用 • 結構古い機種なのによう動く • シリアル通信 • 通知に使用する信号塔はネットワークライトを使用
• HTTP通信で操作できるので結構便利 • ブザーも鳴らせる • 制御にはそれっぽい筐体付きのRaspberry Pi model Bを使用 • 1年前に秋葉原で購入 • 無線モジュールがないのでモデムを使って SORACOMのぷらっとフォームに接続
デモ動画
まとめ • SORACOMはクラウドとの相性バツグンでアプリ屋さんでも手軽にIoT を楽しめる • AWSのサービスを使うことでIoT連携にマッチしたシステムをサーバー レスで構築できる • 課題解決でIoTプロトタイピングしていくのは楽しい
宣伝 https://discovery.soracom.jp/2024/index.html
宣伝2 https://jawspankration2024.jaws-ug.jp/ja/
END