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
FirebaseとArduinoで忘れ物をなくす
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Masaki Kuge
October 07, 2018
0
500
FirebaseとArduinoで忘れ物をなくす
Masaki Kuge
October 07, 2018
Tweet
Share
More Decks by Masaki Kuge
See All by Masaki Kuge
2019/7/11 LT at TUAT
astpy_ms
0
75
2019/6/18 LT at TUAT
astpy_ms
0
130
進路指導
astpy_ms
0
150
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
Ethics towards AI in product and experience design
skipperchong
2
200
WENDY [Excerpt]
tessaabrams
9
36k
What does AI have to do with Human Rights?
axbom
PRO
0
2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Faster Mobile Websites
deanohume
310
31k
[SF Ruby Conf 2025] Rails X
palkan
1
760
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
The Language of Interfaces
destraynor
162
26k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Transcript
Firebase と Arduino で 忘れ物をなくす 1
リラックスして 聴いていただければ 2
メンバー紹介 3
久下 柾 (Kuge Masaki) グループ統制 / Arduino プログラム 担当 ⼯業枠特別推薦で⾸都⼤学東京に合格
1 ⽇1 ⾷ オールジャンルマジキチ⾳ゲーマー 4
寺⽥洋⼈ (Terada Hiroto) Android アプリ担当 通称 ⿂ この課題研究の全ての元凶 とにかく写真写りが悪い 5
⼭⼝ 航輝 (Yamaguchi Kouki) ハードウェア全般担当 通称 ぐっちー この課題研究の救世主 遅寝早起き 6
コンセプト 7
忘れ物をなくす 8
進学⽤にやっておきたいこと 授業で培った知識を実践で活かしたい ⾯接のネタとして活⽤したい 興味のある分野について勉強したい ハード、ソフトの向き不向きをわかりたい プログラミングの地⼒をつけたい スライドショーづくりに慣れておきたい 9
制約 経費は9,000 円以内 → ただし私物は0 円として計算する 著作権、電波法などの法律に引っかからない 命及び環境に危険を及ぼす開発はしない ( 例)
原⼦⼒発電など 10
概要 忘れ物を家に出るときに通知してくれる何か 11
性能要件 家を出るときに、登録しておいたクリップが近く にあるかを確認し、なかったら通知する。 クリップ( 忘れ物) が⾒つからない場合、アプリの⽅ から⾳をクリップに⾳を出させる クリップを常につけておくことで、外出先ですぐ に通知を予約することができる 各クリップにはアプリ側で名前をつけられる
12
わかりづらすぎる 13
噛み砕いてみる 親機→ ⽞関に置いておく ⼦機→ 忘れ物につけておく スマホアプリ→ ⼦機を予約しておく 1. ⽞関に置いてある親機のスイッチを押す 2.
親機が予約してある⼦機が近くにあるか探す 3. 近くにない⼦機をスマホに通知する 14
初期案 15
忘れ物の予約をスマホから⾏う Android Studio でアプリを制作 → ⾔語はKotlin →iOS 向けアプリは経費の関係で断念 16
親機 Arduino とESP8266 →LAN を使ってスマホに通知を送れるのでは? Bluetooth モジュール → 親機と⼦機の通信を仲介 GPS
モジュール → ⼦機の場所を検索 その他電⼦部品 接続はブレッドボード 17
⼦機 Bluetooth モジュール → 通信 プリント基板を使う → 回路図はEAGLE を使⽤ その他電⼦部品
はんだ付けで電気的接続 18
スマホへの通知 アプリとLAN を使って、Arduino とスマホを接続 19
実装してみよう! 20
あれ? 21
問題点 パーツ代が⾼すぎる →Bluetooth モジュール 2 万円 / 個 GPS は誤差が多い
→ ⼀軒家だとしても正確な位置情報が得られない LAN だとスマホに通知が送れない → ローカルIP で⾏けなくもないが... 全体的にパーツが⼤きい → 妥協しました 22
解決法 Bluetooth ⾼すぎ問題 →TWILITE tip 採⽤(¥1,620) → 少し⾼いが、Bluetooth よりは安価 GPS
誤差⼤きすぎ問題 → 発振器を作る →LC 発振回路をつくり発振させる → それを受信器で増幅させ、Arduino が受け取る 通知が送れない問題 →Firebase Realtime Database を利⽤ →ESP とJava にFirebase ⽤のライブラリがある 23
Re: 実装してみよう! 24
親機 Arduino UNO ESPr developer (ESP8266) TWILITE tip 受信器 その他電⼦パーツ
25
親機 26
⼦機 TWILITE tip LC 発振回路 その他電⼦パーツ 27
⼦機 28
⼦機 29
⼦機 30
⼦機 31
⼦機 32
アプリレイアウト 33
実演 34
⼦機が近い場合 35
⼦機が近い場合 36
⼦機が近い場合 37
⼦機が遠い場合 38
⼦機が遠い場合 39
⼦機が遠い場合 40
まとめ 1 年間頑張った甲斐があった それぞれのメンバーの特⻑が⽣きた研究だった 都⽴⾼校⽣なりに限界があった スケジュールはしっかり守ったほうが良い Kotlin は神⾔語 Firebase は神サービス
41
使ったソフトウェア Ubuntu 18.04 LTS Arduino IDE 1.8.5 Marp 0.0.13 →
https://yhatt.github.io/marp scrapbox → scrapbox.io 42