BLOGサブスレッドの日常
2016.07.01
BB-8ラジコンで遊ぶ(1)
chao
はじめに
金曜担当のしみずです。どうぞよろしく。
前に入れたNode.jsを使って何かするということなんですけども
先日、スターウォーズ・フォースの覚醒で出てくる丸いロボットBB-8のラジコンを買いました。
通常はスマホにアプリを入れて操作するのですが、これをPCから動かすNode.jsのフレームワークを見つけたので、少し試してみました。
BB-8のラジコンについて
買ったラジコンは Sphero という会社のBB-8のラジコンです。
公式サイト
うちの子供たちも楽しんでおり、猫も興味津々です。
BB-8を動かすためのフレームワーク
これを操作するにはBLE(Bluetooth Low Energy)に対応したスマホ(iOS,Android)に専用アプリを入れて、そのアプリからペアリングして動かします。
スマホからBluetoothで接続して動かすということはSDKとかあるのかなと思って調べたらありました。
iOSやAndroidのSDKじゃなくて、Node.jsのフレームワークであるCylon.jsというのを使えば動かせるようです。
MacBook Proでやってみようと思います。
Cylon.jsとは
https://cylonjs.com/
様々なハードウェアデバイスと接続してコントロールするためのNode.js用のフレームワークです。
対応しているハードウェアはたくさんあり、今回操作するBB-8も対応デバイスの一つとなります。
Cylon.js をセットアップするための準備
Cylon.jsはNode.jsのフレームワークなので、まずはNode.jsをインストールしましょう。
おっと、その前にBB-8はBLEで接続しているのでした。MACが対応しているか見てみましょう。
MACがBLEに対応しているか調べる
[アプリケーション - ユーティリティ - システム情報] を起動して、[ハードウェア - Bluetooth] を選択しましょう。
Bluetooth 低エネルギー(BLE)対応が「はい」になっていれば対応しています。
自分のMaczBook Pro は対応してますね。
Node.jsをインストール
前の記事を参考にしてください。
今回使ったNode.jsのバージョンは v5.3.0 です。
Cylon.jsをインストール
Cylon.js をインストールします。
ついでに、BLE用のモジュールもインストールしておきます。
$ npm install cylon
$ npm install cylon-ble
近くのBLEモジュールをスキャンする
以下のコマンドを実行すると近くのBLEモジュール情報が出てきます。
※もしコマンド実行時にエラーが出たら、このモジュール入れろと表示されるはずなので
それに従って何度か入れていくと動くようになるはずです。
$ cylon-ble-scan
cylon-ble-scan
Starting scan.
Peripheral discovered!
Name: BB-484F
UUID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
rssi: -66
Peripheral discovered!
Name: shimizu の iMac
UUID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
rssi: -54
BB-484FがBB-8ですね。
ここで表示されるUUIDの部分を使って、BB-8を操作できるようになります。
次回はCylon.jsのサイトにあるサンプルコードで、実際にBB-8を動かしたいと思います。
おわりに
週刊、ウチのネコ。第9号
BB-8に驚く
この記事を書いた人
chao