Recent Comments

BIND+PHPによるDiCEで更新可能なダイナミックDNSサーバ構築
 [09/09] Big Black Ass様
 [09/09] Buy Vicodin様
 [09/09] Stop drinking and take zoloft様
DiCEのプラグイン編集
 [09/09] susie様
 [09/09] ikfepzemjah様
 [09/09] lakia様
日記:携帯ストラップにUSBメモリ
 [09/07] [doxycycline hyclate 100mg]様
日記:Windows7RCがDVDドライブを認識しない
 [09/07] what is doxycycline様
買った(日記):Dynabook SS 1610 11L/2
 [09/07] [doxycycline lyme disease]様

Profile

名前:げんき
職業:ねじ屋さん
趣味:機械いじり
  買ったものや試したことを日記混じりで書きつづっております。

中の人

なかのひと
Graph 2010.9.9
Year:  Month:  Day

<<< 買った:リレー制御ボード RBIO-3E <<<  ||  >>> RBIO:少し大きめのリレーでAC100VをON/OFFする。 >>>

RBIO:とりあえずPHPで10個のリレーを個別に制御してみる。

2008年07月21日

準備
RBIOはTCP/IPをしゃべって操作する。
DHCPでIPアドレスを勝手に取得してくれるらしいので、まずは/etc/dhcpd.confに

host rbio {
    hardware ethernet 00:20:??:??:??:??;
    fixed-address 192.168.??.??;
}
てな感じでRBIOのIPアドレスを固定してやる。
これで、telnetとかで192.168.??.??にアクセスしてやればRBIOとお話が出来る。

方向性
で、俺はPHPしか知らないのでPHPでなんとかする。
制御用コマンドは、共立さんのサイトにあるマニュアルPDFに載ってる。
telnetでアクセスしてやって、たとえば0番のリレーをON/OFFしてやると

PCR01

OK
PCR00

OK

と返ってくる。
また、0番がON、1番がOFFの状態で、0番と1番の状態をチェックすると、
PRA0

1
OK
PCA1

0
OK

と返ってくる。
てことで、何か1行空いてから答えが返ってくるようなので、PHPで結果を取得するときには1行読み込んで捨ててから、2行目を変数に入れるってことに気をつけようと思った。

仕様
・せっかくPHPなのでブラウザで簡単操作できるように表を作る。
・横10列/縦3行で、1行目にはリレー番号、2行目にはチェックボックスでON/OFFを操作出来るように、3行目には現状ONかOFFかを色で見分けれるように。
・他のプログラムで使用中など接続エラーなときはエラーを表示。

実装
rbio_direct.phps
こんな感じのを書いた。期待通りに動作する。外からいじくられると困るので動作は見せられないけど、イメージとしてはrbio_direct.htmlこんな感じの表示になります。

<<< 買った:リレー制御ボード RBIO-3E <<<  ||  >>> RBIO:少し大きめのリレーでAC100VをON/OFFする。 >>>

アンケート

このページの内容はいかがでしたか?
片手間にポチっと送信してやってください。
役に立った 4
おもしろかった 2
ふつー 0
つまらなかった 0
欲しい情報と違った 0
Score:10

トラックバック

このエントリーのトラックバックURL:
http://www.genkikko.net/mt/mt-tb.cgi/85

コメントを投稿