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
失くしたリモコンを作る2
Search
Kenta
January 20, 2023
Technology
0
66
失くしたリモコンを作る2
「Raspberry Pi でエアコンのリモコンを作った話」の続編。
Kenta
January 20, 2023
Tweet
Share
More Decks by Kenta
See All by Kenta
失くしたリモコンを作る
kenta11
0
19
Other Decks in Technology
See All in Technology
大規模言語モデル (LLM)における低精度数値表現
pfn
PRO
3
810
The depthes of profiling Ruby - RubyKaigi 2024
osyoyu
0
140
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術 / Strike a balance between correctness and efficiency with fp-ts
kakehashi
5
3.5k
エムスリーマルチデバイスチーム紹介資料 / Introduction of M3 Multi Device Team
m3_engineering
1
150
使われないものを作るな!出口から作るデータ分析基盤 / Data Platform Development Starting from the User Needs
amaotone
16
4.5k
iThome2024 Wailing Wall of Enterprise Security
notsurprised
0
280
Dungeons and Dragons and Rails
joelq
0
230
PhpStorm超絶技巧40分集中講義 #phpconkagawa
yusuke
4
750
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
120
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
120
OPENLOGI Company Profile
hr01
0
45k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
1.7k
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
133
6.3k
Building Flexible Design Systems
yeseniaperezcruz
320
37k
Infographics Made Easy
chrislema
238
18k
GraphQLとの向き合い方2022年版
quramy
33
13k
KATA
mclloyd
16
12k
The Cult of Friendly URLs
andyhume
74
5.7k
Building Applications with DynamoDB
mza
88
5.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Fireside Chat
paigeccino
22
2.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Into the Great Unknown - MozCon
thekraken
15
1.1k
Building Adaptive Systems
keathley
32
1.9k
Transcript
失くしたリモコンを作る2 Kenta Arai 2023/01/20 某イベント 1
前回までのあらすじ 2023/01/20 某イベント 2
エアコンのリモコンを失くした • もう5年以上みていない • 他の部屋にあったもう一個でどうにかしている →今ある最後のリモコンを失くしたら終わりの人生 2023/01/20 某イベント 3
不要なリモコンを発見 • テレビを処分したときに捨て忘れた • 種類は違うけど同じリモコンだし、再利用できないか? • こういう突飛な理屈はだいたい工作の言い訳 • でもSDGsって言うもんね →付いてた赤外線LEDをわざわざ外して
自作リモコンの開発をした(前回の冬休みの宿題) 2023/01/20 某イベント 4
エアコンのリモコンが出す信号の解析 • 赤外線受信モジュールで色々な種類の信号を計測 2023/01/20 某イベント 5 • 色々な種類の信号から、信号のフォーマットを分析(ヤマ感)
Raspberry Pi 3B+ でリモコンができた! • 解析したフォーマットで赤外線LEDから信号を出力 • エアコンのON/OFF、モード切替(暖房→ドライー>冷房)ができた 2023/01/20 某イベント
6
今年の取り組み: リモコン簡素過ぎ問題 2023/01/20 某イベント 7
ちょっと簡素過ぎない? • リモコンにしてはできることが少なすぎる • 電源のON/OFF • モードの切り替え(暖房→ドライー>冷房) • 普段使う機能はもっとある •
設定気温の変更(1℃上げる、1℃下げる) • 風量の変更 • モニタ(現在のモード、風量、設定気温) 2023/01/20 某イベント 8
ちょっと簡素過ぎない? • リモコンにしてはできることが少なすぎる • 電源のON/OFF • モードの切り替え(暖房→ドライー>冷房) • 普段使う機能はもっとある •
設定気温の変更(1℃上げる、1℃下げる)←ボタン増やせばOK! • 風量の変更←ボタン増やせばOK! • モニタ(現在のモード、風量、設定気温) 2023/01/20 某イベント 9
ちょっと簡素過ぎない? • リモコンにしてはできることが少なすぎる • 電源のON/OFF • モードの切り替え(暖房→ドライー>冷房) • 普段使う機能はもっとある •
設定気温の変更(1℃上げる、1℃下げる)←ボタン増やせばOK! • 風量の変更←ボタン増やせばOK! • モニタ(現在のモード、風量、設定気温)←これどうしよう? 2023/01/20 某イベント 10
LCD、あるよ • 昔買ったラズパイ工作キットに入ってた • テキストを表示できるので 現在の状態を表示できるようにしよう! • 簡単なスペック • 16文字×2行の表示領域
• インターフェース:I2C • 英数字やカタカナ、独自の文字を表示可 2023/01/20 某イベント 11 LCD1602
LCDの制御方法 • 文字ごとに符号が決まっているので 表示したい文字列の符号列を作る 2023/01/20 某イベント 12 • あとは公開されているLCD向け Python
モジュールで API を呼び出すだけ!
リモコン完成図 2023/01/20 某イベント 13 • 諸々の制御:Raspberry Pi 3B+ • ボタン
• モニタの電源用 • モード用(暖房、冷房、ドライ) • 風量用(自動・強中弱) • 温度用(1℃上げる、1℃下げる) • モニタ:ボタンで設定した状態の表示用 • 電源ボタンを押して エアコンの稼働状態を見られた!
まとめ • LCDで現在の制御状態が分かるようになった • I2Cを理解することができた • ブレッドボードが盛りそば化した 2023/01/20 某イベント 14
反省 • 思ったよりも文字の表示が遅かった • LCDの知識不足、もうちょっと俊敏に文字を表示する方法は無いか… • そろそろブレッドボードでは限界 • 工作中にピンがよく抜ける、大きいボード買う?
おしまい 2023/01/20 某イベント 15
今日はちょっとネタ弱くない? 2023/01/20 某イベント 16
ホントは余興までやって自慢したかった… • ディスプレイが使えるようになったので、ゲームをしたかった • 作る予定のゲーム:恐竜ゲーム • Google Chrome でインターネットに繋がらないときにできるアレ •
chrome://dino で遊べる • ゲームができるエアコン用リモコンって楽しそう • 資料を公開するタイミングまでにはお見せしたい…! 2023/01/20 某イベント 17
ホントのおしまい 2023/01/20 某イベント 18
後日談:ゲームできました 2023/01/20 某イベント 19
抽象恐竜ゲーム 2023/01/20 某イベント 20 • 恐竜が@、障害物がX 障害物が迫ってきたら… 温度設定ボタンでジャンプ!