Remote-Hand_DIO

Remote-Hand_DIOとは

Remote-Hand_DIOはVMware Playerと1CDLinuxのPepoLinuxを使いFOMAやDIO-シリアルを接続してネットワーク監視や外部信号の入力監視を行えるものです。

外部入力信号の変化によりメールの通知、パトライト点灯やgmailとwgetを使い遠隔地の入力信号の状態通知や外部接続機器をオン・オフすることが出来ます。

防犯センサ、火災報知器などの入力監視で防犯、防災やWebカメラを接続すれば介護などで見守を必要とする場合もLinuxで行う事が出来ます。

携帯電話FOMAをUSB接続すれば遠隔地からのリモートログイン・ダイヤルインサーバーなどまさにリモートハンド(remote-hand)を手軽に実現させるVMware Applianceです。

※DIOとはDigital Input Digital Outputの略でコンピュータと外の世界をデジタル信号によって接続するものです。

このパッケージはRemote-Hand OpenMicroseverで実現したものを外部信号の入出力端子を持つボードをWindowsXPなど普段使っているPCへシリアル接続して、それに対する動作をGUIでコントロール出来るようにした物です。

2012.7.18リリースしたv.023のマイルストーンはDIOを入力イベントに画像メールを添付できるようになった、PepoLinuxはX-Windowを捨て軽量化の為を図って来ましたが、今回始めて映像をコマンドプロントから扱えるようにした事です。

Yamauchi Isamu, also IZAMUKARERA

2013.7.24

http://www.pepolinux.com

Remote-Hand_DIOイメージ1

slide2.PNG

Remote-Hand_DIOイメージ2

slide3.PNG

シリアルDIOボード

14本の入出力端子を持ち、前半8本を入力、後半6本を出力として利用

dio_boad.png

防犯グッズ(パトライト)

patolight.png

ソリッドステートコンセント(AC100Vコンセント)

金属製のコンセントボックスの側面に穴を空け丸ピンコネンクタを取り付けDIOの出力を取り込む

consento.png

ソリッドステートコンセント(AC100Vコンセント内部)

DIOの出力0-5Vをソリッドステートスイッチで100V/ACをオン・オフ出来る、金属製のコンセントボックスを使う事によりソリッドステートスイッチの放熱を出来るので比較的大きな5A程度の通電が可能

consento_in.png

フロートスイッチ

池や川の水が一定以上のなるとA接点出力、パトライトを点灯やメール通知などが出来る

float_sw.png

煙感知器

A接点を外部出力出来る煙感知器、動作するとパトライトを点灯やメール通知などが出来る

kemupiko_kemuri.png

熱感知器

A接点を外部出力出来るガス・熱感知器、動作するとパトライトを点灯やメール通知などが出来る

kemupiko_netu.png

動物監視

出先から自宅のペットをWEBカメラで動画を撮影、添付メール出来る

animal.png

監視カメラ

Linuxで使えるUVCカメラ、人感センサーを利用して動画を撮影、添付メール出来る

Surveillance_camera.png

人感センサ(無線・送信機)

transmitter.png

人感センサ(無線・受信機)

市販の無線受信機を少し改造・A接点出力、人感センサーが働いたらパトライトを点灯やメール通知などが出来る

receiver.png

無線受信機内部

フォトカップラと抵抗を取り付け、無電圧A接点として出力

jyusinki_into.png

ブートイメージ

slide0002_image001.png

立ち上げ完了ログイン

slide0003_image003.png

ログイン画面に表示されているIPアドレスへWEBアクセス

一番下のリンク「GUIでRemote-Handの設定をします。」を選択します

slide0004_image005.png

WEB認証

初期値はユーザー名:remote パスワード:hand

slide0021_image007.png

①初期画面・イーサネット設定

slide0006_image009.png

②ルーティング設定画面

slide0005_image011.png

③ppp設定画面

FOMAの動作モード(64kデジタル通信、オンデマンド、PPP常時接続)を選択

64kデジタル通信時にPPPクライアントのユーザー名とパスワードを設定、他はダミーで登録が必要

slide0008_image013.png

④WEBユーザー設定画面

初期状態はユーザー名:remote パスワード:hand

slide0007_image015.png

⑤DIO設定画面

入力端子と出力端子に別名をつけて後の設定に反映します。

14本のDIO端子の状態をajaxで5秒毎に更新して表示します。

6本の出力端子へ『low』又は『high』をajaxで設定することが出来ます。

音声により出力端子のオン/オフやwebカメラで撮影された動画や写真を指定したメールアドレスへ添付送信します。

例えば、『写真送って』、『動画送って』、『電気をつけて』、『電気をけして』など音声で上記アクションをします。

menu5.png

⑥PING監視するIPアドレスを設定します。(デジタルアウト)

監視する機器がタイムアウトを起こせばデジタル指定の出力端子をON又はOFFします。

削除はIPアドレスを指定して削除を選択します。

slide0010_image019.png

⑦PING監視するIPアドレスを設定します。(メール)

監視する機器がタイムアウトを起こせば指定されたメールアドレスに時間情報とカウンタを付加してメッセージを送信します。

正常にPING応答を返せば時間情報を付加してメッセージを送信します。

slide0011_image021.png

⑧PING監視するIPアドレスを設定します。(電話)

監視する機器がタイムアウトを起こせば指定された電話番号へダイヤルします・・・ワンギリ

正常にPING応答を返せば電話番号へダイヤルします・・・ワンギリ

slide0012_image023.png

⑨デジタル入力信号の変化に対するアクションを設定します-1

一つの入力信号に対して二つ、全部で16のアクションを設定出来ます。

つまり信号の立ち上がり:LOW→HIGH(0→1)と信号の立下り:HIGH→LOW(1→0)の二つでメール、出力信号HIGH又はLOW、電話又はアクションなしのカウンターリセット操作でイベントカウンターのみ表示が出来ます。

ajaxで入力信号のHIGH→LOWとLOW→HIGHをそれぞれのイベントに対するイベント回数とリセット日時、最新イベント発生日時を定周期で更新します。

slide0013_image024.png

⑩デジタル入力信号の変化対するアクションを設定します-2

-1と同様にデジタル入力信号に対する二つのアクションを設定できます。

例えば、トラが檻をやぶる(LOW→HIGH):パトライトを点灯させる、メールを送信する

トラが檻を閉める(HIGH→LOW):パトライトを消灯させる、電話をワンギリするなど

一つの入力信号に対して合わせ4つのアクションを設定出来る事が出来ます。

slide0014_image027.png

⑪アラートメールの設定をします

初期値ではFOMAを使用してダイヤルアップでインターネットへ直接接続してsendmailでメールを送信します。

domain内部よりsmtpプロトコルを直接通せない場合はwgetを選択します。

wgetはgmailアカントを使用してメッセージを送信する方法でpepogmail_send.cgiが動作するserverが別途必要

例えばRemote-Hand_DIOが出先で自宅のserverへwgetでメッセージを送信依頼する事想定しています。

実際にはRemote-Hand_DIOにpepogmail_send.cgiが動作しているのでIPアドレスなどの情報を自serverの情報へ設定する。

下側のSUBメニューではでgmailのアカウント情報とserverのパスワードなどを設定して、定期的に新着メールをチェックして件名がマッチすればDIOに対するコマンドを実行する。

キーワードに『DIO』を設定して、件名に『DIO』を指定してgmailへ送信するとDIOの入力ポート情報を下記の内容ように返信してくる

件名:remote-hand dio report

本文:

入力1=high
隣の家が火事です=high
一階が火事です=high
入力4=high
入力5=high
入力6=high
入力7=high
出力6loop接続=low
ランプを点灯=high
出力2=high
出力3=high
出力4=high
出力5=high
出力6=low

『DIO 1 1』を指定して送信すると出力ポート1番目を1(high)にするコマンドを実行する

例えばDIOからの5v-0v出力をソリッドステートスイッチでAC100vをオンオフさせたら部屋の照明を

点灯又は消灯がメール操作で出来る。

『DIO 9』を指定して送信するとUSB接続されたWEBカメラからの動画数秒取得してメールに添付してくる。

slide0015_image029.png

⑫指定されたURLからpodcastsのファイル取得とデジタル出力の定時起動設定画面

上段のメニューはMP3のpodcastsファイルを指定、定期的に収集しMP3プレイヤーへ転送と世代管理を設定します。

下段のサブメニューは定期的にデジタル出力制御を行う事が出来ます、例えばペット部屋の照明を定時で点灯/消灯など付加価値を上げるものと思います。

実際にはcrontabの設定をGUIで出来るようにしたもの、下記は20時~23時の間10分毎にデジタル出力1を制御する。

0-59/10 20-23 * * * /var/www/html/remote-hand/auto_act0

autoproc.png

⑬サーバーの設定&コントロール設定画面

ブート時の初期情報の設定画面、これ以前の画面は一時設定この画面は立ち上げ時のIPアドレスなどの初期情報を設定します。

WEBユーザー、パスワードを最低限入力し実行すると、現在の設定保存してブート時に反映します。

slide0018_image033.png

履歴

2011.11.9 Rmote-Hand_DIOファーストリリース

o PepoLinux-0.52.iso以降のイメージ必要

2011.11.13 Rmote-Hand_DIO v0.11リリース

o WEBパスワード不可修正

o startupエラー表示修正

o eth0のdhcp対応

o DIO関係のスクリプト修正

2011.12.9 Rmote-Hand_DIO v0.12リリース

o DIO関係のスクリプト修正

o gmail経由でDIOの操作を出来るようにした

2011.12.13 Rmote-Hand_DIO v0.13リリース

o pepogmail4dioスクリプト修正

2011.12.17 Rmote-Hand_DIO v0.14リリース

o pepogmail4dioスクリプト修正

o DIOの入力8本、出力6本を全てGUIで設定出来るようした

2012.1.3 Rmote-Hand_DIO v0.15リリース

o DISK容量を2Gスプリットへ変更(ホストメモリ512MB動作)

o PepoLinux-0.52.iso以降のイメージ必要

o CGIを2012年版へ変更

2012.1.8 Rmote-Hand_DIO v0.16リリース

o gmailでDIO操作の件名を設定出来るようにした

2012.1.12 Rmote-Hand_DIO v0.17リリース

o デバイス未接続状態から接続状態時に正常動作しないバクを修正

o デジタル入力信号の変化に対するアクション-2のメールアドレスが有効にならないバグ修正

2012.1.22 Rmote-Hand_DIO v0.18リリース

o gmailからのDIOの出力操作が出来ないpepogmail4dioのバグ修正

o DIOのlockfile作成に失敗した場合にコマンドファイルが残るpepodioctlのバグ修正

o pepodioctlでDIOのアクセス競合時リトライタイマーをランダムとしリトライを10回に変更

o 作業ディレクトリを/var/tmpから/var/www/html/remote-hand/tmp/へ変更

2012.1.31 Rmote-Hand_DIO v0.19リリース

o 入力端子4本のイベント登録から8本へ拡張 シリアルDIOのA~Hの8本を入力、I~Nの6本を出力として一つに設定画面で 1本の入力端子に対してhigh→lowとlow→highの2つのアクションを登録出来るようにして もう一つの設定画面で同じイベントに対して更に2つのアクションを設定できるようにした 入力1番端子がlow→highのイベントに対し2つのアクションを起こせる 例えば、メールの送信とパトライトの点灯等(出力端子1番をhigh)が可能となった

2012.2.22 Rmote-Hand_DIO v0.19リリース

o pepodioctlの処理速度向上の為タイマーチューニング

o pepodiodのpollタイマーを2秒から1秒へ変更

o PepoLinux-0.55以上で動作

2012.3.4 Rmote-Hand_DIO v0.20リリース

o pepodiodのDIOリードデータを8個同時にファイル書き込みするように変更

o DIOの入力情報をajaxで1秒毎に自動更新するように変更

o ajaxで1秒毎にアクセスするのでhttpdのlogrotateを4時間毎に行うように変更

2012.3.15 Rmote-Hand_DIO v0.21リリース

o pepodioctl:15本の入出力情報を一度にリード出来るようにした

o menu5:ajaxでDIO出力値の表示と設定が出来るようにした。『入力値更新』ボタン設置

o httpdのアクセスログを減らす為DIOの入出力情報の表示を5秒毎に更新、logrotateを時間毎に変更

o menu12:Podcastsメニューが動作しないバグ修正

o pepogmial4dio:DIO出力情報を新たに付加するようにした。DIO操作キーワードのマッチングチェック変更(キーワードのマッチパターンとlengthをANDでチェック)

2012.4.1 Rmote-Hand_DIO v0.22リリース

o menu9,menu10でDIO入力端子のカウンターをajaxで表示出来るように機能UP

o pepodiod:DIO入力端子のカウンターをjsonデータに追加するように機能UP

o pepogmial4dio:gmailでDIO入力端子のカウンターを取得出来るように機能UP

o javascriptを圧縮・外部参照にした

o PepoLinux-0.58以上で動作

2012.7.18 Rmote-Hand_DIO v0.23リリース

o pepogmial4dio:gmailで入力端子9を指定するとUSB接続カメラで録画と返信機能を追加

o PepoLinux-0.60以上で動作

2012.7.27 Rmote-Hand_DIO v0.24リリース

o DIOのアクションで電話関係のスクリプト修正

o PepoLinux-0.60以上対応

2012.10.12 Rmote-Hand_DIO v0.25リリース

o pepogmial4dio:操作許可メールアドレスにオールユーザー処理を追加

o PepoLinux-0.61以上対応

013.1.20 Rmote-Hand_DIO v0.27リリース

o 保存設定データでgmailによるdioの制御が出来ないバグ修正

o 保存設定データのクリア操作をmenu13 Server Controlに追加

o PepoLinux-0.62以上対応

2013.2.12 Rmote-Hand_DIO v0.28リリース

o menu12へデジタル出力の自動処理を追加

o PepoLinux-0.62以上対応

2013.2.21 Rmote-Hand_DIO v0.29リリース

o menu12へデジタル出力の自動処理機能追加&バグ修正

o PepoLinux-0.62以上対応

2013.2.24 Rmote-Hand_DIO v0.30リリース

o menu12:デジタル出力処理(crond, Permission denied)バグ修正

o PepoLinux-0.62以上対応

2013.3.4 Rmote-Hand_DIO v0.31リリース

o menu12へデジタル出力の自動処理機能UP(設定項目6→12)

o PepoLinux-0.62以上対応

2013.7.24 Rmote-Hand_DIO v0.32リリース

o menu5へDIO出力を音声で制御する機能追加

o PepoLinux-0.64以上対応