1013 :
モジュラー・システム「Teleo」の解説(001)
: 小林茂
------------------------------------------------------------------------
DSPマガジン 2003.06.07 No.1013
------------------------------------------------------------------------
モジュラー・システム「Teleo」の解説(001)
小林 茂
○はじめに
今回から不定期&回数未定でTeleoをご紹介しようと思います。第一回では、Teleoがどんなものか、簡単なパッチの例などを交えて説明します。Teleoが手元に無くても読んでいただけるような内容になっていますので、どうぞ最後まで読んでみて下さい。
○Teleoとは?
TeleoはサンフランシスコのMakingThings社の製品で、いくつかのモジュールを組み合わせることでセンサーやモーター等との入出力を扱えるようにするものです。標準でMax/MSP用のオブジェクトも提供されていますので、Max/MSPから簡単に利用することができます。MakingThingsのホームページと製品ページはこちらです(英語のみですが豊富な画像がありますので是非見てみて下さい)。
MakingThings
http://www.makingthings.com/
MakingThings
Products
http://www.makingthings.com/products/products.htm
○Teleoの特長
最初にTeleoについて非常に簡単に紹介しましたが、Teleo以外にもMax/MSPから利用できる入出力インタフェースはあります。例えば、先日開催されたDSPオフ・サマースクール2003で活躍したBoenig
und Kallenbach oHGのSERVICE
USBや、LEGOのロボットを制御するためのRCXなどがあります。
これらと比較した場合、Teleoの特長は次のようになるかと思います。
*
USBで簡単に双方向(入力と出力の両方)の接続ができる
*
モジュールの組み合わせによってラジコン用のサーボを利用することができる
*
大容量の電源を接続することにより、最大で30V・10Aまでの容量を扱うことができる
*
最大で63個までのモジュールを組み合わせることができる
*
ケーブルの終端処理等をきちんとすれば数百メートル以上まで引き延ばすことができる
また、現時点ではβ版ですが、CやC++などで作成したアプリケーションから直接Teleoを利用するための開発キットも準備されています。これにより、長期間展示しなければならないインスタレーション等を作成する場合に、Max/MSPを用いてプロトタイピングを行い、それを基にCやC++などでプログラムを作成し、Linuxをのせた小型のPCで制御する、というようなこともできます(開発キットについては後の回でご紹介しようと思います)。
このように、Teleoはより「ハード」な用途に耐えられるように設計されています。これにより、ある程度以上の規模のインスタレーションを作成するような場合に適していると思われます。
○Teleo
Modulesについて
Teleoはいくつかのモジュールを組み合わせて使います。実際にTeleoのモジュールをいくつか接続している様子を次の写真で見てみて下さい。
http://www.makingthings.com/products/documentation/teleo_user_guide/images/intro_set_connected_top_sm.jpg
この原稿を書いている時点でリリースされているモジュールは次の7つです。この中で、Power
Moduleは電源をTeleoシステム全体に供給するモジュールで、USB
Translator
ModuleはTeleoシステムをUSBでMac/PCに接続するためのモジュールです。これら2つのモジュールは必ず必要になります。この2つのモジュールに、目的にあわせて1つ以上のモジュールを組み合わせて使うことになります。
*
Power Module
* USB Translator
Module
* Multi IO
Module
* Digital Output
Module
* Servo
Module
* Dual 2A Motor Controller
Module
* 10A Motor Controller
Module
このように、目的にあわせて必要なモジュールを組み合わせて使うことができるため、無駄がありません。また、単機能のモジュールを組み合わせていくというスタイルはMax/MSPでのプログラミング・スタイルにも通じるところがあると思います。
今後これ以外のモジュールも順次発売されていく予定です。「こうしたモジュールが欲しい」という希望がある場合には、MakingThingsにメール等で要望を出してみるのもいいかもしれません。
○Teleo
Introductory
Setについて
さて、このように豊富なモジュールが用意されているTeleoですが、とりあえず使ってみよう、という人のために入門用のセット「Teleo
Introductory
Set」が用意されています。
Teleo
Introductory
Setは、次の3つのモジュールとACアダプターやケーブル等をセットにしたもので、このセットがあればとりあえずTeleoを使い始めることができます。
*
Power Module
* USB Translator
Module
* Multi IO
Module
http://www.makingthings.com/online-store/scstore/shophome.html
初めてTeleoを使ってみようという場合には、まずはこのセットを購入するのが良いと思います。また、まだMax/MSPを持っていないという場合には、このセットにMax/MSPをセットにしたものも用意されています。
このセットの価格はUS$250ですが、日本から購入する場合には、これに送料約US$60が必要になり、日本に入ってくる段階で関税が必要になりますので、合計で約38000円になると思います。
○Teleo
Introductory
Setでできること
それでは、実際にTeleo
Introductory
Setを使った例を紹介しましょう。
Teleo
Introductory Setに含まれているMulti IO
Moduleは、次のような機能を備えています。
*
4系統のアナログ入力
*
4系統のデジタル入力
*
4系統のデジタル出力
*
2系統のPWM出力
この中で、最後の「PWM出力」はあまりなじみが無いかもしれません。PWMはPulse
Width
Modulationの略で、アナログ・シンセ等のオシレーターでも登場する用語です。オンとオフの区間の比率を連続的に制御することにより、モーターの回転速度や電球の明るさを連続的に制御することができます。
Max/MSPから制御する場合には、これらはそれぞれ次のオブジェクトに対応しています。
*
t.mio.ain
*
t.mio.din
*
t.mio.dout
*
t.mio.pwm
まず、一番簡単に、スイッチを接続する例を紹介しましょう。スイッチをMulti
IOモジュールに接続した場合の例が次です。
http://www.makingthings.com/products/documentation/teleo_multi_io_user_guide/images/mio_din_pushbutton_photo.jpg
デジタル入力に対応するオブジェクトはt.mio.dinですが、このオブジェクトを用いたシンプルなパッチの例は次のようになります。
http://www.makingthings.com/products/documentation/max_externals/images/t.mio.din.png
このパッチをロードし、Multi
IO
Moduleに接続したスイッチをオン/オフすると、t.mio.dinオブジェクトに接続されたToggleオブジェクトがスイッチの状態を反映して変化します。
これは非常に簡単な例ですが、ここまで動いてしまえば、外部の機器の情報はMaxメッセージに変換されていますので、この情報を用いてMax/MSPで何らかの処理を行うように発展させるのは非常に簡単だと思います。また、この例では単体のスイッチを接続しただけでしたが、ゲーム用のコントローラー等、様々なものを接続することもできるでしょう。
もう一つ、スイッチとは違う、連続的に変化するセンサーを接続する例を紹介します。CDSと呼ばれる、光の明るさを検出するのによく用いられるセンサーを接続した例が次の写真です。
http://www.makingthings.com/products/documentation/teleo_multi_io_user_guide/images/mio_ain_lightsensor_photo.jpg
このように、様々なセンサーを簡単に接続し、それらからの入力をMax/MSPで扱うことができます。既存のMIDI機器をコントローラーやセンサーとして用いる場合には様々な制約がありますが、Teleoの場合には直接センサー等を接続するため、非常に自由度が高くなります。また、一台のMulti
IOモジュールで足りない場合には、必要に応じて複数のMulti
IOモジュールを接続することもできます。
以上は入力の例でしたが、出力側にもモーターや電球等、さまざまなものを接続することができます。いくつかの例がMulti
IOモジュールの解説ページで紹介されていますので、こちらのページを見てみて下さい。
http://www.makingthings.com/products/documentation/teleo_multi_io_user_guide/index.html
○第一回のまとめ
以上、非常におおまかにではありますが、Teleoについて紹介してきました。次の回では別のモジュールを用いた例を紹介しようと思います。ご意見/ご指摘/ご要望等ありましたら、どうぞお気軽にお寄せ下さい。
なお、MakingThingsはオンラインストアも用意していますが、残念ながらアメリカおよびカナダ以外の住所のクレジットカードではオンライン決済を行うことができません。日本からの注文はファックスまたはe-mailとなりますのでご注意下さい。
------------------------------------------------------------------------
暫定版ながら、DSPマガジンのWEBサイトを作りました。
メルマガの発行確認や購読中止などの操作は、こちらをご覧ください。
http://dspmag.iamas.ac.jp/
------------------------------------------------------------------------