高専キャリア冬イベ2024LT ~Bluetooth入門~
by
プラナリア
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
No content
Slide 2
Slide 2 text
アジェンダ 1. 自己紹介 2. コンテストの御礼 3. Bluetoothの概要 4. Bluetoothの処理順序 5. Bluetoothのここがいい 6. Bluetoothのここがしたい 7. 楽しいのでやってみよう 1
Slide 3
Slide 3 text
2 知念 栄樹(ちねん えいじゅ) 沖縄高専メディア情報工学科 Twitter: @pranaria9 最近のこと: パソコン甲子園モバイル部門グランプリ 所属(?): みらいスタジオ インターン
Slide 4
Slide 4 text
関係者の皆様、ありがとうございました!! 無事、パソコン甲子園モバイル部門で グランプリを取ることができました!! 3
Slide 5
Slide 5 text
今回話すこと: 4 Bluetoothの概要
Slide 6
Slide 6 text
5 短距離でデバイス同士が接続できる 無線通信の規格のこと Bluetoothってそもそもなんぞ?
Slide 7
Slide 7 text
6 Bluetooth 前提知識 Bluetooth Classic Bluetooth LowEnergy
Slide 8
Slide 8 text
7 BluetoothClassicの概要 通信方式 ストリーム バッテリー 5.0Mbps 音声といった大きいデータを送信する
Slide 9
Slide 9 text
8 BluetoothLowEnergyの概要 通信方式 ストリーム バッテリー 10Kbps ビットといった小さいデータを送信する
Slide 10
Slide 10 text
8 セントラル (受信側) ペリフェラル (送信側)
Slide 11
Slide 11 text
9 ※ペリフェラル BluetoothClassicの処理(Arduino->Androidの場合) ※セントラル オブジェクト初期化 送信データの作成 SerialBT.printlnで データを送信する Bluetooth有効化 デバイススキャン inputStreamから 値を取得 アダプタの取得
Slide 12
Slide 12 text
10 BluetoothLowEnergyの処理(Arduino->Androidの場合) ※ペリフェラル デバイス名設定 ペリフェラルサーバの インスタンス作成 キャラクタリスティック をサービスに追加 キャラクタリスティック の値を初期化 サービスUUIDをサービス に追加 キャラクタリスティック に値を設定
Slide 13
Slide 13 text
10 BluetoothLowEnergyの処理(Arduino->Androidの場合) ※セントラル デバイススキャン Adapterからデバイスを 取得 Gattサーバに接続 BroadCastで結果を通知 Intentの値で接続が成功 しているかを確認する Notificationで通知を 有効化 Read関数で初期値を取得 コールバック関数から ペリフェラルの値を取得
Slide 14
Slide 14 text
12 ・お手軽無線通信が楽しい
Slide 15
Slide 15 text
13 ・マイコンとPCがあれば簡単に検証できる ・Arduinoでお手軽開発 ・一対一通信で幸せに始められる お手軽無線通信
Slide 16
Slide 16 text
14 ・複数機対1機の通信処理が難しい ・処理がたまによく不安定になる
Slide 17
Slide 17 text
15 複数機対1機の通信処理が難しい ・非同期処理をなんとなく書くと死ぬ ・コンテスト開発期間でn敗 ・基礎知識がつかないときつい ・ヘルパー関数は偉大
Slide 18
Slide 18 text
16 処理がたまによく不安定になる ・ Wi-fiと周波数帯が被っているため回線干渉する ・コンテスト当日に接続処理が動かなくなることがあった => 絶望、無事デスマーチ
Slide 19
Slide 19 text
17 なんだかんだ楽しいのでやってみよう! ドキュメント長いけど慣れると簡単
Slide 20
Slide 20 text
No content