RFIDを使ってみよう 実践編(1-3)
作成日: 2005/8/9  最終更新日:2005/11/2



概要

このページの内容は,Software Design 2005年1月号 pp.118-126に掲載された, 「RFIDを使ってみよう 実践編1」をHTML化したものです.分量が多いため,三つのページに分割してあります.本文中の情報は,特に記載がない限り「2004年10月」を指します.

ここでは,Felicaを利用した応用システム「FelicaTimecard」を紹介します.RFIDを使ってみよう (Felicaアプリ編) も参考にしてください.

目次




Felicaの応用システム
1. FelicaTimecard (設定編)
FelicaとPasoriを使った少し実用的なシステムとして「FelicaTimecard」というアプリケーションを開発しまし た.FelicaTimeCardは,その名の通りFelicaを用いたタイムカードシステムです. 各ユーザの持つFelicaのIDを事前に登録しておくことで,ユーザはFelicaをPasoriに載せるだけでタイムカード(出社/退社)を登録でき ます.また,Suica定期券のIDを利用するなど工夫することで,本人以外にはタイムカードを押しにくいシステムを作ることもできます.
FelicaTimecardのダウンロードはこちらから行えます.
 [image]
図11 FelicaTimecardの外観  

ここでは,まず,FelicaTimecardを利用するために必要な事前設定などについて,説明していきます.

  • 1.基本操作
    • FelicaTimecardでは,これまで紹介してきた基本ソフトウェアより,少しコマンドを簡略化してあります.
    • 開始
      • ソフトウェアを起動後,まず「管理(メイン)」タブの「開始」ボタンを押してください.
      • Felicaライブラリの初期化,Pasoriへの接続,連続読取の開始,をまとめて行います. --停止
      • Pasoriの読取を中断したい時は,「管理(メイン)」タブの「停止」ボタンを押してください.
      • 連続読み取りの停止,Pasoriからの切断を行います.
    • 終了
      • ソフトウェアの終了時には,「管理(メイン)」タブの「終了」ボタンを押してください.
      • 連続読み取りの停止,パソリからの切断後,ソフトウェアを終了します.

  • 2.管理者の設定
    • 次に,管理者用情報の設定を行います.(設定を行う前に,「開始」コマンドを実行してください.)
    • 管理者用のIDを登録
      • 管理者用のFelicaをPasoriにおいてください.
      • 「管理(メイン)」タブの「管理者設定」に,IDが表示されている状態で,「管理者登録」ボタンを押すと,IDが「管理者ID」リストに追加されます.
    • 管理者情報の登録
      • 「管理者ID」リストに登録されているIDをダブルクリックすると,IDとユーザ情報の対応付けウインドウが開きます.
      • 「Name(ユーザ名)」,「画像ファイル(ユーザの画像)」,「URL(ユーザに対応するURL)」を入力します.(ユーザ名以外は任意です.)「登録」ボタンを押せば,対応付けは完了します.
[image]  [image]
図12 管理者情報の登録 
  • 3.管理者モードと運用モード
    • 管理者登録を行ったFelica IDを認識させると,「管理者モード(デフォルト)」,「運用モード」を切り替えることができます.管理者IDが一度認識されるごとに,「管理者モード」⇔「運用モード」をトグルします.
      • 管理者モードでは,すべてのタブにアクセスし,設定の変更や,管理者/ユーザの登録を行うことができます.
      • 運用モードは,タイムカードとして運用する場合のモードです.「タイムカード」以外のタブページにアクセスできなくなり,設定変更などは行えなくなります.
[image] [image]
管理者モード 運用モード
図13 FelicaTimecardの動作モード
  • 4.ユーザの設定
    • 次に,ユーザ情報の設定を行います.(設定を行う前に,「開始」コマンドを実行してください.)
    • ユーザ用のIDを登録
      • ユーザ用のFelicaをPasoriにおいてください.
      • 「管理(ユーザ)」タブにIDが表示されている状態で,「ユーザ登録」ボタンを押すと,IDが「ユーザID」リストに追加されます.
    • ユーザ情報の登録
      • 「ユーザID」リストに登録されているIDをダブルクリックすると,IDとユーザ情報の対応付けウインドウが開きます.
      • 管理者情報の登録と同じように,「Name(ユーザ名)」,「画像ファイル(ユーザの画像)」,「URL(ユーザに対応するURL)」を入力します.(ユーザ名以外は任意です.)「登録」ボタンを押せば,対応付けは完了です.
        • 登録するユーザの数だけ,この操作を繰り返してください.
[image] [image] 
図14 ユーザ情報の登録 
  • 5.設定
    • 基準時刻の設定
      • チェック時は,基準時刻(定時)よりタイムカードの時間が遅い/早い(遅刻/早退)場合,強調表示を行います.
      • 基準時刻は,24時間制で入力します.

[image]

  • 6.設定の保存と読み込み
    • こららの設定情報は,プログラム終了時に自動的に保存され,次回起動時に読み出されます.

以上で事前に必要な設定は完了です.




2. FelicaTimecard (運用編)
  • 次に,タイムカードの運用について説明します.
    • 1.運用モードへの変更
      • 管理者IDを一度認識させ,「運用モード」に切り替えます.
      • 自動的にタイムカードのタブが表示され,タブ切り替えが無効になります.
    • 2.管理者用タイムカード
      • 管理者用Felicaをおいている状態では,管理者用のタイムカード画面が表示されます.
      • 「表示するユーザ」から,ユーザを選択することで,任意のタイムカードを表示できます.
    • 3.ユーザ用タイムカード
      • 登録済みのユーザIDが認識された場合,その日の出社/退社時刻が登録されます.
      • タイムスタンプから日付を判断し,一度目は「出社時刻」,二度目は「退社時刻」として登録します.
      • 三度目以降の認識時は,登録を行いません.
[image]  [image]
管理者用タイムカード ユーザ用タイムカード
図15 FelicaTimecardの外観(運用モード)
    • 4.タイムカードデータの保存
      • タイムカードのデータは,"[アプリケーションの実行ディレクトリ]\timecard\[ユーザID].txt"に,タブ区切りのテキストファイルとして自動保存されます.


 
3. SDK for Felica

今回の記事を読んで,FelicaとPasoriを用いた本格的なシステム開発に興味をもたれた場合は,SonyからSDK for Felica Liteを購入してみてください.価格は約12万円(2004年2月現在)と個人レベルで買うにはやや高価ですが,リーダー(Pasori)の安さと SUICA/Edyの普及率を考えると,RFIDシステムの選択肢として考慮する価値はあると思います.




4. まとめ

今回の記事では,FelicaとPasoriを用いたサンプルアプリケーションを例として,RFIDを用いた実世界システムの基礎につい て説明してきました.FelicaやPasoriは簡単に購入することができるので,是非実際に手元で試していただければと思います.今回紹介したシステ ムはシンプルなものばかりですが,アイデアと工夫次第ではもっと面白い/便利なシステムを作れるかもしれません.是非挑戦してみてください. 次回は,RFIDを用いたより応用的なシステムの構築について紹介する予定です.




コラム2: SharpDevelop

今回のサンプルプログラムは,C#を用いて書かれています. C#の開発には,MicrosoftのVisual Studio .Netを利用するのが一般的ですが,プロフェッショナル版は実売約13万円と,個人で購入するには高価です. そこで,より手軽にC#開発を行うために,オープンソースのCSharp開発環境「SharpDevelop」を利用する方法があります. SharpDevelopを利用するためには,.NetFramework 1.1,および.NetFramework 1.1 SDKを事前にインストールしておく必要があります.これらは,マイクロソフトのWebサイトからダウンロードできます.また,日本語を利用するためには,設定でエディタ言語をUTF-8に,エディタフォントをMSゴシックなどに変更する必要があります. 残念ながらデバッガなどは付属していませんが,Visual Studio .Net をお持ちでない方は試す価値があると思います.



[1] [2] [3]

[RFIDぶらり旅]