今回はTOMYより発売されている、マイクロRCカー「ビットチャーG:」及びカノープス電子さんより発売されている「USBit」を使用した、マルチメディアデバイスを入力に使用したソフトウェアコントロールプログラムを ソースコードとともに公開したいとおもいます。
・開発環境
OS:Windows XP Professional/Windows XP Tablet PC Edition
開発用ソフトウェア:
VisualStudio.NET2003 / DirectX9 SDK /
Microsoft SPEECH SDK 5.1(英語版)
USBit SDK (Canopus電子さんのUSBitに付属)
TOMY及びTOMYTEC社製、BIT CHARG 多数
Sample1 | 最大4台までのUSBitを周波数別に認識するサンプルコード |
Sample2 | DirectX8 - DirectInput8インターフェースを使用した入力コード ※要DirectX8 SDK |
Sample3 | 最大4台までのUSBitを周波数別に、DirectInputをしようしてジョイスティックなどで入力、コントロールする。 |
Sample4 | Microsoft Speech SDK 5.1 を使用して、音声入力をテストするサンプルコード ※マルチスレッド |
Sample5 | Sample 3及びSample4を基本にして、ジョイスティック及び音声入力により、 USBitを複数同時にコントロールスルサンプル |
今回の複数同時コントロールをテストするために、以下のような構成にて開発を行いました。また写真を掲載しておきますので、参考にしてみてください。
@4台の周波数別USBitを各1台ずつ入手。
A4ポートUSBハブと接続
BUSBハブとコンピュータを接続
このとき4台をコントロールするため、写真のように真鍮製スペーサーを基本にして4台縦に積みました。しかしながら、このままではアンテナが立てられないため、真鍮の通電性を利用してスペーサ上部のネジ穴にアンテナを立てることで解決しました。
そのために、基盤上アンテナの横、R3のそばのスペースになっているところに半田付けをおこない、アンテナ線を引き出して扱うことにしました。半田付けをおこなわなくてもアンテナ部分より別の方法にて引き出せますが、今回は丁度未使用のホールが空いてますのでここを利用することにしました。
こうすることで、未使用時はすぐにアンテナを取り外すことができ、また使用時にすぐにアンテナを取り付け、ネジなどの紛失を避けることができるかとおもいます。
※アンテナをこのような形で引き出したり、他周波数とはいえこのような近距離で使うように組むのは、電波の性質上あまりよいことではないとおもいますが、実験機とおもってください。
|
実際のコードをみていただいた方が早いと思いますので、サンプルをいじって試してみてください。とくに、音声入力は別のコンピュータのTTS
(Text To Speech)音声出力を使用してテストしてみるなど、なかなか面白いとおもいます。
音声については、まだまだ音声コマンドへの対応拡張や、音声解釈文法XMLファイルを適切に書いてみるなどの作業があるとよりよいソフトにできるとはおもいますが、今回は参考までに外部XMLファイルを作成。SPEECH
SDK付属のGrammar Compilerを通す準備だけにとどめました。ソースコードにはGrammar
Compiler後のファイルを読み込む指定がすでになされているため、文法XMLファイルをかいたりして楽しむことができるかとおもいます。
現在さらに個別かつ同時にコンピュータからスクリプト操作するプログラムなども別途開発しておりますので、折をみて公開したいとおもいます。
Copyright (C) 2003-2004 Kitaro : 広畑由紀夫