Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
バスあと何分ミニサイネージ
Search
Satoshi Gachi Fujimoto
September 12, 2022
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
バスあと何分ミニサイネージ
M5Stack Japan Creativity Contest 2022の資料です
Satoshi Gachi Fujimoto
September 12, 2022
More Decks by Satoshi Gachi Fujimoto
See All by Satoshi Gachi Fujimoto
忘年会LT(2025)
satoshirobatofujimoto
0
70
バスあと何分ミニサイネージ
satoshirobatofujimoto
0
150
高専で制御を、大学でセンシングを学び、次は脳みそ
satoshirobatofujimoto
0
340
画像生成AIを使って勝負しよう
satoshirobatofujimoto
1
190
ガチマナ会 vol.1
satoshirobatofujimoto
0
290
画像生成AIを使って勝負しよう
satoshirobatofujimoto
0
350
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム@AIミーティング
satoshirobatofujimoto
0
240
VPS研究者が語る”VPS概論”
satoshirobatofujimoto
0
520
画像からプロンプトを考えて最も似ている画像を生成した人が勝ちのゲーム
satoshirobatofujimoto
0
260
Other Decks in Technology
See All in Technology
Deep Data Security 機能解説
oracle4engineer
PRO
2
650
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
560
IoTデバイスを繋げるプロトコルMatterをAndroidで使用する方法
harutiro
0
110
KanaAI
shreyas1009
0
140
AI 時代の Azure エンジニアリング ~ 私たちは何を磨き、何を任せるのか ~
chack411
1
400
LLM機能を自作して分かるSnowflake Cortex AIの強み
nayuts
0
240
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
260
Snowflake Horizon Catalog と Apache Iceberg で作る オープンなデータ基盤
kitagawaz
0
400
いちAWSエンジニアのAI活用を振り返る #devio2026 / devio osaka 2026 kawahara
masahirokawahara
2
340
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
leveragestech
PRO
0
140
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
120
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
130
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
5.2k
Writing Fast Ruby
sferik
630
63k
Optimizing for Happiness
mojombo
378
71k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
250
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
The Curse of the Amulet
leimatthew05
3
15k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
300
From π to Pie charts
rasagy
1
390
Chasing Engaging Ingredients in Design
codingconduct
0
340
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Automating Front-end Workflow
addyosmani
1369
210k
Designing for humans not robots
tammielis
254
26k
Transcript
きっかけ • 熊本の渋滞はワースト1位(箇所数・平均速度) • 5分おきにバスが来るような都会ではない(逆に2台同時に来ることがよくあるw) • だいたいバス停に近づくと目の前をバスが通り過ぎてしまう! • 自宅やオフィスにサイネージが欲しかった •
時刻や〇停前ではなく「あと何分」だけが知りたい • 去年11月ごろにGTFSリアルタイムに対応した(スクレイピングしていたものを変更)
システムの構成 GTFS リアルタイム Lambda S3 API Gateway EventBridge M5Stack GTFS(静的)
Lambda バスきたがちもとさんAPI (AWS Cloud) バスきたがちもとさんミニ https://km.bus-vision.jp/kumamoto/view/opendataKuma.html
システムの流れ 1. 運行前にGTFS(静的)からデータを更新 2. M5StackのSDカードにWiFi設定、乗車停留所と降車停留所を書き込んでおく 3. M5Stackを起動すると1分おきにAPIを叩き、「あと何分」の情報を取得 GTFS リアルタイム Lambda
S3 API Gateway EventBridge M5Stack GTFS(静的) Lambda
運行前にGTFS(静的)からデータを更新 • EventBridgeを用いて毎朝4:15~5:30の間に15分おきにLambda関数(update)を実行 • Lambda関数(update) 1. GTFS(静的)データを取得 2. 提供情報(feed_info.txt)のfeed_versionが更新されていたらS3に保存 •
停留所情報(stops.csv)→ バス停一覧(stop_names.csv)を作成 • 経路情報(routes.csv) • 便情報(trips.csv) • 通過時刻情報(stop_times.csv) • 運行区分情報(calendar.csv) • 運行日情報(calendar_dates.csv) 3. 更新したか/最新かを返す S3 EventBridge GTFS(静的) Lambda
「あと何分」の情報を返すAPI • Lambda関数(minutes) 1. 乗車停留所→降車停留所の時刻表を作成 • 停留所情報(stops)から一致するバス停名のstop_idを取得 • stop_idに対応する通過時刻情報(stop_times)を取得 •
trip_idに対応する便情報(trips)を取得 2. service_idと一致する運行区分(calendar)と運行日情報(calendar_dates)から運行状況を確認 3. GTFSリアルタイムのTrip_Updateからtrip_idとstop_idが一致する通過時刻を取得 4. 通過時刻から現在時刻を引いて「あと何分」のリストを返す GTFS リアルタイム Lambda S3 API Gateway
M5Stackを起動すると1分おきにAPIを叩き、「あと何分」の情報を取得 https://qiita.com/SatoshiGachiFujimoto/items/f529cb9fb513bd5eab0c M5StackのSDカードにWiFi設定、乗車停留所と降車停留所を書き込んでおく 1分おきに実行 https://qiita.com/SatoshiGachiFujimoto/items/1723685ba1beb51ca3c3
M5Stackを起動すると1分おきにAPIを叩き、「あと何分」の情報を取得 https://qiita.com/SatoshiGachiFujimoto/items/1723685ba1beb51ca3c3
どんな反応をもらえた? • Twitter(約7000いいね、約1600リツイート) • togetter(約14万PV) • ねとらぼ • Yahooニュース (コメント22件)
• exciteニュース • はてなブックマーク(コメント145件) https://twitter.com/sotongshi/status/1471274080100040705 https://togetter.com/li/1817346 https://nlab.itmedia.co.jp/nl/articles/2112/19/news034.html https://news.yahoo.co.jp/articles/5b90c08c2b5269a2358cbe4de0d66e5396a72a74 https://www.excite.co.jp/news/article/OtonaLife_otona_life97388/ https://b.hatena.ne.jp/entry/s/togetter.com/li/1817346
None
ご家庭、オフィスに1台いかがでしょうか?