(57)【要約】【課題】無駄なく複数のＩＣモジュールにデータを書き込むことができるデータ書込システム及びプログラムを提供する。【解決手段】  実施形態によれば、データ書込システムは、搬送手段と、リーダライタと、制御手段と、を備える。搬送手段は、複数のＩＣモジュールを搬送する。リーダライタは、前記搬送手段によって搬送されるＩＣモジュールとデータを送受信する。制御手段は、前記リーダライタを用いて所定のデータを前記ＩＣモジュールに書き込み、所定のタイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了する場合、前記ＩＣモジュールを前記搬送手段を用いて所定の位置に搬送すると共に、前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、前記タイムアウト時間を延長する。【選択図】      図１
2020194479.tif 000002
【特許請求の範囲】
【請求項１】
複数のＩＣモジュールを搬送する搬送手段と、
前記搬送手段によって搬送されるＩＣモジュールとデータを送受信するリーダライタと、
前記リーダライタを用いて所定のデータを前記ＩＣモジュールに書き込み、所定のタイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了する場合、前記ＩＣモジュールを前記搬送手段を用いて所定の位置に搬送すると共に、前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、前記タイムアウト時間を延長する制御手段と、
を備えるデータ書込システム。
【請求項２】
前記タイムアウト時間は、前記複数のＩＣモジュールの中の所定のＩＣモジュールに前記データを書き込むために必要な時間よりも短い時間である、
請求項１に記載のデータ書込システム。
【請求項３】
前記タイムアウト時間は、前記複数のＩＣモジュールの中で前記データを書き込むために必要な時間が最も長いＩＣモジュールに前記データを書き込むために必要な時間よりも短い時間である、
請求項２に記載のデータ書込システム。
【請求項４】
前記制御手段は、延長された前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、延長された前記タイムアウト時間を延長する、
請求項１乃至３の何れか１項に記載のデータ書込システム。
【請求項５】
前記制御手段は、前記タイムアウト時間を延長した回数が所定の閾値以下である場合に、前記タイムアウト時間を延長する、
請求項４に記載のデータ書込システム。
【請求項６】
前記搬送手段は、前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、前記ＩＣモジュールを破棄する、
請求項１乃至５の何れか１項に記載のデータ書込システム。
【請求項７】
前記データは、暗号処理のための鍵である、
請求項１乃至６の何れか１項に記載のデータ書込システム。
【請求項８】
前記リーダライタは、２つ以上のリーダライタから構成される、
請求項１乃至７の何れか１項に記載のデータ書込システム。
【請求項９】
コンピュータに、
複数のＩＣモジュールを搬送する搬送手段によって搬送されるＩＣモジュールに所定のデータを書き込む機能と、
所定のタイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了する場合、前記ＩＣモジュールを前記搬送手段を用いて所定の位置に搬送する機能と、
前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、前記タイムアウト時間を延長する機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、データ書込システム及びプログラムに関する。
【背景技術】
【０００２】
ＩＣモジュールなどに暗号処理のための鍵などのデータを書き込むデータ書込システムには、所定のタクトタイム内に所定の個数のＩＣモジュールに対して順にデータを書き込むものがある。そのようなデータ書込システムは、ＩＣモジュールの個体差などによって、特定のＩＣモジュールに対して所定のタイムアウト時間内にデータの書込が完了しないことがある。
【０００３】
従来、データ書込システムは、そのようなＩＣモジュールを破棄してしまうという課題がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２６７２４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記の課題を解決するため、無駄なく複数のＩＣモジュールにデータを書き込むことができるデータ書込システム及びプログラムを提供する。
【課題を解決するための手段】
【０００６】
実施形態によれば、データ書込システムは、搬送手段と、リーダライタと、制御手段と、を備える。搬送手段は、複数のＩＣモジュールを搬送する。リーダライタは、前記搬送手段によって搬送されるＩＣモジュールとデータを送受信する。制御手段は、前記リーダライタを用いて所定のデータを前記ＩＣモジュールに書き込み、所定のタイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了する場合、前記ＩＣモジュールを前記搬送手段を用いて所定の位置に搬送すると共に、前記タイムアウト時間内に前記ＩＣモジュールへの前記データの書込が完了しない場合、前記タイムアウト時間を延長する。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態に係るデータ書込システムの構成例を示すブロック図である。
【図２】図２は、実施形態に係る情報処理装置の構成例を示すブロック図である。
【図３】図３は、実施形態に係るＩＣシートの構成例を示すブロック図である。
【図４】図４は、実施形態に係るデータ書込システムの動作例を示すシーケンス図である。
【図５】図５は、実施形態に係るＰＬＣの動作例を示すフローチャートである。
【図６】図６は、実施形態に係る情報処理装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、実施形態について、図面を参照して説明する。
【０００９】
実施形態に係るデータ書込システムは、所定の個数のＩＣシートに含まれるＩＣモジュールに対してデータを順に書き込む。データ書込システムは、ＩＣモジュールに対して所定のタイムアウト時間内でデータを書き込む。データ書込システムは、タイムアウト時間内にデータを書き込めなかったＩＣシートを破棄する。
【００１０】
たとえば、データ書込システムは、ＩＣシートの製造時又は発行時などにおいて、暗号処理のための鍵をＩＣモジュールに書き込む。たとえば、データ書込システムは、パスポート用のＩＣシートに含まれるＩＣモジュールに対してデータを書き込む。
【００１１】
なお、データ書込システムが書き込むデータ及びＩＣシートの用途は、特定の構成に限定されるものではない。
【００１２】
図１は、データ書込システム１の構成例を示す。図１が示すように、データ書込システム１は、情報処理装置１０、リーダライタ２０、ＰＬＣ３０、搬送部４０及び台紙５０などを備える。情報処理装置１０は、リーダライタ２０及びＰＬＣ３０と接続する。ＰＬＣ３０は、搬送部４０と接続する。
【００１３】
なお、データ書込システム１は、図１が示すような構成の他に必要に応じた構成を具備したり、データ書込システム１から特定の構成が除外されたりしてもよい。
【００１４】
台紙５０は、ＩＣシート６０を支持する。たとえば、台紙５０は、複数のシートでＩＣシート６０を挟んで支持する。ここでは、台紙５０は、ＩＣシート６０ａ及び６０ｂを支持する。たとえば、台紙５０は、紙、プラスチック又はビニールなどから形成される。
【００１５】
ＩＣシート６０は、ＩＣモジュールＭを備える。ＩＣモジュールＭは、外部から供給される電力によって活性化する。ＩＣモジュールＭは、外部からのコマンドに従ってデータを内部に格納する。ＩＣモジュールＭについては、後述する。  
ここでは、ＩＣシート６０ａ及び６０ｂは、それぞれＩＣモジュールＭａ及びＭｂを備える。
【００１６】
情報処理装置１０は、リーダライタ２０を通じてＩＣモジュールＭに所定のデータを書き込む。情報処理装置１０は、ＰＬＣ３０からの信号に従って、データの書込処理を開始する。また、情報処理装置１０は、データの書込に成功したことを示す情報又はデータの書込に失敗したことを示す情報をＰＬＣ３０に送信する。情報処理装置１０については、後に詳述する。
【００１７】
リーダライタ２０は、ＩＣモジュールＭとデータを送受信するためのインターフェースである。リーダライタ２０は、ＩＣモジュールＭの通信方式に応じたインターフェースにより構成される。
【００１８】
たとえば、ＩＣモジュールＭが接触型のＩＣシートである場合、リーダライタ２０は、ＩＣモジュールＭのコンタクト部と物理的かつ電気的に接続するための接触部などにより構成される。
【００１９】
また、ＩＣモジュールＭが非接触型のＩＣシートである場合、リーダライタ２０は、ＩＣモジュールＭとの無線通信を行うためのアンテナ及び通信制御部などにより構成される。リーダライタ２０は、ＩＣモジュールＭに対する電源供給、クロック供給、リセット制御及びデータの送受信などを行う。
【００２０】
このような機能によってリーダライタ２０は、プロセッサ１１（後述）による制御に基づいてＩＣモジュールＭに対する電源供給、ＩＣモジュールＭの活性化（起動）、クロック供給、リセット制御、種々のコマンドの送信、及び送信したコマンドに対する応答（レスポンス）の受信などを行なう。
【００２１】
リーダライタ２０は、リーダライタ２０ａ及び２０ｂから構成される。リーダライタ２０ａ乃至２０ｂは、それぞれＩＣモジュールＭａ及びＭｂとデータを送受信する。
【００２２】
ＰＬＣ３０（programmable logic controller）（制御手段）は、搬送部４０を制御して台紙５０を搬送する。たとえば、ＰＬＣ３０は、リーダライタ２０とＩＣモジュールＭとが通信可能な位置まで台紙５０を搬送する。また、ＰＣＬ３０は、搬送部４０を用いて、情報処理装置１０がデータの書込が完了した後に台紙５０を所定の位置まで搬送する。また、ＰＬＣ３０は、情報処理装置１０がデータの書込に失敗した場合、搬送部４０を制御して台紙５０を破棄する。  
ＰＬＣ３０の動作については、後に詳述する。
【００２３】
搬送部４０（搬送手段）は、台紙５０を搬送する。搬送部４０は、複数の台紙５０を格納する格納部から台紙５０を取り出す。搬送部４０は、取り出した台紙５０をリーダライタ２０とＩＣモジュールＭとが通信可能な位置まで搬送する。また、搬送部４０は、情報処理装置１０がデータの書込が完了した場合、台紙５０を所定の位置まで搬送する。
【００２４】
また、搬送部４０は、情報処理装置１０がデータの書込に失敗した後にＰＬＣ３０の制御に基づいて台紙５０を破棄する。たとえば、搬送部４０は、台紙５０を所定の破棄場所に搬送する。また、搬送部４０は、台紙５０、ＩＣシート６０又はＩＣモジュールＭに穴を空けてもよい。また、搬送部４０は、台紙５０、ＩＣシート６０又はＩＣモジュールＭに、破棄されたことを示す情報を印刷してもよい。
【００２５】
搬送部４０は、搬送ベルト、搬送ベルトを支持するプーリ及び搬送ベルトを駆動するモータなどから構成される。なお、搬送部４０の構成は、特定の構成に限定されるものではない。
【００２６】
次に、情報処理装置１０の構成例について説明する。  
図２は、情報処理装置１０の構成例を示すブロック図である。図２が示すように、情報処理装置１０は、プロセッサ１１、ＲＯＭ１２、ＲＡＭ１３、ＮＶＭ１４、リーダライタインターフェース１５、ＰＬＣインターフェース１６、操作部１７及び表示部１８などを備える。プロセッサ１１と、ＲＯＭ１２、ＲＡＭ１３、ＮＶＭ１４、リーダライタインターフェース１５、ＰＬＣインターフェース１６、操作部１７及び表示部１８とは、データバスを介して互いに接続される。
【００２７】
なお、情報処理装置１０は、図２が示すような構成の他に必要に応じた構成を具備したり、情報処理装置１０から特定の構成が除外されたりしてもよい。
【００２８】
プロセッサ１１（制御手段）は、情報処理装置１０全体の動作を制御する機能を有する。プロセッサ１１は、内部キャッシュおよび各種のインターフェースなどを備えてもよい。プロセッサ１１は、内部メモリ、ＲＯＭ１２又はＮＶＭ１４が予め記憶するプログラムを実行することにより種々の処理を実現する。
【００２９】
なお、プロセッサ１１がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路により実現されるものであっても良い。この場合、プロセッサ１１は、ハードウエア回路により実行される機能を制御する。
【００３０】
ＲＯＭ１２は、予め制御用のプログラム及び制御データなどが記憶された不揮発性のメモリである。ＲＯＭ１２に記憶される制御プログラム及び制御データは、予め情報処理装置１０の仕様に応じて組み込まれる。ＲＯＭ１２は、たとえば、情報処理装置１０の回路基板を制御するプログラム（例えば、ＢＩＯＳ）などを格納する。
【００３１】
ＲＡＭ１３は、揮発性のメモリである。ＲＡＭ１３は、プロセッサ１１の処理中のデータなどを一時的に格納する。ＲＡＭ１３は、プロセッサ１１からの命令に基づき種々のアプリケーションプログラムを格納する。また、ＲＡＭ１３は、アプリケーションプログラムの実行に必要なデータ及びアプリケーションプログラムの実行結果などを格納してもよい。
【００３２】
ＮＶＭ１４は、データの書き込み及び書き換えが可能な不揮発性のメモリである。ＮＶＭ１４は、例えば、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）又はフラッシュメモリなどにより構成される。ＮＶＭ１４は、情報処理装置１０の運用用途に応じて制御プログラム、アプリケーション及び種々のデータを格納する。  
ここで、プロセッサ１１、ＲＯＭ１２、ＲＡＭ１３及びＮＶＭ１４などは、コンピュータを構成する。
【００３３】
リーダライタインターフェース１５は、リーダライタ２０とデータを送受信するためのインターフェースである。リーダライタインターフェース１５は、プロセッサ１１の制御に基づいて、ＩＣモジュールＭに送信するデータをリーダライタ２０に送信する。また、リーダライタインターフェース１５は、ＩＣモジュールＭからのデータをリーダライタ２０から取得しプロセッサ１１に送信する。
【００３４】
ＰＬＣインターフェース１６は、ＰＬＣ３０とデータを送受信するためのインターフェースである。ＰＬＣインターフェース１６は、プロセッサ１１の制御に基づいて、所定のデータをＰＬＣ３０に送信する。また、ＰＬＣインターフェース１６は、ＰＬＣ３０からのデータをプロセッサ１１に送信する。
【００３５】
操作部１７は、情報処理装置１０のオペレータによって、種々の操作指示が入力される。操作部１７は、オペレータに入力された操作指示の信号をプロセッサ１１へ送信する。操作部１７は、たとえば、キーボード、テンキー、及び、タッチパネルなどである。
【００３６】
表示部１８は、プロセッサ１１の制御により種々の情報を表示する表示装置である。表示部１８は、たとえば、液晶モニタなどである。なお、操作部１７がタッチパネルなどで構成される場合、表示部１８は、操作部１７と一体的に形成されてもよい。
【００３７】
次に、ＩＣシート６０の構成例について説明する。  
ＩＣシート６０ａ及び６０ｂは、同様の構成であるため、ＩＣシート６０として説明する。
【００３８】
図２は、実施形態に係るＩＣシート６０の構成例を概略的に示すブロック図である。図２が示すように、ＩＣシート６０は、紙、プラスチック又はビニールなどで形成されたカード状の本体Ｓを有する。ＩＣシート６０は、本体Ｓ内にＩＣモジュールＭを内蔵する。ＩＣモジュールＭは、ＩＣチップＣと通信部２５とが接続された状態で一体的に形成され、ＩＣシート６０の本体Ｓ内に埋設される。
【００３９】
図２が示すように、ＩＣシート６０は、ＩＣモジュールＭなどを備える。ＩＣモジュールＭは、ＩＣチップＣ及び通信部２５などを備える。ＩＣチップＣは、プロセッサ２１、ＲＯＭ２２、ＲＡＭ２３及びＮＶＭ２４などを備える。プロセッサ２１は、データバスなどを介してＲＯＭ２２、ＲＡＭ２３、ＮＶＭ２４及び通信部２５に接続する。
【００４０】
なお、ＩＣシート６０は、図３が示すような構成の他に必要に応じた構成を具備したり、ＩＣシート６０から特定の構成が除外されたりしてもよい。
【００４１】
プロセッサ２１は、ＩＣシート６０全体の制御を司る制御部として機能する。プロセッサ２１は、ＲＯＭ２２又はＮＶＭ２４に記憶される制御プログラム及び制御データに基づいて種々の処理を行う。たとえば、プロセッサ２１は、ＲＯＭ２２に記憶されているプログラムを実行することにより、ＩＣシート６０の動作制御又はＩＣシート６０の運用形態に応じた種々の処理を行う。
【００４２】
なお、プロセッサ２１がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路により実現されるものであってもよい。この場合、プロセッサ２１は、ハードウエア回路により実行される機能を制御する。
【００４３】
ＲＯＭ２２は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。ＲＯＭ２２は、製造段階で制御プログラム及び制御データなどを記憶した状態でＩＣシート６０に組み込まれる。即ち、ＲＯＭ２２に記憶される制御プログラム及び制御データは、予めＩＣシート６０の仕様などに応じて組み込まれる。
【００４４】
ＲＡＭ２３は、揮発性のメモリである。ＲＡＭ２３は、プロセッサ２１の処理中のデータなどを一時的に格納する。たとえば、ＲＡＭ２３は、計算用バッファ、受信用バッファ及び送信用バッファとして機能する。計算用バッファは、プロセッサ２１が実行する種々の演算処理の結果などを一時的に保持する。受信用バッファは、通信部２５を介してリーダライタ２０から受信するコマンドデータなどを保持する。送信用バッファは、通信部２５を介してリーダライタ２０へ送信するメッセージ（レスポンスデータ）などを保持する。
【００４５】
ＮＶＭ２４は、例えば、フラッシュＲＯＭなどのデータの書き込み及び書換えが可能な不揮発性のメモリにより構成される。ＮＶＭ２４は、ＩＣシート６０の運用用途に応じて制御プログラム、アプリケーション及び種々のデータを格納する。例えば、ＮＶＭ２４では、プログラムファイル及びデータファイルなどが作成される。作成された各ファイルは、制御プログラム及び種々のデータなどが書き込まれる。
【００４６】
通信部２５は、リーダライタ２０とデータを送受信するためのインターフェースである。即ち、通信部２５は、情報処理装置１０とデータを送受信するためのインターフェースである。
【００４７】
ＩＣシート６０が接触型のＩＣシートである場合、通信部２５は、リーダライタ２０と物理的かつ電気的に接触して信号の送受信を行うための通信制御部とコンタクト部とにより構成される。たとえば、ＩＣシート６０は、コンタクト部を介してリーダライタ２０からの動作電源及び動作クロックの供給を受けて活性化される。
【００４８】
ＩＣシート６０が非接触型のＩＣシートである場合、通信部２５は、リーダライタ２０との無線通信を行うための変復調回路などの通信制御部とアンテナとにより構成される。たとえば、ＩＣシート６０は、アンテナ及び変復調回路などを介してリーダライタ２０からの電波を受信する。ＩＣシート６０は、当該電波から図示しない電源部により動作電源及び動作クロックを生成して活性化する。
【００４９】
次に、ＩＣモジュールＭが実現する機能について説明する。ＩＣモジュールＭが実現する機能は、プロセッサ２１がＲＯＭ２２又はＮＶＭ２４などに格納されるプログラムを実行することで実現される。
【００５０】
プロセッサ２１は、リーダライタ２０からのコマンドに従って所定のデータを格納する機能を有する。
【００５１】
プロセッサ２１は、通信部２５を通じて、リーダライタ２０から所定のデータを書き込む書込コマンドを受信する。たとえば、書込コマンドは、暗号処理に関する鍵を書き込むコマンドである。
【００５２】
プロセッサ２１は、書込コマンドに従って、データをＮＶＭ２４などに格納する。データをＮＶＭ２４などに格納すると、プロセッサ２１は、通信部２５を通じて、書込が完了したことを示すレスポンスをリーダライタ２０に送信する。
【００５３】
また、データの格納に失敗した場合、プロセッサ２１は、通信部２５を通じて、書込に失敗したことを示すレスポンスをリーダライタ２０に送信する。
【００５４】
次に、ＰＬＣ３０が実現する機能について説明する。ＰＬＣ３０が実現する機能は、内部のプロセッサが内部のメモリなどに格納されるプログラムを実行することで実現される。
【００５５】
まず、ＰＬＣ３０は、搬送部４０を用いて、データを書き込む前のＩＣシート６０を所定の位置まで搬送する機能を有する。
【００５６】
ＰＬＣ３０は、データを書き込む前のＩＣシート６０を支持する台紙５０を、ＩＣモジュールＭとリーダライタ２０とが通信可能な位置に搬送する。たとえば、ＰＬＣ３０は、台紙５０を格納する容器から台紙５０を取り出して搬送する。ＰＬＣ３０は、所定のセンサを通じて台紙５０が当該位置に到達したことを検知すると、台紙５０を停止する。  
たとえば、ＰＬＣ３０は、搬送部４０のモータに電力を供給することで、台紙５０を搬送する。
【００５７】
また、ＰＬＣ３０は、情報処理装置１０にデータの書込処理を開始させる信号（処理実行信号）を送信する機能を有する。
【００５８】
ＰＬＣ３０は、データを書き込む前のＩＣシート６０を支持する台紙５０を、ＩＣモジュールＭとリーダライタ２０とが通信可能な位置に搬送すると、処理実行信号を情報処理装置１０に送信する。
【００５９】
また、ＰＬＣ３０は、情報処理装置１０からデータの書込を完了したことを示す信号（完了信号）又はデータの書込に失敗したことを示す信号（エラー信号）を受信する機能を有する。
【００６０】
ＰＬＣ３０は、処理実行信号を情報処理装置１０に送信すると、情報処理装置１０から完了信号又はエラー信号を受信する。
【００６１】
また、ＰＬＣ３０は、処理実行信号を送信してから所定の時間（タイムアウト時間）が経過しても完了信号又はエラー信号を受信しない場合、タイムアウト時間を延長するかを問い合わせる信号（問い合わせ信号）を情報処理装置１０に送信する。
【００６２】
たとえば、ＰＬＣ３０は、処理実行信号を送信すると、内部のタイマを開始する。ＰＬＣ３０は、タイマが計時する時間がタイムアウト時間に達したか判定する。タイマが計時する時間がタイムアウト時間に達したと判定すると、ＰＬＣ３０は、問い合わせ信号を情報処理装置１０に送信する。
【００６３】
タイムアウト時間は、データ書込システム１がＩＣシート６０にデータを書き込むために必要な時間（書込時間）に基づく。たとえば、タイムアウト時間は、想定されるＩＣシート６０の中の所定のＩＣシート６０にデータを書き込むために必要な時間よりも短い時間である。たとえば、想定されるＩＣシート６０の中には、書込み時間が比較的長くかかるものと、比較的短いものが混在する場合があるが、タイムアウト時間は、その中で書込時間が最も長いＩＣシート６０にデータを書き込むために必要な時間よりも短い時間である。
【００６４】
また、タイムアウト時間は、想定されるＩＣシート６０の中で書込時間が最も早いＩＣシート６０にデータを書き込むために必要な時間であってもよい。  
タイムアウト時間を決定する方法は、特定の方法に限定されるものでない。
【００６５】
たとえば、タイムアウト時間は、数秒（たとえば、４〜６秒）程度である。
【００６６】
また、ＰＬＣ３０は、問い合わせに対してタイムアウト時間の延長を要求する信号（延長要求信号）を情報処理装置から受信すると、タイムアウト時間を延長する機能を有する。
【００６７】
ＰＬＣ３０は、延長要求信号を受信すると、タイムアウト時間を所定の時間（たとえば、０．１秒から１秒程度）延長する。
【００６８】
ＰＬＣ３０は、延長要求信号を受信しない場合、ＩＣシート６０を破棄する機能を有する。
【００６９】
ＰＬＣ３０は、問い合わせ信号を送信してから所定の時間待機しても情報処理装置１０から延長要求信号を受信しない場合、搬送部４０を用いてＩＣシート６０を破棄する。たとえば、ＰＬＣ３０は、搬送部４０を用いて、ＩＣシート６０の台紙５０を所定の廃棄場所に搬送する。
【００７０】
また、ＰＬＣ３０は、問い合わせ信号に対して、タイムアウト時間を延長しないことを示す信号を情報処理装置１０から受信した場合、ＩＣシート６０を破棄してもよい。
【００７１】
また、ＰＬＣ３０は、タイムアウト時間内に、情報処理装置１０からエラー信号を受信した場合にＩＣシート６０を破棄してもよい。この場合、ＰＬＣ３０は、処理実行信号の送信からタイムアウト時間が経過した後にＩＣシート６０を破棄してもよい。
【００７２】
また、ＰＬＣ３０は、タイムアウト時間内に、情報処理装置１０から完了信号を受信すると、搬送部を用いてＩＣシート６０を所定の場所に搬送する機能を有する。
【００７３】
たとえば、ＰＬＣ３０は、完了信号を受信した場合、タイムアウト時間が経過した後にＩＣシート６０を所定の場所に搬送する。たとえば、ＰＬＣ３０は、データの書込が完了したＩＣシート６０を保管する所定の容器にＩＣシート６０を支持する台紙５０を搬送する。また、ＰＬＣ３０は、ＩＣシート６０を支持する台紙５０をデータ書込システム１の外部に排出してもよい。
【００７４】
また、ＰＬＣ３０は、完了信号を受信した場合、タイムアウト時間が経過しなくともＩＣシート６０を所定の場所に搬送してもよい。
【００７５】
次に、情報処理装置１０が実現する機能について説明する。情報処理装置１０が実現する機能は、プロセッサ１１がＲＯＭ１２又はＮＶＭ１４などに格納されるプログラムを実行することで実現される。
【００７６】
まず、プロセッサ１１は、リーダライタ２０を通じて所定のデータをＩＣモジュールＭに書き込む機能（書込処理の機能）を有する。
【００７７】
プロセッサ１１は、ＰＬＣインターフェース１６を通じて、処理実行信号を受信する。処理実行信号を受信すると、プロセッサ１１は、リーダライタ２０を通じてＩＣモジュールＭに所定のデータを書き込む。
【００７８】
たとえば、プロセッサ１１は、リーダライタ２０ａを通じて、所定のデータを書き込む書込コマンドをＩＣモジュールＭａに送信する。ここで、ＩＣモジュールＭａは、書込コマンドに従って所定のデータを格納し、書込が完了したことを示すレスポンスをリーダライタ２０ａに送信するものとする。
【００７９】
プロセッサ１１は、リーダライタ２０ａを通じて、当該レスポンスを受信する。当該レスポンスを受信すると、プロセッサ１１は、リーダライタ２０ｂを通じて、所定のデータを書き込む書込コマンドをＩＣモジュールＭｂに送信する。ここで、ＩＣモジュールＭｂは、書込コマンドに従って所定のデータを格納し、書込が完了したことを示すレスポンスをリーダライタ２０ｂに送信するものとする。  
プロセッサ１１は、リーダライタ２０ｂを通じて、当該レスポンスを受信する。
【００８０】
当該レスポンスを受信すると、プロセッサ１１は、ＰＬＣインターフェース１６を通じて、完了信号をＰＬＣ３０に送信する。
【００８１】
プロセッサ１１は、ＩＣモジュールＭａ又はＭｂから書込に失敗したことを示すレスポンスを受信すると、ＰＬＣインターフェース１６を通じてエラー信号をＰＬＣ３０に送信する。なお、プロセッサ１１は、ＩＣモジュールＭａ又はＭｂから書込に失敗したことを示すレスポンスを受信した場合、書込コマンドを再度ＩＣモジュールＭａ又はＭｂに送信してもよい。プロセッサ１１は、ＩＣモジュールＭａ又はＭｂから所定の回数、書込に失敗したことを示すレスポンスを受信した場合に、エラー信号をＰＬＣ３０に送信してもよい。
【００８２】
また、プロセッサ１１は、所定のデータを生成してもよいし、ＮＶＭ１４又は外部装置から取得してもよい。たとえば、所定のデータは、暗号処理のための鍵などである。
【００８３】
また、プロセッサ１１は、ＰＬＣ３０からの問い合わせ信号に対して延長要求信号を送信する機能を有する。
【００８４】
プロセッサ１１は、ＰＬＣインターフェース１６を通じて、ＰＬＣ３０から問い合わせ信号を受信する、問い合わせ信号を受信すると、プロセッサ１１は、延長要求信号をＰＬＣに送信した回数が所定の閾値（たとえば、２）以下であるか判定する。
【００８５】
延長要求信号をＰＬＣに送信した回数が所定の閾値以下であると判定すると、プロセッサ１１は、ＰＬＣインターフェース１６を通じて、ＰＬＣ３０に延長要求信号を送信する。
【００８６】
延長要求信号をＰＬＣに送信した回数が所定の閾値以下でないと判定すると、プロセッサ１１は、タイムアウト時間を延長しないことを示す信号をＰＬＣ３０に送信してもよい。また、この場合、プロセッサ１１は、問い合わせ信号に対して応答しなくともよい。
【００８７】
次に、データ書込システム１の動作例について説明する。  
図４は、データ書込システム１の動作例について説明するためのシーケンス図である。
【００８８】
まず、ＰＬＣ３０は、情報処理装置１０に初期応答を要求する信号を送信する（Ｓ１１）。
【００８９】
情報処理装置１０は、ＰＬＣ３０から当該信号を受信する。当該信号を受信すると、情報処理装置１０は、リーダライタ３０に初期応答を要求する信号を送信する（Ｓ１２）。
【００９０】
リーダライタ２０は、当該信号を受信する。当該信号を受信すると、リーダライタ２０は、初期応答を情報処理装置１０に送信する（Ｓ１３）。
【００９１】
情報処理装置１０は、リーダライタ２０から当該初期応答を受信する。当該初期応答を受信すると、情報処理装置１０は、ＰＬＣ３０に初期応答を送信する（Ｓ１４）。
【００９２】
ＰＬＣ３０は、情報処理装置１０から当該初期応答を受信する。当該初期応答を受信すると、ＰＬＣ３０は、データを書き込む前のＩＣシート６０を所定の位置に搬送する（Ｓ１５）。
【００９３】
ＩＣシート６０を所定の位置に搬送すると、ＰＬＣ３０は、情報処理装置１０に処理実行信号を送信する（Ｓ１６）。
【００９４】
情報処理装置１０は、当該処理実行信号を受信する。当該処理実行信号を受信すると、情報処理装置１０は、リーダライタ２０に書込コマンドを送信させる信号を送信する（Ｓ１７）。
【００９５】
リーダライタ２０は、当該信号を受信する。当該信号を受信すると、リーダライタ２０は、ＩＣモジュールＭに書込コマンドを送信する（Ｓ１８）。
【００９６】
ＩＣモジュールＭは、書込コマンドを受信する。ここでは、ＩＣモジュールＭ（Ｍａ及びＭｂ）は、書込コマンドに従って所定のデータを格納したものとする。所定のデータを格納すると、ＩＣモジュールＭは、書込が完了したことを示すレスポンスをリーダライタ２０に送信する（Ｓ１９）。
【００９７】
リーダライタ２０は、当該レスポンスを受信する。当該レスポンスを受信すると、リーダライタ２０は、当該レスポンスを情報処理装置１０に送信する（Ｓ２０）。
【００９８】
情報処理装置１０は、当該レスポンスを受信する。当該レスポンスを受信すると、情報処理装置１０は、完了信号をＰＬＣ３０に送信する（Ｓ２１）。
【００９９】
ＰＬＣ３０は、当該完了信号を受信する。当該完了信号を受信すると、ＰＬＣ３０は、データを書き込んだＩＣシート６０を所定の位置に搬送し、データを書き込む前のＩＣシート６０を所定の位置に搬送する（Ｓ２２）。
【０１００】
ＩＣシート６０を所定の位置に搬送すると、ＰＬＣ３０は、情報処理装置１０に処理実行信号を送信する（Ｓ２３）。
【０１０１】
情報処理装置１０は、当該処理実行信号を受信する。当該処理実行信号を受信すると、情報処理装置１０は、リーダライタ２０に書込コマンドを送信させる信号を送信する（Ｓ２４）。
【０１０２】
リーダライタ２０は、当該信号を受信する。当該信号を受信すると、リーダライタ２０は、ＩＣモジュールＭに書込コマンドを送信する（Ｓ２５）。
【０１０３】
ここで、ＰＬＣ３０は、タイムアウト時間内に完了信号又はエラー信号を受信しなかったものとする。
【０１０４】
タイムアウト時間が経過すると、ＰＬＣ３０は、問い合わせ信号を情報処理装置１０に送信する（Ｓ２６）。
【０１０５】
情報処理装置１０は、当該問い合わせ信号を受信する。当該問い合わせ信号を受信すると、情報処理装置１０は、延長要求信号をＰＬＣ３０に送信する（Ｓ２７）。
【０１０６】
ＰＬＣ３０は、当該延長要求信号を受信する。当該延長要求信号を受信すると、ＰＬＣ３０は、タイムアウト時間を所定の時間延長する（Ｓ２８）。
【０１０７】
ここで、ＩＣモジュールＭは、書込が完了したことを示すレスポンスをリーダライタ２０に送信する（Ｓ２９）。
【０１０８】
リーダライタ２０は、当該レスポンスを受信する。当該レスポンスを受信すると、リーダライタ２０は、当該レスポンスを情報処理装置１０に送信する（Ｓ３０）。
【０１０９】
情報処理装置１０は、当該レスポンスを受信する。当該レスポンスを受信すると、情報処理装置１０は、完了信号をＰＬＣ３０に送信する（Ｓ３１）。
【０１１０】
ＰＬＣ３０は、当該完了信号を受信する。ＰＬＣ３０が当該完了信号を受信すると、データ書込システム１は、動作を終了する。
【０１１１】
なお、さらに、データを書き込む前のＩＣシート６０がある場合には、データ書込システム１は、続けてＩＣシート６０にデータを書き込む。
【０１１２】
次に、ＰＬＣ３０の動作例について説明する。  
図５は、ＰＬＣ３０の動作例について説明するためのフローチャートである。
【０１１３】
まず、ＰＬＣ３０は、情報処理装置１０に対して初期応答を要求し、情報処理装置１０から初期応答を受信する（Ｓ４１）。初期応答を受信すると、ＰＬＣ３０は、搬送部４０を用いて、データを書き込む前のＩＣシート６０を所定の位置に搬送する（Ｓ４２）。
【０１１４】
ＩＣシート６０を搬送すると、ＰＬＣ３０は、処理実行信号を情報処理装置１０に送信する（Ｓ４３）。処理実行信号を受信すると、ＰＬＣ３０は、情報処理装置１０から応答を受信したか判定する（Ｓ４４）。
【０１１５】
情報処理装置１０から応答を受信していないと判定すると（Ｓ４４、ＮＯ）、ＰＬＣ３０は、処理実行信号を送信してからタイムアウト時間が経過したか判定する（Ｓ４５）。処理実行信号を送信してからタイムアウト時間が経過していないと判定すると（Ｓ４５、ＮＯ）、ＰＬＣ３０は、Ｓ４４に戻る。
【０１１６】
処理実行信号を送信してからタイムアウト時間が経過したと判定すると（Ｓ４５、ＹＥＳ）、ＰＬＣ３０は、問い合わせ信号を情報処理装置１０に送信する（Ｓ４６）。問い合わせ信号を送信すると、ＰＬＣ３０は、延長要求信号を情報処理装置１０から受信したか判定する（Ｓ４７）。
【０１１７】
延長要求信号を情報処理装置１０から受信したと判定すると（Ｓ４７、ＹＥＳ）、ＰＬＣ３０は、タイムアウト時間を所定の時間延長する（Ｓ４８）。タイムアウト時間を所定の時間延長すると、ＰＬＣ３０は、Ｓ４４に戻る。
【０１１８】
情報処理装置１０から応答を受信したと判定すると（Ｓ４４、ＹＥＳ）、ＰＬＣ３０は、応答が完了信号であるか判定する（Ｓ４９）。応答が完了信号であると判定すると（Ｓ４９、ＹＥＳ）、ＰＬＣ３０は、ＩＣシート６０を所定の位置に搬送する（Ｓ５０）。
【０１１９】
延長要求信号を情報処理装置１０から受信しなかったと判定した場合（Ｓ４７、ＮＯ）、又は、応答が完了信号でないと判定した場合（Ｓ４９、ＮＯ）、ＰＬＣ３０は、ＩＣシート６０を破棄する（Ｓ５１）。
【０１２０】
ＩＣシート６０を所定の位置に搬送した場合（Ｓ５０）、又は、ＩＣシート６０を破棄した場合（Ｓ５１）、ＰＬＣ３０は、データの書込動作を終了するか判定する（Ｓ５２）。たとえば、ＰＬＣ３０は、ストックされた各ＩＣシート６０に対するデータの書込処理を完了したか判定する。また、ＰＬＣ３０は、オペレータからデータの書込動作を終了する操作の入力を受け付けたか判定してもよい。
【０１２１】
データの書込動作を終了しないと判定すると（Ｓ５２、ＮＯ）、ＰＬＣ３０は、Ｓ４２に戻る。  
データの書込動作を終了すると判定すると（Ｓ５２、ＹＥＳ）、ＰＬＣ３０は、動作を終了する。
【０１２２】
次に、情報処理装置１０の動作例について説明する。  
図６は、情報処理装置１０の動作例について説明するためのフローチャートである。
【０１２３】
まず、情報処理装置１０のプロセッサ１１は、ＰＬＣインターフェース１６を通じて、初期応答をＰＬＣ３０に送信する（Ｓ６１）。前述の通り、プロセッサ１１は、ＰＬＣ３０から初期応答の要求を受信すると、リーダライタ２０に初期応答を要求する。プロセッサ１１は、リーダライタ２０から初期応答を受信すると、初期応答をＰＬＣ３０に送信する。
【０１２４】
初期応答をＰＬＣ３０に送信すると、プロセッサ１１は、延長回数をカウントするｎをリセット（ｎ＝０）する（Ｓ６２）。延長回数をカウントするｎをリセットすると、プロセッサ１１は、ＰＬＣインターフェース１６を通じて、処理実行信号をＰＬＣ３０から受信したか判定する（Ｓ６３）。
【０１２５】
処理実行信号をＰＬＣ３０から受信していないと判定すると（Ｓ６３、ＮＯ）、プロセッサ１１は、Ｓ６３に戻る。
【０１２６】
処理実行信号をＰＬＣ３０から受信したと判定すると（Ｓ６３、ＹＥＳ）、プロセッサ１１は、リーダライタ２０を通じてＩＣモジュールＭへの書込処理を開始する（Ｓ６４）。
【０１２７】
書込処理を開始すると、プロセッサ１１は、書込処理が完了したか判定する（Ｓ６５）。書込処理が完了していないと判定すると（Ｓ６５、ＮＯ）、プロセッサ１１は、ＰＬＣインターフェース１６を通じて、問い合わせ信号をＰＬＣ３０から受信したか判定する（Ｓ６６）。
【０１２８】
問い合わせ信号をＰＬＣ３０から受信したと判定すると（Ｓ６６、ＹＥＳ）、プロセッサ１１は、ｎが２以下であるか判定する（Ｓ６７）。ｎが２以下であると判定すると（Ｓ６７、ＹＥＳ）、プロセッサ１１は、ＰＬＣインターフェース１６を通じて、延長要求信号をＰＬＣ３０に送信する（Ｓ６８）。
【０１２９】
延長要求信号をＰＬＣ３０に送信すると、プロセッサ１１は、ｎをインクリメントする（Ｓ６９）。  
問い合わせ信号をＰＬＣ３０から受信していないと判定した場合（Ｓ６６、ＮＯ）、又は、ｎをインクリメントした場合（Ｓ６９）、プロセッサ１１は、Ｓ６５に戻る。
【０１３０】
書込処理が完了したと判定すると（Ｓ６５、ＮＯ）、プロセッサ１１は、リーダライタ２０を通じて、書込が完了したことを示すレスポンスを受信したか判定する（Ｓ７０）。
【０１３１】
ｎが２以下でないと判定した場合（Ｓ６７、ＮＯ）、又は、書込が完了したことを示すレスポンスを受信していないと判定した場合（Ｓ７０、ＮＯ）、プロセッサ１１は、ＰＬＣインターフェース１６を通じてエラー信号をＰＬＣ３０に送信する（Ｓ７１）。
【０１３２】
書込が完了したことを示すレスポンスを受信したと判定すると（Ｓ７０、ＹＥＳ）、プロセッサ１１は、ＰＬＣインターフェース１６を通じて完了信号をＰＬＣ３０に送信する（Ｓ７１）。
【０１３３】
エラー信号をＰＬＣ３０に送信した場合（Ｓ７１）、又は、完了信号をＰＬＣ３０に送信した場合（Ｓ７２）、プロセッサ１１は、データの書込動作を終了するか判定する（Ｓ７３）。
【０１３４】
データの書込動作を終了しないと判定すると（Ｓ７３、ＮＯ）、プロセッサ１１は、Ｓ６２に戻る。  
データの書込動作を終了すると判定すると（Ｓ７３、ＹＥＳ）、プロセッサ１１は、動作を終了する。
【０１３５】
なお、リーダライタ２０は、３つ以上のリーダライタから構成されるものであってもよい。この場合、台紙５０は、３つ以上のＩＣシートを備えるものであってもよい。  
また、リーダライタ２０は、１つのリーダライタから構成されるものであってもよい。この場合、台紙５０は、１つのＩＣシートを備えるものであってもよい。
【０１３６】
また、プロセッサ１１は、ＰＬＣ３０の機能を実現するものであってもよい。つまり、プロセッサ１１が、搬送手段の動作のＯＮ／ＯＦＦ等を制御できるようにしたり、ＩＣモジュールＭが所定の位置に搬送されたかどうかもセンサからの信号を参照して判断できるようにしてもよい。リーダライタ２０は、情報処理装置１０と一体的に形成されるものであってもよい。  
また、データ書込システム１は、ＩＣカードが備えるＩＣモジュールＭにデータを書き込むものであってもよい。
【０１３７】
以上のように構成された情報処理装置は、データの書込が完了した場合には、タイムアウト時間が経過すると次のＩＣシートへの書込処理を行う。また、情報処理装置は、タイムアウト時間内にデータの書込が完了しない場合には、タイムアウト時間を延長しデータの書込を完了させる。また、上記実施例に記載した情報処理装置は、書き込み処理時間の遅いシートを基準にして処理するのではなく、書き込み処理に必要な時間よりも短い時間を書き込み完了か否かの判断基準（デフォルト基準時間）とする点を特徴とする。
【０１３８】
その結果、早く書き込み完了できたシートのときには、従来のような時間を待たずして次のステップに搬送できるので、タクトタイムは短くなる。また、書き込み処理時間が長くなる場合であっても、都度延長して、簡単にエラーにしないことによって、ICシートの歩留まりを向上させることができ、かつ早く処理できるシート使用時と早く処理できないシート使用時とを合わせた全体のタクトタイムを、所望の範囲に収めることができる。換言すれば、本実施例における情報処理装置は、全体的なタクトタイムを維持しつつ、書込に時間が係るＩＣシートに対しても破棄せずにデータを書き込むことができる。
【０１３９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１４０】
１…データ書込システム、１０…情報処理装置、１１…プロセッサ、１２…ＲＯＭ、１３…ＲＡＭ、１４…ＮＶＭ、１５…リーダライタインターフェース、１６…ＰＬＣインターフェース、１７…操作部、１８…表示部、２０…リーダライタ、２０ａ…リーダライタ、２０ｂ…リーダライタ、２１…プロセッサ、２２…ＲＯＭ、２３…ＲＡＭ、２４…ＮＶＭ、２５…通信部、３０…リーダライタ、４０…搬送部、５０…台紙、６０（６０ａ及び６０ｂ）…ＩＣシート、Ｍ（Ｍａ及びＭｂ）…ＩＣモジュール。
【図１】
2020194479.tif 000003
【図２】
2020194479.tif 000004
【図３】
2020194479.tif 000005
【図４】
2020194479.tif 000006
【図５】
2020194479.tif 000007
【図６】
2020194479.tif 000008