hirax.net::Keywords::「実験」のブログ



2008-07-28[n年前へ]

ニッチなニッチな個人サーバ構成を図解する 

 下の図は、「ニッチなニッチな個人サーバ」の構成を図解になります。何が「ニッチなニッチ」かというと、個人でサーバを動かしていて・ソフトウェアやネットワークとはほぼ無縁の生活をしていて(何しろApacheの綴りをすべてApachと間違えて書いているくらいです)・それでいて、コンテンツ提供のサーバソフトを自分でいじったりしている・・・という状況を、とりあえず「ニッチ」としてみたのです。

 hirax.netはそんな「ニッチなニッチな個人サーバ」であるわけですが、そのサーバ構成をふと図解してみました。というのは、あまりにサーバ構成がツギハギだらけになってきて、自サーバを整理するために、サーバ間の繋がり・関係を(自分のために)図解してみたのです。

 hirax.netは現状4台のサーバで動いています。「大容量ファイル配信」「小さな静的ファイル配信」「メインコンテンツ配信用のRailsアプリを動かす mongrelクラスタ」「いくつかの実験サービスを動かすRails アプリを動かすmongrelクラスタ」「SQLサーバ」「各種数値演算用サーバ」「画像処理サーバ」といったもを、それぞれのPCに役割分散することで動いています。役割分散させると管理が面倒なので、いずれは、まったく同じ機能・同じ構成の仮想サーバにでも処理を分散させるようにしたいのですが、なかなか、そんな再構築作業ができないでいます。

 そもそも、「ニッチなニッチな個人サーバ」ですから、そんな増改築は本来必要でないように思いますが、遊びがてら色々増改築を繰り返してきた結果、こんな古い温泉街の老舗ホテルのような、あるいは、四国かどこかにあるという「軍艦島マンション」のような入り組んだ手作りサーバ構成になってしまいました。

 「Rails入門書を読んだ勢いで、個人サーバ用のアプリをRailsで書いて、自アプリでサーバ運用する人」も少なくないだろう、と思います。便利なブログツールやサーバもたくさんあるわけですが、(素人ながらも)自分で何か作ってみたくなり、適当に動かしている人もチラホラいるだろう、と思います。そんな「素人が手軽に動かすことができるお手軽・気軽なサーバ構成」は、一体どういうものなんでしょうか。他の方々のサーバは「軍艦島マンション」構成にはなってはいないものなのでしょうか……。

ニッチなニッチな個人サーバ図解ニッチなニッチな個人サーバ構成を図解する






2008-07-29[n年前へ]

「モカ茶の下着」は透けて見えることがない!?の実験 

 ブラジャーが透けない「モカ茶のヌードライナー」と「シャツの色」で書いたように、「ブラジャーはシャツの色と同系色でないと透けて見えてしまう」という話をよく聞きます。また、「カラフルな色のブラジャーを着けても、その上にモカ茶のヌードライナー(スリップ)を着れば表には透けない」という話も読んだことがあります。そしてまた、これらと似たような話として「モカ茶の下着は透けない」といった話もよく聞くのです。

 これら3つの話は、似たようなキーワード「(肌色よりかなり濃い)モカ茶」と「透けない」が登場しますが、全く同じ話というわけでもありません。それはまるで、伝聞で広まっていく一種の都市伝説のようです。

 そこで、とりあえず「モカ茶の下着は透けない」かどうかを試してみました。と、いっても、「あくまで簡単な机上計算と机上実験で済む範囲」がhirax.netの守備範囲です。そこで、「腕に4種の色のテープを張り付け(右上の画像)、半透明のシートをその上に載せ、どの程度テープが透けて見えるか(右中の画像)の確認」をしてみました。肌の上に張られた「明らかに肌より明るい色から、明らかに肌より濃い色まで濃さの違うシート」が、薄いピンク色の半透明シート上からどのように見えるかを確認してみたのです。

 意外?なことに、肌色より少し濃いくらいの「パッチ」が全然透けて見えないという、俗説にかなり沿った結果になりました。しかも、「(肌色よりかなり濃い)モカ茶」でも、あまり透けて見えないのです。ちなみに、右の画像は一番最初の画像を、L*(=感覚に比較的素直な明度軸)で示した三次元グラフです。

 普通に考えると「下着が透けて見えない=下着部分がそれ以外の部分と区別できない」のは、「下着が肌色に一番近い色」のときに思えます。そして、下着が肌の色より濃くても・薄くても、同じように「透けて見えてしまう」のではないか、というのが一番「ありそう」な話です。けれど、(精度なんか全然ありませんが)机上実験の結果は違うのです。肌色より明るい色の下着は「とても透けて見える」のに、肌色より暗い色の下着は「あまり透けては見えない」のです。

 というわけで、今日は「モカ茶のインナーの不思議」 が気になって気になってしょうがない……のです。

肌色パッチテスト肌色パッチテスト肌色パッチテスト肌色パッチテスト






2008-07-31[n年前へ]

「計測・解析ソフトのハック」が実験系技術者の一番のLifeHack…かもしれない。 

 「計測・解析ソフトウェア/ハードウェアのハック」が実験系技術者の一番のLifeHack…かもしれない、と思っています。それを逆に言うならば、実験系技術者が費やす多くの時間を、計測・解析ソフトが消費しているということになります。つまり、一番時間を消費している部分の高速化をすることが、全体の高速化に効果的だろう、ということです。

 そんなこんなで、何を今更…という、Perlで「シリアル通信とユーザインターフェース自動制御」のやり方を整理しておくことにしました。なぜかというと、経験的に「計測・解析ソフトウェア/ハードウェアのハック」は、シリアル通信制御とユーザインターフェース自動制御でほとんどの場合対応できることが多いから、です。しかも、計測・解析ソフトウェア/ハードウェアを外注したりすると、時間や費用が無視できないほどかかったりするわけで、そういったシステムを簡単に作ることができるということを知っていると、結構便利であるわけです。

 たとえば、RBIOシリーズのような汎用(入)出力ボードは、お小遣い程度の価格で「シリアル通信経由でのハードウェア制御をする」ことが簡単にできます。それは、「計測ハードウェアのハック」がとても簡単にできる、ということです。
 そして、Windows上(あるいはWindows上で動くソフトウェア)の作業を”勝手に”プログラミングすることができれば、「計測・解析ソフトウェアのハック」も簡単にすることができます。

 というわけで、「シリアル通信とユーザインターフェース自動制御」ができれば、「計測・解析ソフトウェア/ハードウェアのハック」を簡単に実現することができるわけです。

 とりあえず、たとえば、Perlで「シリアル通信とユーザインターフェース自動制御」を使うには、Win32::SerialPort と Win32::GuiTest という二つのライブラリが必要です。それらのインストールは、コマンドプロンプトから、

ppm install Win32-SerialPort
ppm install http://www.bribes.org/perl/ppm/Win32-GuiTest.ppd
という風に行うことができます。もっとも、インターネットに直接アクセスすることができない Proxy 内部からであれば、
set HTTP_proxy=http://proxy.hoge.com:8080
set HTTP_proxy_user=hogehoge
set HTTP_proxy_pass=hogehoge
といったような、Proxy対策の環境変数設定をコマンドプロンプトから前もって行っておくことが必要になります。

 あとは、シリアルポート通信ようのConfigファイルを作る、プログラムを書く、ということだけです。たとえば、

!c:\perl\bin\perl
use Win32::SerialPort;
use Win32::GuiTest qw( FindWindowLike GetWindowText SetForegroundWindow MouseMoveAbsPix SendMouse GetWindowRect SendKeys);
といったライブラリを読み込む宣言をした後に、ソフトウェアのユーザインターフェース周りは、
MouseMoveAbsPix(320, 160);
SendMouse("{LEFTCLICK}");
SendKeys($fileName);
SendKeys("{ENTER}");
というような感じで、マウスやボタンやキーボードを自動で動かすことができます。また、ハードウェア周りは、
my $conf_file="serialport.conf";
tie *PORT, 'Win32::SerialPort',$conf_file or die; pushSwitch(0);
close PORT or warn "Can't close serialport:COM*";

sub pushSwitch{
my ($portNo) = @_;
my $text=sprintf "PCT%d%d\n",$portNo,1;
print PORT $text;
}
という感じで*、スイッチやモータを適当にシリアル通信(とRB-IOのようなお手軽I/Fボードで)制御すれば良い、という具合です。午前中に秋葉原に行って部品を買って、午後にスクリプトを2,30行書けば、それで自動計測・制御システムのできあがり、というわけです。

 *(なお、ここで使用している"serialport_conf"は、こういったserialport_conf.plで作成します)

2008-10-11[n年前へ]

自分で作る「問題」と「答え」 

 以前、月刊化学5月号の【化学の本だな】でこんな内容のことを答えました。これ以外の場でも、同じようなことを数度聞かれますが、いつも同じようなことと答えたように思います。

Q: 調べていて,意外な結論が導きだされたりすることはあるのですか?
A: いいえ、結論(オチ)まで考えてから実際の計算や 実験に取りかかるので,意外な答えに至ることはありません。ただ、一回だけ、「意外な答え」に気づき驚いたことがあります。それは、「サンタが街にやってくる」という話です.数字上の答えは当初の設定そのものでしたが,そこから導きだされた本当の「サンタの正体」は,とても意外なほどに素敵なものでした。
 サンタというものの正体、あるいは、サンタに変身する人を突き動かすものの正体、そんなものに気づかされたように思ったときには、自分が考えもしなかった「答え」を見つけたような気がしました。

 いつか、科学童話本を書いてみたい、と思っています。 私と二度めに出会う「水」 / サンタが街にやってくる / あなたと見たい、流星群 / 遠い空のはて? / 七夕の夜に願うこと / 「雪だるま」がいる景色 / あの頃流れた電波の行方 / 街の灯 (City Light) / 14ミリグラムの「いろんな気持ち」 / 「夕焼けこやけ」の茜蜻蛉(あかとんぼ) / 「海面に写る太陽」の不思議 .... そんな小文や日記の中で少し真面目に書いたことを集めて、科学童話本をつくることができたらいいなぁ、と思うのです。

2008-11-01[n年前へ]

パラメトリック・スピーカー・実験キット 

 (下の動画のような)「パラメトリック・スピーカー・実験キット」が秋月電子で1万1800円で発売されている。5×10=50個の超音波発振子を並べ、超音波を干渉させることで指向性の極めて高い出力を可能にするスピーカーキットだ。「どういうことに使うことができるか」を考えてみるのも楽しそうだけれど、何より超音波発振子が並べられたその外観に電子工作ゴコロがくすぐられてしまう。

 特に、右上のパラメトリック・スピーカー・実験キットを使って作られたパラメトリック・メガホンが、極めつけに楽しそうだ。雑踏の中にいる人たちの中の、その中の一人だけにしゃべりかけることができる超面白グッズを作ってみたくなる。あるいは、川向こうにいる人だけに、こっそり話しかけてみたくなる。




■Powered by yagm.net