MF-WEB08S

ユーザーマニュアル

TCP/IP イーサネット

HTTP WEB クライアント

RFID ターミナル

8th January, 2014

AVEA International Company Limited

(http://avea.cc)


 MF-WEB08S TCP/IP イーサネット HTTP ウェブクライアント MIFARE カードターミナル        4

 1.リーダーのセットアップ        5

1.1 デフォルト セッティング        5

1.2 MFーWEB08Sをデフォルトにリセットする        5

1.3 強制DHCPモード        6

1.4 サポートカードタイプ        6

 2.インストレーション        7

2.1 電力需要        7

2.1.1 ターミナルブロック        7

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

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

2.3 コンタクトスイッチ        8

2.4 本体サイズ        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 $ulen        9

3.1.5 $uid        9

3.1.6 $cmd        9

3.1.7 $mode        10

3.1.8 $ver        10

3.1.9 $contact        10

3.1.10 $sid        10

3.1.11 $data        10

3.1.12 $md5        10

3.1.13 $deviceid        10

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

3.2.1 HB=xxxx        11

3.2.2 BEEP=x        11

3.2.3 CK=YYYY-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        11

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        13

3.2.12 WS=xxx.xxx.xxx.xxx        13

3.2.13 PT=xxxxx        13

3.2.14 RLY=x        13

3.2.15 LED=x        13

3.2.16 SID=xxxxxxxx        13

3.2.17 MKEY=Nxxxxxxxxxxxx        13

3.2.18 MREAD=Nxx        14

3.2.19 MAUTH=x        14

3.2.20 MD5=xxxxxxxxxxxxxxxx        14

 4.PHPコード参考例        15


MF-WEB08S TCP/IP イーサネット HTTP ウェブクライアント MIFARE カードターミナル

MF-WEB08SはMIFAREカード用のTCP/IPイーサネットベースのRFIDターミナルである。これはスタンドアロンHTTPウェブクライアントとして設計された(他のパソコンは必要無し)。

RFIDカードが読み取られた時、リーダーはGETリクエストをウェブサーバーに送信し、ページ\avea.phpをリクエストする。そして、サーバーは<AVEA>と</AVEA>の間に組込制御をスタンダートHTTPで返信する。

多様なページエクステンションもサポートできる。例えば、.php, .asp, .cfm, .pl, .htm and .html。故に、多様なHTTPサーバーシステム(MicrosoftのIISとASP、Unix/LinuxのApache、PHPとMySQLデータベースサーバー;スタンダートHTMLサーバー)も使用できる。

このシステムはスタンダードウェブベースシステムなので、プログラミングの必要はない。軽くウェブページをデザインすれば、強力で完全なアクセスコントロールシステムと出席時間管理システムが使用できる。


  1. ーダーのセットアップ

普通に作動できるよう、MF-WEB08Sは必ず正しく設定しなければならない。通常状態では、青いLEDは点滅するが、リレーが入ったら、赤いLEDがつく。

1.1        デフォルト セッティング

        MF-WE08Sのデフォルトセッティングは以下のよう:

パラメーター

内容

デフォルト

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.2        MFーWEB08Sをデフォルトにリセットする

電源を入れる前に、ジャンパキャップをOP1に挿し入れる。電源入れたら、MF-WEB08Sのセッティングが消され、デフォルトセッティングに戻る。通常オペレーションの時は必ずジャンパキャップを外す。

1.3        強制DHCPモード

シャンパキャップがOP2に入れたら、MF-WEB08Sが自動的にDFCPモードに設置される。DHCPサーバーはoption www-serverにレスポンスするよう設置しなければならない。i.e. Option 72.

        LINUXシステムでのdhcpd.confの参考例:

#example of dhcpd.conf for MF-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.4        サポートカードタイプ

        リーダーは以下のカードタイプのUID読み取れる

        - Mifare1 S50/S70

- Mifare Ultralight

- Mifare Pro

- Mifare DESFire

- Mifare Plus

- Mifare derivatives

KEYAとKEYBを読み取るのに、S50/S70のみサポート。


  1. インストレーション

普通に作動できるよう、MF-WEB08Sは必ず安定な電力供給が必要。 10-baseTイーサネットコネクションと、任意な電子ストライクや磁石ロック。

  1. 電力需要

MF-WEB08Sは通常では912V DC 500mAが必要。電力を供給する方法は2つある:

  1. ターミナルブロック

電力をターミナルブロックに入れ、ポジティブがVINに、ネガティブがGND(グランド)に接続する。

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

イーサネットケーブルでRJ45コネクターに電源を入れる。PIN 7 と 8 はGND(グランド)に、PIN 4 と 5 はVINに接続する。

同時に、ジャンプブロックJ3は必ず2-pinジャンパキャップでショートしなければならない。

ジャンパキャップ4つ入れることで、電力がイーサネットケーブルから流れ込む。この場合では、電力はパワーターミナルにアウトプットされている。

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

MF-WEB08Sは制御可能なリレーアウトプットをターミナルブロックJ9にビルドインし、

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

        C - コモン、NOかNCに繋がるが、同時に2つに接続しない。

        NO - ノーマルオープン、通常はオープンサーキット。

リレーの最大スイッチングボルテージが120VACと60VDCであり、最大開閉電流が2Aである。これはドアアクセスコントロールのため、エレクトリックストライクのバイパススイッチに接続可能である。最大電流・電圧を超えたら、リーダーが壊される可能性あり、修理不可となる。

  1. コンタクトスイッチ

MF-WEB08SはSWターミナルから外部コンタクトスイッチ(プッシュボタン)を接続可能。この状態の変更(ショートかオープン)は該当なメッセージをウェブサーバーに送信する。

  1. 本体サイズ

高さ:97mm

広さ:57mm

深さ:23.5mm


  1. ソフトウェア

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

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

  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. $ulen

        MIFAREカードのUIDのバイト長で、4、7と10もある。

  1. $uid

MIFAREカードのUIDで、ストリングは16進形式で、サイズが変換可能である。$ulenは長さを教える。

例:

$ulen=4, $uid=9E80732F

$ulen=7, $uid=8877665E03441A

$ulen=10, $uid=123456789ABCDEF01234

  1. $cmd

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

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

                        内部使用で、もし$mode=MFx、ターミナルはMifareリーダーである。

  1. $ver

        内部使用で、現在のファームウェアのバージョンである。i.e.$ver=1.7。

  1. $contact

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

  1. $sid

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

  1. $data

        これは32桁16進数のブロックリードアウトのデータである。

  1. $md5

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

例)

仮に

ーMD5のシークレットキーが‘01234567’(ASCII)

ーリクエストのデイトが‘2012.08/08’(ASCII)

ーリクエストのタイムが‘10:19:54’(ASCII)

コンバインストリングは

ー '012345672012/08/08-10:19:54' (ASCII)

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

ー b62a8cf4adfdd10874f1121686b0bba9

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

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

  1. $deviceid

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


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

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

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

  1. HB=xxxx

リーダーのハートビットレートを秒単位で設置する。フィクストレングスのフォーマットのデシマルバリューである。これは不揮発性で、電源消しても残る。

例)

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

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

  1. BEEP=x

リーダーにビープ音を作る。

例)

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

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

  1. CK=YYYY-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のバリュー

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

0

.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. LED=x

これはフィックスコマンドで、バリューがデシマルである。LED=1の場合、緑LEDがつく。LED=0の場合、LEDが消される。

  1. SID=xxxxxxxx

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

  1. MKEY=Nxxxxxxxxxxxx

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

NはAかBでどのキーをセットするか分ける。

Xxxxxxxxxxxxは12桁の16進値バリューのキーである。

例)MKEY=ADC1234567890はKEYAのバリューをDC1234567890 (hex)にセットする

キーを公衆ネットワークより、安全なプライベートネットワーク環境で送信することはお勧めします。

  1. MREAD=Nxx

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

NはAかBでどのキーをセットするか分ける。

Xxは16進値のブロックナンバーである。

例) MREAD=B0CはリーダーをKEYBでブロックナンバー12を読むようにセットする。

  1. MAUTH=x

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

MAUTH=0 はデータを読み取らない。i.e.認証不可状態となる。

MAUTH=1 はMREADが提供したキーでデータを読み取る。認証が成功した場合、データはUIDと一緒にサーバーに送信される。認証が失敗した場合、UIDのみサーバーに送信される。

MAUTH=2 はMREADが提供したキーでデータを読み取る。認証が成功した場合、データはUIDと一緒にサーバーに送信される。認証が失敗した場合、何もサーバーには送信しない。

  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[“uid”];

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

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

$mycard=3388E0AB; // 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 MF-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>

MF-WEB08S TCP/IP Ethernet HTTP/PHP RFID terminal