ソフトウェア構成

Unlimited Handを操作する際、以下のようなソフトウェア構成になります。
Unlimited Hand自体はハードウェアにあるレジスタに値を書き込むことで操作でき、レジスタの値を読み込むことでセンサーからのデータを読み込むことができます。
そのレジスタへのアクセスをになっているのが、ドライバ部分になります。
ドライバはSerial Portから受信したコマンドに従って動作するので、ドライバとデータ転送部の間でプロトコルが出来上がっている必要があります。これが出来ていないと動作させられないです。

H2L社から提供されているコードを使用することで、以下のコマンドが定義されています。

  • コード
  • データ転送側ドライバ
    Plugin for Unity
    ver.0041 b
    Library for Arduino
    ver.0043 β
    Serial_Unity_Quaternion

  • 定義されているコマンド
  • 名称コマンド備考
    EMS 00x30'0'
    EMS 10x31'1'
    EMS 20x32'2'
    EMS 30x33'3'
    EMS 40x34'4'
    EMS 50x35'5'
    EMS 60x36'6'
    EMS 70x37'7'
    increase EMS time0x6D'm'
    +20ms延ばすことができる(最長:200ms)
    ドライバにのみ定義されている
    decrease EMS time0x61'n'
    -20ms縮めることができる(最短:20ms)
    ドライバにのみ定義されている
    Vibration (300ms)0x62'b'
    Vibration (1000ms)0x42'B'
    Read acceleration and gyro0x61'a'
    Read angle and temperature0x41'A'
    Read photo reflector0x43'C'
    Read quaternion0x71'q'
    Set voltage up0x68'h'
    Set voltage down0x6c'l'
    Set sharpness up0x74't'
    Set sharpness down0x75'u'
データ転送部とドライバ部を作り変えることで、上記のコマンドをより細分化したり、逆に一括でセンサーの値を取得することも可能になりそうです。


コメントの投稿