MF-WEB08S
ユーザーマニュアル
TCP/IP イーサネット
HTTP WEB クライアント
RFID ターミナル
8th January, 2014
AVEA International Company Limited
MF-WEB08S TCP/IP イーサネット HTTP ウェブクライアント MIFARE カードターミナル 4
1.リーダーのセットアップ 5
1.1 デフォルト セッティング 5
1.4 サポートカードタイプ 6
2.1.2 Cat-5/e イーサネットケーブル 7
2.2 外部リレー コントロール 8
3.1 HTTPサーバーへのリクエスト 9
3.1.2 $date and $time 9
3.2 HTTPサーバーからのレスポンス 11
3.2.3 CK=YYYY-MM-DD HH:MM:SS 11
3.2.6 ROOT=xxxxxxxx 11
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.16 SID=xxxxxxxx 13
3.2.17 MKEY=Nxxxxxxxxxxxx 13
3.2.20 MD5=xxxxxxxxxxxxxxxx 14
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サーバー)も使用できる。
このシステムはスタンダードウェブベースシステムなので、プログラミングの必要はない。軽くウェブページをデザインすれば、強力で完全なアクセスコントロールシステムと出席時間管理システムが使用できる。
普通に作動できるよう、MF-WEB08Sは必ず正しく設定しなければならない。通常状態では、青いLEDは点滅するが、リレーが入ったら、赤いLEDがつく。
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 |
電源を入れる前に、ジャンパキャップをOP1に挿し入れる。電源入れたら、MF-WEB08Sのセッティングが消され、デフォルトセッティングに戻る。通常オペレーションの時は必ずジャンパキャップを外す。
シャンパキャップが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;
}
リーダーは以下のカードタイプのUID読み取れる
- Mifare1 S50/S70
- Mifare Ultralight
- Mifare Pro
- Mifare DESFire
- Mifare Plus
- Mifare derivatives
KEYAとKEYBを読み取るのに、S50/S70のみサポート。
普通に作動できるよう、MF-WEB08Sは必ず安定な電力供給が必要。 10-baseTイーサネットコネクションと、任意な電子ストライクや磁石ロック。
MF-WEB08Sは通常では912V DC 500mAが必要。電力を供給する方法は2つある:
電力をターミナルブロックに入れ、ポジティブがVINに、ネガティブがGND(グランド)に接続する。
イーサネットケーブルでRJ45コネクターに電源を入れる。PIN 7 と 8 はGND(グランド)に、PIN 4 と 5 はVINに接続する。
同時に、ジャンプブロックJ3は必ず2-pinジャンパキャップでショートしなければならない。
ジャンパキャップ4つ入れることで、電力がイーサネットケーブルから流れ込む。この場合では、電力はパワーターミナルにアウトプットされている。
MF-WEB08Sは制御可能なリレーアウトプットをターミナルブロックJ9にビルドインし、
NC - ノーマルクローズ、通常はCに接続。
C - コモン、NOかNCに繋がるが、同時に2つに接続しない。
NO - ノーマルオープン、通常はオープンサーキット。
リレーの最大スイッチングボルテージが120VACと60VDCであり、最大開閉電流が2Aである。これはドアアクセスコントロールのため、エレクトリックストライクのバイパススイッチに接続可能である。最大電流・電圧を超えたら、リーダーが壊される可能性あり、修理不可となる。
MF-WEB08SはSWターミナルから外部コンタクトスイッチ(プッシュボタン)を接続可能。この状態の変更(ショートかオープン)は該当なメッセージをウェブサーバーに送信する。
高さ:97mm
広さ:57mm
深さ:23.5mm
WEB08SはHTTPクライアントが、PHPも使用可能。WEB08SはHTTPサーバーにさまざまなパラメータでPHP URLリクエストを送り、HTTPサーバーからの返事によって、作動するす。
リーダーはGETリクエストを発信するにより、HTTPサーバーの固定ウェブページにアクセスする:avea.php(ウェブサイトのルートにある)ファイルの種類は選択できる、例:avea.asp、avea.cfm、avea.pl、avea.htm、avea.html。ルートにある数字的なファイアルネームに対しては、サーバーは変更可能である。
指令の日付と時間を表示する。日付のフォーマットはYYYY-MM-DD。例)2007/01/23 は 2007年1月23日を表す。時間のフォーマットはHH:MM:SSで、HHは時間、MMは分、SSは秒。リーダーが正しく作動できるよう、リーダーの日付と時間を合わせる必要がある。
リーダーのIPアドレスである。e.g. 192.168.1.234. 違うリーダーに対しては違うIPが必要となる。
MIFAREカードのUIDのバイト長で、4、7と10もある。
MIFAREカードのUIDで、ストリングは16進形式で、サイズが変換可能である。$ulenは長さを教える。
例:
$ulen=4, $uid=9E80732F
$ulen=7, $uid=8877665E03441A
$ulen=10, $uid=123456789ABCDEF01234
どんなアクションがリーダーで行ったかを表すリクエストである。
内部使用で、もし$mode=MFx、ターミナルはMifareリーダーである。
内部使用で、現在のファームウェアのバージョンである。i.e.$ver=1.7。
$cmd=SWを利用してコンタクトスイッチの状態を表す。スイッチがオープされたら、$contact=OPEN。スイッチがクローズされたら、$contact=CLOSE。
SIDレスポンスに設置されたバリューである。
これは32桁16進数のブロックリードアウトのデータである。
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のシークレットキーは公開されないため、認証されたリーダーにしか正確なチェックサムを送られない。
リーダーの独特な32bitのIDである。
リクエストを送ったら、MF-WEB08SはHTTPサーバーからのレスポンスを待つ。スターティングフラグ<AVEA>とエンディングフラグ</AVEA>を確認し、その間のストリングを解読する。シークレットキーワードとパラメーターの中にはスペーシングがなくてはいけない。通常ではレスポンスポケットのサイズは600バイトより少ない。
以下のレスポンスが対応できる:
リーダーのハートビットレートを秒単位で設置する。フィクストレングスのフォーマットのデシマルバリューである。これは不揮発性で、電源消しても残る。
例)
HB=0300、300秒つづHTTPサーバーにハートビットリクエストを送ることに設置する。
HB=0000、ハートビットリクエストを無効にする。
リーダーにビープ音を作る。
例)
BEEP=1、短いビープ音を作る。
BEEP=0、長いビープ音を作る。
リーダーの日付と時間を設置する。年の範囲は2000から2099まで。フィクストレングスフォーマットのデシマルバリューである。
例)
CK=2007-01-23 12:34:56 set the clock to 23rd Jan 2007, pm12:34:56.
リーダーををアクセス可能状態に設置し、リレーをxx秒にNOステートからNCステートにエンゲージし、NOステートに戻る。同時にLEDがオンとオフになる。これはフィクストレングスのフォーマットのデシマルバリューである。
例)
GRNT=03 リレーをNCステートに設置し、LEDが3秒つけた後、NOステートに戻り、LEDが消される。
リーダーををアクセス拒否状態に設置し、リレーをNOステートに設置する。
リーダーがアクセスするルートページを変える。これはフィクストレングスのフォーマットのデシマルバリューである。これは不揮発性で、電源消しても残る。
例)
ROOT=00024689、これによってリーダーはデフォルト /avea.phpより、ページe /24689.phpにアクセスする。ROOT=00000000を設置することで、アクセスページをデフォルトページにリセットする。
リーダーがアクセスするルートページのファイルエクステンションを変える。これはフィクストレングスフォーマットである。これは不揮発性で、電源消しても残る。
Xのバリュー | ファイルエクステンション |
0 | .php |
1 | .asp |
2 | .cfm |
3 | .pl |
4 | .htm |
5 | .html |
6 | .aspx |
リーダーのDHCPフィーチャーをコントロールする。DHCP=1の場合、DHCPが有効。DHCP=0の場合、DHCPが無効。有効にすることで、リクエストをDHCPサーバーに送り、以下の情報を獲得する:
- host IP
- netmask
- default gateway
- www-server IP
これはフィックスコマンドで、バリューがデシマルである。リーダーのIPアドレスを変える。これは不揮発性で、電源消しても残る。
例)
IP=192.168.001.234
これはフィックスコマンドで、バリューがデシマルである。リーダーのデフォルトルーターを変える。これは不揮発性で、電源消しても残る。
例)
GW=192.168.001.002
これはフィックスコマンドで、バリューがデシマルである。リーダーのネットマスクを変える。これは不揮発性で、電源消しても残る。
例)
NM=255.255.255.000
これはフィックスコマンドで、バリューがデシマルである。リーダーがアクセスされるウェブサーバーのIPアドレスを変える。これは不揮発性で、電源消しても残る。
例)
WS=192.168.001.001
これはフィックスコマンドで、バリューがデシマルである。ウェブサーバーにアクセスする時に使われるポートナンバーを変える。これは不揮発性で、電源消しても残る。
例)
PT=00080
これはフィックスコマンドで、バリューがデシマルである。RLY=1の場合、リレーがオンになる。RLY=0の場合、リレーがオフになる。リレーの状態はサブコマンドに影響される。
これはフィックスコマンドで、バリューがデシマルである。LED=1の場合、緑LEDがつく。LED=0の場合、LEDが消される。
これはフィックスコマンドで、バリューが16進値である。これは不揮発性バリューで、電源落としても変えることはない。
これは16進値のフィックスコマンドで、不揮発性バリューで、電源落としても変えることはない。
NはAかBでどのキーをセットするか分ける。
Xxxxxxxxxxxxは12桁の16進値バリューのキーである。
例)MKEY=ADC1234567890はKEYAのバリューをDC1234567890 (hex)にセットする
キーを公衆ネットワークより、安全なプライベートネットワーク環境で送信することはお勧めします。
これは16進値のフィックスコマンドで、不揮発性バリューで、電源落としても変えることはない。
NはAかBでどのキーをセットするか分ける。
Xxは16進値のブロックナンバーである。
例) MREAD=B0CはリーダーをKEYBでブロックナンバー12を読むようにセットする。
これは16進値のフィックスレングスコマンドで、xはバリュー認証モードである。これは不揮発性バリューで、電源落としても変えることはない。
MAUTH=0 はデータを読み取らない。i.e.認証不可状態となる。
MAUTH=1 はMREADが提供したキーでデータを読み取る。認証が成功した場合、データはUIDと一緒にサーバーに送信される。認証が失敗した場合、UIDのみサーバーに送信される。
MAUTH=2 はMREADが提供したキーでデータを読み取る。認証が成功した場合、データはUIDと一緒にサーバーに送信される。認証が失敗した場合、何もサーバーには送信しない。
これはフィックスコマンドで、64bitバリューが16進値である。これは不揮発性バリューで、電源落としても変えることはない。これはコンピューティングMD5チェックサムに使うシークレットキーである。
以下は分かりやすい例で、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