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
IoTテストベッドのためのBluetoothエミュレーション基盤の設計 / Design of...
Search
Tsubasa Yumura
August 25, 2017
Research
1
430
IoTテストベッドのためのBluetoothエミュレーション基盤の設計 / Design of Bluetooth Emulation Platform for IoT Testbed
2017年8月25日(金)に名古屋大学で開催されたUBI55の発表資料。論文はこちら→
https://goo.gl/W7YoXA
Tsubasa Yumura
August 25, 2017
Tweet
Share
More Decks by Tsubasa Yumura
See All by Tsubasa Yumura
Human-Computer Interaction (HCI) 入門 #北海道LT大会 / HCI2023
yumu19
0
180
Tinkercadの電子回路シミュレータはいいぞ #北海道まったりLT大会 / Tinkercad
yumu19
1
3.1k
メイカーズ文化とシチズンサイエンス #JOSS2021 / Makers Culture and Citizen Science
yumu19
0
620
バーチャルSNS clusterを用いたイベント開催 / Event Organization with Virtual SNS “cluster”
yumu19
0
130
石川での6年間 / 6 years in Ishikawa
yumu19
0
290
NT札幌2020 in cluster 開催報告 #XRMTG / NT Sapporo 2020 in cluster
yumu19
0
92
Space Apps Challenge Tokyo 2020 開会式
yumu19
0
95
社会人博士のススメ
yumu19
2
7.4k
SpaceApps COVID-19 Challenge開会式
yumu19
0
140
Other Decks in Research
See All in Research
IM2024
mamoruk
0
230
CoRL2024サーベイ
rpc
2
1.6k
ダイナミックプライシング とその実例
skmr2348
3
610
打率7割を実現する、プロダクトディスカバリーの7つの極意(pmconf2024)
geshi0820
0
370
CUNY DHI_Lightning Talks_2024
digitalfellow
0
540
Prithvi-EO-2.0: A Versatile Multi-Temporal Foundation Model for Earth Observation Applications
satai
3
170
アプリケーションから知るモデルマージ
maguro27
0
270
Satellite Sunroof: High-res Digital Surface Models and Roof Segmentation for Global Solar Mapping
satai
3
150
2038年問題が思ったよりヤバい。検出ツールを作って脅威性評価してみた論文 | Kansai Open Forum 2024
ran350
8
3.9k
地理空間情報と自然言語処理:「地球の歩き方旅行記データセット」の高付加価値化を通じて
hiroki13
1
200
精度を無視しない推薦多様化の評価指標
kuri8ive
1
370
Whoisの闇
hirachan
3
310
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Git: the NoSQL Database
bkeepers
PRO
429
65k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
A Philosophy of Restraint
colly
203
16k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Gamification - CAS2011
davidbonilla
80
5.2k
Embracing the Ebb and Flow
colly
84
4.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
IoTςετϕουͷͨΊͷ BluetoothΤϛϡϨʔγϣϯج൫ͷઃܭ ౬ଜ ཌྷ†‡, ໌ੴ ‡, Ҫ্ ๎࠸†‡ɹ † ࠃཱݚڀ։ൃ๏ਓใ௨৴ݚڀػߏ
StarBEDٕज़ηϯλʔ ‡ ઌՊֶٕज़େֶӃେֶ ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ຊൃදͷ֓ཁ • Bluetoothίϯτϩʔϥ(௨ৗSoC)ΛLinux্ͷιϑτ ΣΞͱ࣮ͯ͢͠ΔΤϛϡϨʔγϣϯ • ઃܭͱ࣮Λߦͬͨ • ࣮ͷϞσϧέʔεBluetooth
Low Energy(BLE)ͷ Advertise(͍ΘΏΔBeacon)ͷड৴ 2
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ͡Ίʹ • ༷ʑͳػث͕ωοτϫʔΫʹܨ͕ΔInternet of Things • IoTػثͷଟ͕͘ແઢ௨৴ػೳΛ࣋ͭ •
ओཁͳن֨ͷͻͱ͕ͭBluetooth • ػثؒଓͷଞɺଌҐͳͲͷ༻్ʹΘΕΔ 3 https://www.bluetooth.com/what-is-bluetooth-technology/how-it-works
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ͡Ίʹ • Bluetooth(ແઢ)Λ༻͍ͨαʔϏε։ൃͷ՝ 4 ࣮ػΛ༻ҙ͢Δίετ ݅ͷ࠶ݱ͕ࠔ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ͡Ίʹ • Bluetooth௨৴ΛιϑτΣΞͰΤϛϡϨʔγϣϯ 5 BluetoothͷςετΛߦ͏ͨΊͷ BluetoothΤϛϡϨʔγϣϯج൫ BluMoonΛߏங ෳ͕༰қ
࠶ࢼ͕༰қ ࣮ػΛ༻ҙ͢Δίετ ݅ͷ࠶ݱ͕ࠔ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 Bluetooth • Application, Host, Controllerͱ͍͏֊ߏ • Host-ControllerؒHost-Controller Interface(HCI)͕ఆٛ
6
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 Bluetooth • ͲͷProfileControllerΛ༻͍ͯඞͣHCIͰଓ 7 Psuedo Controller(ٙࣅίϯτϩʔϥ)Λ ιϑτΣΞ࣮͢Δ͜ͱͰ Bluetooth௨৴ΛΤϛϡϨʔτ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ઃܭ: ֓ཁ • ιϑτΣΞ࣮ʹΑΔPsuedo Contoller(ٙࣅίϯτϩʔϥ) Λઃஔ • पลσόΠεͷΤϛϡϨʔτPsuedo
Remote Device͕୲͏ • Psuedo ControllerͱPsuedo Remote DeviceΛଓ͢ΔͨΊʹ Virtual PacketΛఆٛ 8
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ઃܭ: Psuedo Controller • HostͱͷHCIϑϨʔϜͷૹड৴ • Psuedo Remote
DeviceͱͷVirtual Packetͷૹड৴ • ͜ΕΒͷͨΊͷঢ়ଶͷอ࣋ཧ 9
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ઃܭ: Psuedo Remote Device • पลσόΠεͷڍಈΛٖ • Virtual
Packetͷૹड৴ • ࣮ࢪ͢ΔςετʹԠͯ͡ஔ͖͑ 10
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ઃܭ: Virtual Packet • BluMoon HeaderͱPayload • HeaderPsuedo
Controller͕ΤϛϡϨʔτ͢ΔͨΊʹඞ ཁͳΛهड़(RSSIͳͲ) • PayloadLink LayerͷύέοτϑΥʔϚοτʹैͬͯهड़ 11 BluMoon Header Payload
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࣮: ֓ཁ • Bluetooth LE(Low Energy) ͷPsuedo ControllerΛ࣮
• LE AdvertiseΛૹ৴͢ΔPsuedo Remote DeviceΛ࣮ • LE AdvertiseͷVirtual PacketઃܭΛఆٛ 12 beacon Psuedo Remote Device Advertising Packet Psuedo LE Controller
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࣮: γʔέϯε 13
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࣮: Psuedo Controller • ԾσόΠεπʔϧbtvirtΛ׆༻࣮ͯ͠ • Linux BluetoothελοΫBlueZͷπʔϧ܈ʹؚ·ΕΔΦʔϓϯιʔειϑτΣΞ
• UDPιέοτͰVirtual PacketΛͪड͚ • Virtual PacketΛղੳͯ͠LE Advertising ReportΛੜɾૹ৴ 14 btvirtͰ࣮ࡁΈ BluMoonͰ࣮
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࣮: Psuedo Remote Device / Virtual Packet •
ҰఆִؒͰVirtual PacketΛUDPͰૹ৴͢ΔεΫϦϓτ ΛPythonͰ࣮ • BluMoon Header(BMH)ʹRSSIΛهड़ • BluMoon PayloadLE Advertise PacketͷϑΥʔϚοτ ʹैͬͯهड़ 15
Demonstration • hciconfig: Bluetooth Controllerͷঢ়ଶ֬ೝىಈɾऴྃ • hcitool: Bluetooth Controllerʹ༷ʑͳ໋ྩΛૹ৴ •
hcidump: HCIϑϨʔϜͷૹड৴ΛΩϟϓνϟ͠දࣔ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ؔ࿈ݚڀ: BluetoothΤϛϡϨʔλ • Bluetooth tunnel • Okada and
Suzuki[7] • Ҫͱ୮[5] • Tsuda et al.[6] • UbiGate[8] • UbiPAN[9] 17 Okada and Suzuki[7]
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ؔ࿈ݚڀ: BluetoothΤϛϡϨʔλ • BLE Peripheral Simulator[11] 18 BLE
Peripheral Simulator[11]
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ؔ࿈ݚڀ: ແઢωοτϫʔΫΤϛϡϨʔλ • ιϑτΣΞʹΑΔΤϛϡϨʔλ • QOMET[12] • NETorium[15]
• ઐ༻ϋʔυΣΞʹΑΔΤϛϡϨʔλ • Network Emulator II[17] 19 NETorium[15] Network Emulator II[17]
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ؔ࿈ݚڀ: IoTςετϕου 20 • ΤϛϡϨʔλܕ • BluMoon •
QOMB[13] • DynamiQ[14] • ແઢωοτϫʔΫܕ • KanseiGenie[21] • WISEBED[22] • SensLab[23] • ࣮ূ࣮ݧܕ • OULU Smart City[25] • SmartSantander[26] • T-City Friedrichshafen DynamiQ[14] KanseiGenie[21] OULU Smart City[25]
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࠓޙͷൃల • ଟͷεϚʔτϑΥϯͱपลػث͕ڠௐ͢ΔΑ͏ͳBluetoothΞϓϦ έʔγϣϯͷࢼݧ • γϣοϐϯάϞʔϧͰͷϏʔίϯઃஔͳͲ • ࣮ݕূͷίετΛ͑Δ
• AndroidΤϛϡϨʔλ • WebBluetooth 21 ෳ͕༰қ ࣮ػΛ༻ҙ͢Δίετ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ࠓޙͷൃల • ిൖγϛϡϨʔγϣϯͱͷ࿈ܞ 22 https://panasonic.co.jp/cns/psnrd/works/report.html ࠶ࢼ͕༰қ ݅ͷ࠶ݱ͕ࠔ ཧతཁҼʁ
ใॲཧֶձ ୈ55ճϢϏΩλείϯϐϡʔςΟϯάγεςϜݚڀձˏ໊ݹେֶɹ2017/08/25 ͓ΘΓʹ • IoTςετϕουͷͨΊͷBluetoothΤϛϡϨʔγϣϯج ൫BluMoonΛఏҊ • Psuedo ControllerͱPsuedo Remote
DeviceΛઃஔͯ͠ Virtual PacketΛૹड৴͢Δͱ͍͏ΞʔΩςΫνϟΛઃܭ • BLEͷAdvertiseड৴ΛϞσϧέʔεͱ࣮ͯ͠Λߦ͍ఏ Ҋख๏ͷ࣮ݱੑΛࣔͨ͠ 23