obnizをBLEセントラルとしてKeiganMotorを制御

obnizとは

obniz は、Webから(クラウド経由で)操作できる開発プラットフォームです。

わかりやすい説明記事(Qiita)
公式サイト: https://obniz.io

obniz からローレベルAPI(バイト列)によりKeiganMotorを制御

obniz を BLEセントラルとして、KeiganMotor をローレベルAPIを用いて制御してみます。

obniz と KeiganMotor を接続する

obniz を BLEセントラル、KeiganMotor を BLEペリフェラルとして、接続します。
obniz の基本的な使い方は、公式サイトを参照下さい。お持ちの obniz をオンラインにした上で、以下のURLにアクセスします。

obniz BLEセントラルのサンプル
https://obniz.io/ja/explore/19/

obniz as BLE Central Example

KeiganMotor KM-1シリーズの電源が入っていて、BLEモードで起動している場合、Devices 欄に KeiganMotor が発見できます。
括弧内に、KM-1 から始まるデバイスネームが表示されたものを選択し、[connect] ボタンを押して接続して下さい。

KeiganMotor サービス/キャラクタリスティクスの選択

obniz connected

obniz connected to KeiganMotor

接続すると、Services 欄に BLEのサービス名一覧が表示されます。
KeiganMotor サービス “f140ea3589364d35a0eddfcd795baa8c” を選択後、
Characteristics 欄から、KeiganMotor Motor Control キャラクタリスティクス “f140000189364d35a0eddfcd795baa8c” を選択して下さい。
KeiganMotor サービスの詳細は、こちらからご確認頂けます。

KeiganMotor Motor Control キャラクタリスティクスを操作

KeiganMotor ローレベルAPI に基づいて、KeiganMotor Motor Control キャラクタリスティクスを操作します。
これにより、KeiganMotor が 1.0 radian/second の速さで 正回転します。
以下のページの例を参考にしています。

 データ構造とコマンド例

バイト列を1行入力し、[write] ボタンを押します。以下の順番に行って下さい。

入力するバイト列 機能
1回目 5100000000 enable
2回目 5800013F80000000 speed
3回目 6000020000 runForward

コマンドが正常に受け付けられた場合、以下のように KeiganMotor が回転します。

obniz rotates KeiganMotor