JP2014064231A - 無線通信機及び無線通信システム - Google Patents
無線通信機及び無線通信システム Download PDFInfo
- Publication number
- JP2014064231A JP2014064231A JP2012209272A JP2012209272A JP2014064231A JP 2014064231 A JP2014064231 A JP 2014064231A JP 2012209272 A JP2012209272 A JP 2012209272A JP 2012209272 A JP2012209272 A JP 2012209272A JP 2014064231 A JP2014064231 A JP 2014064231A
- Authority
- JP
- Japan
- Prior art keywords
- wireless communication
- processing
- information
- writer
- reader
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】外部機器との間で、処理のやり直しを抑制できる技術を提供する。
【解決手段】本明細書の通信システムは、PC10と、PC10と通信可能に有線接続されると共にPC10から電力供給可能とされ、ICカード100と無線通信するリーダライタ50とを備える。リーダライタ50は、PC10からの電力供給が停止すると、内蔵する補助電源からの電力供給に変更される。また、PC10は、PC10の停止要因が発生する場合には、リーダライタ50にサスペンド信号を送信する。リーダライタ50は、ICカード100と特定の処理を実行している間にサスペンド信号を受信すると、特定の処理のうち、実行中の部分処理を実行し、実行済みの処理を示す処理情報をメモリに記憶させる。
【選択図】図8
【解決手段】本明細書の通信システムは、PC10と、PC10と通信可能に有線接続されると共にPC10から電力供給可能とされ、ICカード100と無線通信するリーダライタ50とを備える。リーダライタ50は、PC10からの電力供給が停止すると、内蔵する補助電源からの電力供給に変更される。また、PC10は、PC10の停止要因が発生する場合には、リーダライタ50にサスペンド信号を送信する。リーダライタ50は、ICカード100と特定の処理を実行している間にサスペンド信号を受信すると、特定の処理のうち、実行中の部分処理を実行し、実行済みの処理を示す処理情報をメモリに記憶させる。
【選択図】図8
Description
本明細書で開示する技術は、外部機器と無線通信する無線通信機と、その無線通信機を用いる無線通信システムに関する。
特許文献1には、外部機器と無線通信する無線通信機が開示されている。無線通信機は、情報処理装置と通信可能に有線接続されている。無線通信機は、外部機器と無線通信を行うことで、外部機器からデータを読み出す処理、及び、外部機器にデータを書き込む処理を実行する。
この種の無線通信機は、情報処理装置から電力の供給を受けて作動しており、情報処理装置からの電力供給が停止すると、それに合わせて停止する。特許文献1の技術において、無線通信機が外部機器との間でデータの読み出し処理又は書き込み処理を実行している間に、停電等によって突然情報処理装置が停止すると、無線通信機は、処理実行中であっても、情報処理装置の停止に合わせて処理を停止する。処理実行中に情報処理装置が停止すると、外部機器から読み出し済みのデータ、又は、外部機器に書き込み済みのデータが消失する場合がある。そのため、無線通信機は、情報処理装置を再度作動させた後、外部機器との間で、データの書き込み処理(又は読み取り処理)を最初からやり直す必要がある。本明細書は、外部機器との間で、処理のやり直しを抑制できる技術を提供する。
本明細書が開示する無線通信機は、情報処理装置と通信可能に有線接続されると共に情報処理装置から電力供給可能とされ、外部機器と無線通信する無線通信機である。無線通信機は、第1の制御装置と、メモリと、補助電源を有している。補助電源は、情報処理装置からの電力供給が停止すると、第1の制御装置への電力供給を開始する。第1の制御装置は、外部機器との間で無線通信により特定の処理を行っている間に、情報処理装置の停止に関係するサスペンド信号を受信すると、特定の処理の少なくとも一部を継続して実行し、実行された処理を示す処理情報をメモリに記憶させる。
上記の無線通信機では、情報処理装置からの電力供給が停止すると、補助電源からの電力供給に変更される。そのため、無線通信機は、第1の制御装置が外部機器と特定の処理を行っている間に情報処理装置が停止する場合であっても、情報処理装置の停止に合わせて突然停止することなく、補助電源からの電力供給によって処理を継続することができる。第1の制御装置は、外部機器との間で特定の処理を行っている間に、サスペンド信号が受信されると、さらに、特定の処理の少なくとも一部を継続して実行し、実行済みの処理を示す処理情報をメモリに記憶させる。無線通信機は、メモリに記憶された処理情報を参照することで、既に実行された処理を知ることができる。そのため、無線通信機は、既に実行された処理の続きを後で実行できる。従って、上記の無線通信機によると、外部機器との間で、処理のやり直しを抑制できる。
本明細書は、さらに、無線通信機を用いる無線通信システムを開示する。無線通信システムは、上記の無線通信機と、無線通信機と通信可能に有線接続され、無線通信機に電力供給可能な情報処理装置を有する。情報処理装置は、情報処理装置の停止要因が発生する場合において、少なくとも無線通信機が外部機器と特定の処理を行っているときに、無線通信機にサスペンド信号を送信する。
上記の無線通信システムでは、情報処理装置は、情報処理装置の停止要因が発生する場合に、少なくとも無線通信機が外部機器と特定の処理を行っているときには、無線通信機にサスペンド信号を送信する。サスペンド信号を受信した無線通信機は、上記の通り、処理情報をメモリに記憶させる。そのため、無線通信機は、既に実行された処理の続きを後で実行できる。従って、上記の無線通信システムによると、無線通信機と外部機器との間の処理のやり直しを抑制できる。
以下に説明する実施例の主要な特徴を列記しておく。なお、以下に示す技術要素は、それぞれ独立した技術要素であって、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。
(特徴1) 無線通信機の第1の制御装置は、処理情報をメモリに記憶させた後、無線通信機を停止させてもよい。
この構成によると、処理情報をメモリに記憶させた後に、無線通信機が、外部機器との間でそれ以上処理を進めることを抑制することができる。
(特徴2) 無線通信機の第1の制御装置は、情報処理装置から電力供給を受けて無線通信機が動作を開始する場合において、メモリに処理情報が記憶されているときは、記憶された処理情報を情報処理装置に送信してもよい。
この構成によると、情報処理装置及び無線通信機が作動を開始する場合に、情報処理装置は、処理情報を参照することで、既に実行された処理を知ることができる。
(特徴3) 情報処理装置は、第2の制御装置を有していてもよい。第2の制御装置は、情報処理装置が動作を開始する場合において、無線通信機から処理情報を受信し、その受信した処理情報に基づいて特定の処理を継続するときは、継続信号を無線通信機に送信してもよい。無線通信機は、継続信号を受信すると、外部機器との間で、特定の処理のうちの未実行の処理を実行してもよい。
この構成によると、情報処理装置が動作を開始する場合に、情報処理装置が、無線通信機から処理情報を受信し、その受信した処理情報に基づいて特定の処理を継続するときには、無線通信機は、外部機器との間で、特定の処理の続きを実行することができる。従って、無線通信機と外部機器との間の処理のやり直しを抑制できる。
(特徴4) 処理情報は、特定の処理の相手方である外部機器を特定するための識別情報を含んでいてもよい。情報処理装置の第2の制御装置は、無線通信機から処理情報を受信する場合に、無線通信機から、その無線通信機と無線通信している外部機器を特定するための識別情報をさらに取得し、その取得された識別情報と処理情報に含まれる識別情報とが一致することを条件として、継続信号を無線通信機に送信してもよい。
この構成によると、無線通信機が、停止前に特定の処理を実行していた外部機器と無線通信を実行していることを条件として、特定の処理の続きを実行することができる。従って、外部機器との間で適切に特定の処理の続きを実行することができる。
(システムの構成:図1、図2)
図1に示す無線通信システム2は、PC10と、ICカードリーダライタ(以下では「リーダライタ」と呼ぶ)50を備える。PC10とリーダライタ50は、USBケーブル20によって有線通信可能に接続されている。また、リーダライタ50は、外部機器(例えばICカード100)と無線通信(矢印30参照)を実行可能である。
図1に示す無線通信システム2は、PC10と、ICカードリーダライタ(以下では「リーダライタ」と呼ぶ)50を備える。PC10とリーダライタ50は、USBケーブル20によって有線通信可能に接続されている。また、リーダライタ50は、外部機器(例えばICカード100)と無線通信(矢印30参照)を実行可能である。
(PC10の構成)
PC10は、図示しない外部電源等と接続され、外部電源から供給される電力によって動作する。PC10は、制御装置12と、メモリ14と、USBインターフェイス16を備える。制御装置12は、メモリ14内のプログラムに従って様々な処理を実行する。制御装置12が実行する処理の内容は後で詳しく説明する。メモリ14は、不揮発性メモリであって、様々なプログラムを記憶している。また、メモリ14は、様々な情報(例えば、後述の処理シーケンス情報など)を記憶する領域を有している。USBインターフェイス16は、USBケーブル20と接続されている。
PC10は、図示しない外部電源等と接続され、外部電源から供給される電力によって動作する。PC10は、制御装置12と、メモリ14と、USBインターフェイス16を備える。制御装置12は、メモリ14内のプログラムに従って様々な処理を実行する。制御装置12が実行する処理の内容は後で詳しく説明する。メモリ14は、不揮発性メモリであって、様々なプログラムを記憶している。また、メモリ14は、様々な情報(例えば、後述の処理シーケンス情報など)を記憶する領域を有している。USBインターフェイス16は、USBケーブル20と接続されている。
(リーダライタ50の構成)
リーダライタ50は、制御装置52と、メモリ54と、USBインターフェイス56と、電源回路58と、無線通信インターフェイス60を備える。制御装置52は、メモリ54内のプログラムに従って様々な処理を実行する。制御装置52が実行する処理の内容は後で詳しく説明する。メモリ54は、不揮発性メモリであって、様々なプログラムを記憶している。また、メモリ54は、様々な情報(例えば、後述の処理情報など)を記憶する領域を有している。USBインターフェイス56は、USBケーブル20と接続されている。このため、制御装置52は、USBケーブル20を介してPC10と有線通信を実行可能である。また、USBケーブル20は、電源ケーブルとしても機能する。そのため、リーダライタ50は、PC10が作動する間は、USBケーブル20を介してPC10から電源供給を受けて作動する。
リーダライタ50は、制御装置52と、メモリ54と、USBインターフェイス56と、電源回路58と、無線通信インターフェイス60を備える。制御装置52は、メモリ54内のプログラムに従って様々な処理を実行する。制御装置52が実行する処理の内容は後で詳しく説明する。メモリ54は、不揮発性メモリであって、様々なプログラムを記憶している。また、メモリ54は、様々な情報(例えば、後述の処理情報など)を記憶する領域を有している。USBインターフェイス56は、USBケーブル20と接続されている。このため、制御装置52は、USBケーブル20を介してPC10と有線通信を実行可能である。また、USBケーブル20は、電源ケーブルとしても機能する。そのため、リーダライタ50は、PC10が作動する間は、USBケーブル20を介してPC10から電源供給を受けて作動する。
電源回路58は、制御装置52に電力を供給するための回路である。図2を参照して、電源回路58について説明する。図2に示すように、電源回路58は、内部電源回路70と、ダイオードD1と、ダイオードD2と、補助電源(キャパシタ)68と、入力制御用トランジスタTRを備える。
電源回路58の動作について説明する。PC10が作動すると、USBケーブル20を介してPC10からリーダライタ50に電力が供給される。PC10からリーダライタ50に電力が供給されると、入力制御用トランジスタTRがONし、ダイオードD1がONする。これにより、補助電源68への充電が開始される。補助電源68への充電が完了すると、内部電源回路70に電力が供給される。電力供給を受けた内部電源回路70は、制御装置52に電力を供給する。これにより制御装置52が作動する。
PC10が停止すると、それに伴ってPC10からリーダライタ50への電力供給が停止する。ここで、PC10が停止する場合とは、例えば、シャットダウンや停電等によってPC10への電源供給がOFFされる場合や、PC10がスリープ状態に移行する場合等である。これらの場合には、PC10からリーダライタ50への電力供給が停止する。PC10からの電力供給が停止すると、ダイオードD2がONし、補助電源68に充電された電荷が放出される。その結果、内部電源回路70は、補助電源68から電力供給を受ける。電力供給を受けた内部電源回路70は、制御装置52に電力供給する。即ち、リーダライタ50は、PC10が停止した後も、補助電源68からの電力供給に切り替えることで、ある程度は制御装置52を作動させることができる。補助電源68に充電された電荷が消費されると、制御装置52の動作も停止する。
無線通信インターフェイス60(図1)は、制御装置52が、外部機器(図1の例ではICカード100)との間で無線通信(矢印30参照)を行うためのインターフェイスである。以下、本明細書では、リーダライタ50と無線通信を行う外部機器がICカード(例えばICカード100)である例について説明する。ICカード100には、図示しない半導体メモリが内蔵されており、各種情報を記憶している。
(リーダライタ50の処理:図3、図4)
続いて、図3、図4を参照して、リーダライタ50の制御装置52が実行するリーダライタ処理について説明する。図3のリーダライタ処理は、リーダライタ50の電源がONされることによって開始する。即ち、PC10からの電力供給が開始され、制御装置52が作動することによって開始する。まず、S10では、制御装置52は、メモリ54に処理情報が記憶されているか否かを判断する。
続いて、図3、図4を参照して、リーダライタ50の制御装置52が実行するリーダライタ処理について説明する。図3のリーダライタ処理は、リーダライタ50の電源がONされることによって開始する。即ち、PC10からの電力供給が開始され、制御装置52が作動することによって開始する。まず、S10では、制御装置52は、メモリ54に処理情報が記憶されているか否かを判断する。
ここで、処理情報は、カードIDと進捗情報と処理済データとを含む情報である。カードIDは、リーダライタ50が前回停止(電源OFF)された際にリーダライタ50と無線通信を行っていた場合に、その無線通信を行っていたICカード(例えば、ICカード100)を示す情報である。進捗情報は、前回リーダライタ50がOFFされた際にリーダライタ50と無線通信を行っていた場合に、リーダライタ50とICカードとの間で実行されていた特定の処理に含まれるM個(Mは1以上の整数)の部分処理のうち、処理が完了している部分処理の数N(Nは1以上M以下の整数)を示す情報である。特定の処理は、例えば、決済処理、データのダウンロード処理等、データの読み取り又は書き込みのための処理である。特定の処理は、M個の部分処理に分かれている。M個すべての部分処理の実行が完了すると、特定の処理の実行が完了する。処理済データは、N個の部分処理が完了した結果として得られている1番目〜N番目までの各データ(例えば、画像データの一部、決済データの一部など)である。即ち、S10の時点でメモリ54に処理情報が記憶されていれば、リーダライタ50が前回停止した際に、リーダライタ50がICカードと特定の処理を実行中であり、特定の処理が未完了であったことを意味する。
メモリ54に処理情報が記憶されている場合、制御装置52は、S10でYESと判断し、S12に進む。一方、メモリ54に処理情報が記憶されていない場合、制御装置52は、S10でNOと判断し、S12をスキップしてS14に進む。
S12では、制御装置52は、メモリ54に記憶されている処理情報をPC10に送信する。次いで、S14では、PC10からカード捕捉指示を受信することを監視する。PC10からカード捕捉指示を受信すると、制御装置52は、S14でYESと判断してS16に進む。
S16では、制御装置52は、無線通信インターフェイス60を介して、カード捕捉信号を外部に無線送信する。次いで、S18では、制御装置52は、ICカード(例えばICカード100)から応答信号を無線で受信することを監視する。カード捕捉信号は、リーダライタ50の近傍に存在するICカードが受信可能な信号である。ICカードがカード捕捉信号を受信すると、ICカードは応答信号をリーダライタ50に送信する。応答信号には、ICカードを識別するためのカードIDが含まれている。制御装置52は、ICカードから応答信号を受信するまで、カード捕捉信号を繰り返し送信する。応答信号を受信すると、制御装置52は、S18でYESと判断し、S20に進む。
S20では、制御装置52は、受信した応答信号に含まれるカードIDをPC10に送信する。次いで、S22及びS34において、制御装置52は、PC10から継続信号又は取引開始信号を受信することを監視する。継続信号は、リーダライタ50に、現在無線通信を実行中のICカードとの間で、前回の停止前に実行していた特定の処理の続きを実行させるための信号である。取引開始信号は、リーダライタ50に、現在無線通信を実行中のICカードとの間で、新たに特定の処理を開始させるための信号である。継続信号を受信すると、制御装置52は、S22でYESと判断し、S24に進む。一方、取引開始信号を受信すると、制御装置52は、S34でYESと判断し、S36に進む。
S24では、制御装置52は、処理情報中の進捗情報が示す完了済みの部分処理の数Nを1インクリメントした値を新たなNの値に決定する。S24を終えると、S26に進む。
一方、S36では、制御装置52は、処理を開始する部分処理の位置を示すNを1とする。S36を終えると、S26に進む。
S26では、制御装置52は、ICカードとの間で、特定の処理に含まれるM個の部分処理のうちのN番目の部分処理の実行を開始する。具体的には、S26では、制御装置52は、ICカードにN番目の部分処理の実行のためのコマンド(読み取りコマンド又は書き込みコマンド)を送信し、ICカードからN番目の応答を受信することを監視する。N番目の応答には、処理の結果としてICカードから取得されるN番目のデータと、ICカードのカードIDが含まれる。なお、ICカードから送信されるM番目の応答(最後の応答)には、全部分処理が完了したことを示す完了情報が含まれる。S26で処理を開始すると、制御装置52は、S28に進み、N番目の部分処理の実行中にPC10からサスペンド信号を受信したか否かを監視する。サスペンド信号は、PC10がその後停止することを示す信号である。N番目の部分処理の実行中にサスペンド信号を受信した場合、制御装置52は、S28でYESと判断し、S38に進んでリーダライタ停止処理(図4)を実行する。リーダライタ停止処理については後述する。一方、サスペンド信号を受信することなくN番目の部分処理が完了した場合、制御装置52は、S28でNOと判断し、S30に進む。
S30では、制御装置52は、特定の処理のM個全ての部分処理が完了したか否か判断する。具体的に言うと、S30では、制御装置52は、ICカードから受信した応答に上記の完了情報が含まれるか否か判断する。受信した応答に完了情報が含まれていない場合、制御装置52は、S30でNOと判断し、S24に戻って、Nの値を1インクリメントしてS26〜S30の処理を繰り返す。一方、受信した応答に完了情報が含まれている場合、制御装置52は、S30でYESと判断し、S32に進む。
S32では、制御装置52は、特定の処理が完了した旨の新たな処理情報を生成してPC10に送信する。この場合、新たな処理情報には、S26〜S30で完了させた特定の処理を行ったICカードのカードIDと、処理の結果得られたデータと、完了情報とが含まれる。この際、メモリ54に処理情報が記憶されていた場合(S10でYESと判断されていた場合)には、制御装置52は、当該処理情報をメモリ54から削除する。S32を終えると、制御装置52は、S16、S18に戻り、再び、カード捕捉信号を無線送信し、ICカードから応答信号を受信することを監視する。
S38では、制御装置52は、リーダライタ停止処理(図4)を実行する。なお、図3のS28でサスペンド信号が受信されたことは、その後、PC10の停止に伴って、PC10からリーダライタ50への電力供給が停止することを意味する。PC10からの電力供給が停止すると、上記のように補助電源68からの電力供給に切り替わる(図2参照)。そのため、制御装置52は、PC10からの電力供給が突然停止する場合であっても、補助電源68からの電力供給を受けて動作を継続することができる。図4のリーダライタ停止処理は、このような電源の切替と並行して実行される。図4のS50では、制御装置52は、実行中のN番目の部分処理が完了することを監視する。
具体的には、S50では、制御装置52は、ICカードからN番目の応答(実行中のN番目の部分処理の結果)を受信することを監視する。制御装置52は、N番目の応答を受信すると、S50でYESと判断し、S52に進む。
S52では、制御装置52は、処理情報を生成し、メモリ54に記憶する。処理情報には、N番目の部分処理までが完了したことを示す進捗情報と、ICカードのカードIDと、処理済データ(N個の部分処理が完了した結果として得られているデータ)と、が含まれている。
次いで、S54では、制御装置52は、リーダライタ50の電源をOFFし、停止状態に移行する。具体的には、S54は、制御装置52は、内部電源回路70を停止させる。S54を終えると、制御装置52は、リーダライタ停止処理(図4、図3のS38)を終了する。同時に、制御装置52は、図3のリーダライタ処理も終了する。
なお、図3、図4のフローチャートでは図示していないが、本実施例では、制御装置52は、ICカードとの間で特定の処理を実行していない間でも、PC10から送信されるサスペンド信号を受信可能である。ICカードとの間で特定の処理を実行していない間にサスペンド信号を受信すると、制御装置52は、上記図4のリーダライタ停止処理を実行することなく、リーダライタ50の電源をOFFし、リーダライタ50を停止状態に移行させる。
(PC10の処理:図5、図6)
次いで、図5、図6を参照して、PC10の制御装置12が実行する処理について説明する。図5のPC処理は、PC10の電源がONされることによって開始する。なお、PC10の電源がONされることにより、リーダライタ50への電力供給も開始される。まず、S70では、制御装置12は、メモリ14にシーケンス情報が記憶されているか否かを判断する。
次いで、図5、図6を参照して、PC10の制御装置12が実行する処理について説明する。図5のPC処理は、PC10の電源がONされることによって開始する。なお、PC10の電源がONされることにより、リーダライタ50への電力供給も開始される。まず、S70では、制御装置12は、メモリ14にシーケンス情報が記憶されているか否かを判断する。
ここで、シーケンス情報は、カードIDと信号情報とを含む情報である。カードIDは、PC10が前回停止した際にリーダライタ50がICカードと無線通信を行っていた場合に、リーダライタ50が無線通信を行っていたICカード(例えば、ICカード100)を示す情報である。信号情報は、PC10が前回停止した時点で、リーダライタ50に対して送信していた信号(取引開始信号又は継続信号)を示す情報である。即ち、S70の時点でメモリ14にシーケンス情報が記憶されていれば、PC10が前回停止した際、リーダライタ50がICカードと特定の処理を実行しており、その特定の処理が未完了であることを意味する。
メモリ14にシーケンス情報が記憶されている場合、制御装置12は、S70でYESと判断し、S72に進む。一方、メモリ14にシーケンス情報が記憶されていない場合、制御装置12は、S72〜S76をスキップしてS78に進む。
S72では、制御装置12は、リーダライタ50から処理情報を受信することを監視する。上記の通り、メモリ14にシーケンス情報が記憶されていれば、PC10が前回停止した際にリーダライタ50がICカードとの間で特定の処理を実行していたことを意味する。その場合、リーダライタ50は、メモリ54に記憶されている処理情報をPC10に送信する(図3のS12)。制御装置12は、リーダライタ50から処理情報を受信すると、S72でYESと判断し、S74に進む。この際、制御装置12は、受信した処理情報をメモリ14に記憶する。
S74では、制御装置12は、受信した処理情報に基づいて、処理の継続が必要か否かを判断する。具体的には、S74では、制御装置12は、受信した処理情報に完了情報が含まれるか否かを判断する。
受信した処理情報に完了情報が含まれる場合、リーダライタ50とICカードとの間で実行されていた特定の処理がすでに完了している。この場合、制御装置12は、S74でNOと判断し、S76をスキップしてS78に進む。この際、制御装置12は、処理情報に含まれるデータに従って必要な完了処理を実行する。また、制御装置12は、メモリ14に記憶されているシーケンス情報と、受信した処理情報をメモリ14から削除する。
一方、受信した処理情報に完了情報が含まれていない場合、リーダライタ50とICカードとの間で実行されていた特定の処理が完了していない。この場合、制御装置12は、S74でYESと判断し、S76に進む。
S76では、制御装置12は、継続フラグをONにする。具体的には、制御装置12は、メモリ14に継続フラグがONであることを示す情報を記憶する。
次いで、S78では、制御装置12は、カード捕捉指示をリーダライタ50に送信する。次いで、S80では、制御装置12は、リーダライタ50からカードIDを受信することを監視する。上記の通り、カード捕捉指示を受信したリーダライタ50は、カード捕捉信号を無線送信する(図3のS16)。リーダライタ50は、ICカード(例えばICカード100)から応答信号を受信すると(図3のS18でYES)、応答信号に含まれるカードIDをPC10に送信する(図3のS20)。制御装置12は、リーダライタ50からカードIDを受信すると、S80でYESと判断し、S82に進む。
S82では、制御装置12は、受信したカードIDをメモリ14に記憶する。次いで、S84では、制御装置12は、継続フラグがONであるか否か判断する。制御装置12は、メモリ14に継続フラグがONであることを示す情報が記憶されている場合、S84でYESと判断し、S86に進む。一方、制御装置12は、メモリ14に継続フラグがONであることを示す情報が記憶されていない場合、S84でNOと判断し、S94に進む。S94では、制御装置12は、取引開始信号をリーダライタ50に送信する。
S86では、制御装置12は、S72で受信した処理情報に含まれるカードIDと、S82でメモリ14に記憶されたカードIDとが一致するか否か判断する。PC10が前回停止した際にリーダライタ50と無線通信を行っていたICカードと、現在リーダライタ50が無線通信を行っているICカードとが同じICカードであれば、両カードIDは一致する。その場合、制御装置12は、S86でYESと判断し、S88に進む。S88では、制御装置12は、継続信号をリーダライタ50に送信する。一方、両カードIDが一致しない場合、図5のPC処理はエラー終了する。
S88で継続信号を送信、又は、S94で取引開始信号を送信すると、S90、S92では、制御装置12は、特定の処理の完了を示す処理情報をリーダライタ50から受信するまでの間に、PC10の停止要因が検出されることを監視する。PC10の停止要因は、例えば、ユーザによってPC10のシャットダウン指示が入力されたこと、停電など、PC10への電力供給が遮断される要因が発生したこと、スリープ状態への移行条件が満たされたこと、等である。処理情報を受信する前に、PC10の停止要因を検出すると、制御装置12は、S90でYESと判断し、S96に進んでPC停止処理(図6)を実行する。PC停止処理については後述する。一方、PC10の停止要因を検出することなく、処理情報を受信すると、制御装置12は、S92でYESと判断する。この際、制御装置12は、受信した処理情報に含まれるデータに従って必要な完了処理を実行する。また、制御装置12は、メモリ14にシーケンス情報及び処理情報が記憶されている場合、それらをメモリ14から削除する。これらの各処理を終えると、制御装置12は、図5のPC処理を終了する。
S96では、制御装置12は、PC停止処理(図6)を実行する。図6のS110では、リーダライタ50にサスペンド信号を送信する。次いで、S112では、制御装置12は、シーケンス情報をメモリ14に記憶させる。具体的に言うと、S112では、制御装置12は、S82で記憶したカードID(即ち、リーダライタ50と無線通信を実行しているICカードのカードID)、及び、リーダライタ50に送信済みの信号(取引開始信号又は継続信号)を示す信号情報を含むシーケンス情報をメモリ14に記憶させる。
次いで、S114では、制御装置12は、PC10を停止状態(シャットダウン、スリープ状態等)に移行させる。S114を終えると、制御装置12は、PC停止処理(図6、図5のS96)を終了する。同時に、制御装置12は、図5のPC処理も終了する。
なお、図5、図6のフローチャートでは図示していないが、制御装置12は、リーダライタ50がICカードとの間で特定の処理を実行していない間であっても、PC10の停止要因を検出した場合は、随時サスペンド信号をリーダライタ50に送信可能である。制御装置12は、リーダライタ50がICカードとの間で特定の処理を実行していない間にPC10の停止要因を検出すると、上記図6のPC停止処理を実行することなく、PC10を停止させる。
(無線通信システム2が実行する処理の具体例)
続いて、図7〜図9を参照して、無線通信システム2のPC10及びリーダライタ50が実行する処理の具体例について説明する。なお、以下の各具体例では、リーダライタ50は、ICカード100との間で無線通信を実行する。また、リーダライタ50とICカード100の間で実行される特定の処理は、5個の部分処理に分かれている。
続いて、図7〜図9を参照して、無線通信システム2のPC10及びリーダライタ50が実行する処理の具体例について説明する。なお、以下の各具体例では、リーダライタ50は、ICカード100との間で無線通信を実行する。また、リーダライタ50とICカード100の間で実行される特定の処理は、5個の部分処理に分かれている。
(通常時:図7)
図7では、リーダライタ50がICカード100との間で特定の処理を実行する通常の場合の例について説明する。即ち、図7の例は、特定の処理が実行されている間にPC10が停止することがない場合の例である。
図7では、リーダライタ50がICカード100との間で特定の処理を実行する通常の場合の例について説明する。即ち、図7の例は、特定の処理が実行されている間にPC10が停止することがない場合の例である。
この例では、PC10及びリーダライタ50は既に起動している。また、この例では、PC10は、起動時点でシーケンス情報を記憶しておらず(図5のS70でNO)、リーダライタ50は、起動時点で処理情報を記憶していない(図3のS10でNO)。従って、図7の例では、まず、PC10は、カード捕捉指示200をリーダライタ50に送信する(図5のS78)。リーダライタ50は、カード捕捉指示200を受信すると、カード捕捉信号202を外部に無線送信する。リーダライタ50は、応答信号を受信するまで、カード捕捉信号202を繰り返し無線送信する(図3のS16、S18)。
ICカード100がカード捕捉信号202を受信すると、ICカード100は、リーダライタ50に応答信号204を送信する。応答信号204には、ICカード100のカードIDが含まれている。リーダライタ50は、応答信号204を受信すると、応答信号204に含まれているカードID206をPC10に送信する(図3のS20)。
PC10は、カードIDを受信すると、S500において、受信したカードIDをメモリ14に記憶する(図5のS82)。次いで、PC10は、リーダライタ50に取引開始信号208を送信する(図5のS84でNO、S94)。
リーダライタ50は、取引開始信号208を受信すると、ICカード100との間で特定の処理を開始する。まず、リーダライタ50とICカード100は、1番目の部分処理を実行する。即ち、まず、リーダライタ50は、1番目のコマンド210をICカード100に送信する(図3のS26)。コマンドは、データの読み取りコマンド又は書き込みコマンドである。ICカード100は、1番目の応答212をリーダライタ50に送信する。1番目の応答212には、1番目のコマンドに対応する1番目のデータと、カードIDが含まれる。続いて、リーダライタ50は、2番目のコマンド214をICカード100に送信する(図3のS24、S26)。ICカード100は、2番目の応答216をリーダライタ50に送信する。リーダライタ50とICカード100は、同様の処理を繰り返し実行する。
リーダライタ50は、5番目のコマンド224をICカード100に送信すると、ICカード100は、5番目の応答226をリーダライタ50に送信する。5番目の応答226には、5番目のデータとカードIDに加えて、完了情報が含まれる。これにより、リーダライタ50とICカード100の間の特定の処理が完了する。
特定の処理が完了すると、リーダライタ50は、処理情報224をPC10に送信する(図3のS32)。処理情報224には、ICカード100のカードIDと、特定の処理の結果得られたデータと、完了情報が含まれる。PC10は、処理情報224を受信すると、必要な完了処理を実行する。
(停止要因発生時:図8)
図8では、リーダライタ50がICカード100との間で特定の処理を実行する間に、PC10で停止要因(ユーザによるシャットダウン指示の入力)が発生する場合の例について説明する。
図8では、リーダライタ50がICカード100との間で特定の処理を実行する間に、PC10で停止要因(ユーザによるシャットダウン指示の入力)が発生する場合の例について説明する。
この例でも、PC10及びリーダライタ50は既に起動しており、PC10は、シーケンス情報を記憶しておらず(図5のS70でNO)、リーダライタ50は、処理情報を記憶していない(図3のS10でNO)。従って、PC10がカード捕捉指示200をリーダライタ50に送信してから、PC10が取引開始信号208をリーダライタ50に送信するまでの各処理は、上記の図7の例と同様である。
図8の例でも、リーダライタ50は、取引開始信号208を受信すると、ICカード100との間で特定の処理を開始する。図7の例と同様に、まず、リーダライタ50は、1番目のコマンド310をICカード100に送信する(図3のS26)。ICカード100は、1番目の応答312をリーダライタ50に送信する。
図8の例では、この間に、ユーザによって、PC10にシャットダウン指示313が入力される(図5のS90でYES)。PC10は、まず、リーダライタ50にサスペンド信号315を送信する(図6のS110)。次いで、PC10は、S510において、シーケンス情報をメモリ14に記憶し(図6のS112)、次いで、S520において、PC10を停止(シャットダウン)する(図6のS114)。
一方、リーダライタ50は、2番目のコマンド314をリーダライタ50に送信した後であって、ICカード100から2番目の応答316を受信する前のタイミングで、PC10からサスペンド信号315を受信する(図3のS28でYES)。この場合、リーダライタ50は、ICカード100から2番目の応答316の受信を完了するまで、処理を継続する(図4のS50)。リーダライタ50は、ICカード100から2番目の応答316を受信すると(図4のS50でYES)、S540において、メモリ54に処理情報を記憶する(図4のS52)。ここで記憶される処理情報には、ICカード100のカードIDと、処理の結果得られたデータと、特定の処理が2番目の処理まで終了したことを示す進捗情報(「2」)と、が含まれる。次いで、リーダライタ50は、自身の電源をOFFし、S550において停止状態に移行する(図4のS54)。
なお、図8の例では、PC10の停止に伴って、PC10からリーダライタ50への電力供給が停止すると、上記の通り、リーダライタ50は、補助電源68から電力供給を受けて作動して、2番目の応答316の受信から停止(S550)までの各処理を完了させる。
(再作動時:図9)
図9では、図8の処理の続きの処理について説明する。即ち、図9では、図8で停止させたPC10及びリーダライタ50を、再作動させる場合の例について説明する。
図9では、図8の処理の続きの処理について説明する。即ち、図9では、図8で停止させたPC10及びリーダライタ50を、再作動させる場合の例について説明する。
PC10の電源がONされると、PC10が作動する。それとともに、USBケーブル20を介してPC10からリーダライタ50への電力供給も開始され(400)、リーダライタ50も作動する。
図9の例では、PC10は、S600において、メモリ54にシーケンス情報が記憶されていると判断する(図5のS70でYES)。また、リーダライタ50は、S610において、メモリ54に処理情報が記憶されていると判断し(図3のS10でYES)、処理情報402をPC10に送信する(図3のS12)。処理情報402には、ICカード100のカードIDと、処理の結果得られたデータと、特定の処理が2番目の処理まで終了したことを示す進捗情報(「2」)と、が含まれる。
PC10は、処理情報402を受信すると、S620において、処理の継続が必要であると判断する(図5のS74でYES)。次いで、PC10は、S630において、継続フラグをONにする(図5のS76)。次いで、PC10は、カード捕捉指示404をリーダライタ50に送信する(図5のS78)。
リーダライタ50は、カード捕捉指示を受信すると、図7、図8の例と同様に、カード捕捉信号406を外部に無線送信する。ICカード100は、カード捕捉信号406を受信すると、応答信号408をリーダライタ50に送信する(図3のS20)。リーダライタ50は、受信した応答信号408に含まれるカードID410をPC10に送信する。PC10は、S640において、カードIDをメモリ14に記憶する(図5のS82)。
図9の例では、さらに、S650において、PC10は、処理情報402に含まれるカードIDと、S640で記憶したカードIDとが一致すると判断する(図5のS86でYES)。即ち、S650では、PC10は、前回PC10がOFFされた際にリーダライタ50と無線通信を行っていたICカード100と、現在リーダライタ50が無線通信を行っているICカード100とが同じカードであると判断する。PC10は、継続信号412をリーダライタ50に送信する(図5のS88)。
リーダライタ50は、継続信号を受信すると、メモリ54に記憶された処理情報が示す特定の処理の続きを実行する。即ち、リーダライタ50は、3番目のコマンド416をICカード100に送信する(図3のS26)。ICカード100は、3番目の応答418をリーダライタ50に送信する。続いて、リーダライタ50は、4番目のコマンド420をICカード100に送信し(図3のS24、S26)、ICカード100は、4番目の応答422をリーダライタ50に送信する。同様に、リーダライタ50は、5番目のコマンド424をICカード100に送信し(図3のS24、S26)、ICカード100は、5番目の応答426をリーダライタ50に送信する。5番目の応答426には、5番目のデータとカードIDに加えて、完了情報が含まれる。これにより、リーダライタ50とICカード100の間の特定の処理が完了する。
特定の処理が完了すると、リーダライタ50は、処理情報428をPC10に送信する(図3のS32)。処理情報428には、ICカード100のカードIDと、特定の処理の結果得られたデータと、完了情報が含まれる。PC10は、処理情報428を受信すると、必要な完了処理を実行する。
以上、本実施例の無線通信システム2について詳しく説明した。本実施例では、図2に示すように、リーダライタ50では、PC10からの電力供給が停止すると、補助電源68からの電力供給に変更される。そのため、リーダライタ50は、ICカードとの間で特定の処理を行っている間にPC10からの電力供給が停止する場合でも、突然停止することなく、補助電源68からの電力供給によって処理を継続することができる。
また、本実施例の無線通信システム2では、PC10は、PC10の停止要因が発生する場合には、リーダライタ50にサスペンド信号を送信する(図8参照)。リーダライタ50は、特定の処理の実行中にサスペンド信号を受信すると、特定の処理のうち、実行中の部分処理を実行し、実行済みの処理を示す処理情報をメモリ54に記憶させる。リーダライタ50は、メモリ54に記憶された処理情報を参照することで、既に実行された処理を知ることができる。そのため、リーダライタ50は、既に実行された処理の続きを後で実行できる。従って、本実施例の無線通信システム2によると、リーダライタ50とICカードとの間の処理のやり直しを抑制できる。特に、本実施例の無線通信システム2は、リーダライタ50とICカードとの間で、金銭に関係するデータの処理(決済処理等)を行う場合に、やり直しを抑制することができる点で有効である。本実施例の無線通信システム2によると、決済処理等のやり直しに伴うデータの不一致等の不都合が生じることを適切に抑制することができる。
また、本実施例のリーダライタ50は、図4のS54及び図8に示すように、処理情報をメモリ54に記憶させた後、リーダライタ50を停止させる。そのため、処理情報をメモリ54に記憶させた後に、リーダライタ50が、ICカードとの間でそれ以上処理を進めることを抑制することができる。
また、本実施例のリーダライタ50は、図3のS12及び図9に示すように、PC10から電力供給を受けて動作を開始する場合において、メモリ54に処理情報が記憶されているときは、記憶された処理情報をPC10に送信する。そのため、PC10及びリーダライタ50が起動する場合に、PC10は、処理情報を参照することで、既に実行された処理を知ることができる。
また、本実施例のPC10は、図5のS88及び図9に示すように、PC10が動作を開始する場合において、リーダライタ50から処理情報を受信し、その受信した処理情報に基づいて、処理が必要と判断する場合、継続信号をリーダライタ50に送信する。また、リーダライタ50は、図3のS24、S26に示すように、継続信号を受信すると、ICカードとの間で、特定の処理のうちの未実行の処理を実行する。そのため、リーダライタ50は、ICカードとの間で、特定の処理の続きを実行することができる。
また、本実施例では、PC10がリーダライタ50から受信する処理情報は、特定の処理の相手方であるICカードを特定するためのカードIDを含んでいる。PC10は、図5のS86、S88に示すように、処理情報に含まれるカードIDと、リーダライタ50が無線通信を実行中のICカードのカードIDとが一致する場合に、継続信号を送信する。そのため、リーダライタ50が、停止前に特定の処理を実行していたICカードと無線通信を実行していることを条件として、特定の処理の続きを実行する。従って、ICカードとの間で適切に特定の処理の続きを実行することができる。
本実施例の構成と請求項の記載との対応関係を記載しておく。PC10、リーダライタ50、ICカード100が、それぞれ、「情報処理装置」、「無線通信機」、「外部機器」の一例である。リーダライタ50の制御装置52、PC10の制御装置12が、それぞれ、「第1の制御装置」、「第2の制御装置」の一例である。
以上、本発明の実施例について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。例えば、以下の変形例を含んでもよい。
(変形例1) 上記の実施例では、PC10の制御装置12は、PC10の停止要因が発生する毎にサスペンド信号をリーダライタ50に送信する。これに限らず、PC10の制御装置12は、リーダライタ50がICカードとの間で特定の処理を行っている間にPC10の停止要因が発生する場合にのみサスペンド信号をリーダライタ50に送信してもよい。一般的に言うと、情報処理装置は、情報処理装置の停止要因が発生する場合において、少なくとも無線通信機が外部機器と特定の処理を行っているときに、無線通信機にサスペンド信号を送信すればよい。
(変形例2) 上記の実施例では、図4のS50、S52に示すように、リーダライタ50の制御装置52は、N番目の部分処理の実行中にサスペンド信号を受信する場合、当該N番目の部分処理の実行が完了させて、処理情報をメモリ54に記憶している。これに限らず、リーダライタ50の制御装置52は、N番目の部分処理の実行中にサスペンド信号を受信した場合であっても、N+1番目やそれ以降の部分処理を実行した後で、処理情報をメモリ54に記憶してもよい。即ち、制御装置52は、所定のトランザクションを実行した後で、処理情報をメモリ54に記憶してもよい。一般的に言うと、第1の制御装置は、特定の処理の少なくとも一部を継続して実行し、実行された処理を示す処理情報をメモリに記憶させればよい。
(変形例3) 上記の実施例では、PC10の制御装置12が、PC10の停止要因を検出して、サスペンド信号をリーダライタ50に送信する。これに限らず、PC10は、制御装置12とは別に停止要因検出回路を備え、その停止要因検出回路が停止要因を検出する場合に、サスペンド信号をリーダライタ50に送信してもよい。
(変形例4) リーダライタ50が無線通信を行う外部機器は、ICカードに限られず、任意の外部機器であってもよい。例えば、携帯電話等の各種携帯端末や、データの読み取り及び書き込みが可能な携帯型記録媒体等であってもよい。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:無線通信システム
10:PC
12:制御装置
14:メモリ
16:USBインターフェイス
20:USBケーブル
50:ICカードリーダライタ
52:制御装置
54:メモリ
56:USBインターフェイス
58:電源回路
60:無線通信インターフェイス
68:補助電源
70:内部電源回路
100:ICカード
D1:ダイオード
D2:ダイオード
TR:入力制御用トランジスタ
10:PC
12:制御装置
14:メモリ
16:USBインターフェイス
20:USBケーブル
50:ICカードリーダライタ
52:制御装置
54:メモリ
56:USBインターフェイス
58:電源回路
60:無線通信インターフェイス
68:補助電源
70:内部電源回路
100:ICカード
D1:ダイオード
D2:ダイオード
TR:入力制御用トランジスタ
Claims (6)
- 情報処理装置と通信可能に有線接続されると共に情報処理装置から電力供給可能とされ、外部機器と無線通信する無線通信機であって、
第1の制御装置と、
メモリと、
補助電源と、を有しており、
補助電源は、情報処理装置からの電力供給が停止すると、第1の制御装置への電力供給を開始し、
第1の制御装置は、
外部機器との間で無線通信により特定の処理を行っている間に、情報処理装置の停止に関係するサスペンド信号を受信すると、
特定の処理の少なくとも一部を継続して実行し、
実行された処理を示す処理情報をメモリに記憶させる、
無線通信機。 - 第1の制御装置は、処理情報をメモリに記憶させた後、無線通信機を停止させる、請求項1の無線通信機。
- 第1の制御装置は、
情報処理装置から電力供給を受けて無線通信機が動作を開始する場合において、メモリに処理情報が記憶されているときは、記憶された処理情報を情報処理装置に送信する、請求項2の無線通信機。 - 請求項1から3のいずれか一項の無線通信機と、
無線通信機と通信可能に有線接続され、無線通信機に電力供給可能な情報処理装置と、を有する無線通信システムであって、
情報処理装置は、情報処理装置の停止要因が発生する場合において、少なくとも無線通信機が外部機器と特定の処理を行っているときに、無線通信機にサスペンド信号を送信する、
無線通信システム。 - 情報処理装置は、第2の制御装置を有しており、
第2の制御装置は、
情報処理装置が動作を開始する場合において、無線通信機から処理情報を受信し、その受信した処理情報に基づいて特定の処理を継続するときは、継続信号を無線通信機に送信し、
無線通信機は、継続信号を受信すると、外部機器との間で、特定の処理のうちの未実行の処理を実行する、請求項4の無線通信システム。 - 処理情報は、特定の処理の相手方である外部機器を特定するための識別情報を含んでおり、
第2の制御装置は、無線通信機から処理情報を受信する場合に、無線通信機から、その無線通信機と無線通信している外部機器を特定するための識別情報をさらに取得し、その取得された識別情報と処理情報に含まれる識別情報とが一致することを条件として、継続信号を無線通信機に送信する、請求項5の無線通信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012209272A JP2014064231A (ja) | 2012-09-24 | 2012-09-24 | 無線通信機及び無線通信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012209272A JP2014064231A (ja) | 2012-09-24 | 2012-09-24 | 無線通信機及び無線通信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014064231A true JP2014064231A (ja) | 2014-04-10 |
Family
ID=50619074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012209272A Pending JP2014064231A (ja) | 2012-09-24 | 2012-09-24 | 無線通信機及び無線通信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014064231A (ja) |
-
2012
- 2012-09-24 JP JP2012209272A patent/JP2014064231A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102408583B1 (ko) | 근거리 통신 회로의 멀티 모달 운영방법 및 장치 | |
US9344152B2 (en) | Communication apparatus, control method for communication apparatus, communication system, and program | |
KR20130142312A (ko) | 배터리를 충전하기 위한 방법 및 그 전자 장치 | |
JP2020038724A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US9679236B2 (en) | IC card, portable terminal, and portable electronic apparatus | |
JP2010218453A (ja) | 携帯可能電子装置、及び携帯可能電子装置の制御方法 | |
US20100064152A1 (en) | Ic chip, information processing device, information processing system, and programs | |
EP3629428B1 (en) | Method and apparatus for changing impedance of terminal included in connector | |
CN109426324B (zh) | 上电控制方法、ap芯片及移动终端 | |
KR102440088B1 (ko) | 근거리 통신을 이용하여 디바이스들을 페어링하는 방법 및 이를 사용하는 전자 장치 | |
US9716967B2 (en) | Communication system, communication terminal apparatus, storage medium having stored therein communication program, and communication method | |
JP2014064231A (ja) | 無線通信機及び無線通信システム | |
KR20210037309A (ko) | 컨트롤 ic의 리셋을 제어하는 전자 장치 및 방법 | |
JP2017126125A (ja) | Icカード、携帯可能電子装置及び処理装置 | |
CN112513790A (zh) | 通过显示器显示用于提供外部装置的电池充电的功能可视性的电子装置和方法 | |
JP5516323B2 (ja) | Icチップ、icチップにおける初期化方法、icチップ用処理プログラム、携帯端末 | |
JP2016057824A (ja) | Icカード、icモジュール、及び携帯端末 | |
JP2013122690A (ja) | Icカード、携帯可能電子装置、および、icカードの制御方法 | |
US9722461B2 (en) | Printing apparatus, method for controlling the same, and program | |
WO2011002030A1 (ja) | 携帯可能電子装置、及び携帯可能電子装置の制御方法 | |
US20140375433A1 (en) | Electronic apparatus and control method thereof | |
US20120081210A1 (en) | Portable electronic device and recording medium | |
JP2012027667A (ja) | 携帯可能電子装置、icカード、および携帯可能電子装置の制御方法 | |
US11625267B2 (en) | Information processing apparatus and information processing method for changing contents of a process to be performed after an interrupt is detected | |
KR20190138463A (ko) | 복수의 nfc 동작 모드를 지원하는 전자 장치 및 전자 장치의 동작 방법 |