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
400
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
160
Tinkercadの電子回路シミュレータはいいぞ #北海道まったりLT大会 / Tinkercad
yumu19
1
3k
メイカーズ文化とシチズンサイエンス #JOSS2021 / Makers Culture and Citizen Science
yumu19
0
590
バーチャルSNS clusterを用いたイベント開催 / Event Organization with Virtual SNS “cluster”
yumu19
0
120
石川での6年間 / 6 years in Ishikawa
yumu19
0
290
NT札幌2020 in cluster 開催報告 #XRMTG / NT Sapporo 2020 in cluster
yumu19
0
78
Space Apps Challenge Tokyo 2020 開会式
yumu19
0
91
社会人博士のススメ
yumu19
2
7.2k
SpaceApps COVID-19 Challenge開会式
yumu19
0
140
Other Decks in Research
See All in Research
Embers of Autoregression: Understanding Large Language Models Through the Problem They are Trained to Solve
eumesy
PRO
7
1.2k
論文紹介/Expectations over Unspoken Alternatives Predict Pragmatic Inferences
chemical_tree
1
260
研究の進め方 ランダムネスとの付き合い方について
joisino
PRO
55
19k
snlp2024_multiheadMoE
takase
0
430
Language is primarily a tool for communication rather than thought
ryou0634
4
740
MIRU2024_招待講演_RALF_in_CVPR2024
udonda
1
330
Practical The One Person Framework
asonas
1
1.6k
システムから変える 自分と世界を変えるシステムチェンジの方法論 / Systems Change Approaches
dmattsun
3
860
Matching 2D Images in 3D: Metric Relative Pose from Metric Correspondences
sgk
1
320
日本語医療LLM評価ベンチマークの構築と性能分析
fta98
3
640
LiDARとカメラのセンサーフュージョンによる点群からのノイズ除去
kentaitakura
0
130
Composed image retrieval for remote sensing
satai
1
100
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
65
11k
Making Projects Easy
brettharned
115
5.9k
A Tale of Four Properties
chriscoyier
156
23k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
What's in a price? How to price your products and services
michaelherold
243
12k
Designing for humans not robots
tammielis
250
25k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
860
Ruby is Unlike a Banana
tanoku
97
11k
Git: the NoSQL Database
bkeepers
PRO
427
64k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
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