(57)【要約】【課題】  誤信号を有効な磁気データであると誤認してしまうことを防ぎ、ひいては磁気情報の読取精度を向上させる。【解決手段】  磁気カード２を走行基準面２１に沿って走行させる磁気カードリーダ１において、磁気カード２上に形成された磁気ストライプ３０に記録されている磁気情報を読み取る磁気ヘッド３と、磁気ヘッド３で読み取られた磁気情報より開始符号を検出する開始符号検出手段と、開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出手段と、を備え、開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定する。【選択図】          図２
2010015409.tif 000002
【特許請求の範囲】
【請求項１】
磁気カードを走行基準面に沿って走行させる磁気カードリーダにおいて、
前記磁気カード上に形成された磁気ストライプに記録されている磁気情報を読み取る磁気ヘッドと、
前記磁気ヘッドで読み取られた前記磁気情報より開始符号を検出する開始符号検出手段と、
前記開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出手段と、を備え、
前記開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定することを特徴とする磁気カードリーダ。
【請求項２】
前記磁気カードの走行路を形成するフレームを有し、当該フレームの一部が前記走行基準面として形成され、当該走行基準面に沿って前記磁気カードがスワイプされることによって磁気情報が読み取られることを特徴とする請求項１記載の磁気カードリーダ。
【請求項３】
磁気カード上に形成された磁気ストライプに記録されている磁気情報を読み取る磁気ヘッドを備え、当該磁気カードを走行基準面に沿って走行させる磁気カードリーダの磁気カード読取方法において、
前記磁気ヘッドにより磁気情報を読み取る読取ステップと、
前記読取ステップにおいて読み取られた磁気情報より開始符号を検出する開始符号検出ステップと、
前記開始符号検出ステップにおいて検出された開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出ステップと、
前記開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定する判定ステップと、を含むことを特徴とする磁気カードリーダの磁気カード読取方法。
【請求項４】
前記エラー検出ステップは、前記開始符号検出ステップにおいて検出された開始符号に続く２キャラクタ以上のデータを読み取って、パリティビットを確認することでエラーを検出することを特徴とする請求項３記載の磁気カードリーダの磁気カード読取方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、紙やプラスチックなどのカード状媒体に記録されている磁気情報の読み取りを行う磁気カードリーダ及びその磁気カード読取方法に関するものである。
【背景技術】
【０００２】
従来から、クレジットカード，プリペイドカード又はキャッシュカード等のカード状媒体に形成された磁気ストライプには、例えば保有者ＩＤ等の磁気情報が記録されている。磁気情報をカード状媒体に記録する際には、例えば、２種類の周波数の組み合わせからなるＦＭ変調方式（Ｆ２Ｆ方式）が用いられる。ＦＭ変調方式で記録された磁気情報を再生するにあたって、カード状媒体の磁気ストライプに対して相対的に磁気ヘッドを摺動させ、磁気情報をアナログ信号として取得した後、デジタル信号に変換（復調）したものがＣＰＵに取り込まれる（ＣＰＵにおいて復調される場合もある）。その後、上位装置に送られたビットデータは、コードデータにデコードされる（例えば特許文献１参照）。
【０００３】
【特許文献１】特開平６−２７５０２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば、特許文献１に示す磁気カードリーダが、手動でカードを操作して、このカードに記録された情報を用いて処理する手動式、例えば、スワイプ式のカードリーダである場合において、磁気ヘッドに衝撃や静電気が生じると、磁気カードがスワイプされていないにも拘らず誤信号が発生することがある。この誤信号が発生すると、特許文献１に示す磁気カードリーダではこれを磁気データとして認識し、上位装置内のアプリケーションへ磁気データとして通知してしまっていた。より具体的には、上位装置に通知されたデータの中にＳＴＸコードが検出され時点で、有効な磁気データとして扱っている。そのため、誤信号の中にＳＴＸコードが含まれていた場合には、ＳＴＸコード以降のデータを有効なデータとして扱ってしまうことになる。
【０００５】
本発明は、このような点に鑑みてなされたものであり、その目的は、誤信号を有効な磁気データであると誤認してしまうことを防ぎ、ひいては磁気情報の読取精度を向上させることが可能な磁気カードリーダ及びその磁気カード読取方法を提供することにある。
【課題を解決するための手段】
【０００６】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【０００７】
（１）  磁気カードを走行基準面に沿って走行させる磁気カードリーダにおいて、前記磁気カード上に形成された磁気ストライプに記録されている磁気情報を読み取る磁気ヘッドと、前記磁気ヘッドで読み取られた前記磁気情報より開始符号を検出する開始符号検出手段と、前記開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出手段と、を備え、前記開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定することを特徴とする磁気カードリーダ。
【０００８】
本発明によれば、磁気カードリーダに、磁気ヘッドと、その磁気ヘッドで読み取られた磁気カードリーダの磁気情報より開始符号を検出する開始符号検出手段と、開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出手段と、が設けられ、開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定することとしたので、磁気データが有効なものであるか否かは開始符号に続く磁気情報に委ねられることになる。
【０００９】
したがって、たとえ誤信号の中に開始符号が含まれていた場合であっても、その誤信号を有効なデータとして扱ってしまう確率を低くすることができ、ひいては磁気情報の読取精度を向上させることができる。
【００１０】
（２）  前記磁気カードの走行路を形成するフレームを有し、当該フレームの一部が前記走行基準面として形成され、当該走行基準面に沿って前記磁気カードがスワイプされることによって磁気情報が読み取られることを特徴とする磁気カードリーダ。
【００１１】
本発明によれば、上述した磁気カードリーダは、磁気カードの走行路を形成するフレームを有し、フレームの一部が走行基準面として形成され、その走行基準面に沿って磁気カードがスワイプされることによって磁気情報が読み取られる、いわゆるスワイプ式のカードリーダであることとしたので、読取精度向上に大きく寄与することができる。
【００１２】
すなわち、磁気カードがモータやローラ等で搬送されることによって磁気情報が読み取られる、いわゆるモータ式のカードリーダにおいては、例えばモータの駆動状況やローラの動き等を観察すれば、実際に磁気カードが挿入されたか否かを判断し得る。しかし、スワイプ式のカードリーダの場合、実際に磁気カードが挿入されたか否かの検知まで行おうとすると煩雑になる。例えば、光学素子等によってこれを検知することも可能であるが、部品点数の増加によって製造コスト上昇を招く虞がある。そこで、本発明に係る磁気カードリーダによれば、磁気データが有効なものであるか否かは、開始符号に続く磁気情報に委ねられているので、たとえ誤信号の中に開始符号が含まれていた場合であっても、その誤信号を有効なデータとして扱ってしまう確率を低くすることができ、ひいては読取精度向上に資することができる。
【００１３】
（３）  磁気カード上に形成された磁気ストライプに記録されている磁気情報を読み取る磁気ヘッドを備え、当該磁気カードを走行基準面に沿って走行させる磁気カードリーダの磁気カード読取方法において、前記磁気ヘッドにより磁気情報を読み取る読取ステップと、前記読取ステップにおいて読み取られた磁気情報より開始符号を検出する開始符号検出ステップと、前記開始符号検出ステップにおいて検出された開始符号に続く磁気情報を読み取ってエラーを検出するエラー検出ステップと、前記開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定する判定ステップと、を含むことを特徴とする磁気カードリーダの磁気カード読取方法。
【００１４】
本発明によれば、磁気カードリーダの磁気カード読取方法で、磁気ヘッドにより磁気情報を読み取り、磁気情報より開始符号を検出し、開始符号に続く磁気情報を読み取ってエラーを検出し、開始符号に続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定することとしたので、たとえ誤信号の中に開始符号が含まれていた場合であっても、その誤信号を有効なデータとして扱ってしまう確率を低くし、結果的に磁気情報の読取精度を向上させることができる。
【００１５】
（４）  前記エラー検出ステップは、前記開始符号検出ステップにおいて検出された開始符号に続く２キャラクタ以上のデータを読み取って、パリティビットを確認することでエラーを検出することを特徴とする磁気カードリーダの磁気カード読取方法。
【００１６】
本発明によれば、上述したエラー検出ステップは、開始符号検出ステップにおいて検出された開始符号に続く２キャラクタ以上のデータを読み取って、パリティビットを確認することでエラーを検出することとしたので、簡易に読取精度を向上させることができる。また、パリティビットの確認（垂直パリティチェック方式）に係る情報処理は重くなく、誤信号を判別する際のプログラム負荷（作成負荷や実行負荷）を軽減することができる。
【発明の効果】
【００１７】
以上説明したように、本発明によれば、磁気データが有効なものであるか否かは開始符号に続く磁気情報に委ねているので、開始符号が含まれる誤信号が上位装置に送られたとしても、その誤信号が有効なデータとして扱われてしまう確率を低くすることができ、ひいては読取精度向上に資することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００１９】
図１は、本発明の実施の形態に係る磁気カードリーダ１の概要を示す模式図である。なお、本実施形態では、スワイプ式の磁気カードリーダ１を採用するが、必ずしもこれに限られない。例えば、ディップ式のものでもモータ式のものでも採用することができる。
【００２０】
図１において、磁気カードリーダ１は、スワイプ方向と直交する面の断面形状がほぼコ字形状をなし、カード走行路を形成するフレーム２０と、このフレーム２０の一部（底部）として形成される走行基準面２１と、カード２（磁気カード）上に形成された磁気ストライプ３０に記録されている磁気情報を読み取る磁気ヘッド３と、を有している。図中の両方向矢印で示すように、磁気カードリーダ１では、カード２を走行基準面２１に沿って手動走行（スワイプ）させることで、磁気情報の読み取りを行う。なお、本実施形態では、読取専用の磁気ヘッド３を用いているが、書込機能をもたせても構わない。
【００２１】
磁気ヘッド３は、カード走行路に臨むように配置されている。そして、カード２上の磁気情報に係る信号を再生する。具体的には、磁気ヘッド３は、カード２表面上の磁気ストライプ３０に接触・摺動することによって、その磁気ストライプ３０に記録された磁気情報を読み取り、その磁気情報に係る信号（Ｆ２Ｆ信号）を生成する。
【００２２】
図２は、本発明の実施の形態に係る磁気カードリーダ１及び上位装置６の電気的構成の概略を示すブロック図である。
【００２３】
図２において、本発明の実施の形態に係る磁気カードリーダ１は、磁気ヘッド３と、復調部４と、メインＣＰＵ５と、Ｉ／Ｆ部５０と、を備えている。なお、ＲＯＭやＲＡＭは、メインＣＰＵ５内に組み込まれていることとしたが、別個独立に設けても構わない。一般に、ＲＯＭには、磁気カードリーダ１の基本機能を支えるシステムプログラムが格納される。ＲＡＭは、メインＣＰＵ５のワーキングエリアとして機能する。また、本実施形態では、磁気ヘッド３は、図１に示すように、１個の磁気ヘッドからなるシングルヘッドであるが、複数個の磁気ヘッドからなるマルチチャンネルヘッドであっても構わない。
【００２４】
メインＣＰＵ５は、磁気カードリーダ１の制御中枢を司るものであって、磁気カードリーダ１の統合的な制御を行う。磁気ヘッド３による再生信号は、復調部４において復調された後（読み取り信号の２値化などを行った後）、メインＣＰＵ５に送られる。なお、再生信号は、復調部４に送られる前に、波形の増幅・整形を行うＡＭＰ（増幅）回路を経由してもよい。
【００２５】
メインＣＰＵ５は、上位装置６とＩ／Ｆ部５０及びＩＦ部５０'（図２参照）を介して通信する。上位装置６には、磁気カードリーダ１と同様に、ＣＰＵ，ＲＡＭ及びＲＯＭ等からなる制御部６０と、マウス，キーボード及びディスプレイ等からなるインターフェース部７０と、ＨＤＤ（ハードディスクドライブ）内に、デコード機能を有するカードリーダ制御ＤＬＬ（ダイナミックリンクライブラリ）７と、アプリケーション（アプリケーションプログラム）８と、が設けられている。なお、カードリーダ制御ＤＬＬ７は、カードリーダの制御に関する複数のアプリケーションソフトが共通して利用する、汎用性の高いプログラムを部品化したものである。
【００２６】
上位装置６において、制御部６０のＣＰＵは、メインＣＰＵ５から送られてきた磁気データ（ビットデータ）を、カードリーダ制御ＤＬＬ７を用いてデコードし、アプリケーション８に通知する（アプリケーションプログラムを実行する際の入力とする）。
【００２７】
ここで、制御部６０のＣＰＵは、カードリーダ制御ＤＬＬ７を用いてデコードする際に、メインＣＰＵ５から送られてきた磁気データ内にＳＴＸコードが存在するか否かの検索を行い、検索結果に応じて各種処理を実行する。以下、図３を用いて詳述する。
【００２８】
図３は、本実施形態に係る磁気カードリーダ１の磁気カード読取方法に関する情報処理の流れを示すフローチャートである。
【００２９】
図３において、まず、上位装置６のＣＰＵは、カードリーダ制御ＤＬＬ７を用いて、磁気カードリーダ１から磁気データ（ビットデータ）を受信したか否かを判断する（ステップＳ１）。これを受信した場合（ステップＳ１：ＹＥＳ）、上位装置６のＣＰＵは、磁気データ内にＳＴＸコード（始め符号）が存在するか否かを検索する（ステップＳ２）。全てのトラックデータにおいてＳＴＸコードが検出されなかった場合には（ステップＳ３：ＮＯ）、ＣＰＵは、受信した磁気データを誤データと判断して読み捨てる。その後、処理はステップＳ１へと移される。
【００３０】
一方で、ＳＴＸコードを検出した場合には（ステップＳ３：ＹＥＳ）、ＣＰＵは、以降のデータについてコードデータへのデコード処理を行う（ステップＳ４）。デコード処理の結果、ＳＴＸコードに続く２キャラクタ分のデータについて、いずれかのデータでＶＲＣ（垂直パリティチェック方式）判定結果が不正であった場合（ステップＳ５：ＹＥＳ）、受信した磁気データを誤データと判断して読み捨てる。その後、処理はステップＳ１へと移される。デコード処理の結果、ＳＴＸコードに続く２キャラクタ分のデータが正常なＶＲＣ判定結果であった場合は（ステップＳ５：ＮＯ）、ＳＴＸコード以降のデコード結果をアプリケーション８に通知する（ステップＳ６）。ステップＳ５の処理について、具体的には、ＳＴＸコードに続く２キャラクタ分のデータについて、パリティビットを確認することで、エラー検出を行うことができる。なお、ＶＲＣ（Vertical Redundancy Check）は、キャラクタ単位に誤りがないか否かをチェックする方式であって、例えば、送信時にキャラクタ内の１の数を数え、奇数個（偶数個）であるときには、キャラクタの終端に１を付加し、そうでないときには０を付加する。そして、受信時に１の数と照合することによって誤り検出を行う。
【００３１】
なお、制御部６０内のＣＰＵやＨＤＤ内のカードリーダ制御ＤＬＬ７は、磁気ヘッド３により読み取られた磁気情報よりＳＴＸコード（開始符号の一例）を検出する開始符号検出手段の一例として、また、検出されたＳＴＸコードに続く磁気情報を読み取ってエラーを検出するエラー検出手段の一例として機能し、ＳＴＸコードに続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定する。
【００３２】
また、本実施形態では、ＶＲＣの判定を行うための、ＳＴＸコードに続くキャラクタ数を２キャラクタとしているが、本発明はこれに限られず、例えばキャラクタ数を多くしてもよい。これにより、誤信号の磁気データ誤認識回数をさらに軽減することができる。さらに、本実施形態では、図３で示した情報処理を上位装置６において行うこととしたが、例えば磁気カードリーダ１内で行っても構わない。すなわち、磁気カードリーダ１内のＲＯＭ等に図３で示した情報処理を実現するプログラムを埋め込み、有効データのみを上位装置６に送信することとしてもよい。また、カードリーダ制御ＤＬＬ７の機能を、アプリケーション８に含ませることも可能である。
【００３３】
［実施形態の主な効果］
以上説明したように、本実施形態に係る磁気カードリーダ１によれば、ＳＴＸコードに続く磁気情報が正常である場合には、磁気情報の読み取りが有効であると判定することとしているので（図３のステップＳ５参照）、たとえ衝撃や静電気等による誤信号の中にＳＴＸコードが含まれていたとしても、その誤信号を有効なデータとして扱ってしまう回数を軽減することができ（上位装置６内のアプリケーション８へ磁気データとして不必要に通知される回数を削減することができ）、ひいては磁気情報の読取精度を向上させることができる。
【００３４】
また、スワイプ式の磁気カードリーダ１においても、光学素子など、磁気カードが挿入されたか否かを物理的に検知する部品を必要とすることなく、誤信号を有効なデータとして扱ってしまう確率を低くすることができる。さらに、ＳＴＸコードに続く２キャラクタのデータを読み取って、パリティビットを確認することでエラーを検出するようにしているので、誤信号を判別する際のプログラム負荷を軽減することができる。
【産業上の利用可能性】
【００３５】
本発明に係る磁気カードリーダは、磁気情報の読取精度を向上させ得るものとして有用である。
【図面の簡単な説明】
【００３６】
【図１】本発明の実施の形態に係る磁気カードリーダの概要を示す模式図である。
【図２】本発明の実施の形態に係る磁気カードリーダ及び上位装置の電気的構成の概略を示すブロック図である。
【図３】本実施形態に係る磁気カードリーダの磁気カード読取方法に関する情報処理の流れを示すフローチャートである。
【符号の説明】
【００３７】
１  磁気カードリーダ
２  カード
３  磁気ヘッド
４  復調部
５  メインＣＰＵ
６  上位装置
７  カードリーダ制御ＤＬＬ
８  アプリケーション
２０  フレーム
２１  走行基準面
３０  磁気ストライプ
５０，５０'  Ｉ／Ｆ部
６０  制御部
７０  インターフェース部
【図１】
2010015409.tif 000003
【図２】
2010015409.tif 000004
【図３】
2010015409.tif 000005