おそまきながら、オープンソースカンファレンス 2011 Kansai @ Kyoto 展示環境の解説 #osckansai

Debian LS-CL LS-HGL LS-QL LS-VL LS-WSGL/R1

先週末開催された、 オープンソースカンファレンス 2011 Kansai @ Kyoto に、ブース展示とセミナとで参画しました。
ブースに来ていただいた方/セミナを聞いていただいた方、 拙い展示見に/セミナを聞きに来ていただいて、 本当にありがとうございました。

もうネタバレもOKということで、展示環境の説明をしておきます。

今年のブースのテーマは「風」

まずは、全景

シンクロさせたUSB ファン5つと扇風機をケータイなどからコントロールできるデモを 行いました。

それぞれのデバイス

以下、右から順番に

Lenovo ThinkPad X60s

本ブースのコントロール端末。
・KURO-Sheeva, LinkStation のシリアルターミナル
・Ustream.tv の配信マシン
・KURO-Sheeva で動いている「ハックしよう!」ページへのアクセスマシン
等をこなしていました。

ELECOM UCAM-DLP130TBK

Ustream.tv の配信用 Web カメラ。

リモートから制御するには、 制御前の状態、制御後の状態が見えないと不安になるものです。
以前は、自前で撮影して配信していたのですが、 リアルタイム性に問題があり、今年は Ustream.tv で 制御対象のファンの状態を中継しました。

お出かけ用モバイルルータ

以前、作ったときは SheevaPlug でしたが、今回は玄柴で構成し、 ブース内からインターネットへのアクセスを提供するとともに、 (ThinkPad に映ってる)ブースのファンをコントロールするページが 携帯電話などからアクセスできるように外向きに提供しました。

LinkStation 5台

左から、LS-QL, LS-HGL, LS-CL, LS-VL, LS-WSGL
すべて Debian 化、 LS-VL 以外にはシリアルコンソールも付けてあります。

また、それぞれに USB ファンが付けてあります。

ELECOM T-Y12USBA

今回の展示のキーデバイス、USB 連動電源タップ。

PC本体の電源に連動してディスプレイやら外部HDDやらの 電源を入れる目的のものですが、今回は メーカが想定する以上の使い方をしました。

家庭用扇風機

USB 連動電源タップで制御するためのターゲットとして、 当初は USB 扇風機を使う予定でしたが、
それでは実世界の制御ができることのアピール度が低いだろうと考え、 家庭用の本物の扇風機を持ち込みました。
機械式スイッチの扇風機であることがミソで、 「弱」などにしておけばコンセントを抜き差し(電源をON/OFF)しても 前の状態で動作します。
最近多いソフトスイッチの扇風機だとこうはいきません。

ちなみに、結構人気で、会場に到着するなり、 わざわざブースに来て「扇風機、回して!」と言って 涼む方もいらっしゃいました(笑

デモのしくみ

どうやって携帯電話から5台の LinkStation につながったUSBファンを シンクロさせていたかを説明します。

各 LinkStation での USB 電源制御

最近の LinkStation は、
/proc/buffalo/gpio/power_control/usb0 に
"on" を出力すればUSBの電源が ON になり、
"off" を出力すればUSBの電源が OFF になります。

それぞれの LinkStation に Web サーバを構築、 シェルスクリプトで CGI を作成し、
http://自ホスト/cgi-bin/on をアクセスすればUSBの電源が ON に、
http://自ホスト/cgi-bin/off をアクセスすればUSBの電源が OFF に、
http://自ホスト/cgi-bin/3sec をアクセスすれば 3秒間ON に、
なるようにラッピングをしました。
これで、リモートから http で USB に接続されているデバイスの 電源が ON/OFF できるようになりました。

扇風機の電源制御

LS-QL だけは、フロントパネルにも USB ポートがあり、 /proc/buffalo/gpio/power_control/usb1 に on/off を出力する
http://LS-QL/cgi-bin/on2
http://LS-QL/cgi-bin/off2
を用意しました。
フロントパネルにの USB ポートには、 USB 連動電源タップ ELECOM T-Y12USBA が接続してあり、 その連動ポートには扇風機がつないであります。
これで、
http://LS-QL/cgi-bin/on2
http://LS-QL/cgi-bin/off2
にアクセスすることで、扇風機を ON/OFF できるようになりました。

5台をシンクロさせる/リモートから制御する

玄柴には、いくつかの CGI を用意し、5台の LinkStation を 制御するためのコントロールセンタとしました。

on

5台全部のファンを ON にします。
http://玄柴IPアドレス/cgi-bin/on
wget http://LS-QL/cgi-bin/on
wget http://LS-HGL/cgi-bin/on
wget http://LS-CL/cgi-bin/on
wget http://LS-VL/cgi-bin/on
wget http://LS-WSGL/cgi-bin/on

off

5台全部のファンを OFF にします。
http://玄柴IPアドレス/cgi-bin/off
wget http://LS-QL/cgi-bin/off
wget http://LS-HGL/cgi-bin/off
wget http://LS-CL/cgi-bin/off
wget http://LS-VL/cgi-bin/off
wget http://LS-WSGL/cgi-bin/off

右から順に

右から順に3秒ずつ ON にします。
http://玄柴IPアドレス/cgi-bin/right
wget http://LS-QL/cgi-bin/3sec
sleep 1
wget http://LS-HGL/cgi-bin/3sec
sleep 1
wget http://LS-CL/cgi-bin/3sec
sleep 1
wget http://LS-VL/cgi-bin/3sec
sleep 1
wget http://LS-WSGL/cgi-bin/3sec

(中略)

扇風機を ON/OFF

ON
http://玄柴IPアドレス/cgi-bin/on2
wget http://LS-QL/cgi-bin/on2

OFF
http://玄柴IPアドレス/cgi-bin/off2

wget http://LS-QL/cgi-bin/off2

Web ページ

あとは、index.html を作成して、
「ON」ボタンがクリック/タップされたら /cgi-bin/on が
「OFF」ボタンがクリック/タップされたら /cgi-bin/off が
「→」ボタンがクリック/タップされたら /cgi-bin/right が
(中略)
実行されるようにして完了。

まとめ

USB で接続して、プロトコルに従ったやりとりしての制御は結構ハードルが高いでしょうが、 単に ON/OFF なら上のような方法で簡単に制御できるものです。

みなさんも、 手軽に買える機器をハックして、 メーカが提供している以上の機能を引き出してしまいましょう!



LS-HGL
バッファローダイレクト
楽天市場
livedoor デパート
Yahoo!ショッピング
ムラウチドットコム
ヤマダ電機WEB
LinkStation Mini
LS-WSGL
バッファローダイレクト
楽天市場
Amazon
Yahoo!ショッピング
Livedoor デパート
ムラウチドットコム
ヤマダ電機WEB
LS-CL
バッファローダイレクト
楽天市場
amazon
LS-QL
バッファローダイレクト
楽天市場
amazon
livedoorデパート
Sofmap
バリューモア
Yahoo!ショッピングトップ
ムラウチドットコム
LS-VL

楽天市場
Amazon


オープンソースカンファレンス 2011 Kansai @ Kyoto ブース完成 #osckansai
ハックの記録
LinkStation/玄箱 をハックしよう

地デジ化(8)2つ目の DTV-S110 入手

Copyright (C) 2003-2011 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市