ユビキタス 環 境 における 入 退 室 管 理 システムの 構 築 村 山 大 輔 高 橋 佑 介 三 浦 直 哉 上 野 貴 広
発 表 の 流 れ 研 究 背 景 と 目 的 システムの 構 成 サーバ 環 境 の 構 築 入 退 室 管 理 システム 仕 様 PHP.MySQLによる 機 能 実 装 結 果 と 考 察
1. 研 究 背 景 と 目 的
1.1 研 究 背 景 (1/2) ユビキタスな 社 会 に 向 けて 近 年 コンピュータ 技 術 の 発 展 により ネットワークを 利 用 して いつでも どこでも 誰 でも サービスの 提 供 を 受 けることのでき るユビキタス 環 境 が 注 目 されている 携 帯 端 末 でのインターネット 利 用 者 数 が 拡 大 し パソコンでの 利 用 者 数 を 上 回 っている
1.1 研 究 背 景 (2/2) 図 1 2006 年 度 ネット 利 用 時 の 端 末 に 関 するデータ
1.2 目 的 携 帯 端 末 を 利 用 した 入 退 室 管 理 システムの 構 築 現 在 の 研 究 室 の 入 退 室 管 理 従 来 のマグネットを 使 った 方 法 では 研 究 室 にいなければ 状 況 が 把 握 できない データベースで 情 報 を 管 理 し 入 退 室 状 況 を 携 帯 端 末 からリア ルタイムで 確 認 がとれるようにする
1.3 データ 入 力 機 器 の 選 定 入 室 管 理 に 用 いられている 技 術 Passive tag 電 池 が 不 要 低 単 価 で 大 量 生 産 向 き しかし 通 信 距 離 が 数 cm~ 数 10cmと 短 い Suica 等 に 利 用 されてい る Active tag 内 蔵 電 池 で 通 信 距 離 は10m 程 度 しかし 高 価 カードリーダ 学 生 証 等 に 利 用 低 価 格
2.システムの 構 成
2.1 システム 名 の 説 明 本 システムの 役 割 とは 石 井 研 究 室 Ishii lab の 入 退 室 管 理 Access manage
2.1 システムの 構 成 カードリーダー 学 生 証 から 学 生 番 号 を 読 み 取 る Linuxサーバ 研 究 室 内 に 配 置 してモニタで 閲 覧 するためのページ 携 帯 端 末 から 閲 覧 するためのページ
2.2 システムの 構 成 図 図 2 システムの 構 成 図
3.サーバ 環 境 の 構 築
3.1 サーバの 構 築 入 退 室 管 理 のページを 作 成 するための データベースや PHPなどが 動 作 するサーバを 構 築 それぞれ 必 要 なものはソースファイルからコンパイルして インストールして 必 要 に 応 じconfファイルを 書 き 換 えて 設 定 を 行 った
3.2 サーバの 構 成 本 研 究 では 以 下 を 使 用 してサーバを 構 築 した Fedora-core5 (Linux 環 境 ) httpd-2.2.2 (Apache 環 境 ) mysql-5.0.41 (データベース 環 境 ) php-5.2.1 (PHP 環 境 ) proftpd-1.3.0a (FTP 環 境 )
4. 入 退 室 管 理 システム 仕 様
4.1 携 帯 用 ページレイアウト 携 帯 端 末 からの 閲 覧 を 想 定 し シンプルで 使 いやすいページを 作 成
4.2 ディスプレイ 用 ページレイアウト モニタのみを 設 置 して 表 示 だけをさせるためのページ
4.3カードリーダー 学 生 証 から 学 生 番 号 を 読 み 取 るために 使 用 使 用 したカードーリーダーとケーブルの 規 格 は 以 下 の 通 り 磁 気 カードリーダー MODEL1023 キーボードインターフェースケーブル USBインターフェースケーブル
5.PHP.MySQLによる 機 能 実 装
5.1 データベース 環 境 本 システムではデータベースの 管 理 にMySQLを 使 用 した データベースを 作 成 し その 中 に4つのテーブル gakusei.time.status.ruisekiを 用 意 それぞれはIDフィールドで 関 連 付 けられ 時 間 や 名 前 などの 情 報 を 格 納 している
5.2 テーブル(1/4) gakuseiテーブル ID,NAMEフィールドにそ れぞれ 学 生 番 号 と 名 前 を 格 納
5.2 テーブル(2/4) statusテーブル ID,STATUSフィールドに それぞれ 学 生 番 号 と 状 態 を 格 納 0が 在 室 1が 退 室 2が 校 内 をそれぞれ 表 す
5.2 テーブル(3/4) timeテーブル ID,TIMEフィールドにそ れぞれ 学 生 番 号 と 時 間 を 格 納 格 納 された 時 間 は 累 積 されていく
5.2 テーブル(4/4) ruisekiテーブル ID,MONTH,COUNTフィ ールドにそれぞれ 学 生 番 号, 年 月,その 月 に 来 た 回 数 を 格 納 その 月 になってからカ ードを 通 した 人 の 学 生 番 号 がIDに 追 加 されて いく
5.3 入 退 室 管 理 システム 概 要
5.4 index.php(1/2) 携 帯 端 末 用 のページのTOP 画 面 在 室 状 況 (status.php) 出 席 状 況 (month_in.php) ユーザー 登 録 / 削 除 (user_edit.php) へのリンク
5.4 index.php(2/2) 機 能 現 在 の 時 間 をタイムスタンプか ら 読 み 取 り 表 示 statusテーブルを 参 照 して 在 室 の 人 数 を 表 示 在 室 であるメンバーの 名 前 を gakuseiテーブルを 参 照 して 表 示
5.5 status.php(1/2) システムのメインである 在 室 状 況 を 表 示 するためのペー ジ
5.5 status.php(2/2) 機 能 statusテーブルを 参 照 してそれ ぞれの 状 態 を 表 示 在 室 だった 場 合 timeテーブルを 参 照 して 入 室 時 間 と 滞 在 時 間 を 表 示 退 室, 校 内 の 場 合 はtimeテーブ ルを 参 照 して 退 室 時 間 を 表 示
5.6 month_in.php 出 席 状 況 を 確 認 したい 月 の 選 択 をするためのページ count.php と 対 になっている
5.7 count.php 選 択 した 月 の 出 席 数 をデータベ ースから 呼 び 出 し 出 席 数 が 多 い 学 生 から 降 順 で 表 示 するため のページ 指 定 した 月 に 出 席 していない 学 生 は 出 席 回 数 0として 表 示 され る
5.8 user_edit.php ユーザの 登 録, 削 除 を 行 う ためのページ 実 際 の 登 録, 削 除 のアクシ ョンはuser_add.phpと user_del.phpで 行 っている
5.9 user_add.php ユーザ 登 録 のためのアクションを 行 うプログラム 機 能 IDと 名 前 をgakuseiテーブルと 比 べ 新 規 の 場 合 gakuseiテーブ ルとstatusテーブルに 登 録 未 入 力 の 場 合 はエラーを 表 示
5.10 user_del.php ユーザ 削 除 のためのアク ションを 行 うプログラム 機 能 現 在 登 録 されているメンバ ーをgakuseiテーブルから 読 み 込 み 表 示 チェックボックスにてチェッ クされたメンバーをgakusei テーブル 及 びstatusテーブ ルから 削 除 する
5.11 BASIC 認 証 user_edit.php,user_add.php,user_del.phpはuserフォルダ 下 に 設 置 して フォルダにBASIC 認 証 をかけた BASIC 認 証 には.htaccessと.htpasswdファイルを 用 い 登 録 削 除 を 行 うためには 設 定 をしたユーザ 名 とパスワードを 入 力 する 必 要 がある
5.12 disp_pc.php(1/2)
5.12 disp_pc.php(2/2) ディスプレイ 上 に 現 在 の 状 況 を 表 示 するためのページ こ のページでカード のデータを 読 み 込 ませてシステム 側 で 状 態 管 理 を 行 う フェードアウトやページの 一 部 を 更 新 する 動 作 の 実 装 のために javascriptライブラリのprototype.jsと scriptaculous.jsを 使 用 している 機 能 ページを 開 いた 時 に 自 動 的 にカード 読 み 込 み 待 機 状 態 になる 処 理 されたユーザと 変 化 後 の 状 態 を 表 示 (8 秒 で 消 える) 2 分 (120 秒 ) 感 覚 で 表 内 の 在 室 時 間 等 が 自 動 更 新 される
5.13 action_pc.php(1/2) カードリーダーから 読 み 取 った 学 生 番 号 と 入 力 された 時 間 を 格 納 す るプログラム 機 能 時 間 を 読 み 取 り staytime,intime,outtimeをdisp_pc.phpに 送 る カードを 通 した 時 間 を 比 較 して 在 室, 退 室, 校 内 にステータスを 変 化 させる その 月 の 出 席 回 数 をカウントしてruisekiテーブルに 格 納
5.13 action_pc.php(2/2) 状 態 遷 移 条 件 1 回 カードを 通 すと 在 室 に 更 新 10 秒 以 内 に2 回 カードを 通 すと 校 内 に 更 新 10 秒 以 内 に3 回 カードを 通 すと 初 期 化 されて 退 室 に 更 新 10 秒 以 上 たってから 在 室 の 状 態 でカードを 通 す と 退 室 に 更 新
5.14 カードリーダの 設 定 学 生 証 内 データの 書 式 学 生 証 のデータは ************ 学 生 番 号 という 形 で 納 められているため 学 生 番 号 だけを 抜 くには 設 定 が 必 要 カードリーダの 処 理 空 欄 部 分 と 余 計 な 部 分 を 削 除 するため フィールド1で 余 計 な 分 の 文 字 数 を 指 定 続 いて<Ctrl+A><BS>の 順 にコマンドを 入 力 して まとめて 削 除 フィールド2で 残 った 学 生 番 号 分 の 文 字 数 を 指 定 する 更 に <TAB><ENTER>の 順 にコマンドを 動 作 させる
6. 結 果 と 考 察
6.1 動 作 テストと 結 果 結 果 一 部 を 除 いてアルゴリズム 通 りシステムが 動 作 動 作 テストで 得 られた 意 見 カードを 出 す 手 間 がかかる カードの 通 し 忘 れがある 1 日 分 の 在 室 時 間 を 知 りたい
6.2 考 察 意 見 を 基 にした 考 察 カードを 出 す 手 間 がかかる 新 しいカードを 利 用 者 の 分 だけ 用 意 し カードリー ダーの 近 くに 置 いておく カードの 通 し 忘 れがある active tagを 利 用 する 1 日 の 在 室 時 間 を 知 りたい staytimeの1 日 の 合 計 を 算 出 して 表 示 できるよう にする
ご 清 聴 ありがとうございまし た 完