無線マウスでコントロールする回転ディスプレー台の製作 PIC24FJ64GB002 2013.6.23


    1.はじめに

     昨年夏に、無線マウスでコントールする回転ディスプレー台を製作した。これを、今年の夏休みのマイコン電子工作ネタとして紹介してみたい。

    マウスの操作でディスプレー台が
    回転・昇降する

     製作した回転ディスプレー台とは、次のようなものである。

     高さ6センチ、直径14センチの円筒形で、天板は、丸テーブルの形状をしている。 この中に、マイコンを使ったテーブルの回転機構と昇降機構が組み込まれている。 使ったマイコンは、USBのホスト機能を持ったPIC24FJ64GB002だ。これにUSBマウスを接続する。

     マウスのボタンを押したり、マウスを前後左右にグリグリすると、マイコンがそれに応じてディスプレー台を回転させたり、昇降させたりする。 マウスは有線式でも良いが、無線式のマウスを使った方が面白い。無線が届く範囲であれば、離れた所から ディスプレー台をコントロール出来る。

     ディスプレー台の下部には、ACアダプターを接続する電源コネクタと、マウスを接続するUSBコネクタの他に、 もう一つUSBコネクタを設けている。

     こちらのコネクタは、USB機器を繋ぐものではなく、ディスプレー台の上に飾る模型などに +5Vの電源を供給するためのものだ。こちらもマウスで電源の入り切りや電圧上下の制御が出来る。


    2.設 計

    2−1.材料・部品等

     製作に使用する主な材料や電子部品は、次のとおり。

      用 途品  名数量備  考
      回転台本体
      CD-ROM(50枚入り)ケース
      1
      ケース下部パーツのみ使用
      CD-ROM(20枚入り)ケース
      1
       
      田宮模型のプラバン 0.5mm厚
      1
      円筒外周部
      田宮模型のプラバン 1.5mm厚
      1
      丸テーブル天板
      回転機構
      田宮模型の4速クランクギヤーボックスセット
      1
       
      田宮模型のトラックタイヤセット
      1
       
      FA-130モーター(ギヤーセット付属)
      1
       
      ノイズキラーコンデンサ(0.1uF)
      3
       
      昇降機構
      SANWAのSR-102サーボ
      1
       
      サーボホーン
      1
       
      制御回路
      PIC24FJ64GB002
      1
       
      TA7291P モーターコントローラー
      1
       
      3V3電源IC
      1
       
      2SJ680パワーFET
      1
      +5V外部出力制御
      2SC1815
      1
      マイクロスィッチ
      1
      回転検出用スィッチ
      USB Aタイプコネクタ
      2
       
      ポリスィッチ 500mA
      1
       
      その他 抵抗・コンデンサ等
      1
      回路図参照


    2−2.回転台本体の設計

     円筒形の回転台を実現するために、CD-ROM50枚入りのケースと20枚入りのケースの2つを使う。

     ケース本体下部中央のCD-ROMの穴を通す棒状の突起部分の先端を切り取り、 20枚側の突起部分には、心棒となるプラスチックの棒を接着し、逆さにして50枚側の突起部分に差し込む。

     心棒を中心に、上下の2つのケースが自由に回転すれば良し。工作精度が甘いと回転がガタつくので注意が必要だ。

     上部の20枚の方には、中央部分を切り抜いた20枚ケースの透明カバーを接着する。この透明カバーは、回転機構を実現するためのものとなる。


    2−3.回転機構の設計

     田宮模型の4速クランクギヤボックスと、同じく田宮模型のトラックタイヤセットのタイヤを使って、右図のような回転機構を考えた。 タイヤが回転すると、それに接している透明カバーが回転し、その結果、台が回転する。

     4速ギヤボックスのギヤ比は、441:1を選択する。この選択では、タイヤは、2秒で一回転する。

     ケースカバーは、直径約12センチで、タイヤ径は、3.6cmなので、ディスプレー台は、7秒弱で一回転することになるはずだ。

     透明カバーは樹脂性で表面がつるつるしているので、タイヤがスリップして回転不良を起こす可能性がある。また、回転台の 工作精度が甘いと、台の回転に応じて、タイヤとカバーの接触面が離れ、これまたスリップを起こすことになる。

     一旦スリップが起こると、そこで台の回転が停止してしまう。タイヤと透明カバーの接触圧を高める何らかの工夫が必要だ。これの対策については、工作段階で考えることにする。


    2−4.昇降機構の設計

     回転台の昇降には、右図のようにサーボモーターを使うことにした。

     サーボモーターに取り付けたサーボホーンが回転すると、それに応じて、回転台の心棒が上下する。

     心棒を上げる時は、サーボのトルクで持ち上げるわけだが、下げる時は、回転台上部の自重で下がる構造だ。

     サーボホーンで直に心棒の上げ下げを行うので、回転台が上昇する高さは、そんなに高くできない。今回の工作では、 約2cm〜3cm程の高さとなるはずだ。

     ホーンと心棒の接触部分は、比較的サーボ軸の中心に近い所にあるので、サーボモーターのトルクが有効に働くものと思われる。

     ディスプレー台の上に、1kg程度の物を飾っても上昇させることができると思うが、樹脂製の本体は、あまり丈夫な構造でないだけに 重い物を飾るのは避けた方が良いかもしれない。


    2−5.回転検出機構の設計

     ディスプレー台を右に3回転させたら、左に5回転戻す、などの制御を行うとした場合には、回転数を計数するためのしくみが必要だ。

     そこで、右図に示すように、ディスプレー台本体上部側の中央の軸に、突起を設け、その近くにマイクロスイッチを配置した。回転に応じて、軸の突起部分が マイクロスィッチを押すことにより、回転が検出でき、回転数を計数できる。


    2−6.制御回路の設計

     USBマウスを使うので、USBホスト機能を持つマイコンとして、PIC24FJ64GB002を選択した。

     PICが行わなければならない仕事は、次のとおりだ。

    回路図

     (1).ギヤボックスのモーター制御

       ギヤボックスのモーター制御には、モーターコントローラーICである「TA7291P」を使う。TA7291Pの制御入力端子のIN1,IN2に、PICのデジタル出力を接続し、モータの正転、逆転、停止を行う。 また、Vref端子には、PWM信号を入力し、モーターの動作電圧を制御し、回転の速度制御を行う。

     (2).サーボモーターの制御

       PICからのPWM信号をサーボモーターの制御端子に接続し、サーボーモータの回転を制御して、回転台の昇降を行う。

     (3).外部電源の出力制御

       PWM信号により、2SC1815,2SJ680の2つのトランジスタをオンオフし、外部出力電源の電圧を制御する。

     (4).マウスの読み取り

       マウスのボタンの状況、マウスの移動量を、USBインタフェースを通じてマウスから読み取り、マウスの状態に応じて、モーターの制御を行い、ディスプレー台の回転・昇降の制御を行う。

     モーターコントローラーやサーボモーターは、+5Vの電源で動作させるのだが、PICの信号出力は+3.3Vである。電圧の違いがあるが、これでも問題なく動作する。


    3.製 作

     「2.設 計」の項で検討した内容に沿ってディスプレー台の製作を行った。その様子を以下に示す。

      CDケースの本体部分を加工して作ったディスプレー台の土台となるパーツ。 こちらは、同じくCD/DVDケースで作った上部回転台。プラ板を丸く切り抜いて接着し見栄えを良くした。 土台部分に上部回転台を差し込んで見たところ。スムーズに回転すれば良し。


      回転動力用に田宮模型の「4速クランクギヤボックスセット」を使う。モーターも付いている。 ギヤの組み合わせは、4種類から選べる。今回は、441:1を選択した。 回転動力用のゴムタイヤ。こちらも田宮模型の製品を採用。


      ギヤボックスを組み立てる。回転軸の片側は切り落としてある。右のゴムタイヤを軸に取り付ける。 モーターの電源端子には、ノイズ吸収用のコンデンサ(0.1ux3)を取り付ける。 上部回転台の透明カバーの内側を、ゴムタイヤとの接触が良くなるように紙やすりで擦っておく。


      上部ディスプレー台の中心軸を上下させるラジコンサーボモーター。 ディスプレー台の回転を検出するマイクロスィッチ。 USBのAコネクタ2個。左側は、+5V外部出力用でLEDとポリスィッチが付いている。右側は、マウスを接続するUSBポート用。


      USBマイコン「PIC24FJ64GB002」とモータードライバー「TA7291P」を使った制御基板。電源安定化のためのコンデンサ(2200u)がちょっとでかい。 回転ディスプレー台を構成する各パーツが全てそろった。これらを順に組み立てて行く。 まずは、CD/DVDケースで作成した上部回転台と土台となるパーツ。


      ギヤボックスは、完全に固定するのではなく、片側のみを粘着材で止めるようにする。底面には、バネを取り付けている。 ギヤボックスは、底に付けたバネにより、外側に出っ張るように斜めに取り付ける。 これで、ゴムタイヤと上部カバーとがいつも接触を保つようになる。


      上部ディスプレー台の中心軸を上下させるラジコンサーボモーター。取り付けは、粘着両面テープを使う。 サーボモーターは、このように取り付ける。軸の下部には、サーボホーンが差し込めるようスリットを設けている。 裏側から見るとこのようになっていて、サーボホーンが回転軸の中心に当たる。


      ギヤボックスとサーボーモーターを土台に取り付ける。 回転検出用のマイクロスィッチをサーボモータの上に取り付けた。 上部回転台の中心軸には、プラ板で作成した回転検出用のカムパーツを接着する。


      +5V外部出力用コネクタ基板をネジ止めする。 マウス接続用のコネクタを土台にネジ止めする。 電子回路を搭載した制御基板を土台にネジ止めする。


      土台パーツに組み込む全てのパーツを取り付け終えた状態。後はケーブルを接続するだけだ。 ギヤボックスのモータやラジコンサーボモータ、USBコネクタからのケーブルを制御基板に接続する。 これで動力回路や制御回路の組み込みが完了。


      完成した土台パーツ。
      完成した土台部分に上部回転台を差し込んで見た所。透明カバーとUSBコネクタが接触していないか確認する。 電源のDCジャックも透明カバーと接触ぎりぎりの丁度良い状態。


      化粧用の外周カバーを0.5mm厚のプラ板で作成。USBコネクタとDCジャックの穴を開けている。 土台パーツに化粧の外周カバーを取り付ける。 上部回転パーツを上から差し込んで完成。左のUSBコネクタは、外部電源出力用で、右のUSBコネクタはマウス接続用。


       ディスプレー台の下部にあるDCジャック。+5V,2AのACアダプタを接続する。
      無線マウスの子機をUSBポートに接続する。
      ラジコンヘリコプターを回転台に乗せてプログラムの動作テストを行う。



    4.プログラム

     PICのプログラムは、MPLABの上で、C言語にて開発した。プロジェクトファイルは、次のとおり。

     USBマウスの制御は、Microchip 社から提供される USB Frame Work の マウスデモプログラムを基に作成した。デモプログラムのサンプルコードでは、 DELLの有線式のホイール付きマウスは問題なく動いたが、ロジクールの無線マウスでは、マウスが送信してくるHIDのReport Descriptor の内容が、 サンプルコードが想定しているものと少し異なっており、少々の手直しが必要であった。

     ギヤボックスのモーター制御やサーボモータの制御ならびに外部電源の出力制御は、全て、PIC内蔵のアウトプットコンペアモジュールによりPWMにて 行った。

     PWMの生成については、PIC24ファミリーのリファレンスマニュアルの記載に従って行えば簡単に実現できるが、制御範囲を越えないよう配慮が必要だ。 サーボモータのホーンの動作範囲は、今回の工作では、45度以下であり、この範囲に納めておかないとモーターや回転台が壊れてしまう。



    5.デモムービー

     ディスプレー台の回転の様子を以下のムービーに示す。製作する前の期待に反して、出来上がってみれば、もう一つという感じがする。

       
      マウスの右ボタンで右に回転し、左ボタンで左に回転する。ウィールを前後に回転させると台が上下動する。   マウスの右ボタンで出力電圧が高くなり、左ボタンで低くなる。台に載せたUSB扇風機のボリュームは、最大にしている。