説明

ドライバーモジュール、磁気情報処理システム及び磁気情報読取装置

【課題】静電気などによって磁気カードリーダがリセットされた場合であっても、自動的にエラー復帰することを可能にし、利便性を向上させ得るドライバーモジュール、磁気情報処理システム及び磁気情報読取装置を提供する。
【解決手段】磁気カードリーダ20と、磁気カードリーダ20を利用して磁気情報の読み取りを上位装置10に実行させるアプリケーション11との間の通信を制御するドライバーモジュール30において、磁気カードリーダ20及び上位装置10が前記磁気情報の入力待ちを示す待機状態にある場合に、磁気カードリーダ20がリセットされて初期状態に陥ったとき、磁気カードリーダ20を初期状態から待機状態へ遷移させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、磁気カードリーダと上位装置のアプリケーションとの間の通信を制御するドライバーモジュール、磁気情報処理システム及び磁気情報読取装置に関する。
【背景技術】
【0002】
従来から、クレジットカード,プリペイドカード又はキャッシュカード等のカード状媒体に形成された磁気ストライプには、例えば固有情報等の磁気情報が記録されている。この磁気情報の読み取り又は書き込みを行うものとして、磁気カードリーダが広く普及している。
【0003】
ところで、例えばスワイプ式の磁気カードリーダでは、カード状媒体を読み取っている場合(たとえば、利用者がカードを手動で走行(スワイプ)させる際)に静電気が発生することがある。この場合、磁気カードリーダのデバイス自体はリセットされる。より具体的には、ソフト側がカード読み取り可能(Enable)状態、デバイス側が初期状態と、互いに異なる状態となるため、処理が破綻しエラーが発生する。そして、磁気カードリーダとの通信を制御するドライバーモジュール(例えばOPOS−MSRなど)は、エラーを上位装置(のアプリケーション)に通知するのみで、自らは磁気カードリーダの復帰処理を行わない。そのため、上位装置側において、復帰処理が行われるのを待つことになる。例えば特許文献1に開示された磁気カードリーダは、上位装置からの所定のリセット信号を受信するまで待機し、これを受信すると、初期状態に復帰するようになっている。
【0004】
【特許文献1】特開平2−96297号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上位装置側で自動的に復帰できない場合(例えば人の動作が介入しないと復帰できない場合)には、利便性に欠ける。すなわち、上述した特許文献1において、リセット信号を上位装置から人為的に(サービスマン等の手動操作により)送信しなければならない場合には、利便性に欠ける。
【0006】
例えば、24時間稼動し続け、お客自身が操作するセルフサービス方式のシステムを考えた場合、不特定多数の人がどのような操作をするか分からない状態であるため、仮に操作中に(静電気等による)エラーが発生した場合、適切な復帰処理が行われる可能性は低い。ガソリンスタンドを例に挙げてより具体的に説明すると、店員がシステムを利用するフルサービス方式のシステムでは、カード読み取り中に静電気が原因のリセットによるエラーが発生した場合、その店員が決められた手順で所定操作を行い、磁気カードリーダを復帰させることは容易である。しかし、お客自身がシステムを利用するセルフサービス方式のシステムで同様のエラーが発生した場合、お客自身の操作によってシステムを復帰させることは困難である。
【0007】
本発明は、このような点に鑑みてなされたものであり、その目的は、静電気などによって磁気カードリーダがリセットされた場合であっても、自動的にエラー復帰することを可能にし、利便性を向上させ得るドライバーモジュール、磁気情報処理システム及び磁気情報読取装置を提供することにある。
【課題を解決するための手段】
【0008】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【0009】
(1) 磁気カードリーダと、当該磁気カードリーダを利用して磁気情報の読み取りを上位装置に実行させるアプリケーションとの間の通信を制御するドライバーモジュールにおいて、前記磁気カードリーダ及び前記上位装置が前記磁気情報の入力待ちを示す待機状態にある場合に、前記磁気カードリーダがリセットされて初期状態に陥ったとき、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とするドライバーモジュール。
【0010】
本発明によれば、磁気カードリーダと、上位装置のアプリケーションとの間の通信を制御するドライバーモジュールは、磁気カードリーダと上位装置が磁気情報の入力待ちを示す待機状態にある場合に、磁気カードリーダがリセットされて初期状態に陥ったとき、磁気カードリーダを初期状態から待機状態へ遷移させることとしたので、磁気カードリーダの利便性を向上させることができる。すなわち、磁気カードリーダがリセットされた場合であっても、ドライバーモジュールの機能によって自動的にエラー復帰することができるので、利便性を高めることができる。また、自動的にエラー復帰することができれば、上位装置側にエラー通知を行う回数を減らすことができる。さらに、ドライバーモジュールにより自動的にエラー復帰する場合には、上位装置側からのコマンド(例えばリセット信号)によってエラー復帰する場合に比べて、復帰までの時間を短縮することができる。
【0011】
(2) 磁気ストライプを有するカード状媒体を走行基準面に沿って手動走行させる前記磁気カードリーダが、静電気によってリセットされて初期状態に陥ったとき、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする(1)記載のドライバーモジュール。
【0012】
本発明によれば、上述した磁気カードリーダは、磁気ストライプを有するカード状媒体を走行基準面に沿って手動走行させる、いわゆるスワイプ式のものであって、この磁気カードリーダが静電気によってリセットされた初期状態に陥ったとき、ドライバーモジュールは、磁気カードリーダを初期状態から待機状態へ遷移させることとしたので、利便性を高めることができる。
【0013】
すなわち、スワイプ式の磁気カードリーダでは、カード状媒体の手動走行に起因したリセット(人の手を介して伝わる静電気によるリセット)が十分に考えられる。このような場合であっても、本発明に係るドライバーモジュールによれば、磁気カードリーダは自動的にエラー復帰することができるので、利便性を高めることができる。
【0014】
(3) 前記磁気カードリーダに対し、少なくとも初期化コマンド、読取許可コマンドを送信することによって、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする(1)又は(2)記載のドライバーモジュール。
【0015】
本発明によれば、上述したドライバーモジュールは、磁気カードリーダに対し、少なくとも初期化コマンド、読取許可コマンドを送信することによって、磁気カードリーダを初期状態から待機状態へ遷移させることとしたので、上位装置側からリセット信号等がなくても、あたかも上位装置のように振舞って、磁気カードリーダをエラー復帰させることができる。
【0016】
(4) (1)から(3)のいずれか記載のドライバーモジュールと、前記磁気カードリーダと、前記上位装置と、を有する磁気情報処理システムにおいて、前記磁気カードリーダ及び前記上位装置が前記磁気情報の入力待ちを示す待機状態にある場合に、前記磁気カードリーダがリセットされて初期状態に陥るエラーを検知するエラー検知手段を備え、前記ドライバーモジュールは、前記エラー検知手段によるエラー検知を受けて、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする磁気情報処理システム。
【0017】
本発明によれば、上述したドライバーモジュールと、磁気カードリーダと、上位装置と、を有する磁気情報処理システムにおいて、磁気カードリーダ及び上位装置が磁気情報の入力待ちを示す待機状態にある場合に、磁気カードリーダがリセットされて初期状態に陥るエラーを検知するエラー検知手段を設け、エラー検知手段によるエラー検知を受けたドライバーモジュールによって、磁気カードリーダは初期状態から待機状態へ遷移することとしたので、上述同様、自動的にエラー復帰することができ、ひいては磁気カードリーダの利便性を高めることができる。また、上位装置側のアプリケーション側にエラー通知を行う回数を減らすこともできる。さらに、ドライバーモジュールにより自動的にエラー復帰することで、復帰までの時間を短縮することができる。
【0018】
(5) (1)から(3)のいずれか記載のドライバーモジュールと、前記磁気カードリーダとから構成される磁気情報読取装置。
【0019】
本発明によれば、磁気情報読取装置は、上述したドライバーモジュールと、磁気カードリーダとから構成されることとしたので、上位装置のアプリケーションから何らかのリセット信号等を受信しなくても、磁気情報読取装置内の処理だけで自動的にエラー復帰することができる。
【発明の効果】
【0020】
以上説明したように、本発明によれば、静電気などによって磁気カードリーダがリセットされた場合であっても、それを自動的にエラー復帰させることができ、ひいては利便性を高めることができる。
【発明を実施するための最良の形態】
【0021】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【0022】
[システム構成]
図1は、本発明の実施の形態に係る磁気情報処理システム1の構成を示すブロック図である。
【0023】
図1に示すように、本実施形態に係る磁気情報処理システム1は、主として、上位装置(例えばPOS端末用ホスト)10と、磁気カードリーダ20とから構成されている。また、上位装置10は、磁気カードリーダ20を利用して磁気情報の読み取りを上位装置10に実行させるアプリケーション11と、このアプリケーション11と磁気カードリーダ20との間の通信を制御するドライバーモジュール30と、を有している。さらに、ドライバーモジュール30は、OPOS(Open Point of Service)技術協議会によってアプリケーションサービスインターフェイスの標準規格(ソフト)として定められているOPOS12と、実際に磁気カードリーダ20との通信を制御する磁気カードリーダ通信制御用ソフトウェア13と、を有している。
【0024】
なお、図1において、アプリケーション11、OPOS12、及び磁気カードリーダ通信制御用ソフトウェア13は、いずれも機能ブロック図を示しており、各種ハードウェアによって実現される。より具体的には、図1では特に図示していないが、上位装置10は、CPU,ROM,RAM等の各種ハードウェアを有しており、上位装置10を統合的に制御する機能、磁気カードリーダ20との通信機能、及び磁気情報の読み取りを行う機能などを有している。すなわち、ROMなどの記憶媒体には、上位装置10全体を統括的に制御するプログラム、磁気カードリーダ20との通信を行うためのプログラム、及び磁気情報読取プログラムなどが格納されており、CPUは、適宜それらのプログラムを読み出して、RAMをワーキングエリアとしつつ各種処理を実行する。
【0025】
磁気カードリーダ20は、上位装置10と電気的に接続されるとともに、特に図示しないがCPU,ROM,RAM,磁気ヘッドなどを有している。磁気カードリーダ20は、磁気ヘッドを通じてカード状媒体に記録された磁気情報を読み取るとともに、読み取った磁気情報を上位装置10側へ送信する機能を有する。すなわち、ROMなどの記憶媒体には、磁気カードリーダ20全体を統括的に制御するプログラム、上位装置10との通信を行うためのプログラム、及び磁気情報読取プログラムなどが格納されており、CPUは、適宜それらのプログラムを読み出して、RAMをワーキングエリアとしつつ各種処理を実行する。
【0026】
なお、本実施形態では、磁気カードリーダ20として、磁気ストライプを有するカード状媒体を走行基準面に沿って手動走行させるスワイプ式のものを採用しているが、本発明はこれに限られない。また、本実施形態では、上位装置10と磁気カードリーダ20との通信に着目しているが、上位装置10のアプリケーション11と、磁気情報読取装置40との通信に着目することも可能である。この場合、磁気情報読取装置40は、ドライバーモジュール30と、磁気カードリーダ20とから構成されることになる。
【0027】
ここで、ここで、本実施形態に係る磁気情報処理システム1では、OPOS12内に、磁気カードリーダ20がリセットされて初期状態に陥るエラーを検知するエラー検知手段120が設けられており、ドライバーモジュール30は、そのエラー検知手段120が出力するエラー通知を受けて、磁気カードリーダ20を初期状態から待機状態へと遷移させることができるようになっている(上位装置10のROM等には自動復帰プログラムが格納されている)。このような機能について、図2,図3を用いて詳述する。なお、本実施形態では、エラー検知手段120は、OPOS12内に設けられているが、OPOS12内に限定されるものではなく、OPOS12とは別体でドライバーモジュール30内に設けてもよい。
【0028】
図2は、OPOS12の状態遷移を説明するための説明図である。図3は、静電気によるリセットが生じた場合のエラー復帰処理を説明するためのフロー図である。
【0029】
図2において、OPOS12は、最初はClose状態(状態ST1)になっているが、上位装置10のアプリケーション11からOpenメソッドを受け取った場合には、Open状態(状態ST2)に遷移する。そして、更にClaimDeviceメソッドを受け取ると、Claim状態(状態ST3)に遷移し、コネクトの初期化が完了する。その後、DeviceEnabled=TRUEへプロパティが設定されると、OPOS12はEnable状態(状態ST4)となり、読み取り待ち状態(磁気情報の入力待ちを示す待機状態)となる。一方で、OPOS12がEnable状態になれば、磁気カードリーダ20も、磁気情報の入力待ちを示す待機状態となっている。
【0030】
なお、逆の状態遷移も同様で、アプリケーション11からOPOS12へDeviceEnable=FALSEのプロパティ設定が行われると、OPOS12の状態は状態ST4から状態ST3へ遷移し、ReleaseDeviceメソッドが送られると、OPOS12の状態は状態ST3から状態ST2へ遷移し、Closeメソッドが送られると、OPOS12の状態は状態ST2から状態ST1へ遷移する。
【0031】
このようなOPOS12の状態遷移に基づいて、エラー復帰処理について詳述すると、図3に示すように、まず、アプリケーション11からOPOS12へDeviceEnabled=TRUEのプロパティ設定が行われる(ステップS1)。これを受信したOPOS12は、デバイス(磁気カードリーダ20)に対して初期化コマンドを送信する(ステップS2)。これに対して初期化完了のレスポンスがOPOS12に返ってくる(ステップS2)。次に、OPOS12は、デバイスに対して機器認証コマンドを送信する(ステップS3)。これに対して機器認証完了のレスポンスがOPOS12に返ってくる(ステップS3)。次に、OPOS12は、デバイスに対して読取許可コマンドを送信する(ステップS4)。これに対して読取許可確認のレスポンスがOPOS12に返ってくる(ステップS4)。そして、読取許可確認のレスポンスを受信したOPOS12は、ResultCode=OPOS_SUCCESSのレスポンスをアプリケーション11に送信する(ステップS5)。その結果、上位装置10と磁気カードリーダ20は、磁気情報の入力待ちを示す待機状態となる。なお、本実施形態では、磁気データに暗号(DES)を使用しており、機器認証コマンドを実行している。機器認証コマンドは、デバイス(磁気カードリーダ20)とドライバーモジュール30が同じマスターキーを保有しているかを確認し、キー交換用のキーを互いに保有する機能を有している。暗号(DES)を使用しない場合、機器認証コマンドは不要となる(ステップS3、S9)。
【0032】
この待機状態では、OPOS12は、例えば100msの間隔で、定期的にスワイプ完了待ちコマンドをデバイスに送信する(ステップS6)。ここで、磁気カードリーダ20において、仮に静電気によるリセットが発生した場合、OPOS12のエラー検知手段120によってエラーが検知される。より具体的には、OPOS12がスワイプ完了待ちコマンドをデバイスに送信しても(ステップS7)、磁気カードリーダ20が初期化できていない状態(初期状態)に陥っているため、エラーレスポンスが返ってくる。
【0033】
そこで、OPOS12は自動的にエラー復帰処理を実行する。より具体的には、本実施形態では、磁気カードリーダ20に対し、初期化コマンド、機器認証コマンド、読取許可コマンドをこの順に送信することによって(ステップS8,ステップS9及びステップS10)、磁気カードリーダ20を初期状態から待機状態へ遷移させる。これにより、エラーから復帰し、OPOS12はカードスワイプ待ちの処理を継続するため、スワイプ完了待ちコマンドを定期的に送信する(ステップS11)。なお、磁気カードリーダ20に対し、初期化コマンド、機器認証コマンド、読取許可コマンドをこの順に送信しているが、この順番に限定されるものではない。たとえば、機器認証コマンド、読取許可コマンドを逆にしてもよい。また、少なくとも初期化コマンド、読取許可コマンドを送信すればよく、機器認証コマンドを送信しない場合もあるし、この機器認証コマンド以外のコマンドを送信してもよい。
【0034】
一般に、アプリケーション11によってエラー復帰が行われる従来のシステムによれば、上位装置10と磁気カードリーダ20とで通信の切断が行われるため、人為的操作が介在しないとエラー復帰は行われない。しかし、本実施形態に係るドライバーモジュール30によれば、OPOS12がエラー復帰処理を行う際、磁気カードリーダ20とドライバーモジュール30との通信が切断されないので、自動的にエラー復帰が行われることになる。したがって、利便性の向上に繋がることになる。
【0035】
図4は、OPOS12によるエラー復帰処理の流れを示すフローチャートである。
【0036】
図4に示すように、まず、DeviceEnabled=TRUEのプロパティ設定を契機として、初期化処理が実行される(ステップS31)。より具体的には、OPOS12は、アプリケーション11からDeviceEnabled=TRUEへプロパティが設定されると、上述したように、磁気カードリーダ20に対し、初期化コマンド、機器認証コマンド、読取許可コマンドを送信する(図3のステップS2,ステップS3及びステップS4参照)。そして、初期化処理が成功すると、すなわちエラーがなければ(ステップS32:NO)、処理はステップS33に移される。一方、初期化処理に失敗した場合、すなわちエラーがあった場合には(ステップS32:YES)、初期化することができない異常が生じているとして、処理を終了する。
【0037】
ステップS33において、OPOS12は、Enable状態(図2に示す状態ST4)となっており、カードスワイプを監視している。一方、デバイス(磁気カードリーダ20)は、カードスワイプを検知するコマンド(図3に示すスワイプ完了待ちコマンド)をポーリングしている。
【0038】
ここで、カードスワイプ時に静電気リセットが発生した場合には、デバイス(磁気カードリーダ20)は初期化され、カードスワイプを検知するコマンド(スワイプ完了待ちコマンド)に対して未初期化エラーのレスポンスを返す。未初期化エラーが返されていない場合には(ステップS34:NO)、DeviceEnabledプロパティの状態が判断され(ステップS36:TRUE)、DeviceEnabled=TRUEであればカードスワイプの監視が継続して行われる(ステップS33)。また、DeviceEnabled=FALSEの状態であれば(ステップS36:FALSE)、処理は終了する。
【0039】
一方で、ステップS34において未初期化エラーが返された場合には(ステップS34:YES)、復帰用の初期化処理が行われる(ステップS35)。より具体的には、図3を用いて説明したように、OPOS12は、磁気カードリーダ20に対し、初期化コマンド、機器認証コマンド、読取許可コマンドをこの順に送信し(図3のステップS8,ステップS9及びステップS10参照)、磁気カードリーダ20はこれらのコマンドを順次実行する。その結果、エラー復帰が完了する。そして、OPOS12は、再びスワイプ完了待ちコマンドを定期的に送信する、カードスワイプ監視処理(ステップS33)に移行する。
【0040】
[実施形態の主な効果]
以上説明したように、本実施形態に係るドライバーモジュール30によれば、磁気カードリーダ20がリセットされて初期状態に陥ったとき、磁気カードリーダ20を自動的に初期状態から待機状態へ遷移させることができるので、利便性を高めることができる。
【0041】
また、自動的にエラー復帰することができれば(図4のステップS35)、上位装置10のアプリケーション11側にエラー通知を行う回数を減らすことができる。さらに、ドライバーモジュール30により自動的にエラー復帰する場合は、磁気カードリーダ20とドライバーモジュール30との通信が切断されないので、エラー復帰までの時間を短縮することができる。なお、上位装置10のアプリケーション11側で復帰処理を行う必要がなくなれば、より強固なシステムを構築することができる。
【0042】
なお、カードスワイプの静電気による影響は、デバイスのリセットだけでなく、デバイスが暴走する事例もある。デバイスが暴走した場合、電源を入れ直さなければ復帰することができない。
【0043】
[実施例]
静電気試験用の治具を用いて、1000回の静電気実験を行った。980回リセットが発生したが、自動復帰することができた。したがって、本試験では98%の確率で自動復帰したことを確認することができた。
【産業上の利用可能性】
【0044】
以上説明したように、本発明は、デバイスのエラー復帰を自動的に行うことができ、利便性を向上させることが可能なものとして有用である。
【図面の簡単な説明】
【0045】
【図1】本発明の実施の形態に係る磁気情報処理システムの構成を示すブロック図である。
【図2】OPOSの状態遷移を説明するための説明図である。
【図3】静電気によるリセットが生じた場合のエラー復帰処理を説明するためのフロー図である。
【図4】OPOSによるエラー復帰処理の流れを示すフローチャートである。
【符号の説明】
【0046】
1 磁気情報処理システム
10 上位装置
11 アプリケーション
12 OPOS
13 磁気カードリーダ通信制御用ソフトウェア
20 磁気カードリーダ
30 ドライバーモジュール
40 磁気情報読取装置

【特許請求の範囲】
【請求項1】
磁気カードリーダと、当該磁気カードリーダを利用して磁気情報の読み取りを上位装置に実行させるアプリケーションとの間の通信を制御するドライバーモジュールにおいて、
前記磁気カードリーダ及び前記上位装置が前記磁気情報の入力待ちを示す待機状態にある場合に、前記磁気カードリーダがリセットされて初期状態に陥ったとき、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とするドライバーモジュール。
【請求項2】
磁気ストライプを有するカード状媒体を走行基準面に沿って手動走行させる前記磁気カードリーダが、静電気によってリセットされて初期状態に陥ったとき、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする請求項1記載のドライバーモジュール。
【請求項3】
前記磁気カードリーダに対し、少なくとも初期化コマンド、読取許可コマンドを送信することによって、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする請求項1又は2記載のドライバーモジュール。
【請求項4】
請求項1から3のいずれか記載のドライバーモジュールと、前記磁気カードリーダと、前記上位装置と、を有する磁気情報処理システムにおいて、
前記磁気カードリーダ及び前記上位装置が前記磁気情報の入力待ちを示す待機状態にある場合に、前記磁気カードリーダがリセットされて初期状態に陥るエラーを検知するエラー検知手段を備え、
前記ドライバーモジュールは、前記エラー検知手段によるエラー検知を受けて、前記磁気カードリーダを前記初期状態から前記待機状態へ遷移させることを特徴とする磁気情報処理システム。
【請求項5】
請求項1から3のいずれか記載のドライバーモジュールと、前記磁気カードリーダとから構成される磁気情報読取装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2010−86125(P2010−86125A)
【公開日】平成22年4月15日(2010.4.15)
【国際特許分類】
【出願番号】特願2008−252195(P2008−252195)
【出願日】平成20年9月30日(2008.9.30)
【出願人】(000002233)日本電産サンキョー株式会社 (1,337)
【Fターム(参考)】