Submit Search
Upload
心拍数IoT完全に理解した.pptx
•
Download as PPTX, PDF
•
0 likes
•
164 views
M
minoruakahori1
Follow
エンジニア達の「完全に理解した」LT資料
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 18
Download now
Recommended
UEFIベアメタルプログラミング
UEFIベアメタルプログラミング
Yuma Ohgami
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
roboard
最近のやられアプリを試してみた
最近のやられアプリを試してみた
zaki4649
質問応答システム入門
質問応答システム入門
Hiroyoshi Komatsu
こんなRedmineは(個人的に)イヤだ! #RedmineOsaka
こんなRedmineは(個人的に)イヤだ! #RedmineOsaka
Kazuhito Miura
Suphx: Mastering Mahjong with Deep Reinforcement Learning
Suphx: Mastering Mahjong with Deep Reinforcement Learning
harmonylab
機械手臂應用
機械手臂應用
艾鍗科技
実践・最強最速のアルゴリズム勉強会 第一回 講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第一回 講義資料(ワークスアプリケーションズ & AtCoder)
AtCoder Inc.
Recommended
UEFIベアメタルプログラミング
UEFIベアメタルプログラミング
Yuma Ohgami
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
3D Printer 韌體原始碼解析心得 (以 Marlin 為對象)
roboard
最近のやられアプリを試してみた
最近のやられアプリを試してみた
zaki4649
質問応答システム入門
質問応答システム入門
Hiroyoshi Komatsu
こんなRedmineは(個人的に)イヤだ! #RedmineOsaka
こんなRedmineは(個人的に)イヤだ! #RedmineOsaka
Kazuhito Miura
Suphx: Mastering Mahjong with Deep Reinforcement Learning
Suphx: Mastering Mahjong with Deep Reinforcement Learning
harmonylab
機械手臂應用
機械手臂應用
艾鍗科技
実践・最強最速のアルゴリズム勉強会 第一回 講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第一回 講義資料(ワークスアプリケーションズ & AtCoder)
AtCoder Inc.
What's the bus-off attack?
What's the bus-off attack?
Himitu Eightnote
私とOSSの25年
私とOSSの25年
MITSUNARI Shigeo
目で見る過学習と正則化
目で見る過学習と正則化
y-uti
20120711 WUM Redmineの使い道_公開版
20120711 WUM Redmineの使い道_公開版
Yu Nakata
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
Satoshi Kubo
EthernetやCPUなどの話
EthernetやCPUなどの話
Takanori Sejima
RTXで遊ぶ
RTXで遊ぶ
nvsofts
SSH力をつけよう
SSH力をつけよう
(^-^) togakushi
Bezmugurkaulnieki 1
Bezmugurkaulnieki 1
Andris Ziemelis
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
okusakazuya
距離とクラスタリング
距離とクラスタリング
大貴 末廣
ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)
Kohei Nakamura
Raspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試す
Kenichiro MATOHARA
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
Daiki Maekawa
Vim script と vimrc の正しい書き方@nagoya.vim #1
Vim script と vimrc の正しい書き方@nagoya.vim #1
cohama
C++でできる!OS自作入門
C++でできる!OS自作入門
uchan_nos
Redmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイド
Go Maeda
180215 Ponanzaにおける強化学習、ディープラーニングとその先
180215 Ponanzaにおける強化学習、ディープラーニングとその先
HEROZ-JAPAN
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
sonickun
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
miyp
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
Toru Miyahara
More Related Content
What's hot
What's the bus-off attack?
What's the bus-off attack?
Himitu Eightnote
私とOSSの25年
私とOSSの25年
MITSUNARI Shigeo
目で見る過学習と正則化
目で見る過学習と正則化
y-uti
20120711 WUM Redmineの使い道_公開版
20120711 WUM Redmineの使い道_公開版
Yu Nakata
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
Satoshi Kubo
EthernetやCPUなどの話
EthernetやCPUなどの話
Takanori Sejima
RTXで遊ぶ
RTXで遊ぶ
nvsofts
SSH力をつけよう
SSH力をつけよう
(^-^) togakushi
Bezmugurkaulnieki 1
Bezmugurkaulnieki 1
Andris Ziemelis
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
okusakazuya
距離とクラスタリング
距離とクラスタリング
大貴 末廣
ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)
Kohei Nakamura
Raspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試す
Kenichiro MATOHARA
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
Daiki Maekawa
Vim script と vimrc の正しい書き方@nagoya.vim #1
Vim script と vimrc の正しい書き方@nagoya.vim #1
cohama
C++でできる!OS自作入門
C++でできる!OS自作入門
uchan_nos
Redmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイド
Go Maeda
180215 Ponanzaにおける強化学習、ディープラーニングとその先
180215 Ponanzaにおける強化学習、ディープラーニングとその先
HEROZ-JAPAN
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
sonickun
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
What's hot
(20)
What's the bus-off attack?
What's the bus-off attack?
私とOSSの25年
私とOSSの25年
目で見る過学習と正則化
目で見る過学習と正則化
20120711 WUM Redmineの使い道_公開版
20120711 WUM Redmineの使い道_公開版
Junitを使ったjavaのテスト入門
Junitを使ったjavaのテスト入門
EthernetやCPUなどの話
EthernetやCPUなどの話
RTXで遊ぶ
RTXで遊ぶ
SSH力をつけよう
SSH力をつけよう
Bezmugurkaulnieki 1
Bezmugurkaulnieki 1
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
徳島生まれのオープンソースソフトウェアシラサギのCMS導入事例、機能紹介
距離とクラスタリング
距離とクラスタリング
ある工場のRedmine +(Plus)
ある工場のRedmine +(Plus)
Raspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試す
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
i-Cart miniを対象としたつくばチャレンジ用ソフトウェアパッケージの開発
Vim script と vimrc の正しい書き方@nagoya.vim #1
Vim script と vimrc の正しい書き方@nagoya.vim #1
C++でできる!OS自作入門
C++でできる!OS自作入門
Redmine 4.2 新機能評価ガイド
Redmine 4.2 新機能評価ガイド
180215 Ponanzaにおける強化学習、ディープラーニングとその先
180215 Ponanzaにおける強化学習、ディープラーニングとその先
RSA暗号運用でやってはいけない n のこと #ssmjp
RSA暗号運用でやってはいけない n のこと #ssmjp
プログラムを高速化する話
プログラムを高速化する話
Recently uploaded
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
miyp
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
Toru Miyahara
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Toru Miyahara
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
K Kinzal
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
mizukami4
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
Kurata Takeshi
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
Masatsugu Matsushita
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
Toru Miyahara
Recently uploaded
(8)
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
ビジュアルプログラミングIotLT17-オープンソース化されたビジュアルプログラミング環境Noodlの紹介
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
Compute Units/Budget最適化 - Solana Developer Hub Online 6 #SolDevHub
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
心拍数IoT完全に理解した.pptx
1.
心拍センサでIoT 完全に理解した エンジニア達の「完全に理解した」LT資料 発表 あかみの as
五穀米さらだ 発表日 2023年02月23日
2.
自己紹介 • 技術系 as
あかみの @minotw996 • バーチャル as → @vgare2023 当初はセンサーやカメラのGUIを作るはずが、最近はモーター制御したり基板作るハメに 好きな言語はTypeScript 苦手な言語はC++ (←IoT系にとっては致命的)
3.
雀士1: 76-平常 雀士2
: 88-平常 雀士3: 68-平常 ワシ : 70-平常 こんな感じで配信時の心拍数を表示したい 今回やりたかったこと
4.
今回やりたかったこと 雀士1: 76-平常 雀士2
: 88-平常 雀士3: 68-平常 ワシ : 200-異常 友人対戦配信で使ったら、余計な心理戦が生まれておもしろそう
5.
必要なハード マイコン ESP32-DevKitC ESP-WROOM-32開発ボード 1,600円 @秋月 その他ケーブルや配線類 1,000円未満 約5,000円なので 技術書1.5冊前後の価格で作れちゃいます! (人件費含まず) センサ GROVE-心拍センサ 2,145円@スイッチサイエンス
6.
必要なもの マイコン ESP32 心拍数センサー GROVE-心拍センサ サーバー Firebase Realtime Database 今回は自分の心拍数をDBに書き込んで、ブラウザ上で確認するところまで実施
7.
必要なもの マイコン ESP32 心拍数センサー GROVE-心拍センサ サーバー Firebase Realtime Database 今回は自分の心拍数をDBに書き込んで、ブラウザ上で確認するところまで実施 約5,000円なので 技術書1.5冊前後の価格で作れちゃいます! (2回目)
8.
アプリケーションの構成 今回は ①心拍データの取得と計算+DB更新 @ESP32+Firebase ②ブラウザ上でリアルタイム更新の確認まで実施 @React+Firebase write リアルタイム 通信 Wi-Fi 心拍信号
9.
心拍の取得とDB更新@ESP32 電源用の2本と、心拍検知時に信号を送るシンプルなセンサでした Q.ハードは配線が難しそう A.今回は秒で終わります 黒-GND 赤-3.3V 黃-番号が振られたピンならOK (今回は34を使用)
10.
心拍の取得とDB更新@ESP32 専用のIDEのセットアップは割愛 VScodeの拡張でPlatformIOからもコンパイル可能 Q.Arduino言語とはなんぞや A.C++をベースにした言語 Arduinoという専用マイコンもあるので たまに検索がまぎらわしい IDE経由でライブラリをインストールすると サンプルコードもそのまま使えることが多い ので、電子工作入門でよく使われる
11.
心拍の取得とDB更新@ESP32 Firebaseとの連携には Firebase ESP32 Client を使用 Githubの ドキュメントもサンプルコードも 分かりやすかった。
12.
心拍の取得とDB更新@ESP32 組み込み系は 1. 立ち上げ時に1回だけ行う処理 2. 電源が切れるまで繰り返し行う処理 で構成される 今回は1で ①センサからの信号を読むINPUTピン定義 ②Wi-Fi接続 ③Firebaseへの認証 ④心拍信号キャッチ時の割込み関数の設定 (上記関数内で)心拍BPM計算、20個移動平均計算、 受信フラグの処理 立ち上げ時の実行部分@setup() 作った関数の中身は割愛 ① ② ③ ④
13.
心拍の取得とDB更新@ESP32 なお、心拍キャッチ時にDBに書き込みに行けば無駄がないと思い そんなコードを書いたら、ESP32さんがパニックを起こしました
14.
心拍の取得とDB更新@ESP32 なお、心拍キャッチ時にDBに書き込みに行けば無駄がないと思い そんなコードを書いたら、ESP32さんがパニックを起こしました
15.
心拍の取得とDB更新@ESP32 繰り返し実行するloop()内で 変数のoldCountとcountの比較で フラグチェックをして、 フラグ変更が確認できたら 計算済み心拍データをFirebaseに書き込み とした。 【ハマりポイント】 前述の割込み関数の中でFirebaseに書き込みまで実行しようとすると強制リセットが起こる 【原因】 割込み関数は優先度が高く、ネットワーク通信は優先度が低いため、適切な切り分けが必要 【対策】 setup()でフラグを持たせ、loop()でチェックして書き込み、と優先度の矛盾と競合を解消 【解決方法】設定されている優先度を理解して、切り分ける
16.
で、FirebaseとReactの連携は 皆さんのほうが詳しいと思うので割愛します 全37行のクソシンプルUIがこちら ②ブラウザ上でリアルタイム更新の確認
17.
結果:無事に合成できた
18.
まとめ 心拍センサでIoT 完全に理解した! + 遊び心で技術を使うのは楽しい!
Download now