WEB08S

ユーザーマニュアル

 

 

 

TCP/IP イーサネット

HTTP ウェブ クライアント

RFID ターミナル

 

 

 

 

 

8th January, 2014

AVEA International Company Limited

(http://avea.cc)


 TCP/IP イーサネット HTTP ウェブ クライアント RFID ターミナル        4

1.リーダーの接続/設定        5

1.1 初期設定        5

1.2 WEB08Sを初期設定にリセット        5

1.3 強制的DHCPモード        5

2.インストール        6

2.1 電源要求        6

2.1.1 ターミナルブロック        6

2.1.2 Cat-5/eイーサネットケーブル        6

2.2 外部リレーコントロール        7

2.3 コンタクトスイッチ        7

2.4 スレーブリーダー        8

2.5 本体のサイズ        8

3.ソフトウェア        9

3.1 HTTPサーバーへのリクエスト        9

3.1.1 \avea.php        9

3.1.2 $date and $time        9

3.1.3 $id        9

3.1.4 $code        9

3.1.5 $cmd        9

3.1.6 $type        9

3.1.7 $mode        9

3.1.8 $ver        9

3.1.9 $contact        10

3.1.10 $sid        10

3.1.11 $ulen        10

3.1.12 $uid        10

3.1.13 $deviceid        10

3.1.14 $md5        10

3.2 HTTPサーバーからのレスポンス        11

3.2.1 HB=xxxx        11

3.2.2 BEEP=x        11

3.2.3 CK=YYY-MM-DD HH:MM:SS        11

3.2.4 GRNT=xx        11

3.2.5 DENY        11

3.2.6 ROOT=xxxxxxxx        11

3.2.7 EXT=x        12

3.2.8 DHCP=x        12

3.2.9 IP=xxx.xxx.xxx.xxx        12

3.2.10 GW=xxx.xxx.xxx.xxx        12

3.2.11 NM=xxx.xxx.xxx.xxx        12

3.2.12 WS=xxx.xxx.xxx.xxx        12

3.2.13 PT=xxxxx        13

3.2.14 RLY=x        13

3.2.15 SID=xxxxxxxx        13

3.2.16 MD5=xxxxxxxxxxxxxxxx        13

4.PHPコードの例        14


TCP/IP イーサネット HTTP ウェブ クライアント RFID ターミナル

WEB08Sは125kHz RFIDカードを読むためのTCP/IPイーサネットベースRFIDターミナル。これは独立型HTTPウェブ・クライアントとして使用される(コンピュータに接続する必要ない)。

 

RFIDカードが検出された時点、リーダーがウェブサーバーにGET\avea.php指令を送信し、サーバーが標準HTTPでリーダーに返事し、そして組み込み制御は同時に<AVEA>と</AVEA>タグの間で追加される。

 

多種類なページ拡張子で使うことができる(.php、.asp,.cfm、.pl、.htmと.html)。故に、多種類なHTTPウェブサーバーシステムに対応できる(マイクロソフトのIISとASP;Unix/LinuxのApacheとPHPとMySQLデータベースサーバー;標準htmlウェブサーバー)。

 

このシステムは標準ウェブベースシステムであり、プログラミングの必要はない。簡単なウェブページすらあれば、完全なアクセス制御システムと入退場制御システムが実現できる。

       


  1. リーダーの接続/設定

リーダーが正常に作動するため、リーダーを正しく接続/設定しなければならない。標準状態には青いLEDが点滅し、RFIDカードが検出された時、赤いLEDは同時に点滅する。

リーダーを接続/設定するため、ウェブサーバーが必要となる。サーバーのIPアドレスは192.168.1.1。その上に、サーバーにはウェブページ(\avea.php)が必要となる。(\avea.php)には初期設定がある。初期設定でリーダーを起動すると、リーダーは自動的にサーバーに接続し、サーバーから設定をダウンロードする。リーダーの電源が切られても、保存したデータは失わない。これでリーダーの準備が完了。リーダーを使うことができる。

  1. 初期設定

WEB08Sの初期設定は以下のように:

パラメーター

説明

初期設定

IP

リーダーのIP アドレス

192.168.1.234

GW

ゲートウェイ IP アドレス

192.168.1.1

NM

ネットマスク

255.255.255.0

WS

HTTP サーバー IP アドレス

192.168.1.1

PT

HTTP サーバーポート番号

80

EXT

ページ拡張

php

  1. WEB08Sを初期設定にリセット

リーダーを起動する前に、ジャンパをJ4に設置する。リーダーを起動すると、保存した設定は自動的に消され、同時に初期設定にセットします。

  1. 強制的DHCPモード

ジャンパをJ6に設置すると、DHCPモードは強制的で自動的にセットします。DHCPサーバーはオプションwww-serverが使えるように設定されなければならない。(オプション72)

dhcpd.confの例:  

#example of dhcpd.conf for web08s

ddns-update-style ad-hoc;

 

subnet 192.168.1.0 netmask 255.255.255.0 {

# --- default gateway

option routers 192.168.1.1; # default gateway

option subnet-mask 255.255.255.0; # netmask

option www-server 192.168.1.123; # it must setup to the web server’s IP

range dynamic-bootp 192.168.1.10 192.168.1.99;

default-lease-time 300;

max-lease-time 3600;

 }

  1. インストール

リーダーが正常に作動するため、安定な給電、10-baseTイーサネット接続、オプションナルスレーブリーダーと電気ストライクや磁気ロック(随意)が必要となる。

WE08SのPCBバージョンは二つあります:

二つのバージョンは端子台のレイアウトにだけ違いがある。

  1. 電源要求

WEB08Sりーだーが正常に作動できるため、9~12V DC 500mAが必要となる。リーダーに電源を供給する方法は二つある:

  1. ターミナルブロック

電源を端子台J11から供給。正端子がVINに接続、負端子がGND(グラウンド)に接続。電圧は9Vから12Vまで、最小電流は500mA。

  1. Cat-5/eイーサネットケーブル

電源をJ11から供給する以外、Cat-5/eイーサネットケーブルでRJ45コネクターに電源を供給することも可能。ピン7とピン8がGND(グラウンド)に接続。ピン4とピン5がVINに接続。同時に、ジャンプブロックJ3はツーピンジャンパー四つでショートする。


  1. 外部リレーコントロール

Web08Sは端子台J9で制御可能なリレー出力がビルトインした。そして:

NC -ノーマルクローズ、Cに接続。

C - コモン、NOやNCの中の一方に接続。二つを同時に接続することは不可能。

NO -ノーマルオープン, オープンサーキット。

リレーの最大スイッチング電圧は120VACと60VDCで、、最大スイッチング電流は2A。リレーは電気錠ストライクのバイパススイッチに接続し、ドアのアクセス制御として使用できる。だが、最大定額を超えると、リーダーが損傷になり、修理ができなくなる。

  1. コンタクトスイッチ

WEB08Sは外部コンタクトスイッチ(プッシュボタン)をSW端子に接続することができる。スイッチの状態(オープンやクローズ)に変更があると、ウェブサーバーでは記録が残る。

 


  1. スレーブリーダー

WEB08Sはスレーブリーダー(モデル:KS232S)と連携ができる。ホストソフトウェアはバリアブル$タイブでWEB08Sからのアクションとスレーブリーダーからのアクションを識別できる。以下の図はWEB08Sが外に、スレーブリーダーが内に設置された接続図。

備考:

  1. 電気錠ストライクに接続
  2. スレーブリーダーからWEB08Sまでの接続はワイヤーが四つあって、パワー"+"と"-"、とデータ信号RDとTD
  3. 内部バイパススイッチに接続
  4. イーサネットネットワークに接続
  5. パワーサプライをWEB08Sとスレーブリーダーに接続

  1. 本体のサイズ

高さ: 97mm

幅: 57mm

深さ: 24mm


  1. ソフトウェア

WEB08SはHTTPクライアントが、PHPも使用可能。WEB08SはHTTPサーバーにさまざまなパラメータでPHP URLリクエストを送り、HTTPサーバーからの返事によって、作動する。

  1. HTTPサーバーへのリクエスト

以下はPHP専用指令である

  1. \avea.php

リーダーはGETリクエストを発信するにより、HTTPサーバーの固定ウェブページにアクセスする:avea.php(ウェブサイトのルートにある)ファイルの種類は選択できる、例:avea.asp、avea.cfm、avea.pl、avea.htm、avea.html。ルートにある数字的なファイアルネームに対しては、サーバーは変更可能である。

  1.  $date and $time

指令の日付と時間を表示する。日付のフォーマットはYYYY-MM-DD。例)2007/01/23 は 2007年1月23日を表す。時間のフォーマットはHH:MM:SSで、HHは時間、MMは分、SSは秒。リーダーが正しく作動できるよう、リーダーの日付と時間を合わせる必要がある。

  1. $id

リーダーのIPアドレスである。e.g. 192.168.1.234. 違うリーダーに対しては違うIPが必要となる。

  1. $code

IDカードの独特なコードである。

  1. $cmd

どんなアクションがリーダーで行ったかを表すリクエストである。

  1. $cmd=PU, リーダーに電源を入れたら送信される。
  2. $cmd=CO, IDカードがリーダーに読み込まれたら送信される。カードナンバーは$codeに保存される。
  3. $cmd=HB, プログラムのハートビットレートが達したら送信される。デフォルトのハートビットレートは300秒である。
  4. $cmd=SW, コンタクトスイッチがショット・オープンされたら送信される。
  5. $cmd=PG, リーダーがPingされた時に送信される。

  1. $type

WEB08Sとスレーブリーダーからのアクションを分ける。

  1. $type=m, アクションはWEB08Sからである。
  2. $type=s, アクションはスレーブリーダーからである。

  1. $mode

内部使用の場合、$modeはオペレーティングモードを表す。

  1. $ver

内部使用の場合、$verはソフトウェアのバージョンを表す。

$ver=1.3以下の場合、スタンダードWEB08Sである。

$ver=1.4以上の場合、WEB08S-SP01である。

  1. $contact

$cmd=SWを利用してコンタクトスイッチの状態を表す。スイッチがオープンされたら、$contact=OPEN。スイッチがクローズされたら、$contact=CLOSE。

  1. $sid

SIDレスポンスが設置されたバリューである。

  1. $ulen

EMカードのUIDのバイト長である。通常は5である。

  1. $uid

EMカードのUIDである。ストリングは16進形式で、サイズが変換可能である。

例)

for $ulen=5, $uid=309E80732F

  1. $deviceid

リーダーの独特な32bitのIDである。

  1. $md5

MD5ユーザーのシークレットキー、デイトとタイムのMD5チェックサムである。認証リクエストで一緒に送信される。

例)

仮に

コンバインストリングは

故に、コンバインストリングのMD5チェックサムは

サーバーの側では、MD5のシークレットキーがわかるため、MD5チェックサムが計算でき、送られてきたチェックサムと答え合わせられる。

MD5のシークレットキーは公開されないため、認証されたリーダーにしか正確なチェックサムを送られない。


  1. HTTPサーバーからのレスポンス

リクエストを送ったら、WEB08SはHTTPサーバーからのレスポンスを待つ。スターティングフラグ<AVEA>とエンディングフラグ</AVEA>を確認し、その間のストリングを解読する。シークレットキーワードとパラメーターの中にはスペーシングがなくてはいけない。通常ではレスポンスポケットのサイズは600バイトより少ない。

以下のレスポンスが対応できる:

  1. HB=xxxx

リーダーのハートビットレートを秒単位で設置する。フィックスレングスのフォーマットのデシマルバリューである。

例):

HB=0300、300秒つづHTTPサーバーにハートビットリクエストを送ることに設置する。

HB=0000、ハートビットリクエストを無効にする。

  1. BEEP=x

リーダーにビープ音を作る。フィックスレングスのフォーマットである。

例):

BEEP=1、短いビープ音を作る。

BEEP=0、長いビープ音を作る。

  1. CK=YYY-MM-DD HH:MM:SS

リーダーの日付と時間を設置する。年の範囲は2000から2099まで。フィックスレングスフォーマットである。

例)

CK=2007-01-23 12:34:56 set the clock to 23rd Jan 2007, pm12:34:56.

  1. GRNT=xx

リーダーををアクセス可能状態に設置し、リレーをxx秒にNOステートからNCステートにエンゲージし、NOステートに戻る。同時にLEDがオンとオフになる。これはフィックスレングスのフォーマットのデシマルバリューである。例):

GRNT=03 リレーをNCステートに設置し、LEDが3秒つけた後、NOステートに戻り、LEDが消される。

  1. DENY

リーダーををアクセス拒否状態に設置し、リレーをNOステートに設置する。

  1. ROOT=xxxxxxxx

リーダーがアクセスするルートページを変える。これはフィックスレングスのフォーマットのデシマルバリューである。例) ROOT=00024689、これによってリーダーはデフォルト /avea.phpより、ページe /24689.phpにアクセスする。ROOT=00000000を設置することで、アクセスページをデフォルトページにリセットする。


  1. EXT=x

リーダーがアクセスするルートページのファイルエクステンションを変える。これはフィックスレングスフォーマットである。

Xのバリュー

ファイルエクステンション

.php

1

.asp

2

.cfm

3

.pl

4

.htm

5

.html

6

.aspx

         

  1. DHCP=x

リーダーのDHCPフィーチャーをコントロールする。DHCP=1の場合、DHCPが有効。DHCP=0の場合、DHCPが無効。有効にすることで、リクエストをDHCPサーバーに送り、以下の情報を獲得する:

- host IP

- netmask

- default gateway

- www-server IP

  1. IP=xxx.xxx.xxx.xxx

これはフィックスコマンドで、バリューがデシマルである。リーダーのIPアドレスを変える。例):

IP=192.168.001.234

  1. GW=xxx.xxx.xxx.xxx

これはフィックスコマンドで、バリューがデシマルである。リーダーのデフォルトルーターを変える。例):

        GW=192.168.001.002

  1. NM=xxx.xxx.xxx.xxx

これはフィックスコマンドで、バリューがデシマルである。リーダーのネットマスクを変える。例):

NM=255.255.255.000

  1. WS=xxx.xxx.xxx.xxx

これはフィックスコマンドで、バリューがデシマルである。リーダーがアクセスされるウェブサーバーのIPアドレスを変える。例):

WS=192.168.001.001

  1. PT=xxxxx

これはフィックスコマンドで、バリューがデシマルである。ウェブサーバーにアクセスする時に使われるポートナンバーを変える。例):

PT=00080

  1. RLY=x

これはフィックスコマンドで、バリューがデシマルである。RLY=1の場合、リレーがオンになる。RLY=0の場合、リレーがオフになる。リレーの状態はサブコマンドに影響される。

  1. SID=xxxxxxxx

これはフィックスコマンドで、バリューが16進値である。これは不揮発性バリューで、電源落としても変えることはない。

  1. MD5=xxxxxxxxxxxxxxxx

これはフィックスコマンドで、64bitバリューが16進値である。これは不揮発性バリューで、電源落としても変えることはない。これはコンピューティングMD5チェックサムに使うシークレットキーである。

 


  1. PHPコードの例

以下は分かりやすい例で、HTTPサーバーにあるPHPスクリプトの例である。ファイルネームは \avea.php.。

<html>

 <body>

 <?php

// setup variables

$cmd=$_GET[“cmd”];

$mode=$_GET[“mode”];

$code=$_GET[“code”];

$now=time(); // stamp the current time

$st=date('Y-m-d H:i:s',$now); // set the datetime string to correct format

$mycard=359452; // replaced by your card number

$rtime=$date . $time; // access the date and time of the reader

$remote_open=1;

echo "<AVEA>"; // starting flag

switch ($cmd) { case "PU": //

power up

echo "CK=$st"; // set clock

if ($mode==ID2) { // for web08s only

echo “DHCP=1”; // turn on the DHCP feature

}

break;

case "CO": // card only

if ($code==$mycard) {

echo "MSG=3f737937"; // show message OPEN

echo "GRNT=01"; // grant access

} else {

echo "DENY"; // deny access

}

break;

case "HB": // heartbeat

echo "CK=$st"; // set clock

break;

case "PG": // being pinged

if ($_GET[“contact”]==”CLOSE”) {

echo "GRNT=01"; // grant access

}

break;

case "SW": // being pinged

if (remote_open==1) {

echo "GRNT=01";  // grant access

} break;

}

echo "</AVEA>";  // ending flag

?>

</body>

</html>

WEB08S TCP/IP Ethernet HTTP/PHP RFID Terminal