(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024014280
(43)【公開日】2024-02-01
(54)【発明の名称】媒体処理装置、及び、媒体処理装置の制御方法
(51)【国際特許分類】
G11B 5/09 20060101AFI20240125BHJP
G11B 5/02 20060101ALI20240125BHJP
G06K 7/08 20060101ALI20240125BHJP
【FI】
G11B5/09 301Z
G11B5/09 361F
G11B5/09 371C
G11B5/02 Z
G06K7/08 040
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022116983
(22)【出願日】2022-07-22
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【弁理士】
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【弁理士】
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【弁理士】
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】柴 省自
(57)【要約】
【課題】媒体の磁気ストライプが周期乱れにより読み取りできないおそれがある。
【解決手段】媒体処理装置の制御部は、磁気ヘッドを第1方向へ移動させて取得した第1周期情報が所定範囲内の場合、第1処理を用いて、第1周期情報から2値データを生成し、第1周期情報が所定範囲外の場合、第1処理とは異なる第2処理を用いて、第1周期情報から2値データを生成し、第1処理、又は、第2処理において、第1周期情報から2値データを生成することができないエラーとなった場合には、第1処理、及び、第2処理とは異なる他処理を用いて、第1周期情報から2値データを生成する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
媒体に記録されている磁気情報を読み取る磁気ヘッドと、
前記磁気ヘッドを搭載し、第1方向、及び、前記第1方向とは反対方向の第2方向へ移動可能なキャリッジと、
前記磁気情報から周期情報を取得し、前記周期情報を用いて基準周期を決定し、前記基準周期に基づき前記周期情報から2値データを生成する処理をする制御部と、を備え、
前記制御部は、
前記磁気ヘッドを前記第1方向へ移動させて取得した第1周期情報が所定範囲内の場合、第1処理を用いて、前記第1周期情報から前記2値データを生成し、
前記第1周期情報が所定範囲外の場合、前記第1処理とは異なる第2処理を用いて、前記第1周期情報から前記2値データを生成し、
前記第1処理、又は、前記第2処理において、前記第1周期情報から前記2値データを生成することができないエラーとなった場合には、前記第1処理、及び、前記第2処理とは異なる他処理を用いて、前記第1周期情報から前記2値データを生成する、媒体処理装置。
【請求項2】
前記制御部は、
前記第1処理、又は、前記第2処理において、前記エラーとなった場合には、前記第1処理、及び、前記第2処理とは異なる第3処理を用いて、前記第1周期情報から前記2値データを生成し、
前記第3処理において、前記エラーとなった場合には、前記第1処理、前記第2処理、及び、前記第3処理とは異なる第4処理を用いて、前記第1周期情報から前記2値データを生成する、請求項1に記載の媒体処理装置。
【請求項3】
前記制御部は、
前記第1処理、又は、前記第2処理において、前記エラーとなった場合であって、
前記磁気情報が所定記録密度ではない場合には、第3処理を実行し、
前記磁気情報が前記所定記録密度である場合には、前記第3処理を実行せず、前記磁気ヘッドを前記第2方向へ移動させて第2周期情報を取得する、請求項1に記載の媒体処理装置。
【請求項4】
前記制御部は、
前記他処理において、前記エラーとなった場合には、前記磁気ヘッドを前記第2方向へ移動させて第2周期情報を取得し、
前記第2処理、及び、前記他処理を用いて、前記第2周期情報から前記2値データを生成する、請求項1に記載の媒体処理装置。
【請求項5】
前記制御部は、
前記磁気情報が所定記録密度の場合には前記第2処理を用いて、前記第2周期情報から前記2値データを生成し、
前記磁気情報が前記所定記録密度ではない場合には第3処理を用いて、前記第2周期情報から前記2値データを生成する、請求項4に記載の媒体処理装置。
【請求項6】
前記制御部は、
前記第2処理、又は、前記第3処理において、前記エラーとなった場合には、第4処理を用いて、前記第2周期情報から前記2値データを生成し、
前記第4処理において、前記エラーとなった場合には、前記第2処理を用いて、前記第2周期情報から前記2値データを生成する、請求項5に記載の媒体処理装置。
【請求項7】
媒体に記録されている磁気情報を読み取る磁気ヘッドと、前記磁気ヘッドを搭載し、第1方向、及び、前記第1方向とは反対方向の第2方向へ移動可能なキャリッジと、を備える媒体処理装置の制御方法であって、
前記磁気ヘッドを前記第1方向へ移動させて第1周期情報を取得し、
前記第1周期情報を用いて基準周期を決定し、
前記第1周期情報が所定範囲内の場合には、第1処理を用いて、前記基準周期に基づき前記第1周期情報から2値データを生成し、
前記第1周期情報が所定範囲外の場合には、前記第1処理とは異なる第2処理を用いて、前記基準周期に基づき前記第1周期情報から前記2値データを生成し、
前記第1処理、又は、前記第2処理において、前記基準周期に基づき前記第1周期情報から前記2値データを生成することができないエラーとなった場合には、前記第1処理、及び、前記第2処理とは異なる他処理を用いて、前記基準周期に基づき前記第1周期情報から前記2値データを生成する、媒体処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、媒体処理装置、及び、媒体処理装置の制御方法に関する。
【背景技術】
【0002】
従来、特許文献1に示すように、媒体の磁気ストライプを読み取る際、データ属性に従って読み取り方法を変更させる装置が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載の装置では、磁気ストライプの品質劣化などの要因による、いわゆる周期乱れにより読み取りできないエラーとなるおそれがある。
【課題を解決するための手段】
【0005】
媒体処理装置は、媒体に記録されている磁気情報を読み取る磁気ヘッドと、前記磁気ヘッドを搭載し、第1方向、及び、前記第1方向とは反対方向の第2方向へ移動可能なキャリッジと、前記磁気情報から周期情報を取得し、前記周期情報を用いて基準周期を決定し、前記基準周期に基づき前記周期情報から2値データを生成する処理をする制御部と、を備え、前記制御部は、前記磁気ヘッドを前記第1方向へ移動させて取得した第1周期情報が所定範囲内の場合、第1処理を用いて、前記第1周期情報から前記2値データを生成し、前記第1周期情報が所定範囲外の場合、前記第1処理とは異なる第2処理を用いて、前記第1周期情報から前記2値データを生成し、前記第1処理、又は、前記第2処理において、前記第1周期情報から前記2値データを生成することができないエラーとなった場合には、前記第1処理、及び、前記第2処理とは異なる他処理を用いて、前記第1周期情報から前記2値データを生成する。
【0006】
媒体に記録されている磁気情報を読み取る磁気ヘッドと、前記磁気ヘッドを搭載し、第1方向、及び、前記第1方向とは反対方向の第2方向へ移動可能なキャリッジと、を備える媒体処理装置の制御方法であって、前記磁気ヘッドを前記第1方向へ移動させて第1周期情報を取得し、前記第1周期情報を用いて基準周期を決定し、前記第1周期情報が所定範囲内の場合には、第1処理を用いて、前記基準周期に基づき前記第1周期情報から2値データを生成し、前記第1周期情報が所定範囲外の場合には、前記第1処理とは異なる第2処理を用いて、前記基準周期に基づき前記第1周期情報から前記2値データを生成し、前記第1処理、又は、前記第2処理において、前記基準周期に基づき前記第1周期情報から前記2値データを生成することができないエラーとなった場合には、前記第1処理、及び、前記第2処理とは異なる他処理を用いて、前記基準周期に基づき前記第1周期情報から前記2値データを生成する。
【図面の簡単な説明】
【0007】
【
図2】通帳に記録されている磁気ストライプの情報を示す模式図。
【
図3】磁気ストライプに記録されている極性、磁気ヘッドによる誘起電圧、波形成形した矩形波に基づく周期データの関係を示す模式図。
【発明を実施するための形態】
【0008】
1.第1実施形態
1-1.媒体処理装置の構成
図1に示すように、第1実施形態に係る媒体処理装置1は、制御部2、記憶部3、磁気ヘッド4、印刷ヘッド5、キャリッジ6、ローラー7、通信部8を含んで構成されている。
【0009】
制御部2は、媒体処理装置1の各部を統括的に制御するCPU(Central Processing Unit)、入出力を管理するUART(Universal Asynchronous Receiver Transmitter)、論理回路であるFPGA(Field Programmable Gate Array)やPLD(Programmable Logic Device)、コンパレーター(Comparator)などを含んで構成されている。CPUは単にプロセッサーともいう。
記憶部3は、書き換え可能な不揮発性メモリーであるフラッシュROM(Read Only Memory)やHDD(Hard Disk Drive)、揮発性メモリーであるRAM(Random Access Memory)などを含んで構成されている。
制御部2のCPUは、記憶部3の不揮発性メモリーに記憶されたファームウェアなどのプログラムを読み出し、記憶部3のRAMを作業領域として用いて実行する。
【0010】
媒体は、例として
図2に示すような通帳Bである。通帳Bは、複数枚の紙が綴じられて構成され、通帳Bの記録面を開いた場合に底面となる面に磁性体が塗布され、磁気情報である磁気ストライプMSが記録されている。
図2に示す通帳Bは、磁気ストライプMSが記録されている底面を示している。
磁気ヘッド4は、通帳Bの底面の磁気ストライプMSを読み取ることができる。また、印刷ヘッド5は、インクリボンを介してピンを突出させ、通帳Bの記録面に印刷することができる。
【0011】
キャリッジ6は、磁気ヘッド4、及び、印刷ヘッド5を搭載している。キャリッジ6は、不図示のキャリッジモーターにより、
図2に示すように、第1方向であり往路方向であるX1方向、及び、第2方向であり復路方向であるX2方向へ移動することができる。X2方向は、X1方向に対して反対方向である。なお、以下では、往路方向を単に往路、復路方向を単に復路と称する場合もある。
ローラー7は、不図示の搬送モーターにより回転し、X1方向、及び、X2方向と交差する搬送方向へ向かって、通帳Bを搬送することができる。
【0012】
ユーザーは、通帳Bの底面が磁気ヘッド4に対向できるような姿勢にして、媒体処理装置1へ通帳Bをセットする。ローラー7により、通帳Bの底面の磁気ストライプMSが磁気ヘッド4に対向する位置へ搬送される。磁気ヘッド4は、キャリッジ6により移動されながら、通帳Bの磁気ストライプMSを読み取ることができる。
また、ユーザーが通帳Bを反転させ、通帳Bの記録面が印刷ヘッド5に対向できるような姿勢にして、媒体処理装置1へ通帳Bをセットする。ローラー7により、通帳Bの記録面が印刷ヘッド5に対向する位置へ搬送される。印刷ヘッド5は、キャリッジ6により移動されながら、通帳Bの記録面に印刷することができる。
【0013】
通信部8は、無線通信、又は、有線通信をする通信回路を含んで構成される。制御部2は、磁気ヘッド4により読み取った通帳Bの磁気ストライプMSに基づき、後述の2値データを生成し、通信部8により外部装置20へ送信することができる。
また、制御部2は、通信部8により外部装置20から印刷データを受信し、印刷ヘッド5により通帳Bに印刷することができる。
【0014】
1-2.磁気ストライプと周期データ
図2に示す、通帳Bの磁気ストライプMSのフォーマットについて説明する。
図3に示すように、磁気ストライプMSは、連続的に反転するS極及びN極の極性により記録されている。ここでは、便宜上、磁気ストライプMSの極性に対応するもので、「0」及び「1」である、2値データを用いて、フォーマットを説明する。
磁気ストライプMSには、2値データが、例えば、210BPI(bit per inch)、105BPI、75BPI等のいずれかの記録密度で記録されている。なお、1桁の2値データである、1個の「0」又は「1」が、1ビット(bit)を示す。
磁気ストライプMSは、X1方向の上流から下流に向かって、Erase領域、T0領域、LRC領域、EOM領域、Data領域、SOM領域、L0領域、Erase領域で構成される。
【0015】
先頭のErase領域は、極性の反転がない領域である。次のT0領域は、2値データのうち「0」が、予め定められた複数個、例えば20個、連続して記録される領域である。
LRC領域は、パリティビットが記録される領域である。磁気ストライプMSのすべての領域の2値データの合計が、奇数又は偶数となるように、「0」又は「1」が記録される。奇数又は偶数にするかは、規格により異なる。
EOM領域は、「0」及び「1」が、予め定められた順番で複数記録される領域である。例えば、EOM領域には、「11010」が記録される。
【0016】
Data領域は、例えば通帳Bの番号など、通帳Bに固有の情報が記録されている。少なくともData領域の情報は、通信部8により外部装置20へ送信される情報である。
SOM領域は、「0」、及び、「1」が、予め定められた順番で複数記録される領域である。例えば、SOM領域には、「11010」が記録される。
L0領域は、「0」が、予め定められた複数個、例えば20個、連続して記録される領域である。最後に、先頭と同様に、Erase領域が記録される。
【0017】
制御部2は、磁気ヘッド4により通帳Bの磁気ストライプMSを読み取る。制御部2は、極性の反転がないErase領域の後、例えば「0」が20個続いた場合、T0領域であると判定することができる。制御部2は、規定された「11010」がある場合、EOM領域と判定でき、その直前にあるものが、LRC領域であると判定することができる。
制御部2は、EOM領域の次にData領域が続くと判定することができる。次に、制御部2は、規定された「11010」である場合、SOM領域と判定でき、「0」が、例えば20個続いた場合、L0領域と判定することができる。その後、制御部2は、極性の反転がない領域を、Erase領域と判定することができる。
【0018】
図3を参照しながら、磁気ストライプMSに記録されているS極及びN極の極性、磁気ストライプMSを読み取ったときの磁気ヘッド4による誘起電圧V、制御部2により起電力を波形成形した矩形波に基づく周期データT(n)の関係を説明する。
図3の上段に示すように、磁気ストライプMSには、X1方向、又は、X2方向へ連続的に反転するS極、及び、N極が記憶されている。S極、及び、N極のX1方向、又は、X2方向の長さは、2値データに対して、1個の所定長さである場合に「0」に対応し、2個の所定長さの約半分である場合に「1」に対応する。
【0019】
図3の中段に示すように、キャリッジ6をX1方向、又は、X2方向へ移動して、通帳Bの磁気ストライプMSを読み取ったときの磁気ヘッド4による誘起電圧Vは、S極、及び、N極が反転するときに誘起される電圧である。
具体的には、
図3の例では、誘起電圧Vは、磁気ストライプMSがS極からN極へ反転するとき正の電圧が発生し、N極からS極へ反転するとき負の電圧が発生する。
【0020】
図3の下段に示すように、制御部2に含まれるコンパレーターや論理回路などにより、誘起電圧Vは波形成形された矩形波となり、T(1)~T(8)など、時間tに係る周期情報である周期データT(n)とされる。
周期データT(n)は、矩形波における、電圧が高い「high」の期間、又は、電圧が低い「low」の期間を示している。nは、T0領域~L0領域間のn番目の「high」の期間、又は、「low」の期間を示している。
【0021】
周期データT(n)は、S極、及び、N極の長さに対応した時間となっている。そして、「0」は、T(1)、T(2)などのように、1個の周期データT(n)が示す時間に対応している。一方、「1」は、T(5)及びT(6)、T(7)及びT(8)のように、2個の周期データT(n)が示す時間に対応している。T(5)、T(6)などの「1」に対応する1個の周期データT(n)が示す時間は、T(1)、T(2)などの「0」に対応する1個の周期データT(n)が示す時間の約半分となる。
【0022】
このようにして、制御部2は、通帳Bの磁気ストライプMSから周期情報である周期データT(n)を取得し、周期データT(n)を用いて、後述の基準周期Txを決定し、基準周期Txに基づき周期データT(n)から2値データである、「0」又は「1」を生成する処理をすることができる。
【0023】
1-3.媒体処理装置の制御方法
図4は、媒体処理装置1の制御方法を示すメインルーチンであり、往路の制御を中心に示している。
図4に示すように、制御部2は、キャリッジ6を往路方向であるX1方向へ移動させながら、磁気ヘッド4により、往路の通帳Bの磁気ストライプMSの読み取りを開始する(S101)。
【0024】
上述のように、制御部2は、磁気ヘッド4による誘起電圧Vを波形成形した矩形波に基づき、第1周期情報である往路の周期データT(n)を取得する。以下では、
図5を参照して第2周期情報である復路の周期データT(n)を取得する説明をするまで、周期データT(n)とは往路の周期データT(n)を指すものとする。
周期データT(n)は、記憶部3に記憶される。以下の処理では、制御部2は、記憶部3から周期データT(n)を読み出して処理をする。
【0025】
ところで、通帳Bの磁気ストライプMSは、通帳Bが何度も使用されると、磁気ストライプMSの磁性の劣化、通帳Bの変形、前の磁気ストライプMSの記録が完全に消去されず重複して記録される、などが発生し、「0」に対応する規定の1個分の所定長さ、「1」に対応する規定の所定長さの半分の長さに対して、乱れが生じることがある。
この結果、制御部2が取得する周期データT(n)も、「0」及び「1」に対応する規定の期間に対して、短くなったり、長くなったりする。これらを周期乱れと称する。制御部2は、周期乱れにより、「0」及び「1」の判定ができなくなり、エラーとすることがある。
【0026】
制御部2は、取得した周期データT(n)に周期乱れがあるか、を判定する(S102)。このため、制御部2は、周期データT(n)が所定範囲内であるか、を判定する。
具体的には、制御部2は、例えば、後述の基準周期Txに基づき、(基準周期Tx/4)<(周期データT(n))<(基準周期Tx×2)、であるかを判定する。
制御部2は、例えば、周期データT(n)が、(基準周期Tx/4)<(周期データT(n))<(基準周期Tx×2)、であれば、周期データT(n)に周期乱れがないと判定し(S102:NO)、処理A(S110)を実行する。
【0027】
なお、第1処理である処理A(S110)、後述する、第2処理である処理B(S120)、他処理であって第3処理である処理C(S130)、他処理であって第4処理である処理D(S140)は、基準周期Txに基づき周期データT(n)から2値データである「0」及び「1」を生成する処理である。
これらの処理A~処理Dは、互いに異なる処理である。また、処理A~処理Dは、
図4のメインルーチン、及び、
図5の復路処理のルーチンから呼び出されるサブルーチンである。
【0028】
図6に示すように、処理A(S110)では、制御部2は、基準周期Txを算出する基準周期A(S200)の処理を実行し、算出した基準周期Txに基づき、周期データT(n)に対して「0」及び「1」の判定をする判定A(S300)の処理を実行する。
具体的には、
図10に示すように、基準周期A(S200)の処理では、制御部2は、Erase領域を除き先頭となる、20個の「0」に対応するT0領域の周期データT(n)の平均であるTaを算出し(S201)、Taを基準周期Txと決定する(S202)。
なお、制御部2は、T0領域の周期データT(n)に対して、周期乱れが発生し易い先頭の3個程度を除去してもよい。また、制御部2は、Taを算出する際、20個の周期データT(n)のうち任意の数である10個程度を用いるようにしてもよい。
【0029】
基準周期A(S200)は、他から呼び出されるサブルーチンである。制御部2は、基準周期A(S200)の処理を終了すると、
図6に示す処理A(S110)へ戻り、判定A(S300)の処理を実行する。なお、判定A(S300)も、他から呼び出されるサブルーチンである。
【0030】
具体的には、
図12に示すように、判定A(S300)の処理では、まず、制御部2は、基準周期Txに基づき、「0」を判定する際に用いる、上限の閾値である「0max」、及び、下限の閾値である「0min」を算出する(S311)。例えば、制御部2は、「0max」=(基準周期Tx×110%)、「0min」=(基準周期Tx×90%)、として算出する。
さらに、制御部2は、基準周期Txに基づき、「1」を判定する際に用いる、上限の閾値である「1max」、及び、下限の閾値である「1min」も算出する(S311)。例えば、制御部2は、「1max」=(基準周期Tx÷2×130%)、「1min」=(基準周期Tx÷2×70%)、として算出する。
すなわち、「0min」~「0max」に対応する、90%~110%、及び、「1min」~「1max」に対応する、70%~130%は、制御部2が、「0」及び「1」を判定する際に規定するバラツキの範囲の例である。
【0031】
制御部2は、引数iに対し、i=1 to n、の条件で、周期データT(i)に対し、2値データの生成である「0」及び「1」の判定を繰り返す、ループ処理を実行する(S312)~(S318)。
ループ処理の中で、制御部2は、「0min」<周期データT(i)<「0max」、であるかを判定する(S313)。すなわち、制御部2は、周期データT(i)が、「0min」~「0max」で規定される所定の範囲内であるかを判定する。
制御部2は、「0min」<周期データT(i)<「0max」、であると判定した場合(S313:YES)、周期データT(i)は「0」に対応すると判定する(S314)。なお、制御部2は、次の処理のため、i=i+1、とする。
【0032】
一方、制御部2は、「0min」<周期データT(i)<「0max」、ではないと判定した場合(S313:NO)、次に、「1min」<周期データT(i)<「1max」、且つ、「1min」<周期データT(i+1)<「1max」、であるかを判定する(S315)。すなわち、制御部2は、連続する2個の周期データT(i)及び周期データT(i+1)が、それぞれ「1min」~「1max」で規定される所定の範囲内であるかを判定する。
図3に示すように、「1」は、例えば周期データT(5)及び周期データT(6)のように、連続する2個の周期データT(i)及び周期データT(i+1)に、対応しているからである。
【0033】
制御部2は、「1min」<周期データT(i)<「1max」、且つ、「1min」<周期データT(i+1)<「1max」、であると判定した場合(S315:YES)、周期データT(i)及び周期データ(i+1)は「1」に対応すると判定する(S316)。なお、制御部2は、次の処理のため、i=i+2、とする。
【0034】
一方、制御部2は、「1min」<周期データT(i)<「1max」、且つ、「1min」<周期データT(i+1)<「1max」、ではないと判定した場合(S315:NO)、エラーと判定し(S317)、処理を終了する。すなわち、制御部2は、周期データT(i)に対し、「0」及び「1」のいずれかに対応すると判定できなかったことになる。
【0035】
制御部2は、i=1 to n、の条件で、ループ処理を実行する(S312)~(S318)。その結果、制御部2は、周期データT(i)に対し、エラーとならず2値データの生成ができた場合、又は、エラーとなった場合、結果を記憶部3へ記憶し、
図12に示す判定A(S300)の処理を終了し、
図6に示す処理A(S110)へ戻る(RETURN)。
さらに、制御部2は、
図6に示す処理A(S110)を終了し、
図4に示すメインルーチンの処理A(S110)へ戻る(RETURN)。
【0036】
制御部2は、処理A(S110)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S103)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S103:NO)、処理を終了する。
一方、制御部2は、エラー有りと判定した場合には(S103:YES)、次に、磁気ストライプMSが、所定記録密度である105BPIであるかを判定する(S105)。以降の処理については、後述する。
【0037】
図4の周期データT(n)に周期乱れがあるか、の判定(S102)に戻って説明を続ける。
制御部2は、(基準周期Tx/4)<(周期データT(n))<(基準周期Tx×2)、ではなく、周期データT(n)の少なくともいずれかが所定範囲外であると判定した場合、周期データT(n)に周期乱れがあると判定し(S102:YES)、処理B(S120)を実行する。
【0038】
図7に示すように、処理B(S120)では、制御部2は、T0領域の周期データT(n)の平均を算出する基準周期A(S200)の処理を実行し、算出した基準周期Txに基づき、周期データT(n)に対して「0」及び「1」の判定をする判定B(S400)の処理を実行する。
基準周期A(S200)の処理は、
図6を参照しながら説明した上述の通りであるので、説明を省略する。
制御部2は、基準周期A(S200)の処理を終了すると、
図7に示す処理B(S120)へ戻り、判定B(S400)の処理を実行する。なお、判定B(S400)の処理は、他から呼び出されるサブルーチンである。
【0039】
具体的には、
図13に示すように、判定B(S400)の処理では、まず、制御部2は、基準周期Txに基づき、閾値である、「0max」、「0min」、「1max」、「1min」をそれぞれ算出する(S411)。
制御部2は、基準周期Txの1倍から7倍までのm倍の周期に対して、それぞれ、「0」を判定する上限の閾値である「0max」、下限の閾値である「0min」を算出する。また、制御部2は、基準周期Txの半分の周期に対して、「1」を判定する上限の閾値である「1max」、下限の閾値である「1min」を算出する。
【0040】
制御部2は、基準周期Txの1倍から7倍に従って、「0」を判定する際に規定するバラツキの範囲を、90%~110%から98%~102%のように、徐々に狭くしていってもよい。
例えば、基準周期Txの1倍の場合、「0max」=(基準周期Tx×1×110%)、「0min」=(基準周期Tx×1×90%)、である。基準周期Txの7倍の場合、「0max」=(基準周期Tx×7×102%)、「0min」=(基準周期Tx×7×98%)、である。
一方、制御部2は、「1」を判定する際、規定するバラツキの範囲を、「0」の場合より広くし、例えば、70%~130%としてもよい。
これらのように、制御部2は、判定対象の周期データT(i)が短いほど、バラツキの範囲を広くするようにしてもよい。
【0041】
次に、ブロック抽出(S412)の処理において、まず、制御部2は、周期データT(i)について、i=1 to n、の条件で、iをインクリメントしながら、順に周期データT(i)を加算していく。
制御部2は、周期データT(i)を加算した値が、基準周期Txの1倍の下位から7倍の上位に向かって、いずれかのバラツキの範囲である、各「0min」~「0max」の範囲内に入るか、比較して調べていく。また、制御部2は、周期データT(i)を加算した値が、「1min」~「1max」の範囲内に入るかも、比較して調べていく。
【0042】
制御部2は、周期データT(i)を加算した値が、いずれかの「0min」~「0max」、又は、「1min」~「1max」の範囲内に入った場合、加算した周期データT(i)のグループを1個のブロックとして抽出する(S412)。この後、制御部2は、このブロック単位で処理していく。
なお、加算した周期データT(i)が、基準周期Txのm倍のバラツキの範囲内に入った場合、このグループ内の周期データT(i)の数はm個であって、mビットに対応することとする。
すなわち、m個分の周期データT(i)を含む1個のブロック内において、いくつかの周期データT(i)は単独では規定のバラツキの範囲内に入っていないことがあるかもしれないが、ブロック全体としては、m個分の周期データT(i)のバラツキの範囲内に入っているということとなる。
【0043】
制御部2は、ブロック単位である、iがm個の数ずつに対応する周期データT(i)に対し、2値データの生成である、「0」及び「1」の判定を繰り返すループ処理を、全てのブロックが終了するまで実行する(S413)~(S428)。
【0044】
まず、ループの処理の中で、制御部2は、「0min」<周期データT(i)<「0max」、であるかを判定する(S413)。なお、ここでの「0min」及び「0max」は、「0」を判定する、基準周期Txの1倍のときのそれぞれ下限及び上限の閾値である。
制御部2は、「0min」<周期データT(i)<「0max」、であると判定した場合(S413:YES)、T(i)は「0」に対応すると判定する(S414)。なお、制御部2は、次の処理のため、i=i+1、とする。
【0045】
一方、制御部2は、「0min」<周期データT(i)<「0max」、ではないと判定した場合(S413:NO)、次に、「1min」<周期データT(i)<「1max」、であるかを判定する(S415)。「1min」及び「1max」は、「1」を判定するときのそれぞれ下限及び上限の閾値である。
制御部2は、「1min」<周期データT(i)<「1max」、であると判定した場合(S415:YES)、周期データT(i)は「1」に対応すると判定する(S416)。なお、制御部2は、次の処理のため、i=i+2、とする。
【0046】
一方、制御部2は、「1min」<周期データT(i)<「1max」、ではないと判定した場合(S415:NO)、次に、「1max」<周期データT(i)<「0min」、であるかを判定する(S417)。すなわち、制御部2は、周期データT(i)が、「0」又は「1」を判定する各閾値の間にあるかを判定する。
制御部2は、「1max」<周期データT(i)<「0min」、であると判定した場合(S417:YES)、次に、「0min」<(周期データT(i)+周期データT(i+1))<「0max」、であるかを判定する(S418)。すなわち、制御部2は、連続する周期データT(i)及び周期データT(i+1)が、「0」を判定する閾値の間にあるかを判定する。
【0047】
制御部2は、「0min」<(周期データT(i)+周期データT(i+1))<「0max」、であると判定した場合(S418:YES)、連続する周期データT(i)及び周期データ(i+1)は、「1」に対応すると判定する(S419)。なお、制御部2は、次の処理のため、i=i+2、とする。
「0min」及び「0max」は、「0」を判定するときのそれぞれ下限及び上限の閾値である。上述のように、「1」に対応する連続する2個の周期データT(i)及び周期データ(i+1)が示す時間は、「0」に対応する時間に相当するので、「0min」及び「0max」により「1」に対応するかを判定可能である。
【0048】
一方、制御部2は、「0min」<(周期データT(i)+周期データT(i+1))<「0max」、ではないと判定した場合(S418:NO)、周期データT(i)及び周期データ(i+1)は、「0」に対応すると判定する(S420)。なお、制御部2は、次の処理のため、i=i+2、とする。
すなわち、制御部2は、周期データT(i)が、「0」又は「1」を判定する各閾値の間にあって(S417:YES)、どちらか判定できなかったが、「1」ではないと判定できたので(S418:NO)、「0」に対応すると判定することができる(S420)。
制御部2は、全てのブロックが終了するまで、これらを実行する(S428:NO)。
【0049】
一方、制御部2は、「1max」<周期データT(i)<「0min」、ではないと判定した場合(S417:NO)、次に、「0max」<周期データT(i)、であるかを判定する(S421)。制御部2は、「0max」<周期データT(i)、であると判定した場合(S421:YES)、「0」に対応すると判定することができる(S422)。
すなわち、上述のように、m個分の周期データT(i)を含む1個のブロック内において、ブロック全体としてはm個分の周期データT(i)のバラツキの範囲内に入っているが、いくつかの周期データT(i)は単独では規定のバラツキの範囲内に入っていないことがあるからである。
制御部2は、単独では規定のバラツキの範囲内に入っていない周期データT(i)であっても、所定の条件の下、「0」又は「1」として判定することができる。ここでは、「0max」を越えた周期データT(i)を、「0」に対応すると判定することができる。
【0050】
同様の理由により、制御部2は、ブロックの最後のビットに対応する周期データT(i)が、基準周期Txの2倍であるかを判定し(S423)、基準周期Txの2倍である場合には(S423:YES)、「1」に対応すると判定することができる(S424)。なお、基準周期Txの2倍に対し、所定のバラツキの範囲を加えてもよい。
さらに、同様の理由により、制御部2は、ブロックの最後のビットに対応する周期データT(i)が、基準周期Txの3倍であるかを判定し(S425)、基準周期Txの3倍である場合には(S425:YES)、「0」に対応すると判定することができる(S426)。なお、基準周期Txの3倍に対し、所定のバラツキの範囲を加えてもよい。
【0051】
いずれの場合も、ブロックの最後のビットに対応する周期データT(i)に至るまでは、制御部2は、「0」及び「1」の判定ができていたので、ブロックの最後のビットに対応する周期データT(i)を、上述の所定の条件により、「0」又は「1」として判定することができる。
制御部2は、全てのブロックが終了するまで、上述の処理を繰り返して実行する(S428:NO)。
そして、制御部2は、ブロックの最後のビットに対応する周期データT(i)が、基準周期Txの2倍でなく(S423:NO)、基準周期Txの3倍でもない場合に(S425:NO)、エラーと判定する(S427)。
【0052】
制御部2は、全てのブロックが終了した場合(S428:YES)、又は、エラーとなった場合(S427)、結果を記憶部3へ記憶し、
図13に示す判定B(S400)の処理を終了し、
図7に示す処理B(S120)へ戻る(RETURN)。
さらに、制御部2は、
図7に示す処理B(S120)を終了し、
図4に示すメインルーチンの処理B(S120)へ戻る(RETURN)。
【0053】
制御部2は、処理B(S120)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S104)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S104:NO)、処理を終了する。
一方、制御部2は、エラー有りと判定した場合には(S104:YES)、磁気ストライプMSが、所定記録密度である105BPIであるかを判定する(S105)。
【0054】
制御部2は、上述のように、処理A(S110)及び処理B(S120)のいずれかにおいて、エラー有りと判定した場合には(S103:YES、S104:YES)、磁気ストライプMSが、所定記録密度である105BPIであるかを判定する(S105)。
上述のように、磁気ストライプMSには、2値データが、例えば、210BPI、105BPI、75BPI等のいずれかの記録密度で記録されている。
制御部2は、複数の磁気ストライプMSの記録密度に対応しており、それぞれの記録密度に対して、「0」又は「1」を判定することとなる。
【0055】
複数の磁気ストライプMSの記録密度に対応することに起因して、制御部2は、周期データT(i)を誤判定するおそれがある。特に、制御部2は、他の2つに対して中間の記録密度である105BPIの周期データT(i)を、他の210BPI、又は、75BPIの周期データT(i)と誤判定するおそれがある。
例えば、磁気ストライプMSの長さは、105BPIのときの「0」は0.242mm/bitであり、210BPIのときの「1」も0.242mm/bitである。制御部2は、105BPIのときの「0」に対応する周期データT(i)と、210BPIのときの「1」に対応する周期データT(i)とを、誤判定するおそれがある。
【0056】
そこで、制御部2は、磁気ストライプMSの記録密度が105BPIである場合(S105:YES)には、次に、後述の復路処理(S150)を実行する。制御部2は、往路の周期データT(n)でなく、復路の周期データT(n)を用いて、「0」又は「1」を判定することとする。
なお、制御部2は、磁気ストライプMSの記録密度について、210BPI、105BPI、75BPI等のいずれかを指定するコマンドを、通信部8により外部装置20から受信し、記憶部3に記憶することができる。制御部2は、記憶部3から、コマンドにより指定された磁気ストライプMSの記録密度を読み出して、判定することができる。
【0057】
一方、制御部2は、磁気ストライプMSの記録密度である105BPIではない場合(S105:NO)には、処理C(S130)を実行する。
図8に示すように、処理C(S130)では、制御部2は、基準周期Txを算出する基準周期B(S210)の処理を実行し、算出した基準周期Txに基づき、周期データT(n)に対して「0」及び「1」の判定をする判定C(S500)の処理を実行する。
【0058】
具体的には、
図11に示すように、基準周期B(S210)の処理では、制御部2は、20個の「0」に対応するT0領域の周期データT(n)の度数分布を算出する(S211)。そして、制御部2は、度数分布の中で最多となる周期データT(n)をTbとして抽出し(S212)、Tbを基準周期Txと決定する(S213)。制御部2は、度数分布の中で最多となる周期データT(n)の前後も含めて加重平均し、Tbとしてもよい。
なお、制御部2は、T0領域の周期データT(n)に対して、周期乱れが発生し易い先頭の3個程度を除去してもよい。また、制御部2は、Tbを抽出する際、20個の周期データT(n)のうち任意の数である10個程度を用いるようにしてもよい。
【0059】
なお、基準周期B(S210)は、他から呼び出されるサブルーチンである。制御部2は、基準周期B(S210)の処理を終了すると、
図8に示す処理C(S130)へ戻り、判定C(S500)の処理を実行する。なお、判定C(S500)も、他から呼び出されるサブルーチンである。
【0060】
図14に示すように、判定C(S500)の処理では、制御部2は、引数iに対し、i=1 to n、の条件で、周期データT(i)に対し、2値データの生成である「0」及び「1」の判定を繰り返す、ループ処理を実行する(S501)~(S508)。
この中で、制御部2は、周期データT(i)を順番に加算していくΣ(T(i))を算出し、Σ(T(i))≧Tx、であるかを判定する(S502)。制御部2は、Σ(T(i)) ≧Tx、ではないと判定した場合(S502:NO)、処理を繰り返す。すなわち、制御部2は、周期データT(i)を順番に加算し、基準周期Tx以上になるまで繰り返す。
【0061】
制御部2は、Σ(T(i))≧Tx、であると判定すると(S502:YES)、加算した周期データT(i)の個数である「iの個数」が、1,3,5個のいずれかであるかを判定する(S503)。
制御部2は、「iの個数」が、1,3,5個のいずれかであると判定すると(S503:YES)、周期データT(i)は「0」に対応すると判定する(S504)。
「0」は、基準周期Txに対応しているからである。制御部2は、「iの個数」が奇数の場合、周期データT(i)は「0」に対応すると判定してもよい。なお、制御部2は、次の処理のため、i=i+1、とする。
【0062】
一方、制御部2は、「iの個数」が、1,3,5個のいずれでもないと判定すると(S503:NO)、「iの個数」が、2個であるかを判定する(S505)。
制御部2は、「iの個数」が、2個であると判定すると(S503:YES)、周期データT(i)は「1」に対応すると判定する(S506)。
図3に示すように、「1」は、周期データT(5)及び周期データT(6)のように、連続する2個の周期データT(i)及び周期データT(i+1)に、対応しているからである。制御部2は、「iの個数」が偶数の場合、周期データT(i)は「1」に対応すると判定してもよい。なお、制御部2は、次の処理のため、i=i+1、とする。
【0063】
一方、制御部2は、「iの個数」が、1,3,5個のいずれでもないと判定し(S503:NO)、且つ、「iの個数」が、2個ではないと判定した場合(S505:NO)、エラーと判定し(S507)、処理を終了する。すなわち、制御部2は、周期データT(i)に対し、「0」及び「1」のいずれかに対応すると判定することができなかったことになる。
【0064】
制御部2は、i=1 to n、の条件で、ループ処理を実行する(S501)~(S508)。その結果、制御部2は、周期データT(i)に対し、エラーとならず2値データの生成ができた場合、又は、エラーとなった場合、結果を記憶部3へ記憶し、
図14に示す判定C(S500)の処理を終了し、
図8に示す処理C(S130)へ戻る(RETURN)。
さらに、制御部2は、
図8に示す処理C(S130)を終了し、
図4に示すメインルーチンの処理C(S130)へ戻る(RETURN)。
【0065】
制御部2は、処理C(S130)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S106)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S106:NO)、処理を終了する。
一方、制御部2は、処理C(S130)の結果、エラー有りと判定した場合には(S106:YES)、処理D(S140)を実行する。
【0066】
図9に示すように、処理D(S140)では、制御部2は、T0領域の周期データT(n)の度数分布を用いて基準周期Txを算出する基準周期B(S210)の処理を実行し、算出した基準周期Txに基づき、ブロックを用いて、周期データT(i)に対して「0」及び「1」の判定をする判定B(S400)の処理を実行する。
基準周期B(S210)の処理、及び、判定B(S400)の処理の詳細は、上述の通りであるので、説明を省略する。
制御部2は、
図9に示す処理D(S140)を終了すると、
図4に示すメインルーチンの処理D(S140)へ戻る(RETURN)。
【0067】
制御部2は、処理D(S140)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S107)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S107:NO)、処理を終了する。
一方、制御部2は、処理D(S140)の結果、エラー有りと判定した場合には(S107:YES)、復路処理(S150)を実行する。
【0068】
次に、
図5を参照して、復路処理(S150)について説明する。制御部2は、往路のX1方向とは逆方向であるX2方向へ、キャリッジ6を移動させながら、磁気ヘッド4により、復路の通帳Bの磁気ストライプMSの読み取りを実施する(S151)。
上述のように、制御部2は、磁気ヘッド4による誘起電圧Vを波形成形した矩形波に基づき、第2周期情報である復路の周期データT(n)を取得する。以下では、周期データT(n)とは復路の周期データT(n)を指すものとする。
【0069】
磁気ストライプMSは、X2方向の上流から下流に向かって、Erase領域、L0領域、SOM領域、Data領域、EOM領域、LRC領域、T0領域、Erase領域で構成され、周期データT(n)もこの順に取得されている。制御部2は、往路のときのようなT0領域の周期データT(n)ではなく、Erase領域を除き先頭となるL0領域の周期データT(n)に基づき、後述の基準周期Txを算出することができる。
【0070】
図4に示すように、制御部2は、復路処理(S150)に至る前に、往路の周期データT(n)に周期乱れがあると判定している(S102:YES)。そこで、制御部2は、復路処理(S150)では、周期乱れがない場合に実行する処理A(S110)ではなく、主に、周期乱れがある場合に実行する、処理B(S120)、処理C(S130)、処理D(S140)の少なくともいずれかを用いることとする。
【0071】
制御部2は、磁気ストライプMSの記録密度が105BPIであるかを判定する(S152)。
図4に示すように、制御部2は、復路処理(S150)に至る前に、往路の周期データT(n)に対し、磁気ストライプMSの記録密度が105BPIではなかった場合(S105:NO)、処理C(S130)を実行し、エラー有りと判定していた(S106:YES)。
そこで、制御部2は、磁気ストライプMSの記録密度が105BPIではなかった場合(S152:NO)、今度は、復路の周期データT(n)に対して、同様に、処理C(S130)を実行してみる(S130)。
【0072】
図8に示すように、処理C(S130)では、制御部2は、L0領域の周期データT(n)の度数分布を用いて基準周期Txを算出する基準周期B(S210)の処理を実行し、算出した基準周期Tx以上になるまで周期データT(i)を加算した個数を用いて、周期データT(i)に対して「0」及び「1」の判定をする判定C(S500)の処理を実行する。
基準周期B(S210)の処理、及び、判定C(S500)の処理の詳細は、上述の通りであるので、説明を省略する。
制御部2は、
図8に示す処理C(S130)を終了すると、
図5に示す処理C(S130)へ戻る(RETURN)。
【0073】
制御部2は、処理C(S130)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S153)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S153:NO)、処理を終了し、
図4に示すメインルーチンの復路処理(S150)へ戻る(RETURN)。
【0074】
図4に示すように、制御部2は、復路処理(S150)に至る前に、往路の周期データT(n)に対し、磁気ストライプMSの記録密度が105BPIであった場合であって(S105:YES)、往路の周期データT(n)に周期乱れがあると判定した場合に(S102:YES)、処理Bを実行し(S120)、エラー有りと判定していた(S104:YES)。
そこで、制御部2は、磁気ストライプMSの記録密度が105BPIであった場合(S152:YES)、今度は、復路の周期データT(n)に対して、同様に、処理B(S120)を実行してみる(S120)。
【0075】
図7に示すように、処理B(S120)では、制御部2は、L0領域の周期データT(n)の平均を算出する基準周期A(S200)の処理を実行し、算出した基準周期Txに基づき、ブロックを用いて、周期データT(i)に対して「0」及び「1」の判定をする判定B(S400)の処理を実行する。
基準周期A(S200)の処理、及び、判定B(S400)の処理の詳細は、上述の通りであるので、説明を省略する。
制御部2は、
図7に示す処理B(S120)を終了すると、
図5に示す処理B(S120)へ戻る(RETURN)。
【0076】
制御部2は、処理B(S120)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S153)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S153:NO)、処理を終了し、
図4に示すメインルーチンの復路処理(S150)へ戻る(RETURN)。
【0077】
一方、制御部2は、処理B(S120)の結果、又は、処理C(S130)の結果、エラー有り、であると判定した場合(S153:YES)、処理D(S140)を実行する。
図9に示すように、処理D(S140)では、制御部2は、L0領域の周期データT(n)の度数分布を用いて基準周期Txを算出する基準周期B(S210)の処理を実行し、算出した基準周期Txに基づき、ブロックを用いて、周期データT(i)に対して「0」及び「1」の判定をする判定B(S400)の処理を実行する。
基準周期B(S210)の処理、及び、判定B(S400)の処理の詳細は、上述の通りであるので、説明を省略する。
制御部2は、
図9に示す処理D(S140)を終了すると、
図5に示す処理D(S140)へ戻る(RETURN)。
【0078】
制御部2は、処理D(S140)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S154)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S154:NO)、処理を終了し、
図4に示すメインルーチンの復路処理(S150)へ戻る(RETURN)。
【0079】
一方、制御部2は、処理D(S140)の結果、エラー有り、であると判定した場合(S154:YES)、処理B(S120)を実行する。
図7に示すように、処理B(S120)では、制御部2は、L0領域の周期データT(n)の平均を算出する基準周期A(S200)の処理を実行し、算出した基準周期Txに基づき、ブロックを用いて、周期データT(i)に対して「0」及び「1」の判定をする判定B(S400)の処理を実行する。
基準周期A(S200)の処理、及び、判定B(S400)の処理の詳細は、上述の通りであるので、説明を省略する。
制御部2は、
図7に示す処理B(S120)を終了すると、
図5に示す処理B(S120)へ戻る(RETURN)。
【0080】
制御部2は、処理B(S120)の結果、周期データT(i)に対して2値データの生成ができず、エラー有り、であるかを判定する(S155)。制御部2は、周期データT(i)に対して2値データの生成ができ、エラー有りではない、と判定した場合には(S155:NO)、処理を終了し、
図4に示すメインルーチンの復路処理(S150)へ戻る(RETURN)。
【0081】
そして、制御部2は、
図4に示すメインルーチンの処理を終了する。この後、制御部2は、判定した「0」及び「1」の情報を、通信部8により外部装置20へ送信する。制御部2は、判定した「0」及び「1」に基づき、文字情報に変換し、外部装置20へ送信してもよい。
【0082】
一方、制御部2は、処理B(S120)の結果、エラー有り、であると判定した場合(S155:YES)、エラー処理(S156)を実行する。
制御部2は、エラー処理(S156)として、不図示の報知部により、通帳Bの磁気ストライプMSを読み取って2値データの生成をすることができず、エラーとなった旨の情報を報知する。また、制御部2は、エラーとなった旨の情報を、通信部8により外部装置20へ送信してもよい。
制御部2は、処理を終了し、
図4に示すメインルーチンの復路処理(S150)へ戻る(RETURN)。そして、制御部2は、
図4に示すメインルーチンの処理を終了する。
【0083】
上述の第1実施形態による媒体処理装置1によれば、制御部2は、X1方向で取得した周期データT(n)に周期乱れがある場合、第2処理である処理B(S120)、他処理であって第3処理である処理C(S130)、他処理であって第4処理である処理D(S140)のいずれかを用いて、2値データを生成することができる。制御部2は、処理A(S110)を用いて2値データを生成することができる。さらに、制御部2は、エラーがある場合には、X2方向で取得した周期データT(n)に基づき、2値データを生成することができる。制御部2は、異なる複数の処理の組み合わせにより、周期データT(n)から2値データを生成することができる。
媒体処理装置1は、磁気ストライプMSの品質劣化などの要因による、いわゆる周期乱れにより読み取りできないエラーとなることを抑制することができる。
【0084】
以上、第1実施形態を、図面を参照して詳述してきたが、具体的な構成はこれらの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
例えば、上述の例では、媒体は、通帳Bの例で説明したが、小切手やカードなどでもよい。また、上述の例では、磁気ヘッド4は、キャリッジ6の移動により通帳Bの磁気ストライプMSを読み取っていた。磁気ヘッド4を停止した状態で、ローラー7により通帳Bを搬送して、磁気ヘッド4により磁気ストライプMSを読み取るようにしてもよい。また、印刷ヘッド5は、インクジェット方式などでもよい。
制御部2は、X1方向、X2方向の順に周期データT(n)を取得して処理したが、逆の順に周期データT(n)を取得して処理するようにしてもよい。
【符号の説明】
【0085】
1…媒体処理装置、2…制御部、3…記憶部、4…磁気ヘッド、5…印刷ヘッド、6…キャリッジ、7…ローラー、8…通信部、20…外部装置、B…通帳、MS…磁気ストライプ、X1…往路方向、X2…復路方向。