BPK-03 サーボをセンタリングしてみる

ここではキットに付属している3つのサーボのセンタリング(回転の中心を合わせる)しつつ、ベゼリーの基本的なライブラリのインストールを行います。

まずは機材を用意しましょう。

img_0811

・ラズパイ(初期設定が完了したもの)
・キットから、サーボドライバーボード、USBコネクタ、ジャンパーケーブル(長いものと短いもの)、サーボ3つを取り出します。
・細めのマイナスドライバーも必要です。

それでは機材を接続しましょう。

・まず3つのサーボをサーボドライバボードに接続してください。

image・サーボドライバボードにはサーボを16個刺すことができますが、左端の3つに刺してください。
・ケーブルの色と端子の色が合うように刺してください。橙ケーブル→黄端子、赤ケーブル→赤端子、茶ケーブル→黒端子。
・ちなみに橙(黃)が信号線、赤がプラス、茶(黒)がマイナスです。

・キットに付属している短いジャンパーケーブルは10本がつながってますが、4本だけ割いてください。何色を使ってもよいのですが、このマニュアルでは黒から紫の4本を使っているので、同じ色のほうが分かりやすいですね。

img_0812

・ジャンパーケーブルをサーボドライバボードに接続してください。ボードには6本の端子がありますが、そのうち4本だけ使います。ちなみに紫と黒が電源(紫がプラスで黒がマイナス)、灰と白が信号線です。

img_0813・ジャンパーケーブルをラズパイに接続してください。ラズパイの端子(GPIO)は2列並んでますが、内側のほうに刺してください。

img_0814

・サーボドライバボードにサーボを動かすための電源を接続します。電池方式とUSB方式があります。電池方式のほうが簡単で、配線もシンプルです。でも長時間つかうなら、USB方式のほうが経済的でしょう。

img_0817

・まず電池方式の説明をします。電池ボックスのフタを空けて単3電池を3本入れてください。

img_0818

・サーボドライバボードの緑色の電源端子を細めのマイナスドライバーで緩めると、側面の金属端子に隙間ができるので、そこに電池ボックスのケーブルを差し込んで、ドライバーで締め付けてください。左が黒ケーブル(マイナス)、右が赤ケーブル(プラス)です。

img_0819

・電池ボックスのスイッチをONに切り替えることで、サーボドライバボードに電源が供給されます。

・次にUSB方式を説明します。USBコネクタに長いジャンパーケーブルを刺してください。キットに付属しているジャンパーケーブルの色は同じではありません。

img_0820

・コネクタの左がマイナス、右がマイナスなので、この写真の例では茶ケーブルがマイナス、赤ケーブルがプラスになります。
・プラスとマイナスを間違わないように注意しながら、サーボドライバボードの電源コネクタにジャンパーケーブルを接続してください。

img_0822

・サーボドライバボードの左側がマイナス、右側がプラスです。
・電圧がかかった端子が露出していると不安なので、絶縁テープなどで包んであげましょう。
・ACアダプタに接続されたmicroUSBケーブルをこのUSBコネクタに挿せば、サーボドライバボードに電源が供給されます。

・ラズパイにディスプレイ、キーボード、マウスを接続し、電源コネクタに電源を接続してください。

img_0824

・サーボが回転しているかどうかを分かりやすくするため、付属のサーボホーン(白いプラスチックの部品)をサーボの回転軸に挿しておくとよいと思います。

・電源方式を電池方式にするなら電池ボックスのスイッチをONにし、USB方式にするならUSBコネクタに電源を接続してください。


次はソフトウェアの準備です。ラズパイを起動してください。
  • I2Cの有効化
    • ラズパイとサーボドライバボードは「I2C」という方式で通信しますが、ラズパイはデフォルト設定ではI2Cが無効になっているので、有効にしてください。
    • X Window System画面左上のメニューアイコン(ラズベリーの絵)から「設定」→「Raspberry Piの設定」を選び、「インターフェース」タブの「I2C」を「有効」に切り替えます。
    • 再起動することで、設定が有効になります。

  • モジュールとサンプルプログラムの取得
    • LXTerminalのウィンドウを開いてください。
    • このあとはコマンドラインでの操作になります。Linux系のOSを使ったことが無いひとは、まずはこちらをご覧ください。Raspbianの基本
    •  ユーザーディレクトリ「/home/pi」にベゼリー用のディレクトリ「bezelie」を作り、そこへ移動しましょう。ディレクトリーを移動するコマンド「cd」は、移動先を指定せずに単独で打ち込むとユーザーディレクトリに移動します。

  • gitからベゼリーのサンプルプログラム集を取得しましょう。
  • これでディレクトリ「bezelie」の下に「pi」という新しいディレクトリが作成され、その中にベゼリーのサンプルプログラムがコピーされたはずです。そこへ移動し、ls(エルエス)コマンドで中身を確認してみましょう。
  •  準備は完了です。サーボをセンタリングするpythonのプログラムを実行してみましょう。
      • 3つのサーボがキュイキュイ動いたらセンタリング成功です。

サーボのセンタリングは終了です。お疲れ様でした。


Tips
  • キットに付属しているサーボはTower Pro社のMicro Servo Digital「SG-90」です。安価なサーボなので、あまり長持ちしません。1個400円ぐらいでAmazonなどで購入できますので、動きが悪くなったなと思ったら、買い直してください。ただし、偽物も出回っているらしいのでご注意ください。
  •  I2Cとは
    • I2CはInter-Integrated Circuitの略で、アイツーシーあるいはアイスクエアドシーと読みます。
    • フィリップス社が提唱したシリアル通信の規格です。
    • シリアルデータ(SDA)とシリアルクロック(SCL)の2本の信号線だけで通信することができます。
    • 複数のデバイスを同時に接続することができます。
    • ディスプレイ、温度センサー、加速度センサーなど、I2C接続に対応したディスプレイが多数発売されています。