VagabondWorksTitle
  当Blogは個人の趣味等に関するものです。Vagabond Worksは実在の企業、組織ではありません。
  著作権等は放棄していません。文章や写真、動画の無断盗用、転用はお断りします。

 bCore/bCoreNKD関連情報はこちら⇒bCore/bCoreNKDまとめページ

bCore NKD サンプルスクリプト 9: 内蔵温度センサの温度情報を取得するサンプルスクリプト(BLE Read + ADC)

スマホやPCなどのBLE端末から通信して、bCoreNKDに内蔵(BLE113に内蔵)された温度センサから温度情報を読み取らせる
サンプルスクリプトのプロジェクトファイル

BLE通信の仕様については基本的に触れません。
この程度の短いスクリプトで簡単にBLE端末から操作するガジェットを作ることができます!

BLE通信の仕様についての参考書籍としては、
iOS×BLE Core Bluetoothプログラミング
堤 修一 (著), 松村 礼央 (著)
をお勧めします。bCoreの開発時にお世話になりました。

GitHubからまとめでDownLoadできるようになっています。



bCoreNDKSample_09.bgproj

プロジェクトファイルについては説明省略


bCoreNDKSample_09_gatt.xml
GATT設定ファイル
このGATT.xmlでは3つのサービスを定義しています。

4~20行目 Generic Access Profile
 BLE端末(Central)側からデバイス(ペリフェラル=bCoreNKD)を見つけるときに識別する
 為の名前と、デバイスのタイプを設定しています。

 UUID:0x2a01 Apperance については、このように定義されています。
 unknown (つまり0)にしてあります。

 id スクリプトから値(Value)を参照する場合に使用する変数名
 read セントラル(通信相手の端末)からみてこの値がReadできるかどうか
 const 値が固定値であるかどうか
 type  ="hex"とすると16進数、しない場合は文字列としてValueが認識される

24~45行目 Device Information 
 デバイス(ペリフェラル=bCoreNKD)に関する情報を設定します。
 省略可能です。

48~58行目 このサンプルスクリプトで使用する 温度情報を読みだす ためのBLE通信の口(characteristic)を設定します。
 このスクリプトでは、見やすくするために恣意的な文字列をUUIDにしていますが、
 UUIDの生成については こちら を参照して適切に設定して下さい。

 advertise "true"にしないとこのサービスが端末から発見できないため利用できなくなる
 description サービス、キャラクタリスティックを説明する文字列
 id スクリプトから値(Value)を参照する場合に使用する変数名
 properties read/write/write_no_responseのそれぞれの属性の有効無効の設定
         今回のサンプルスクリプトは値を端末から司令するだけなので、write_no_responseのみtrue
 value length やり取りされる 値 の長さ(byte 単位)
 value type  typeが hexの場合はReadに対して
          スクリプトでイベント(event attributes_user_read_request())が発生しないため、
          Readが発生した時点で仕掛けられていたValueがそのまま応答されます。

bCoreNDKSample_09_hardware.xml

ハード的な設定に関するXMLファイル

6行目  <sleep enable="false" /> は、通信相手がいない場合に問答無用で
BLE113がスリ-プしないために必要。
このサンプルのように、最初から通信しない場合は、スクリプトが走るとすぐにスリ-プしてしまいます。

9行目 送信アンテナ強度の設定
15が最大値。小さくすることで消費電力を下げられるが、通信可能距離が短くなる。
bias設定は5から変更しないこと。

12行目 <script enable="true" /> がないと、スクリプトが実行されません。
falseにするとスクリプトが実行されなくなります。

14~16行目 各ポートの 3ステートバッファの有効無効、プルアップ/プルダウンの設定を行います。
設定は、P0x、P1x、P2x単位で行います。個々のポート個別に設定を変更することはできません。
indexで、ポート(0:P0x、1:P1x、2:P2x)を選択。
3ステートバッファを有効にしたいビットを tristatemaskで1にします。(全て有効の場合$FF、Px7の有効の場合 $80)
pullで、プルアップ(up)かプルダウン(down)を選択


bCoreNDKSample_09_script.bgs

スクリプト本体ファイル

7行目 スクリプト中で使える変数は dim で定義。4byte 32bitのみ使用できます。
 celsius 計測した温度情報を格納する変数

11~22行目 event system_boot(major ,minor ,patch ,build ,ll_version ,protocol_version ,hw )
Arudinoで言うところの setup()に相当する、スクリプト実行時に最初に呼ばれる処理
Arudinoで言うところの loop()に相当する部分は無いので、イベントドリブンでスクリプトを書く必要があります。


14行目 call hardware_set_soft_timer(time, handle, single_shot)
ソフトウェアタイマ割り込みを設定します。
time 割り込みが発生するカウントを設定します。1カウント=1/32768秒になるため、
    0.1秒ごとに設定する場合 3277 とします。
hadle 割り込み発生時に引き渡されるhandleを設定します。
    handleを変更しても設定できるソフトウェアタイマ割り込みは一つだけです。
    複数設定した場合、最後に設定したソフトウェアタイマ割り込みが有効になります。
single_shot この引数が0の場合は、割り込み発生後再度カウントを開始し
        繰り返しタイマ割り込みが発生します。
        1の場合、割り込み発生後は新たにタイマ割り込みを設定しない
        かぎり再度の割り込み発生は起こりません。


17行目 call gap_set_mode(discover, connect)
 GAPのモードを設定します。引数詳細は API Reference を参照のこと
 ここで、アドバタイズ(端末から見つけてもらえるように情報発信)を開始します。

20行目 call sm_set_bondable_mode(bondable)
 bondableモードの設定をします。引数詳細は API Reference を参照のこと
 ざっくり言うと、端末(セントラル)とbCoreNKD(ペリフェラル)間の接続のセキュリティ認証関係の設定。

27~29行目 event connection_status(connection, flags, address, address_type, conn_interval, timeout, latency, bonding)
 スクリプトが起動してアドバタイズを開始したあと、端末(セントラル)から接続された時に実行される。
 接続されると、自動的にアドバタイズは終了する。

34~38行目 event connection_disconnected(handle,result)
 端末(セントラル)から接続された状態で、接続が切れた場合に実行される。
 ここでは 再度端末から発見接続可能なようにするためアドバタイズを再会させる。

41~50行目 event hardware_soft_timer(handle)
タイマ割り込みが発生すると実行されるイベントハンドラから呼び出される。
引数のhandleは、タイマ割り込みを設定した際のhandleが引き渡されます。
hardware_soft_timer内の処理がタイマ割り込み間隔よりも長い場合、
処理終了後に再度タイマ割り込みが発生する。

46行目 call hardware_adc_read(14,3,0)
ADC開始のリクエスト。第一引数は 0~7の場合は、それぞれP00~P07をアナログ入力ポートとして
使用しますが、14を指定した場合、チップ内蔵の温度センサが選択される。
第二引数は、AD変換の分解能で、3の時は12bit。
ただし、何故かsigned形式らしく、最上位は常に0なので得られる値は 0~2047。
第3引数は、AD変換をする場合の比較電圧。0の場合は、内蔵のリファレンス電源で1.24V。

54~60行目 event hardware_adc_result(input, value)
46行目のADCリクエストでAD変換を開始し、変換終了時に発生するイベント。
複数のADCを実行する場合は、inputにリクエスト時に設定した入力が格納されているのでそこで判別。
valueには、左詰めで値が格納されているので、12bit指定の場合は4ビットシフト(÷16)で12bitのADC値として取得可能。
ただし、signed形式らしく、最上位は常に0なので得られる値は 0~2047。

56行目 AD変換値を 温度×10 の数値に変換。
 (27.4℃の場合に 274)

58行目 call attributes_write(xgatt_TEMP, 0, 2, celsius)
温度情報をそのまま xgatt_TEMP(GATT.xml)に反映させる。
Readが発生した場合は、スクリプトを介さずこの値がそのまま応答される。
そのため、0.1秒周期のタイマで更新している温度情報状態に対しタイミング次第で
応答値の更新が最大で0.1秒遅れる。

テスト回路
外付け回路不要のため省略

  1. 2016/07/23(土) 00:14:16|
  2. bCoreNKDとは?
  3. | コメント:0

bCore NKD サンプルスクリプト 11: タイマ出力を使ってラジコンサーボをコントロールするサンプルスクリプト(BLE Write no Response + Timer PWM)

スマホやPCなどのBLE端末から通信して、bCoreNKDに接続されたラジコンサーボモーターをコントロールするサンプルスクリプトのプロジェクトファイル
BLE通信の仕様については基本的に触れません。
実質20行ほどのスクリプトで、4つのラジコンサーボをコントロールできます。

BLE通信の仕様についての参考書籍としては、
iOS×BLE Core Bluetoothプログラミング
堤 修一 (著), 松村 礼央 (著)
をお勧めします。bCoreの開発時にお世話になりました。

GitHubからまとめでDownLoadできるようになっています。




bCoreNDKSample_11.bgproj

プロジェクトファイルについては説明省略


bCoreNDKSample_11_gatt.xml
GATT設定ファイル
このGATT.xmlでは3つのサービスを定義しています。

4~20行目 Generic Access Profile
 BLE端末(Central)側からデバイス(ペリフェラル=bCoreNKD)を見つけるときに識別する
 為の名前と、デバイスのタイプを設定しています。

 UUID:0x2a01 Apperance については、このように定義されています。
 unknown (つまり0)にしてあります。

 id スクリプトから値(Value)を参照する場合に使用する変数名
 read セントラル(通信相手の端末)からみてこの値がReadできるかどうか
 const 値が固定値であるかどうか
 type  ="hex"とすると16進数、しない場合は文字列としてValueが認識される

24~45行目 Device Information 
 デバイス(ペリフェラル=bCoreNKD)に関する情報を設定します。
 省略可能です。

48~58行目 このサンプルスクリプトで使用する ラジコンサーボへの位置指定 のためのBLE通信の口(characteristic)を設定します。
 このスクリプトでは、見やすくするために恣意的な文字列をUUIDにしていますが、
 UUIDの生成については こちら を参照して適切に設定して下さい。

 advertise "true"にしないとこのサービスが端末から発見できないため利用できなくなる
 description サービス、キャラクタリスティックを説明する文字列
 id スクリプトから値(Value)を参照する場合に使用する変数名
 properties read/write/write_no_responseのそれぞれの属性の有効無効の設定
         今回のサンプルスクリプトは値を端末から司令するだけなので、write_no_responseのみtrue
 value length やり取りされる 値 の長さ(byte 単位)
 value type  typeが hexの場合はReadに対して
          スクリプトでイベント(event attributes_user_read_request())が発生しないため、
          Readが発生した時点で仕掛けられていたValueがそのまま応答されます。

bCoreNDKSample_11_hardware.xml

ハード的な設定に関するXMLファイル

6行目  <sleep enable="false" /> は、通信相手がいない場合に問答無用で
BLE113がスリ-プしないために必要。
このサンプルのように、最初から通信しない場合は、スクリプトが走るとすぐにスリ-プしてしまいます。

9行目 送信アンテナ強度の設定
15が最大値。小さくすることで消費電力を下げられるが、通信可能距離が短くなる。
bias設定は5から変更しないこと。

12行目 <script enable="true" /> がないと、スクリプトが実行されません。
falseにするとスクリプトが実行されなくなります。

14~16行目 各ポートの 3ステートバッファの有効無効、プルアップ/プルダウンの設定を行います。
設定は、P0x、P1x、P2x単位で行います。個々のポート個別に設定を変更することはできません。
indexで、ポート(0:P0x、1:P1x、2:P2x)を選択。
3ステートバッファを有効にしたいビットを tristatemaskで1にします。(全て有効の場合$FF、Px7の有効の場合 $80)
pullで、プルアップ(up)かプルダウン(down)を選択

19行目 BLE113の内蔵タイマ(Timer1, Timer3, timer4)に供給するベースクロックを指定。
      ここでは、"3"を設定して4MHz(1クロックが0.25usec)を設定。

22行目 Timer1をPWM出力モードで、ポートP03, P04, P05, P06で使用するための設定を行います。
 timer          使用するタイマを選択(1/3/4)
 enable_channels   使用するポートをビット指定で設定(ここではPWM1, PWM2, PWM3, PWM4を選択)
 divisor         Timer1供給クロックのベースクロックからの分周比を設定(ここでは0でそのまま4MHzを入力)
 mode          Moduloモードを選択(0:Suspended, 1:Free running, 2:Modulo, 3:Up/Down)
 alternate        出力ピンの選択
              (1:PWM0@P02/PWM1@P03/PWM2@P04/PWM3@P05/PWM4@P06,
               2:PWM0@P12/PWM1@P11/PWM2@P10/PWM3@P07/PWM4@P06)
 ※詳しく知りたい場合は公式サイトからダウンロードできる Bluetooth Smart Module Configuration Guide のtimerの章を参照。


bCoreNDKSample_11_script.bgs

スクリプト本体ファイル

7~25行目 event system_boot(major ,minor ,patch ,build ,ll_version ,protocol_version ,hw )
Arudinoで言うところの setup()に相当する、スクリプト実行時に最初に呼ばれる処理
Arudinoで言うところの loop()に相当する部分は無いので、イベントドリブンでスクリプトを書く必要がある。

13~17行目  call hardware_timer_comparator(timer, channel, mode, comparator_value)
タイマの設定をします。
 timer        設定するタイマを選択(1/3/4)
 channel      設定するチャンネルを選択
 mode        設定するモード
 cmparator_value 設定する値
 ※詳しく知りたい場合は公式サイトからダウンロードできる BLUEGIGA BLUETOOTH SMART SOFTWARE API DOCUMENTATION のTimer Comparatorの章、CC2540/41 System-on-Chip Solution for 2.4-GHz Bluetooth® low energy Applications User's Guide の Timer 1 (16-Bit Timer)を参照。
bCoreNDKSample_11_hardware.xmlで、Timer1はmoduloモードに設定済み。
このモードでは、Timer1のPWM0のチャンネルで全体の周期を決定し、その周期の中で他のPWM1~4を使って任意の幅のPWMを出力する。
先ず、13行目でPWM0が16ms(1600usec÷0.25[usec/count]=6400[count]) でカウントクリアされるように設定。
bCoreNDKSample_11_hardware.xmlで、PWM0は出力されないようになっているため、P02はIOポートとして利用可能。
14~17行目で、PWM1~4に、ラジコンサーボ信号のニュートラルポジションとなる 1500[usec]間Onになる周期(1500÷0.25=6000)を設定。mode=4に設定することで、PWM0がクリアされるとHレベル、各PWMチャンネルに設定された周期で信号がLとなり、サーボ制御信号となる。
ラジコンサーボの信号は周期に対して制御信号幅が非常に小さいため、制御分解能を得ようとすると、16ビットタイマを使用する必要が有るため、Timer3, 4を使用するのは推奨しません。

20行目 call gap_set_mode(discover, connect)
 GAPのモードを設定します。引数詳細は API Reference を参照のこと
 ここで、アドバタイズ(端末から見つけてもらえるように情報発信)を開始。

23行目 call sm_set_bondable_mode(bondable)
 bondableモードの設定をします。引数詳細は API Reference を参照のこと
 ざっくり言うと、端末(セントラル)とbCoreNKD(ペリフェラル)間の接続のセキュリティ認証関係の設定。

30~32行目 event connection_status(connection, flags, address, address_type, conn_interval, timeout, latency, bonding)
 スクリプトが起動してアドバタイズを開始したあと、端末(セントラル)から接続された時に実行される。
 ここでは なにもしていないので省略可能。
 接続されると、自動的にアドバタイズは終了する。

37~41行目 event connection_disconnected(handle,result)
 端末(セントラル)から接続された状態で、接続が切れた場合に実行される。
 ここでは 再度端末から発見接続可能なようにするためアドバタイズを再開させる。

45~49行目 procedure servo_control(ch, pos)
2つの引数(ch, pos)を持った自前の関数を定義
posに0~255の値が指定された場合に、指定されたchのPWM出力に、ラジコンサーボの制御信号で約1500±900[usec]
の信号出力を設定させるための関数

81~89行目 event attributes_value(connection, reason, handle, offset, value_len, value)
接続中の端末から write された場合に実行される。
複数のキャラクタリスティックを持っている場合、そのキャラクタリスティックに対して write されても
このイベントが発生するため、識別は handle (つまり xgatt_Servo)で行う。
handleには、*_hardware.xml で定義したそのキャラクタリスティックのidが格納されている。
ここでは、送られてきたデータが2バイトで、1バイト目(value(1:1)が~4の場合に、
1バイト目をch、2バイト目をposとして、servo_control(ch, pos)を実行


テスト回路

sample11.png
bCoreNKD_Sample11ervice の SW Status に2バイトのデータwpWriteすると、P03~P06に接続されたラジコンサーボが動きます。1バイト目でチャンネル指定(0x01: P02, 0x02: P03, 0x03:P04, 0x04; P05)、2バイト目で目標位置(0x80がニュートラル)を指定します。
ラジコンサーボを動かす場合は、十分電流を出せる電源を繋ぐ必要があるため、電源はニッケル水素電池3~4本かLiPo1セル、LiFePO41セルを推奨します。
ラジコンサーボの駆動信号は3.3Vになるため、モノによって動かないラジコンサーボがあります。
動作確認済みのラジコンサーボは、Tower Pro SG90, SG92, SG-5010になります。
何れも、秋月電子で安価で販売されており、実動作検証で3V程度の低い電源電圧でも動作することを確認しています。
偽造品が出回っているため、異常に安い通販での購入は避けましょう。

テスト動画



接続のテストには、LightBlue というiOSアプリが便利です。
このアプリを使うと、開発中のBLEデバイスのアドバタイズ情報、各サービスやキャラクタリスティックの値の確認、変更が自在に可能です。
ただし、このアプリは一度接続したデバイスの名前等を変更(bCoreNKDでGATT.xmlを変更)した場合の
変更を受け付けないことがある(一度アプリを落とすとか、接続して切り離すとかする必要がある)ので
注意が必要です。今後改善されるかもしれません。

  1. 2016/07/22(金) 11:53:10|
  2. bCoreNKDとは?
  3. | コメント:0

bCore/bCoreNKD販売情報

更新履歴
- bCoreNKDの販売を7/21からスイッチサイエンスで開始しました。(2016/07/21)
- bCore/bCoreNKD関連商品はRT RobotShopロボットアイル(秋葉原電気街口下車徒歩30秒) でも購入可能です。(2016/06/24)
- bCoreスターターキット を追加しました。(2016/06/20)
- マイクロサーボコネクタにノーマルサーボを接続するための変換コネクタとケーブルASSYを追加しました。(2016/05/07)
- bCore(Ver. 1.10)セットの販売を開始します。Ver.1.00のbCoreモジュールはディスコンとなります。(2016/04/08)
- デジタルマイクロサーボ HK-5330を追加しました。(2016/01/05)
- Androidアプリへの対応について加筆しました。(2015/12/18)
- ギヤドモーターの潤滑油、マイクロサーボの使用に関する留意事項を追記しました。(2015/11/25)
- bCoreモジュールと関連商品を株式会社スイッチサイエンスの販売サイトにて販売開始しました。(2015/09/08)

※注意事項
 本品は、一般的な民生用製品ではありません。
 ・印加電圧や接続するモーター等を間違えた場合、本品の故障のみならず、周囲への被害
  (発煙、発火など)が生じる可能性があります。
 ・使用条件によっては発熱することがあり、火傷などの原因となる可能性があります。
 ・モーターなどを使った機構部分は、挟み込みや衝突などにより物品の破損や怪我の原因となることがあります。
 これらの事象に関して、当方では一切の責任は負いません。
 利用者の責任において安全対策を行ったうえで管理・使用してください。
 全数動作確認検査をして出荷しております。
 使用方法次第で簡単に破壊できますので、返品交換は基本的に行いません。ご了承ください。

※イベント等で大量(概ね10個以上の意)に使用したい場合など、右のメールフォームにてご相談ください。
 bCore/bCoreNKDの製造リードタイムは約3週間程度のため、在庫が十分にない場合でも
 1ヶ月前にご相談いただければ対応可能です。
 大量直接購入の価格については、数量に応じてボリュームディスカウントとなります。



bCore(Ver. 1.10)セット [VGBDW-006] (スイッチサイエンスで購入 / RT RobotShopで購入

bCore(Ver.1.10)モジュール
外形寸法:27.0mm x 18.6mm x 6.3mm(コネクタ部)
重量:約3g
コネクタ:
 Molex PicoBlade 2pin(電源X1、ポート出力X1、モーターX2)
 Molex PicoBlade 3pin(マイクロラジコンサーボX4)
搭載BLEモジュール:BLE113-A-v1 (シリコンラボラトリーズ製)
  ※技適、FCC、CE対応製品です。日本、アメリカ、EU各国での使用が可能です。
 電源入力電圧:1.8V~5.5V
 内部ロジック電圧:3.3V
bCore用2ピンコネクタASSY 4本([VGBDW-002]同等品)同梱
  
価格:5,800円(税込)

bCore(Ver.1.10)本体と、電源、DCモーター及びLED接続に使用する2ピンコネクタのケーブルASSY4本のセットです。
ファームウェアが焼かれている状態ですので、iOSアプリ bDriver
Androidアプリ bCore Dirver for Androidをお手持ちのスマホやタブレットにインストールすれば、 bCoreモジュールを電池に繋ぐだけですぐに モーターやラジコンサーボをiリモコン操作できます。

詳しい情報は こちら を参照してください。
なお、モジュール背面の金メッキ表面接点にハンダが付着している物がありますが、超小型サイズの基板のためどうしてもスルーホールコネクタ実装作業である程度発生してしまうものため、不良ではありません。ご了承下さい。(この金メッキ表面接点は、ファームウェア書き込み及び検査工程で使用するためのものです。)



bCoreスターターキット [VGBDW-009] NEW!! (スイッチサイエンスで購入 / RT RobotShopで購入

IMG_5289.jpg・bCoreモジュール(Ver.1.10)
に、
・スイッチ付き電池ボックス(単3×3本用 電池は付属しません)
・電流制限抵抗内蔵LED
DCギヤドモーター[VGBDW-003] ×2
に bCore接続用2ピンコネクタ をハンダ付けしたものと、
・bCoreモジュールホルダー(粉末造形樹脂製+固定用ネジ2本)
をセットにした、ハンダゴテを持っていない人でも気軽にbCoreを始めるられるスターターキットです。

価格:7,400円(税込)、




bCore用2ピンコネクタASSY 4本セット [VGBDW-002]  (スイッチサイエンスで購入 / RT RobotShopで購入

ケーブル長:約7cm
コネクタ:Molex PicoBlade 2pin

価格:500円(税込)

bCoreモジュールの、電源、ポート出力、モーター接続に用いる2ピンのコネクタケーブルASSYの4本セットです。
Molex製PicoBladeコネクタは、1.25mmピッチと非常に微細で圧着工具等も高価で取り扱いが難しいため、ケーブルASSYを用意しました。
※ケーブルの色及び長さはロットにより変更になることがあります。(次ロットから10cmで赤黒になります。)


DCギヤドモーター [VGBDW-003]  (スイッチサイエンスで購入 / RT RobotShopで購入

外形寸法:12.0mm x 10.0mm x 31.0mm(端子部)
出力軸:φ3.0 Dカット 軸長9.2mm
重量:約10g
減速比: 1/50
電流、トルク等:
 DC3V無負荷 80mA/150mA
 DC3Vストール時 100mA/0.80kg・cm

価格:800円(税込)

bCoreモジュールで使用できる小型のギヤドモーターです。
中国製で個体によって発生音のバラつきが大きいですが価格相応の仕様と考えてください。
動作および端子部体裁をこちらで確認しています。


ギヤ部には潤滑防錆のため潤滑油が塗布されています。ギヤの保護のため脱脂は行っておりません。
ギヤ部が開放構造のため梱包袋内に潤滑油が付着することがありますが、異常ではありませんのでご了承ください。
(2015年11月25日追記)






マイクロサーボ HK-282A [VGBDW-004]  (スイッチサイエンスで購入 / RT RobotShopで購入

外形寸法:
 16.0mm x 8.0mm x 20.0mm(本体部および出力軸部)
 23.0mm x 8.0mm(固定タブ部)
重量:約2g
トルク:0.2kg
速度:0.08/60deg
電圧:3.0~4.8V (5V以上では使わないでください!)
モータータイプ:コアレスDC
可動角:約100°
コネクタ:Molex PicoBlade 3pin
付属品:サーボホーン4種、ホーン固定ネジ、本体固定ネジ2本(予告なく変更される可能性があります)

価格:800円(税込)

bCoreモジュールに直結できるマイクロラジコンサーボです。
海外サイト直接購入することも可能ですが、bCoreと一緒に購入できるように用意しました。
動作確認をこちらで行っており良品のみ選別しています。直接購入時のような不良品を引くリスクはありません。

マブチのRE-130RA/RE-140RAモーターと乾電池と組み合わせて同時に使用した場合に電源から回りこむノイズにより誤動作することがあります。詳細はbCore説明ページの『bCoreに接続可能なラジコンサーボ』に記載してあります。
(2015年11月25日追記)






デジタルマイクロサーボ HK-5330 [VGBDW-005]  (スイッチサイエンスで購入 / RT RobotShopで購入

外形寸法:
 13.0mm x 6.0mm x 23.0mm(本体モーター突起部~出力軸部)
 20.0mm x 6.0mm(固定タブ部)
重量:約1.9g
トルク:0.12kg・cm @2.8V、 0.17kg・cm @4.2V
速度:0.06sec/60deg @2.8V、 0.004sec/60deg @4.2V
電圧:2.8~4.2V (電源電圧に注意して下さい!)
モータータイプ:コアレスDC
可動角:約90°
コネクタ:Molex PicoBlade 3pin
付属品:サーボホーン3種、ホーン固定ネジ、本体固定ネジ2本(予告なく変更される可能性があります)

価格:800円(税込)

bCoreモジュールに直結できるデジタルマイクロラジコンサーボです。
アナログサーボのHK-282Aと異なり、モーター由来の電源ノイズや、電源投入時、遮断時の異常信号に
対して誤動作をしにくくなります。
海外サイト直接購入することも可能ですが、bCoreと一緒に購入できるように用意しました。
動作確認をこちらで行っており良品のみ選別しています。直接購入時のような不良品を引くリスクはありません。





bCore用ノーマルサーボ変換コネクタ 4本セット [VGBDW-007]  NEW!! (スイッチサイエンスで購入 / RT RobotShopで購入

ケーブル長:約4cm

価格:800円(税込)

bCoreモジュールの、サーボコネクタ(Molex PicoBlage 1.25mm pitch 3pin )を一般的なサーボモーターのコネクタ(2.54mm pitch 3pin)に変換するコネクタ変換ケーブルの4本セットです。
サーボモーターに供給される電源及びPWM信号のレベルはbCoreに供給される電源と同一電位になります。ハイパワー高電圧仕様のサーボモーターについては使用できないことがありますので注意して下さい。





bCore用3ピンコネクタASSY 4本セット [VGBDW-008]  NEW!! (スイッチサイエンスで購入 / RT RobotShopで購入

ケーブル長:約7cm

価格:500円(税込)

bCoreモジュールの、サーボコネクタ(Molex PicoBlage 1.25mm pitch 3pin )ケーブルASSYの4本セットです。
コネクタがMolex PicoBlage 1.25mm pitch 3pin でないサーボモーターをbCoreで使用したい場合に交換等をして使用します。
サーボモーターに供給される電源及びPWM信号のレベルはbCoreに供給される電源と同一電位になります。ハイパワー高電圧仕様のサーボモーターについては使用できないことがありますので注意して下さい。





bCoreNKDセット [VGBDW-010] NEW!! (スイッチサイエンスで購入

bCoreNKD(Ver.1.00)モジュール セット
外形寸法:36.0mm x 15.2mm x 3.0mm(ピンヘッダ部含まず)
重量:約3g
コネクタ:
 2.54mmピッチのピンヘッダ付属(未実装)
搭載BLEモジュール:BLE113-A-v1 (シリコンラボラトリーズ製)
  ※技適、FCC、CE対応製品です。日本、アメリカ、EU各国での使用が可能です。
 電源入力電圧:1.8V~5.5V
 内部ロジック電圧:3.3V
  
価格:3,800円(税込)

bCoreNKD(Ver.1.00)本体と、2,54mmピッチピンヘッダのセットです。
ファームウェアは書き込まれていませんので、サンプルスクリプトを参考に自分で編集して書き込む必要があります。
2.54mmピッチのピンヘッダは未実装になります。取付方向やピンソケットに変更するなど、使用者側の利用環境に合わせて必要な部品を実装して使用します。
詳しい情報は こちら を参照してください。


bCoreNKD ピンヘッダ実装済み[VGBDW-011] NEW!! (スイッチサイエンスで購入

bCoreNKD(Ver.1.00)モジュール  ピンヘッダ実装済み
外形寸法:36.0mm x 15.2mm x 9.6mm(ピンヘッダ部)
重量:約3g
コネクタ:
 2.54mmピッチのピンヘッダ実装(背面側に実装されます)
搭載BLEモジュール:BLE113-A-v1 (シリコンラボラトリーズ製)
  ※技適、FCC、CE対応製品です。日本、アメリカ、EU各国での使用が可能です。
 電源入力電圧:1.8V~5.5V
 内部ロジック電圧:3.3V
  
価格:3,900円(税込)

2,54mmピッチピンヘッダを実装したbCoreNKD(Ver.1.00)です。
ハンダ付け不要で直接ブレットボード等に刺して使用できます。
ファームウェアは書き込まれていませんので、サンプルスクリプトを参考に自分で編集して書き込む必要があります。
詳しい情報は こちら を参照してください。





bCoreモジュール [VGBDW-001] 終了

外形寸法:27.0mm x 18.6mm x 6.3mm(コネクタ部)
重量:約3g
コネクタ:
 Molex PicoBlade 2pin(電源X1、ポート出力X1、モーターX2)
 Molex PicoBlade 3pin(マイクロラジコンサーボX4)
搭載BLEモジュール:BLE113-A-v1 (シリコンラボラトリーズ製)
  ※技適、FCC、CE対応製品です。日本、アメリカ、EU各国での使用が可能です。
 電源入力電圧:3.0V~5.5V
 内部ロジック電圧:2.1V
  
価格:6,800円(税込)

bCoreモジュール本体です。
ファームウェアが焼かれている状態ですので、iOSアプリ bDriver
Androidアプリ bCore Dirver for Androidをお手持ちのスマホやタブレットにインストールすれば、 bCoreモジュールを電池に繋ぐだけですぐに モーターやラジコンサーボをiリモコン操作できます。(2015/12/18修正)


詳しい情報は こちら を参照してください。

  1. 2016/07/22(金) 10:05:43|
  2. 販売情報
  3. | コメント:0

bCoreNKDの販売を開始します

bCoreNKDの販売を連休明け頃(7/19)に開始します。
bCoreNKD_Hdr.jpg bCoreNKD_Set.jpg

ハンダ付け不要、ブレッドボードなどに挿して使えるピンヘッダ実装済みの『bCoreNKD ピンヘッダ実装済み[VGBDW-011] 』
ピンヘッダは付属しますが未実装で、ユーザー側で任意の2.54mmピッチのピンコネクタ、ピンヘッダを実装していただく『bCoreNKDセット [VGBDW-010]』の二種があり、スクリプトを書き込んでいないブランク状態での出荷となります。

bCoreNKDの、NKDとは Naked の略で、 【ありのままの、むき出しの】 という意味があります。
中核となるBLE113のBGスクリプトのサンプルとその解説を むき出し にすることで、BLEペリフェラルを
手軽に開発可能にすることを目的としています。
これらの情報は、まとめページから参照することができます。(順次追加していきます。)

  1. 2016/07/16(土) 03:27:02|
  2. bCoreNKDとは?
  3. | コメント:0

bCoreに接続するラジコンサーボについての注意事項

ユーザー様からの情報で、bCoreに接続するラジコンサーボの種類によっては正常に動作しないものがあるとの情報があり検証しました。

まず、当方で推奨している SG-90、SG-92ですが、
IMG_5324.jpg
Amazonをはじめ通販で大量の激安偽造品が出まわっており、正規品(写真左)はbCore接続で正常動作しますが、
偽造品(写真右)は動作しません。
秋月電子で販売されているものは正規品ですので、秋月電子での購入を推奨します。
また、Amazonでも Umemoto LLC (梅本合同会社) が扱っているものは正規品です。
梅本合同会社からも、偽造品に関する注意が出ております。

正規品と偽造品では挙動が全く異なりますので、正規品を購入することをお勧めします。

(手前が正規品、奥が偽造品)

フタバのS3005に関しても動作しないとの情報があります。
動作しないサーボについては、PWM信号の負荷が大きいために、bCoreモジュール上のレベル変換IC(NBT0104)が誤動作してることによるもので、PWM信号線上に直列に電流制限目的の抵抗(100~1kΩ)を入れることで動作するようになります。

なお、
SG-90SG-92Rについては 仕様では 4.8Vとありますが、実力的には 2.5V~動作することを、
SG-5010については 仕様では 4.8V~6.0Vとありますが、実力的には 3.6V~動作することを確認しています。
どちらのノーマルサーボの中では比較的安価で秋月電子で正規品が安定的に購入可能です。
この3種類をbCoreで使用するノーマルサーボの推奨品としたいと思います。

なお、ノーマルサーボを使用する場合の接続には、
bCore用ノーマルサーボ変換コネクタ 4本セット [VGBDW-007]
bCore用3ピンコネクタASSY 4本セット [VGBDW-008]
が利用可能です。
  1. 2016/07/06(水) 02:46:59|
  2. Project: bCore
  3. | コメント:0
次のページ

検索フォーム

カテゴリ

Project: bCore (37)
bCoreとは? (3)
bDriverとは? (3)
bCore製作事例集 (5)
bCoreNKDとは? (13)
Project: B5 (1)
Project S-4WDS Racing (7)
S-4WDS Racingとは? (1)
S-4WDS Racing進捗 (6)
Project: uLCX2 (2)
uLCX2BLEとは? (1)
uLCX2とは? (1)
Project: LCXX (20)
LCXXとは? (1)
LCXX進捗 (19)
Project: uLCX (12)
uLCXとは? (1)
uLCX進捗 (11)
Project: Land Crawler (39)
Land Crawlerとは? (1)
Land Crawler 進捗 (19)
LC eXtreme 進捗 (19)
AAF 回顧録 (3)
イベント/TV/雑誌など (37)
販売情報 (4)
その他 (9)
Vagabond Works (2)
プロフィール (0)
ICD/HCM (0)

最新コメント

メールフォーム

名前:
メール:
件名:
本文:

月別アーカイブ

カレンダー

06 | 2016/07 | 08
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 - - - - - -