2008/01/08 火

トランスバイブレーターをMacでUSB制御する

PS3でRez+トランスバイブレーターを遊ぶ」でも紹介したUSB振動ユニット「トランスバイブレーター」は、パソコンからもUSBで制御することができます。例えば、CatHandさんが作成された「Vibrator 0.2」というMacアプリを使うと、スライドバーで振動具合を制御して遊べます。

動画にしてみたのでご覧下さい。ブルブル震えているのがわかるでしょうか。

すごくシンプルなハード&ソフトですが、なかなか楽しいですよコレ。USB制御できることがわかると、複数個つなげて遊んだり、ネットワーク越しに相手のトランスバイブレーターを振動させたり、と夢が広がります。改造したり互換デバイスを作るのも面白そう!

おそらく世界で一番シンプルなUSB機器だと思うので、制御プログラムやドライバ作成の入門にもよいかも。「オレもプログラム書きたい!」と思った人は続きをどうぞ。

Macでトランスバイブレーターを制御する具体的な方法は、同じサイトの「CatHand Development [USB機器の制御]」を見て頂くのがよいと思います。MacでUSB機器を制御する例としてトランスバイブレーターを取り上げており、「PS3のコントローラー「SIXAXIS」をMacにUSB接続する」のコマンドを作るときも参考にしました。例はMacプログラムですが、APIの使い方以外は他のOSでも同様です。

コマンド送信部分をUSB仕様っぽい書き方でおおざっぱに書くと、コントロール転送を使ってホストからデバイスへベンダー定義のコマンドをインターフェイスに送信している、という感じです。トランスバイブレーターに送信できるベンダー定義コマンドは振動値設定の一種類のみのようで、これを使って振動の強さを0から255まで設定できます。

USB仕様のことを多少理解していないとソースを見てもよくわからないかも知れません。興味のある方は、下記の本や「どすぶいだにょ☆」第2号のP.60 (PDF上ではP.62) などをご覧になるとよいかと思います。より詳細な仕様は、USB本家の「USB.org - Documents」からどうぞ (英語ですが)。

オリジナルUSB機器の設計と製作―USBインターフェースの基礎から応用までを豊富な設計・製作例を通して学ぶ (ハードウェア・セレクション) USBハード&ソフト開発のすべて―USBコントローラの使い方からWindows/Linuxドライバの作成まで (TECHI―Bus Interface)

Posted by ooba at 13:02 | Comments (0) | TrackBacks (0)
Trackbacks
TrackBack URL: http://www.bricklife.com/mt/mt-tb.cgi/548
Comments
Post a comment




Powered by Movable Type 4.0