(57)【要約】【課題】上位装置との通信構成を複雑化させることなく安定して動作させることができることはもとより、動作設定や機能変更を行う場合であってもエンドユーザ側で動的に容易にかつ確実に変更することが可能な電子機器装置および情報処理システムを提供する。【解決手段】電子機器装置３０は、電子機器装置の動作の制御機能を有する第１の情報処理部３１１と、電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する格納部３１２と、第１の情報処理部段と上位装置との間で、有線である専用線５０を介して各種データの送受信を行う第１の通信部３１４と、設定および機能変更のうちの少なくとも一方を行うための各種情報を無線によって受信する第２の通信部３２４と、を有する。【選択図】図３
2014127150.tif 000002
【特許請求の範囲】
【請求項１】
上位装置からの指令に従って処理を実行する電子機器装置であって、
電子機器装置の動作の制御機能を有する第１の情報処理手段と、
電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する格納手段と、
前記第１の情報処理手段と上位装置との間で、有線である専用線を介して各種データの送受信を行う第１の通信手段と、
前記設定および機能変更のうちの少なくとも一方を行うための各種情報を無線によって受信および送信のうち少なくとも受信を行う第２の通信手段と、
を有する電子機器装置。
【請求項２】
前記第２の通信手段で受信した設定および機能変更のうちの少なくとも一方を行うための情報により前記格納手段の格納されている情報を書き換える機能を含む第２の情報処理手段を有する
請求項１記載の電子機器装置。
【請求項３】
前記第１の情報処理手段は、
前記格納手段に格納されている情報に基づいた処理を行い、
前記第２の情報処理手段は、
前記格納手段の格納情報を無線で受信した情報により書き換える際、前記第１の情報処理手段を停止させた状態で書き換えを行い、書き換え後、書き換えた後の情報で処理を行えるように、前記第１の情報処理手段をリセットさせる
請求項２記載の電子機器装置。
【請求項４】
前記第２の情報処理手段は、電子機器装置の状態を監視する機能を有する
請求項２または記載の電子機器装置。
【請求項５】
前記第２の情報処理手段は、
監視により得られた情報を前記第２の通信手段により無線で送信する機能を含む
請求項４記載の電子機器装置。
【請求項６】
電子機器装置がカードリーダまたはカードリーダライタである
請求項１から５のいずれか一に記載の電子機器装置。
【請求項７】
上位装置と、
前記上位装置からの指令に従って処理を実行する電子機器装置と、
前記電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を無線で送信する専用ホスト装置と、を有し、
前記専用ホスト装置は、
複数の仕様の各々に対応する前記電子機器装置の前記設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する設定・機能変更情報格納部を含み、
前記電子機器装置は、
電子機器装置の動作の制御機能を有する第１の情報処理手段と、
電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する格納手段と、
前記第１の情報処理手段と上位装置との間で、有線である専用線を介して各種データの送受信を行う第１の通信手段と、
前記専用ホスト装置との間で、前記設定および機能変更のうちの少なくとも一方を行うための各種情報を無線によって受信および送信のうち少なくとも受信を行う第２の通信手段と、
を有する情報処理システム。
【請求項８】
前記専用ホスト装置は、前記上位装置に組み込まれている
請求項７記載の情報処理システム。
【請求項９】
前記上位装置に複数の前記電子機器装置が接続されており、
前記上位装置から変更を要する前記電子機器装置に対して無線で変更すべき情報を送信する
請求項８記載の情報処理システム。
【請求項１０】
互いに通信する前記上位装置および前記電子機器装置を複数組含み、
前記専用ホスト装置は、
前記各種情報を前記電子機器装置に無線で直接送信する
請求項７記載の情報処理システム。
【請求項１１】
互いに通信する前記上位装置および前記電子機器装置を複数組含み、
前記各上位装置は、
通信相手の前記電子機器装置の第２の通信手段と無線通信可能な無線通信部を含み、
前記専用ホスト装置は、
前記各種情報を前記上位装置に供給し、当該供給を受けた上位装置が、当該情報を通信相手の前記電子機器装置に無線で送信する
請求項７記載の情報処理システム。
【請求項１２】
前記第２の通信手段で受信した設定および機能変更のうちの少なくとも一方を行うための情報により前記格納手段の格納されている情報を書き換える機能を含む第２の情報処理手段を有する
請求項７から１１のいずれか一に記載の情報処理システム。
【請求項１３】
前記第１の情報処理手段は、
前記格納手段に格納されている情報に基づいた処理を行い、
前記第２の情報処理手段は、
前記格納手段の格納情報を無線で受信した情報により書き換える際、前記第１の情報処理手段を停止させた状態で書き換えを行い、書き換え後、書き換えた後の情報で処理を行えるように、前記第１の情報処理手段をリセットさせる
請求項１２記載の情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、上位装置からの指令に従って処理を実行するカードリーダ等の電子機器装置および情報処理システムに関するものである。
【背景技術】
【０００２】
通常、電子機器装置は通信線を介して上位装置と接続され、上位装置からの指令に従って処理を実行するように構成されている。
このように、上位装置と電子機器装置（下位装置）との通信を確立するためには、ＲＳ２３２Ｃ方式、パラレルポート方式、ＵＳＢ(Universal Serial Bus)接続方式など種々の通信方式が採用されている。
【０００３】
ＲＳ２３２Ｃ方式やパラレルポート方式という従来型の接続方式は、データ線以外に各種制御線を実装することが可能であり、下位装置に応じたきめ細かい制御を行うことができる。
一方、近年主流となっているＵＳＢ接続方式は、メーカを問わずに外部機器を接続可能なので外部機器接続のデファクトスタンダードとして手軽ではあるが、ＵＳＢ規格が電力供給とデータ交換に主眼を置いていることから、それ以外の制御自由度がほとんどない。
【０００４】
そのため、従来型の接続方式では、上位装置が何らかの手段で通信異常を検知すると、各種制御線を介して下位装置を復旧させることが可能である。
しかし、ＵＳＢ接続方式では、ソフトウェア的に下位装置の異常を検知することはできても、上位装置からの指令によって下位装置を復旧させることは汎用的な構成では不可能である。
【０００５】
特許文献１には、ＵＳＢ接続方式を採用したシステムであって、上位装置とカードリーダ等の電子機器装置（下位装置）との通信構成を複雑化させることなく電子機器装置の自己復旧によって動作安定性を向上させる技術が提案されている。
【０００６】
特許文献１に記載された電子機器装置は、その動作の制御機能を有するメインＣＰＵと、その動作状態の監視機能を有するサブＣＰＵと、メインＣＰＵと上位装置との間で、各種データの送受信を行う第１のＵＳＢ接続部と、サブＣＰＵと上位装置との間で、この電子機器装置の動作状態を示す動作状態信号を通信する第２のＵＳＢ接続部と、を有する。
また、この電子機器装置は、メインＣＰＵとサブＣＰＵとの間で互いにソフトウェアの更新機能を有する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１１３４６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、手動式、電動式を問わず原価低減が求められるカードリーダやカードリーダライタ（電子機器装置）においては、メモリ、演算能力、通信機能といったリソースが制限されたＣＰＵ（情報処理部）が採用されることが多い。
【０００９】
上記カードリーダが市場展開された後に動作設定や機能変更を行う場合、カードリーダ本体に内蔵したメカニカルな機能接続スイッチを変更したり、専用の設定変更用の機能を接続等する必要が生じる。
これは、上記特許文献１に記載された電子機器装置も含めて、メーカもしくはエンドユーザのサポート要員が操作することを意味するので、エンドユーザ自身が動的に容易に変更することができない。
【００１０】
たとえばＨＩＤキーボードインタフェース（Ｉ／Ｆ）を持つカードリーダの場合、エンドユーザが使用する国によって言語を切り替える必要がある。
この実現方法としては、対応する言語用のソフトウェアを全てカードリーダライタに内蔵し、カードリーダライタ上のメカニカルスイッチにより切り替えたり、上記設定情報の変更で切り替える方法もあるが、十分なリソースが必要になるので現実的ではない。
【００１１】
また、各国語用のソフトウェアを人が選択する方法では、ヒューマンエラーにより目的のソフトウェアが選択されないおそれがある。
【００１２】
本発明の目的は、上位装置との通信構成を複雑化させることなく安定して動作させることができることはもとより、動作設定や機能変更を行う場合であってもエンドユーザ側で動的に容易にかつ確実に変更することが可能な電子機器装置および情報処理システムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明の第１の観点は、上位装置からの指令に従って処理を実行する電子機器装置であって、電子機器装置の動作の制御機能を有する第１の情報処理手段と、電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する格納手段と、前記第１の情報処理手段と上位装置との間で、有線である専用線を介して各種データの送受信を行う第１の通信手段と、前記設定および機能変更のうちの少なくとも一方を行うための各種情報を無線によって送信および受信のうち少なくとも受信を行う第２の通信手段と、を有する。
【００１４】
本発明の第２の観点は、上位装置と、前記上位装置からの指令に従って処理を実行する電子機器装置と、前記電子機器装置の前記設定および機能変更のうちの少なくとも一方を行うための各種情報を無線で送信する専用ホスト装置と、を有し、前記専用ホスト装置は、複数の仕様の各々に対応する前記電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する設定・機能変更情報格納部を含み、前記電子機器装置は、電子機器装置の動作の制御機能を有する第１の情報処理手段と、電子機器装置の設定および機能変更のうちの少なくとも一方を行うための各種情報を格納する格納手段と、前記第１の情報処理手段と上位装置との間で、有線である専用線を介して各種データの送受信を行う第１の通信手段と、前記専用ホスト装置との間で、前記設定および機能変更のうちの少なくとも一方を行うための各種情報を無線によって受信および送信のうち少なくとも受信を行う第２の通信手段と、を有する。
【発明の効果】
【００１５】
本発明によれば、上位装置との通信構成を複雑化させることなく安定して動作させることができることはもとより、動作設定や機能変更を行う場合であってもエンドユーザ側で動的に容易にかつ確実に変更することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る情報処理システムの概要を示すブロック図である。
【図２】本実施形態に係る上位装置の構成例を概念的に示す図である。
【図３】本実施形態に係る電子機器装置としてのカードリーダライタの信号処理系の基本的な構成例を示す図である。
【図４】本実施形態に係るカードリーダライタのメイン側処理系とサブ側処理系においてＣＰＵ、リセット回路、電源回路を含む構成例を示す図である。
【図５】本実施形態に係る情報処理システムにおけるソフトウェアあるいは設定情報の変更時の動作説明するためのフローチャートである。
【図６】本実施形態に係るカードリーダライタのログ情報の収集処理について説明するための図である。
【図７】本実施形態に係るカードリーダライタのメインＣＰＵによる制御機能を説明するためのフローチャートである。
【図８】本実施形態に係るカードリーダライタのサブＣＰＵによる動作監視機能を説明するためのフローチャートである。
【図９】本発明に係る情報処理システムの他の実施形態を説明するための図である。
【図１０】本発明に係る情報処理システムのさらに他の実施形態を説明するための図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面に関連付けて説明する。
以下の実施形態においては、電子機器装置としてカードリーダライタを例に説明する。ただし、本発明はカードリーダライタに限らず、電子機器装置としてのカードスキャナ、カードプリンタ等にも適用可能である。
【００１８】
図１は、本発明の実施形態に係る情報処理システムの概要を示すブロック図である。
図２は、本実施形態に係る上位装置の構成例を概念的に示す図である。
図３は、本実施形態に係る電子機器装置としてのカードリーダライタの信号処理系の基本的な構成例を示す図である。
【００１９】
情報処理システム１０は、情報処理装置としての上位装置（ホスト装置）２０、電子機器装置としてのカードリーダまたはカードリーダライタ３０、および情報カード（以下、単にカードという）４０を含んで構成されている。
本実施形態においては、電子機器装置として、カード４０のリードライト（再生、記録）機能を有するカードリーダライタ３０を例に説明する。
本情報処理システム１０の概要を説明した後、各部の具体的な構成および機能について説明する。
【００２０】
［本情報処理システム１０の概要］
金融機関などで使用され、キャッシュレスや個人認証などを実現するカードとして、たとえばプラスチック基板にストライプ状に磁気データが記録された磁気カード、プラスチック基板内部に集積回路チップ（ＩＣチップ）が埋め込まれ、表面にＩＣ端子が配置されたＩＣカード（接触式ＩＣカード）や内部にアンテナコイルが配置されたＩＣカード（非接触式ＩＣカード）がある。
そして、このカード（磁気カードまたはＩＣカード）４０に対する情報の再生または記録は、電子機器装置としてのカードリーダライタ３０によって行われる。
【００２１】
基本的に、カードリーダライタ３０は、上位装置２０からのコマンド（たとえばコマンドＡＰＤＵ：Application Protocol Data Unit）を受信し、カード４０との通信プロトコルに沿った形式（たとえばコマンドＴＰＤＵ：Transmission Protocol Data Unit）に変換する。
そして、カードリーダライタ３０は、電圧や通信速度等も変換した後に、そのコマンドをカード４０へ送信する。また、カードリーダライタ３０は、カード４０からの応答を受信した後、逆変換（レスポンスＴＰＤＵからレスポンスＡＰＤＵへ）を行って、その応答を上位装置２０へ送信する。
【００２２】
上位装置２０とカードリーダライタ３０との間の通常の通信は、ＲＳ２３２ＣやＵＳＢ（Universal Serial Bus）などの専用線（有線の通信線）を用いた通信システムが適用され、本実施形態ではＵＳＢ通信システムが適用されている。
したがって、上位装置２０とカードリーダライタ３０とは、通常の通信経路としてＵＳＢケーブル５０により接続されている。
カードリーダライタ３０とカード４０との間の通信は、ＴＴＬレベル、ＵＳＢ、および非接触通信等が一般的である。
また、一般に、カードリーダライタ３０は、ＡＰＤＵのデータ内容を解釈することなく、単にＴＰＤＵに変換する処理を行う。
【００２３】
このようなカードリーダライタ３０等の電子機器装置と通信を行うＡＴＭ等の上位装置２０には、電子機器装置であるカードリーダライタとの通信を制御するために、オブジェクト指向環境で動作する通信制御用クラスライブラリ（ソフトウェアシステム）が適用される場合がある。
なお、対象となるクラスライブラリは、ターゲットとなるカードリーダライタとの通信規約をカプセル化し、カードリーダライタを機能させるためのコマンド送信、レスポンス受信を行うためのインタフェースの提供を主な目的とする。
【００２４】
ところで、手動式、電動式を問わず原価低減が求められるカードリーダやカードリーダライタにおいては、メモリ、演算能力、通信機能といったリソースが制限された情報処理部としてのＣＰＵが採用されることが多い。
上記カードリーダライタが市場展開された後に動作設定や機能変更を行う場合、カードリーダライタ本体に内蔵したメカニカルな機能接続スイッチを変更したり、専用の設定変更用の機能を接続等する必要が生じる。
これは、メーカもしくはエンドユーザのサポート要員が操作することを意味するので、エンドユーザ自身が動的に容易に変更することが困難である。
【００２５】
そこで、本実施形態に係る電子機器装置としてのカードリーダライタ３０を含む情報処理システム１０は以下のような特徴的な構成を有する。
【００２６】
本実施形態に係るカードリーダライタ３０は、たとえばＨＩＤキーボードインタフェース（Ｉ／Ｆ）を有しており、メモリに国語（言語）に応じて対応したプログラムが記載されていない場合には、その言語に対応したプログラムに全面的に書き換え、機能変更を行う必要がある。
また、カードリーダライタ３０が上位装置２０に送信するデータに任意の開始、終了、区切り信号を付加したり、エラー通知の有効無効を選択する等、カードリーダライタ３０の動作に関する設定を行うが、場合によっては、この設定情報を変更する必要がある。
本実施形態のカードリーダライタ３０においては、このような設定情報の変更および機能の変更の必要がある場合に対応して、主通信システムのＵＳＢ通信システムではなく、別の無線通信システムにより変更すべき情報を受信して変更可能なように構成されている。
【００２７】
本実施形態において適用される無線通信システムは、一例として、通信規格であるIEEE802.11シリーズ（IEEE802.11a/IEEE802.11b）を利用した無線ＬＡＮ機器間の相互接続に伴う無線通信を行う。
そして、本実施形態において適用される無線通信システムは、Ｗｉ‐Ｆｉ（登録商標、ワイファイ，Wireless Fidelity）Allianceによって無線ＬＡＮ機器間の相互接続性を認証された無線通信システムとする。
これにより、異なるメーカ間のみならず、同一メーカであってもラインナップの異なる製品間であっても相互接続が保証されることなり、汎用性が高く、また、ノイズの影響を受けにくく、設定情報および機能の変更を、レイアウトを意識することなく容易に実現することが可能となっている。
【００２８】
本実施形態においては、この無線通信システムを用いて書き換える設定情報および機能の変更に関する情報は、以下のように構成をもって管理され、必要に応じて無線通信により書き換えが行われる。
【００２９】
１）設定情報の変更
カードリーダライタ３０が送信するデータに任意の開始、終了、区切り符号を付加したり、エラー通知の有効無効を選択する等、主にカードリーダの動作に関する設定を行う。
これは上位装置（ホスト装置）２０側で、設定・機能変更ソフトウェアを使用することにより、現在の設定値の確認、変更する設定値を容易に確認可能に構成される。
具体的には、本体機能で使用するコマンドとは別のコマンドを使ってカードリーダライタ３０上に実装した不揮発性メモリ上に設定情報を格納するように構成される。
【００３０】
２）機能の変更
たとえばＨＩＤキーボードＩ／Ｆを持つカードリーダの場合、エンドユーザが使用する国によって言語を切り替える必要がある。
実現方法としては、対応する言語用のソフトウェアを全てカードリーダライタ３０に内蔵し、カードリーダライタ３０上のメカニカルスイッチにより切り替えたり、上記設定情報の変更で切り替える方法もあるが、十分なリソースが必要になるので現実的ではない。
そこで、本実施形態においては、各国語用のソフトウェアを設定ツールに内蔵し（具体的にはダイナミックライブラリ化して一元管理）、エンドユーザの選択によりその都度カードリーダライタ３０のソフトウェアを書き換える方法が採用される。
各国語用のソフトウェアを人が選択する方法では、ヒューマンエラーにより目的のソフトウェアが選択されないことがあるが、本実施形態では、一元されたライブラリから対象ソフトウェアを一意に識別し更新するのでミスすることが防止される。
【００３１】
すなわち、本実施形態においては、設定・機能変更ソフトウェアにより、現状の設定・機能確認および設定・機能変更が誰にでも容易に実行できる。よって、思い込みや操作ミスによるヒューマンエラーを低減可能である。
また、機能変更時に手動で目的の機能を実現するカードリーダライタ用ソフトウェアを更新する必要がないので、確実に目的の機能を実現できる。また、選択可能な機能（ソフトウェア）をひとまとめにしているので、故意や過失による取り違いが発生しにくい。
【００３２】
図２および図３の例では、上位装置２０が、通常通信に関する本体機能とは別に、設定、機能変更プログラムを有し、設定、機能変更のために専用ホスト装置としての機能を併せ持ち、カードリーダライタ３０の無線通信部と相互接続に伴う無線通信を行うことが可能なホスト側無線通信部を有している。
【００３３】
次に、上記構成を有する情報処理システム１０の上位装置（ホスト装置）２０、並びにカードリーダライタ（電子機器装置）３０の具体的な構成および機能について説明する。
【００３４】
［上位装置（ホスト装置）２０の具体的な構成および機能］
本実施形態に係る上位装置（ホスト装置）２０の具体的な構成および機能について説明する。
上位装置２０は、上述したように、基本的に、カードリーダライタ３０との間で、主通信システムのＵＳＢ通信システムを通して通信制御を行い、コマンドの送信に対応したレスポンス（応答）を受信する等の各種情報の授受を行って、カードリーダライタ３０からの情報を取得する。
また、ここでの例では、上位装置２０は、カードリーダライタ３０の機器側無線通信部と相互接続して無線通信を行うホスト側無線通信部を有している。
そして、上位装置２０は、カードリーダライタ３０において設定情報の変更および機能の変更の必要がある場合に対応して、主通信システムのＵＳＢ通信システムではなく、このホスト側無線通信部を介してダウンロードさせて変更可能なように構成されている。
【００３５】
図２は、本実施形態に係る上位装置の構成例を概念的に示している。
図２の上位装置２０は、基本的に、処理装置であるＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ストレージユニット２４、バージョン（リビジョン）等の情報が表示される表示装置２５、およびキーボード２６１やマウス２６２を含む操作部２６を有している。
さらに、上位装置２０は、主通信システムとしてのホスト側ＵＳＢ通信部２７、ホスト側無線通信部２８、および設定・機能変更ソフトウェア格納部（設定・機能変更情報格納部）２９を有する。
ホスト側ＵＳＢ通信部２７は、ＵＳＢケーブル５０を介してカードリーダライタ３０のホスト側処理系のＵＳＢ通信部と接続されている。
【００３６】
なお、本例では、ＣＰＵ２１やホスト側無線通信部２８、設定・機能変更ソフトウェア格納部２９等により構成される専用ホスト装置が上位装置２０に組む込まれた構成が採用されている。
後述するように、この専用ホスト装置は、上位装置２０と別個に設けることも可能である。
【００３７】
本例においては、図中のストレージユニット２４内に保存されたオペレーティングシステム（ＯＳ）、ミドルウェアＭＷ、アプリケーション等のプログラムがソフトウェアシステムの一部をなし、実行時にいわゆるコンピュータ（電子計算機）のソフトウェアとしてＲＡＭ２３上に展開される。
【００３８】
このような構成を有する上位装置２０においては、次の特徴をもって構成されている。
上記したように、状況に応じた処理を実行するアプリケーションプログラムおよびカードリーダライタ３０との通信制御用の複数のミドルウェアを含むソフトウェアシステムを有している。
上位装置２０においては、この通信制御用の複数のミドルウェアをまとめてクラスライブラリとして形成される。
【００３９】
なお、クラスライブラリとは、ある特定の機能をもったプログラムを、オブジェクト指向言語を用いて一つの「クラス」として部品化し、関連する複数のクラスを一つのファイルにまとめたものをいう。
共通する属性やメソッドをまとめたものをクラスと呼ぶ。通常、そこにオブジェクト（群）は含まれない。
オブジェクトは、クラスに具体的なデータを持たせたものである。
こうした「クラス」はプログラムの部品として利用できるため、よく使われる汎用的なものをクラスライブラリに集めておくことで、プログラミングの労力を軽減することができる。
また、クラスライブラリでは、ファイル入出力、数学演算、ネットワークなど様々な機能を提供するライブラリを用意することが可能である。
【００４０】
上述したように、上位装置２０において、ＣＰＵ２１が全体の制御を行う。
上位装置２０は、カードリーダライタ３０との通常の通信を行う場合に、ＣＰＵ２１の制御の下、ホスト側ＵＳＢ通信部２７を通して、ＵＳＢケーブル５０により接続されたカードリーダライタ３０のホスト側処理系のＵＳＢ通信部との間でＵＳＢ通信を行う。
【００４１】
ＵＳＢ通信システムは、ホストである上位装置２０とデバイスであるカードリーダライタ３０間をシリアル通信で接続するものであって、たとえばプラグアンドプレイ機能（自動接続認識機能）、ホットプラグ機能（電源を入れたままでの抜き差しを可能にする機能）およびホストからデバイスへの電源供給機能など、ユーザの利便性を高める様々な機能を有している。
一般的に、ＵＳＢ通信で用いるＵＳＢケーブル５０は、５Ｖの電源ライン（Ｖ−ＢＵＳライン）、ＧＮＤ（グランド）ライン、およびデータ転送用のＤ＋及びＤ−の信号ラインから構成される合計４本の配線を有している。
そして、カードリーダライタ３０等のデバイス側では、Ｖ−ＢＵＳラインを通じて送信されるＶ−ＢＵＳ信号の常時監視を行っている。つまり、このＶ−ＢＵＳ信号の遷移状態を常時監視することで、ＵＳＢ通信の異常検出を行うこともできるようになっている。たとえば、Ｖ−ＢＵＳラインの上位装置が故意にダウンさせることのないシステムにおいては、ＵＳＢ通信中に何らかの理由でＵＳＢケーブルが外れた場合には、Ｖ−ＢＵＳ信号がオンからオフへと遷移し、その結果、デバイスはＵＳＢ通信の物理的な接続が破断したと認識し、ＵＳＢ通信の異常が検出されることもできる。
【００４２】
また、上述したように、本実施形態に係るカードリーダライタ３０は、たとえばＨＩＤキーボードインタフェース（Ｉ／Ｆ）を有しており、メモリに国語（言語）に応じて対応したプログラムが記載されていない場合には、その言語に対応したプログラムに全面的に書き換え、機能変更（仕様変更）を行う必要がある。
また、カードリーダライタ３０が上位装置２０に送信するデータに任意の開始、終了、区切り信号を付加したり、エラー通知の有効無効を選択する等、カードリーダライタ３０の動作に関する設定を行うが、場合によっては、この設定情報を変更する必要がある。
【００４３】
図２の上位装置２０は、このような場合に対応可能なように、カードリーダライタ３０において、上記した設定情報の変更および機能の変更の必要がある場合に対応して、主通信システムのＵＳＢ通信システムではなく、全く別系統の無線通信システムにより変更すべき情報を送信して変更可能なように構成されている。
すなわち、図２の上位装置２０は、たとえば不揮発性メモリ等の設定・機能変更ソフトウェア格納部２９に、種々の仕様に対応する各国語のソフトウェア等を設定ツールとして内蔵している。
上位装置２０は、ＣＰＵ２１の制御の下、ユーザによる操作部２６の操作（選択）により、設定・機能変更ソフトウェア格納部２９から必要な情報を読み出し、ホスト側無線通信部２８を通して、書き換えすべき設定情報やソフトウェアを無線規格に準じた形式でカードリーダライタ３０側に無線で送信する。
【００４４】
また、上位装置２０は、この無線通信系を介してカードリーダライタ３０の動作を監視することも可能に構成されている。
これに付随して、上位装置２０は、カードリーダライタ３０側で蓄積されたログ（ロギング）情報を受信して、ＲＡＭや別途設けた不揮発性メモリ等に保存して、保守用データとしてユーザに提供できるように構成されている。このようなログ情報等は表示装置２５やプリンタ等に出力され、解析等される。
【００４５】
以上、上位装置２０の構成および機能について具体的に説明した。
次に、カードリーダライタ３０の構成および機能について説明する。
【００４６】
［カードリーダライタ３０の構成および機能］
カードリーダライタ３０は、上位装置２０との通信およびカード４０との通信機能を有する。カードリーダライタ３０は、上位装置２０とのメイン（通常）の通信はＵＳＢ通信規格に準拠して行う。
また、カードリーダライタ３０は、設定情報や言語に対応したプログラムに全面的に書き換え、機能変更を行う必要がある場合に、その情報を無線で受信して処理を行う機能や、カードリーダライタ３０のログ情報を取得して、たとえば上位装置２０に無線で送信する機能を有する。
【００４７】
前述したように、図３は、本実施形態に係る電子機器装置としてのカードリーダライタの信号処理系の構成例を示している。
また、図４は、本実施形態に係るカードリーダライタのメイン側処理系とサブ側処理系においてＣＰＵ、リセット回路、電源回路を含む構成例を示す図である。
図３および図４において、上位装置の構成は要部のみ示されている。
【００４８】
カードリーダライタ３０は、図３および図４に示すように、メイン側処理系３１０およびサブ側処理系３２０を含んで構成されている。
メイン側処理系３１０が、基本的に、上位装置２０との通信およびカード４０との通信機能を有する。
サブ側処理系３２０が、基本的に、設定情報や言語に対応したプログラムに全面的に書き換え、機能変更を行う必要がある場合に、その情報を無線で受信して処理を行う機能や、カードリーダライタ３０のログ情報を取得して、たとえば上位装置２０に無線で送信する機能を有する。
【００４９】
［メイン側処理系３１０の構成］
カードリーダライタ３０のメイン側処理系３１０は、図３に示すように、カードリーダライタ３０全体を統合的に制御する第１の情報処理手段としてのメインＣＰＵ３１１、カードリーダライタ３０の動作プログラムや初期値、パラメータなどを格納する格納手段としてのＲＯＭ３１２、およびメインＣＰＵ３１１のワーキングエリアとして機能するＲＡＭ３１３を有している。
メイン側処理系３１０は、上位装置２０とＵＳＢ通信を行うＩ／Ｆ（インタフェース）である第１の通信手段としてのＵＳＢ通信部３１４、およびカードＩ／Ｆ３１５を有している。
さらに、メイン側処理系３１０は、図４に示すように、リセット回路３１６および電源回路３１７を含んで構成されている。
【００５０】
カードリーダライタ３０は、メイン側処理系３１０において、ＵＳＢ通信部３１４さらにはＵＳＢケーブル５０を介して上位装置２０と接続され、カードＩ／Ｆ３１５を介してカード４０と（有線または無線で）通信可能に構成されている。
カードリーダライタ３０は、上位装置２０との間の通信規約に沿った情報列のコマンドに基づき動作し、カード４０との間の通信規約に沿った情報列の送受信を行う機能を有する。
【００５１】
ＵＳＢ通信部３１４は、上位装置２０からカードリーダライタ３０へ送られた信号をＴＴＬレベルの信号に変換し、それをメインＣＰＵ３１１に転送する機能を有する。
また、メインＣＰＵ３１１からの信号を逆変換して、上位装置２０に転送する。
本実施形態において、上位装置２０とカードリーダライタ３０の間の通常の通信としては、上述したように、ＵＳＢ通信システムが採用されている。
【００５２】
ＣＰＵ３１１は、上位装置２０との間の通信規約（本例ではＵＳＢ）に沿った情報列（たとえばコマンドＡＰＤＵ）内のコマンドに基づいて動作する。
そして、メインＣＰＵ３１１は、そのコマンドＡＰＤＵを、カード４０との間の通信規約に沿った情報列に変換し、これをカード４０に送信する。
すなわち、メインＣＰＵ３１１は、上位装置２０からのコマンド（ＡＰＤＵ）を、カード４０との通信プロトコルに沿った形式（コマンドＴＰＤＵ）に変換する。
変換されたコマンドＴＰＤＵは、カードＩ／Ｆ３１５を通じてカード４０に送信される。
【００５３】
一方で、カード４０からのレスポンス受信時には、メインＣＰＵ３１１はレスポンスＴＰＤＵをレスポンスＡＰＤＵに変換する。変換されたレスポンスＡＰＤＵは、ＵＳＢ通信部３１４を通じて上位装置２０に転送される。
【００５４】
カードＩ／Ｆ３１５は、コマンドＴＰＤＵを、カード４０に応じた電圧や通信速度に変換し、カード４０に送信する。
また、カードＩ／Ｆ３１５は、カード４０から受信した信号をＴＴＬレベルの信号に変換し、それをメインＣＰＵ３１１に伝える機能を有する。
【００５５】
ＲＯＭ３１２は、プログラム等の不揮発性データを保存し、その容量はなるべく小さく低コスト化を図れるように制限されている。
ＲＯＭ３１２は、各種プログラムや設定情報を格納するが、少なくとも、カードリーダライタ３０が上述したＨＩＤキーボードＩ／Ｆを有している場合に、国語（言語）に応じて対応したプログラムが記載されていない場合には、その言語に対応したプログラムに全面的に書き換え、機能変更を行う必要がある。
また、カードリーダライタ３０が上位装置２０に送信するデータに任意の開始、終了、区切り信号を付加したり、エラー通知の有効無効を選択する等、カードリーダライタ３０の動作に関する設定を行うが、場合によっては、この設定情報を変更する必要がある。
したがって、本実施形態のＲＯＭ３１２は、少なくとも上記言語に対応したプログラムおよび設定情報について、書き換え可能に構成されている。
この書き換え処理については、サブ側処理系３２０のサブＣＰＵ３２１の制御の下で行われる。
【００５６】
これに対して、ＲＡＭ３１３は、メインＣＰＵ３１１のワーキングエリアとして機能し、一時的にデータを保存する。
【００５７】
［サブ側処理系３２０の構成］
カードリーダライタ３０のサブ側処理系３２０は、図３に示すように、カードリーダライタ３０のプログラムや設定情報の変更（書き換え）やログ情報の収集等のサブ処理を制御する第２の情報処理手段としてのサブＣＰＵ３２１、サブＣＰＵ３２１の動作プログラムなどを格納するＲＯＭ３２２、およびサブＣＰＵ３２１のワーキングエリアとして機能するＲＡＭ３２３を有している。
サブ側処理系３２０は、第２の通信手段としての無線通信部３２４を有している。
さらに、サブ側処理系３２０は、図４に示すように、リセット回路３２５および電源回路３２６を含んで構成されている。
【００５８】
カードリーダライタ３０は、サブ側処理系３２０において、無線通信部３２４を介して上位装置２０と相互に接続される。
【００５９】
無線通信部３２４は、上位装置２０とＷｉ‐Ｆｉ（登録商標）Allianceによって無線ＬＡＮ機器間の相互接続性を認証された無線通信システムを用いて無線通信を行う機能を有する。
これにより、異なるメーカ間のみならず、同一メーカであってもラインナップの異なる製品間であっても相互接続が保証されることなり、汎用性が高く、また、ノイズの影響を受けにくく、設定情報および機能の変更を、ケーブルをさらに配線する必要がなく、レイアウトを意識することなく容易に実現することが可能となっている。
【００６０】
ＲＯＭ３２２は、プログラム等の不揮発性データを保存し、その容量はなるべく小さく低コスト化を図れるように制限されている。
【００６１】
これに対して、ＲＡＭ３２３は、サブＣＰＵ３２１のワーキングエリアとして機能し、一時的にデータを保存する。
【００６２】
サブＣＰＵ３２１は、無線通信部３２４を通して接続が確認された上位装置２０からソフトウェアや設定情報の変更（書き換え）コマンドを受けると、メインＣＰＵ３１１に対して信号Ｓ３２１により動作停止指令を発行する。
そして、サブＣＰＵ３２１は、無線通信部３２４で受信された書き換えるべき、ソフトウェア情報、あるいは設定情報により、メイン側処理系３１０のＲＯＭ３１２の書き換えが許可されている領域のソフトウェアあるいは設定情報を、書き換える（変更する）。
サブＣＰＵ３２１は、この書き換えが正常に終了したことを確認した後、リセット信号Ｓ３２１Ｒをリセット回路３１６に発行してメインＣＰＵ３１１をリセットさせ、その後、新たに書き換えられたソフトウェア（プログラム）や設定情報を用いた処理が行えるように制御する機能を有する。
あるいは、サブＣＰＵ３２１は、この書き換えが正常に終了したことを確認した後、電源オン（ＯＮ）／オフ（ＯＦＦ）信号Ｓ３２１ＰＷを電源回路３１７に発行してメインＣＰＵ３１１を電源オン／オフさせ、その後、新たに書き換えられたソフトウェア（プログラム）や設定情報を用いた処理が行えるように制御する機能を有する。
【００６３】
また、サブＣＰＵ３２１は、メイン側処理系３１０の監視機能やログ情報を収集する機能を有する。
サブＣＰＵ３２１は、収集したログ情報は、ＲＡＭ３２３に、あるいは別途設けられるメモリ３２７に一時的に保持しておき、無線通信部３２４を介して上位（ホスト）側からログ情報の送信要求を受けると、無線通信部３２４を通して上位装置２０に送信する。
【００６４】
上述したように、メインＣＰＵ３１１は、カードリーダライタ３０の動作の制御機能を総合的に司る第１の情報処理手段としての中核をなし、リセット回路３１６からのリセット信号ＲＳＴＭに基づいて電子機器装置であるカードリーダライタ３０のリセット命令を実行する。
また、メインＣＰＵ３１１は、電源回路３１７からの電源オン（ＯＮ）／オフ（ＯＦＦ）信号ＰＷＯＦＭに基づいてカードリーダライタ３０の電源のＯＮ／ＯＦＦ命令を実行する。
さらに、メインＣＰＵ３１１は、サブ側処理系３２０のリセット回路３２５にリセット信号ＲＳＴＳを送信したり、電源回路３２６に電源ＯＮ／ＯＦＦ信号ＰＷＯＦＳを送信したりする。
なお、本実施形態では、メインＣＰＵ３１１は、サブＣＰＵ３２１に対してブートモード設定の信号を送信してブートモード設定命令を実行することができるようになっている。
【００６５】
リセット回路３１６は、サブＣＰＵ３２１からのリセット信号Ｓ３２１Ｒを受信して、メインＣＰＵ３１１を含むカードリーダライタ３０全体にハードリセットをかけ、メインＣＰＵ３１１を初期化する。
電源回路３１７は、サブＣＰＵ３２１からの電源ＯＮ／ＯＦＦ信号Ｓ３２１ＰＷに基づいてメインＣＰＵ３１１を含むカードリーダライタ３０全体に電源のＯＮ／ＯＦＦをかける。
【００６６】
そして、サブＣＰＵ３２１は、カードリーダライタ３０の設定情報や機能変更情報の書き換え、動作状態の監視機能を司る第２の情報処理手段としての中核をなし、リセット回路３２５からのリセット信号ＲＳＴＳに基づいてリセット回路３１６にリセット信号を送信したり、電源回路３２６からの電源ＯＮ／ＯＦＦ信号ＰＷＯＦＳに基づいて電源回路３１７に電源ＯＮ／ＯＦＦ信号を送信したりする機能を有する。
なお、本実施形態では、サブＣＰＵ３２１は、メインＣＰＵ３１１に対してブートモード設定の信号を送信し、ブートモード設定により電子機器装置３０のソフトウェアを書き換えることができるようになっている。
【００６７】
上記構成によれば、メインＣＰＵ３１１はカードリーダライタ３０本来の機能（主機能）を発揮するために設けられ、サブＣＰＵ３２１はカードリーダライタ３０のソフトウェアや設定情報の変更や、ログ情報の収集、あるいは動作状態を監視する制御機能を発揮するために設けられている。
サブＣＰＵ３２１による制御状況に応じて、メインＣＰＵ３１１を含むリセット回路３１６や電源回路３１７による総合的なカードリーダライタ３０の動作の制御をすることができる。なお、動作状態とは、カードリーダライタ３０が期待した機能を実現可能な状態をいう。
【００６８】
なお、本実施形態によれば、カードリーダライタ３０において、メインＣＰＵ３１１およびサブＣＰＵ３２１はそれぞれブートモード設定の機能を有している。
このため、サブＣＰＵ３２１がメインＣＰＵ３１１に対してブートモード設定の信号ＢＳＴＳを送信することによって、メインＣＰＵ３１１をブートモードに遷移させてソフトウェアの更新（アップデート）をすることができる。
また、メインＣＰＵ３１１がサブＣＰＵ３２１に対してブートモード設定の信号ＢＳＴＭを送信することによって、サブＣＰＵ３２１をブートモードに遷移させてソフトウェアの更新（アップデート）をすることができる。
これにより、メインＣＰＵ３１１とサブＣＰＵ３２１とによる相乗効果により、ソフトウェアの保守性を向上させることができる。また、更新の際には、更新用のソフトウェアをフラッシュメモリ等の記憶部に常駐させることなく、メインＣＰＵ３１１やサブＣＰＵ３２１をブートモードに制御可能にしたことから、更新用ソフトウェア自身を更新することが可能となり、ソフトウェアの部分的更新ではなく全体的更新をすることができ、ソフトウェアの保守性をより向上させることができる。
【００６９】
［ソフトウェアあるいは設定情報の変更時の動作例］
次に、上記構成によるソフトウェアあるいは設定情報の変更時の動作を、図５に関連付けて説明する。
図５は、本実施形態に係る情報処理システムにおけるソフトウェアあるいは設定情報の変更時の動作説明するためのフローチャートである。
以下では、一例としてＨＩＤキーボードＩ／Ｆを持つカードリーダ３０を導入する場合に、その導入国に対応する国語（言語）用ソフトウェアに書き換える（変更する）場合を例に説明する。
【００７０】
たとえば、新たに設置するカードリーダライタ３０が、たとえばＨＩＤキーボードＩ／Ｆを持つカードリーダライタの場合、エンドユーザが使用する国によって言語を切り替える必要がある。
本実施形態においては、上記例では上位装置２０に各国語用のソフトウェアを設定ツールに内蔵し（具体的にはダイナミックリンクライブラリ化して一元管理）、エンドユーザの選択によりその都度カードリーダライタ３０のソフトウェアを書き換える方法が採用される。
すなわち、図２の上位装置２０は、たとえば不揮発性メモリ等の設定・機能変更ソフトウェア格納部２９に、各国語のソフトウェア等を設定ツールとして内蔵している。
【００７１】
上位装置２０では、ＣＰＵ２１の制御の下、エンドユーザによる操作部２６の操作（選択）によりカードリーダライタ３０のソフトウェアを書き換える指示が出される（ステップＳＴ１）。
これにより、上位装置２０は、ホスト側無線通信部２８を通して所定の無線通信規格に準じてカードリーダライタ３０の無線通信部３２４との間で相互接続処理が行われる（ステップＳＴ２）。
相互接続が正常に行われていることを確認すると（ステップＳＴ３）、上位装置２０においては、ソフトウェアの書き換えコマンドが発行され（ステップＳＴ４）、設定・機能変更ソフトウェア格納部２９から必要な情報が読み出され（ステップＳＴ５）、ホスト側無線通信部２８を通して、書き換えすべき設定情報やソフトウェアが無線規格に準じた形式でカードリーダライタ３０側に無線で送信される（ステップＳＴ６）。
【００７２】
カードリーダライタ３０において、サブＣＰＵ３２１側で無線通信部３２４を通して接続が確認された上位装置２０からソフトウェア（や設定情報）の書き換えコマンドが受信される（ステップＳＴ７）。
これに伴い、サブＣＰＵ３２１からメインＣＰＵ３１１に対して信号Ｓ３２１により動作停止指令を発行され（ステップＳＴ８）、メインＣＰＵ３１１が停止状態（無動作状態）で、サブＣＰＵ３２１の制御の下、無線通信部３２４で受信された書き換えるべき、ソフトウェア情報（あるいは設定情報）により、メイン側処理系３１０のＲＯＭ３１２の書き換えが許可されている領域のソフトウェアあるいは設定情報が、書き換えられる（ステップＳＴ９）。
サブＣＰＵ３２１では、この書き換えが正常に終了したことを確認された後（ステップＳＴ１０）、リセット信号Ｓ３２１Ｒがリセット回路３１６に発行されメインＣＰＵ３１１がリセットさせる（ステップＳＴ１１）。
その後、メインＣＰＵ３１１により、新たに書き換えられたソフトウェア（プログラム）や設定情報を用いた通常処理が行われる（ステップＳＴ１２）。
【００７３】
あるいは、サブＣＰＵ３２１においては、この書き換えが正常に終了したことを確認した後、電源オン（ＯＮ）／オフ（ＯＦＦ）信号Ｓ３２１ＰＷが電源回路３１７に発行されて、メインＣＰＵ３１１を電源オン／オフさせ、その後、新たに書き換えられたソフトウェア（プログラム）や設定情報を用いた通常処理が行えるように制御される。
【００７４】
［ログ情報収集］
次に、カードリーダライタ３０のログ情報の収集処理について説明する。
図６は、本実施形態に係るカードリーダライタ３０のログ情報の収集処理について説明するための図である。
【００７５】
カードリーダライタ３０が動作中のログ情報がサブ側処理系３２０のサブＣＰＵ３２１の制御の下、収集され、収集したログ情報は、ＲＡＭ３２３に、あるいは別途設けられるメモリ３２７に保持される（ステップＳＴ２１）。
【００７６】
ここで、上位装置２０では、ＣＰＵ２１の制御の下、保守員等のエンドユーザによる操作部２６の操作（選択）によりカードリーダライタ３０のログ情報取得が指示される（ステップＳＴ２２）。
これにより、上位装置２０は、ホスト側無線通信部２８を通して所定の無線通信規格に準じてカードリーダライタ３０の無線通信部３２４との間で相互接続処理が行われる（ステップＳＴ２３）。
相互接続が正常に行われていることを確認すると（ステップＳＴ２４）、上位装置２０においては、ログ情報の送信要求が発行され（ステップＳＴ２５）、ホスト側無線通信部２８を通して、送信要求が無線規格に準じた形式でカードリーダライタ３０側に無線で送信される（ステップＳＴ２６）。
【００７７】
カードリーダライタ３０において、サブＣＰＵ３２１側で無線通信部３２４を通して接続が確認された上位装置２０からのログ情報送信要求が受信される（ステップＳＴ２７）。
サブＣＰＵ３２１において、無線通信部３２４を介して上位（ホスト）側からログ情報の送信要求を受けると、ＲＡＭ３２３あるいはメモリ３２７から蓄積したログ情報が読み出され（ステップＳＴ２８）、無線通信部３２４を通して上位装置２０に送信される（ステップＳＴ２９）。
上位装置２０では、無線通信部２８を通して接続が確認されたカードリーダライタ３０からのログ情報送が受信される（ステップＳＴ３０）。
これに伴い、上位装置２０では、カードリーダライタ３０側で蓄積されたログ情報が、ＲＡＭや別途設けた不揮発性メモリ等に、保守用データとしてユーザに提供できるように保存される。
このようなログ情報等は表示装置２５やプリンタ等に出力され、解析等される（ステップＳＴ３１）。
【００７８】
［メインＣＰＵ３１１による制御機能］
次に、カードリーダライタ３０のメインＣＰＵ３１１による制御機能について説明する。
図７、本実施形態に係るカードリーダライタのメインＣＰＵによる制御機能を説明するためのフローチャートである。
【００７９】
ＵＳＢケーブル５０で接続された上位装置２０とカードリーダライタ３０とにおいて、カードリーダライタ３０に電源が投入されると、メインＣＰＵ３１１において、エニュメレーション、つまり、ＵＳＢ規格に定めたカードリーダライタ３０が上位装置２０に接続された際の起動処理を実行してその処理が完了したかどうかが判断される（ステップＳＴ４１）。
より具体的には、このエニュメレーションは、たとえば、上位装置２０とカードリーダライタ３０とがＵＳＢケーブル５０で接続されると、上位装置２０は、カードリーダライタ３０を識別する固有番号を付与され、この固有番号に基づき、上位装置２０とカードリーダライタ３０との間で通信等が行われる。
なお、エニュメレーションとは、ＵＳＢ規格で定義された通信確立手順のことであり、
上位装置（ホスト）がバスに接続されているデバイスを識別し、アドレスを指定し、収集したディスクリプタ情報を固定のものにすることをいう。
ＵＳＢデバイスは、ディスクリプタを使って、その属性を報告する。
【００８０】
エニュメレーション処理が完了後、カードリーダライタ３０のメインＣＰＵ３１１の初期化が行われる。
ここで、初期化とは、カードリーダライタ３０が使用可能な状態となるように準備を行うための動作をいい、この初期化動作は、カードリーダライタ３０の電源投入時、始業開始前あるいは所定のエラー処理後等に行われる。
たとえば、カードリーダライタ３０内のＲＯＭ／ＲＡＭチェック、ポート設定、変数設定等のソフトウェア処理のことをいう。
初期化を行った後に、初期化完了信号がセットされて（ステップＳＴ４２）、ＣＰＵの出力ポートがＯＮ（Ｈｉｇｈ）にされる。
【００８１】
エニュメレーションと初期化が完了すると、メインＣＰＵ３１１において上位装置２０からの指令に従ってカードリーダライタ３０の主機能の処理を実行される（ステップＳＴ４３）。
主機能の処理とは、たとえば、本実施形態にように電子機器装置としてカードリーダ（ライタ）を採用する場合には、カードの読み取り機能、取り込み機能等、カードのリードおよびライトに付随するすべての機能を発揮する。
【００８２】
メインＣＰＵ３１１では、サブＣＰＵ３２１からの生存確認信号がセットされたか否かを判断し（ステップＳＴ４４）、生存確認信号がセットされたと判定すれば生存確認信号がクリアされる一方（ステップＳＴ４５）、生存確認信号がセットされていないと判定すれば処理をステップＳＴ４３の処理に戻して、カードリーダライタ３０の主機能の処理が実行される。
たとえば、サブＣＰＵ３２１がメインＣＰＵ３１１に対して生存確認信号を送信し、メインＣＰＵ３１１は生存確認信号がセットされた状態となり、この生存確認信号がセット（送信）された時点から所定の異常判断時間が経過するまでに、メインＣＰＵ３１１から生存確認信号に対する所定の応答信号を受信すれば、サブＣＰＵ３２１は、セットされた状態がクリアされた状態となり、サブＣＰＵ３２１はメインＣＰＵ３１１の動作が正常であると判断する。
もし、異常判断時間内に応答信号を受信できなければ、サブＣＰＵ３２１はメインＣＰＵ３１１に暴走や故障などの異常が発生したと判断する。
【００８３】
［サブＣＰＵ３２１による監視機能］
次に、サブＣＰＵ３２１により監視機能について説明する。
図８は、本実施形態に係るカードリーダライタのサブＣＰＵによる動作監視機能を説明するためのフローチャートである。
【００８４】
ＵＳＢケーブル５０で接続された上位装置２０とカードリーダライタ３０とにおいて、サブＣＰＵ３２１においては、上述のエニュメレーションを実行してその処理が完了したかどうかが判断される（ステップＳＴ５１）。次いで、サブＣＰＵ３２１の初期化を行った後に、初期化完了信号がセットされる（ステップＳＴ５２）。
【００８５】
エニュメレーションと初期化が完了すると、サブＣＰＵ３２１ではカードリーダライタ３０の電源がＯＮ状態になっているか否かが判断され（ステップＳＴ５３）、電源がＯＮ状態になっていないと判定すると、ＯＮ状態になるまでステップＳＴ５３の処理が繰り返される。
ステップＳＴ５３において、カードリーダライタ３０の電源がＯＮ状態になっていると判定すると、初期化監視タイマーがたとえば５秒間にセットされる（ステップＳＴ５４）。
【００８６】
サブＣＰＵ３２１による初期化監視タイマーのセットが完了すると、メインＣＰＵ３１１の初期化が完了したか否かが判断される（ステップＳＴ５５）。
初期化が完了したと判定すると、ステップＳＴ５９に処理を進める一方、初期化が完了していないと判定すると、初期化監視タイマーがタイムアップしたか否かがサブＣＰＵ３２１において判定される（ステップＳＴ５６）。
なお、ステップＳＴ５５においてサブＣＰＵ３２１では初期化が完了したと判定すると、メインＣＰＵ３１１にその旨が通知され、メインＣＰＵ３１１では初期化完了信号がセットされることになる（図７のステップＳＴ４２）。
【００８７】
ステップＳＴ５６において、初期化監視タイマーがタイムアップしていない、すなわち、上記例示した５秒間を経過していないと判定すると、処理がステップＳＴ５５に戻され、メインＣＰＵ３２の初期化が完了したか否かが判断される。
一方、ステップＳＴ５６において、初期化監視タイマーがタイムアップした、すなわち、上記例示した５秒間を経過したと判定すると、後述するリセット処理（ステップＳＴ５７）や電源ＯＮ／ＯＦＦ処理（ステップＳＴ５８）が実行される。
【００８８】
ステップＳＴ５９においては、サブＣＰＵ３２１により生存確認タイマーがたとえば１秒間にセットされる。
次いで、サブＣＰＵ３２１によりメインＣＰＵ３１１に対して生存確認信号がセットされる（ステップＳＴ６０）。メインＣＰＵ３１１に生存確認信号がセットされたか否かは、図７のステップＳＴ４４にて判断される。
【００８９】
次いで、サブＣＰＵ３２１においては、生存確認信号がクリアされたか否かが判断される（ステップＳＴ６１）。
これは、図７のステップＳＴ４５において、メインＣＰＵ３１１は生存確認信号をクリアすると、サブＣＰＵ３２１は生存確認信号がクリアされたと判定し、処理をステップＳＴ５９に戻す。
【００９０】
一方、ステップＳＴ６１において、生存確認信号がクリアされていないと判定されると、生存確認タイマーがタイムアップしたか否かをサブＣＰＵ３２１にて判定される（ステップＳＴ６２）。
ステップＳＴ５６にて生存確認タイマーがタイムアップしていない、すなわち、上記例示した１秒間を経過していないと判定すると、処理がステップＳＴ６１に戻され、メインＣＰＵ３１１にて生存確認信号がクリアされたか否かが判断される。
一方、ステップＳＴ６２にて生存確認タイマーがタイムアップした、すなわち、上記例示した１秒間を経過したと判定されると、リセット処理（ステップＳＴ６３）や電源ＯＮ／ＯＦＦ処理（ステップＳＴ６４）が実行される。
【００９１】
このように、動作監視機能を有するサブＣＰＵ３２１は、メインＣＰＵ３１１の初期化が完了したか否かを監視して初期化が正常に完了していない場合や、メインＣＰＵ３１１の生存確認を監視して生存確認ができない場合には、メインＣＰＵ３１１のリセット処理や電源ＯＮ／ＯＦＦ処理を実行することができる。
したがって、電子機器装置であるカードリーダライタ３０の通信不具合や機能不具合が発生しても、上位装置２０の再起動若しくはシャットダウンといった上位装置２０による復旧を試みることなく、カードリーダライタ３０自体で自己復旧を図ることができることから、電子機器装置を安定して動作させることができる
【００９２】
以上説明したように、本実施形態によれば、以下の効果を得ることができる。
本実施形態においては、各国語用のソフトウェアを上位側の設定ツールに内蔵し（具体的にはダイナミックライブラリ化して一元管理）、エンドユーザの選択によりその都度カードリーダライタ３０のソフトウェアを書き換える方法が採用される。
したがって、各国語用のソフトウェアを人が選択する方法では、ヒューマンエラーにより目的のソフトウェアが選択されないことがあるが、本実施形態では、一元されたライブラリから対象ソフトウェアを一意に識別し更新するのでミスすることが防止される。
【００９３】
すなわち、本実施形態においては、設定・機能変更ソフトウェアにより、現状の設定・機能確認および設定・機能変更が誰にでも容易に実行できる。よって、思い込みや操作ミスによるヒューマンエラーを低減可能である。
また、機能変更時に手動で目的の機能を実現するカードリーダライタ用ソフトウェアを更新する必要がないので、確実に目的の機能を実現できる。また、選択可能な機能（ソフトウェア）をひとまとめにしているので、故意や過失による取り違いが発生しにくい。
【００９４】
また、電子機器装置としてのカードリーダライタ３０の無線通信部３２４は、上位装置２０のホスト側無線通信部２８とＷｉ‐Ｆｉ（登録商標）Allianceによって無線ＬＡＮ機器間の相互接続性を認証された無線通信システムを用いて無線通信を行う機能を有する。
これにより、異なるメーカ間のみならず、同一メーカであってもラインナップの異なる製品間であっても相互接続が保証されることなり、汎用性が高く、また、ノイズの影響を受けにくく、設定情報および機能の変更を、ケーブルをさらに配線する必要がなく、レイアウトを意識することなく容易に実現することが可能となっている。
【００９５】
また、メインＣＰＵ３１１に対するサブＣＰＵ３２１からの電源ＯＮ／ＯＦＦ処理によって、カードリーダライタ３０自体が電源のＯＮ／ＯＦＦ処理を実行することができるので、カードリーダライタ３０の通信不具合や機能不具合が発生しても、上位装置２０の再起動若しくはシャットダウンといった上位装置２０による復旧を試みることなく、カードリーダライタ３０自体で自己復旧を図ることができる。
このため、電子機器装置としてのカードリーダライタを安定して動作させることができる。また、メインＣＰＵ３１１に対するサブＣＰＵ３２１からの電源ＯＮ／ＯＦＦ処理によっても自己復旧できない場合は、上位装置２０にカードリーダライタ３０の異常を通知して、カードリーダライタ３０の電源をＯＦＦ状態にすることにより、上位装置２０の再起動若しくはシャットダウン等による上位装置による復旧を試みることができる。
すなわち、上位装置２０がカードリーダライタ３０の状態を監視するのみならず、カードリーダライタ３０が上位装置２０の状態を監視することによって監視状態の相互補完を実現しており、上位装置２０はカードリーダライタ３０の異常を検出すると再起動させることができ、カードリーダライタ３０は上位装置２０の異常を検出すると無線により上位装置２０に通知することができる。
【００９６】
［他の実施形態］
図９は、本発明に係る情報処理システムの他の実施形態を説明するための図である。
【００９７】
上述した実施形態においては、上位装置（ホスト）２０とカードリーダライタ３０を１対１に接続して構成したが、図９に示すように、設定・機能変更のソフトウェアはカードリーダライタ３０が接続された上位装置２０とは別個に専用ホスト装置６０として設けることも可能である。
上位装置２０−１〜２０−３とカードリーダライタ３０−１〜３０−３のセットを複数台管理するようなシステム構成の場合、専用ホスト装置６０を個別で設けて、設定・機能変更機能を管理することにより、設定・機能変更機能を別個にさせて全体管理させた方が効率的である。
【００９８】
この場合、設定、機能変更情報は各上位装置２０−１〜２０−３に転送し、各上位装置２０−１〜２０−３から対応するカードリーダライタ３０−１〜３０−３に無線で送信するように、あるいは、専用ホスト装置６０から変更を要するカードリーダライタ３０に対して無線で直接送信するように構成することも可能である。
【００９９】
図１０は、本発明に係る情報処理システムのさらに他の実施形態を説明するための図である。
また、上述した実施形態では上位装置２０と電子機器装置であるカードリーダライタ３０を１対１で接続しているが、図１０に示すように、上位装置２０と複数のカードリーダライタ（電子機器装置）３０−１〜３０−ｎというように１対多数の場合でもよく、ＵＳＢ接続に限らずにイーサーネット接続であってもよい。
この場合、上位装置２０Ｂから変更を要するカードリーダライタ３０に対して無線で変更すべき情報を直接送信するように構成することが可能である。
【０１００】
図９や図１０の構成を採用することにより、上記した実施形態の効果に加えて、書き換えやレイアウト等の自由度が上がるという利点がある。
【０１０１】
なお、以上詳細に説明した方法は、上記手順に応じたプログラムとして形成し、ＣＰＵ等のコンピュータで実行するように構成することも可能である。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー（登録商標）ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
【符号の説明】
【０１０２】
１０，１０Ａ，１０Ｂ・・・情報処理システムは、２０，２０−１〜２０−３・・・上位装置（ホスト装置）、２１・・・ＣＰＵ、２２・・・ＲＯＭ、２３・・・ＲＡＭ、２４・・・ストレージユニット、２５・・・表示装置、２６・・・操作部、２６１・・・キーボード、２６２・・・マウス、２７・・・ホスト側ＵＳＢ通信部、２８・・・ホスト側無線通信部、２９・・・設定・機能変更ソフトウェア格納部、３０，３０−１〜３０−３・・・カードリーダライタ（電子機器装置）、３１０・・・メイン側処理系、３１１・・・メインＣＰＵ（第１の情報処理手段）、３１２・・・ＲＯＭ（格納手段）、３１３・・・ＲＡＭ、３１４・・・ＵＳＢ通信部（第１の通信手段）、３１５・・・カードＩ／Ｆ３１５、３１６・・・リセット回路、３１７・・・電源回路、３２０・・・サブ側処理系、３２１・・・サブＣＰＵ（第２の情報処理手段）、３２２・・・ＲＯＭ、３２３・・・ＲＡＭ、３２４・・・無線通信部（第２の通信手段）、３２５・・・リセット回路、３２６・・・電源回路、３２７・・・メモリ、４０・・・情報カード、５０・・・ＵＳＢケーブル、６０・・・専用ホスト装置。
【図１】
2014127150.tif 000003
【図２】
2014127150.tif 000004
【図３】
2014127150.tif 000005
【図４】
2014127150.tif 000006
【図５】
2014127150.tif 000007
【図６】
2014127150.tif 000008
【図７】
2014127150.tif 000009
【図８】
2014127150.tif 000010
【図９】
2014127150.tif 000011
【図１０】
2014127150.tif 000012