USBセンサを使ってみよう 〜Phidgets活用講座 実践編 (1)〜
作成日: 2006/7/10  最終更新日: 2006/10/11



概要

このページの内容は,Software Design 2006年2月号pp.114-119,および2006年3月号pp.102-108に掲載された, 「USBセンサを使ってみよう Phidgets活用講座(2-3)」をHTML化したものです.分量が多いため,四つのページに分割してあります.本文中の「現在」などは「2005年12月」を指します.

ここでは,PhidgetsとPhidgetServerを用いて,既存のPCのユーザ・インタフェースを拡張するさまざまなアプリケーション群「PhidgetApplication」の概要について紹介します.USBセンサを使ってみよう(PhidgetApplication編)も参考にしてください.

連載目次



PhidgetApplicationの概要

1. はじめに

前回の記事では,PCから手軽に利用できるUSB接続のセンサー/アクチュエータ群,Phidgetsの概要と,Phidgetsをさまざまな言語/ネットワーク環境で手軽に扱うことができるPhidgetServerというソフトウェアについて紹介しました.

今回は,日曜ユビキタス環境を実現する第一歩として,PhidgetServerを用いて既存のPCのユーザ・インタフェースを拡張するさまざまなアプリケーション(以下,PhidgetApplication)を紹介します.

ここでは,まず,前回の記事について簡単におさらいし,次にPhidgetApplicationの概要について説明していきます.

目次へ




2. 前回のおさらい
ここでは,前回の記事の内容を,大きく三つに分けておさらいします.
Phidgets
Phidgetsは,USB接続のセンサー/アクチュエーター群と,それらを制御するフレームワークの総称です.本稿では便宜的に,Phidgetsのデバイス群を「Phidgetデバイス」と呼ぶことにします。 Phidgetデバイスは,国内代理店のぷらっとホームから購入するか,Phidgetsの公式サイトから直接購入することができます.

ここでは,今回の記事で利用するPhidgetデバイスについて,簡潔に説明します.

  • PhidgetInterfaceKit
    • 各8ポートのアナログ入力/デジタル入力/デジタル出力を備えた,基本となるPhidgetデバイスです.価格は,上述のPhidgets公式サイトで100CDN(カナダドル,本稿執筆現在1CDN =104円) となっています.
      • アナログ入力には,タッチセンサ,圧力センサ,光センサ,温度センサ,右上から,スライダー,ボリューム,ジョイスティックなどの多様なセンサを接続することができます.
      • デジタル入力には,スライドスイッチ,プッシュスイッチなどの1bitの入力デバイスを接続できます.
      • デジタル出力は,LEDなどの各種表示機やアクチュエーターを制御できます.
  • PhidgetRFID
    • USBに直結できるRFIDリーダーと,10個程度のタグのセットです. 価格は,Phidgets公式サイトで90CDNとなっています.
    • アンチコリジョン(タグの複数読み取り機能)には対応していませんが,安価で取り扱いが容易です.

PhidgetServer

PhidgetServerは,Phidgetsを手軽に制御できるGUIと,TCPサーバーを一体化したソフトウェアです. PhidgetServerを用いれば,TCPソケットを利用できる全ての言語から容易に Phidgetsを制御することが可能です.さらに,複数のPCに接続されたPhidgetsを連携して扱うことも可能になります.

本稿で紹介するすべてのアプリケーションは,PhidgetServerを利用するTCPクライアントとして実装しています.

サンプルアプリケーション

PhidgetServerを用いた簡単な応用例として,PhidgetVolumeというシステムを紹介しました.PhidgetVolumeでは,物理的なつまみを用いて,Windows PCの音量調節を行うことができます. ハードウェアはInterfaceKitとつまみ(可変抵抗)を,ソフトウェアはRubyを用いて製作しました. 本稿で紹介するPhidgetApplicationの中でも,もっともシンプルなシステムのひとつといえます.

目次へ




3. PhidgetApplicationの準備

次に,PhidgetApplicationを試すために必要な共通の準備について説明します. アプリケーションを利用するために必要なハードウェア/ソフトウェアは以下のようなものです.

  • Phidgets
    • 前述したいずれかのPhidgetデバイスを入手してください.各アプリケーション毎に必要なデバイスは異なりますので,それぞれの説明を参考にしてください.
    • デバイスを接続する前に,Phidgetドライバをインストールしておく必要があります.ドライバは,Phidgetsの公式サイト(PHIDGET.msi)から入手できます.
  • Windows PC
    • Windows XPで動作を確認しています.
  • Microsoft .NET Framework 1.1
    • PhidgetServer/一部のPhidgetApplication(PhidgetMouse, PhidgetLauncher)は, .NET + C#で書かれているため,事前に Microsoft .NET Framework の 再頒布パッケージ をインストールしておく必要があります.インストーラーはMicrosoftのWebページから入手できます.
  • Cygwin
    • 一部のPhidgetApplication(PhigetBrowser, PhidgetSaver, PhidgetBiff)を利用するためには,CygwinとRubyをインストールしておく必要があります.
  • PhidgetServer
    • PhidgetServerの実行ファイルは,筆者のWebページから入手してください.Phidgetドライバや.Net Frameworkの再頒布パッケージはここからもダウンロード可能です.
    • .NET Framework, Phidgetドライバのインストール完了後,実行ファイル(PhidgetServer.exe)をダブルクリックすることで起動します. 詳しい使い方については,前回の記事を参照してください.
  • PhidgetApplication
    • すべてのPhidgetApplicationの実行ファイル/ソースコードは,筆者のWebページからダウンロードできます.
目次へ



4. PhidgetApplicationの概要
今回製作するPhidgetApplication群は,以下のようなものです.
  • PhidgetBrowser
    • 物理的なスライダを利用して,リスト(Webページなど)の閲覧を行います.
  • PhidgetSaver
    • 光センサを利用して,ユーザの状態に応じたスクリーンセーバーの制御を行います.
  • PhidgetMouse
    • ジョイスティック/つまみ/プッシュボタンなどを利用して,マウス入力を制御します.
  • PhidgetLauncher
    • RFIDを利用して,さまざまなアプリケーションを起動します.
  • PhidgetBiff
    • 複数のLED/スイッチから構成される実世界Biffシステムです.WebページやRSSを定期的に監視し,更新された場合にLEDを点灯させます.さらに,スイッチを押すことで,該当ページを表示します.

次に,各PhidgetApplicationについて,ハードウェア/ソフトウェアの特徴や使い方,主要なソースコードなどを中心に説明していきます.

目次へ

[次へ->PhidgetApplicationの紹介(1)]


[1] [2] [3] [4]

[デバイスぶらり旅]