ウィジェットをサポートしているオペレーションシステムが実装された通信機器に実装されるアプリケーションプログラムであって、ウィジェットを有するウィジェット層と、前記通信機器と電子機器との通信に必要なドライバを有するドライバ層と、コントローラとの3層を含んでおり、前記コントローラが、前記通信機器の各ウィジェットの属性が記述されているウィジェットデータと、前記通信機器の各ドライバの属性が記述されているドライバデータとを参照して、前記ウィジェット層の各ウィジェットと前記ドライバ層の各ドライバとの連携、並びに、前記ウィジェット層の各ウィジェット及び前記ドライバ層の各ドライバの制御を行うことを特徴とするアプリケーションプログラム。前記コントローラが、複数のウィジェット及び複数のドライバを一括制御することができることを特徴とする請求項1に記載のアプリケーションプログラム。前記ウィジェットデータ及び前記ドライバデータの少なくとも一方によって組み合わせられているウィジェット及びドライバが直接通信を行うことができることを特徴とする請求項1又は請求項2に記載のアプリケーションプログラム。前記電子機器がFA機器であることを特徴とする請求項1~3のいずれか1項に記載のアプリケーションプログラム。ウィジェットをサポートしているオペレーションシステムと、ウィジェットを有するウィジェット層と、前記通信機器と電子機器との通信に必要なドライバを有するドライバ層と、コントローラとの3層を含むアプリケーションプログラムとを実装し、各ウィジェットの属性が記述されているウィジェットデータと、各ドライバの属性が記述されているドライバデータとを格納する不揮発性メモリを備える通信機器であって、前記コントローラが、前記ウィジェットデータ及び前記ドライバデータとを参照して、前記ウィジェット層の各ウィジェットと前記ドライバ層の各ドライバとの連携、並びに、前記ウィジェット層の各ウィジェット及び前記ドライバ層の各ドライバの制御を行うことを特徴とする通信機器。しかしながら、非特許文献1で開示されているアプリケーションプログラムは、特定の製造メーカーのPLCにしか対応していないため、別の製造メーカーのPLCを操作管理するためには別のアプリケーションプログラムを新しく実装する必要があった。FAFactoryAutomation分野では、種々のFA機器を組み合わせて所望の製造システムを構築するため、特定の製造メーカーのFA機器にしか対応していないアプリケーションプログラムは不便であった。また、一般的なアプリケーションプログラムは、操作管理の対象であるFA機器の増減や操作項目及び管理項目の増減をフレキシブルに行えないため、不便であった。本発明は、上記の状況に鑑み、通信先機器のデータの確認や更新を行うためのアプリケーションプログラム及び通信機器であって、利便性の高いアプリケーションプログラム及び通信機器を提供することを目的とする。上記目的を達成するために本発明に係るアプリケーションプログラムは、ウィジェットをサポートしているオペレーションシステムが実装された通信機器に実装されるアプリケーションプログラムであって、ウィジェットを有するウィジェット層と、前記通信機器と電子機器との通信に必要なドライバを有するドライバ層と、コントローラとの3層を含んでおり、前記コントローラが、前記通信機器の各ウィジェットの属性が記述されているウィジェットデータと、前記通信機器の各ドライバの属性が記述されているドライバデータとを参照して、前記ウィジェット層の各ウィジェットと前記ドライバ層の各ドライバとの連携、並びに、前記ウィジェット層の各ウィジェット及び前記ドライバ層の各ドライバの制御を行う構成第1の構成としている。上記第1の構成によると、ウィジェット層と、ドライバ層と、コントローラとの3層構造により、各ウィジェットの追加、削除、機能バージョンアップ及び各ドライバの追加、削除、機能バージョンアップを個別に行うことができる。これにより、操作管理の対象である電子機器本発明に係るアプリケーションプログラムが実装される通信機器と通信可能な電子機器の増減や操作項目及び管理項目の増減をフレキシブルに行うことができるので、利便性が高くなる。上記第1の構成のアプリケーションプログラムにおいて、前記コントローラが、複数のウィジェット及び複数のドライバを一括制御することができる構成第2の構成とすることが好ましい。上記第2の構成によると、一括制御により、個々のウィジェットに対して個別に制御の設定を行う必要がなくなるので、作業効率が向上する。また、一部のウィジェットに対する制御の設定忘れなどの操作ミスも防止することができる。上記第1又は第2の構成のアプリケーションプログラムにおいて、前記ウィジェットデータ及び前記ドライバデータの少なくとも一方によって組み合わせられているウィジェット及びドライバが直接通信を行うことができる構成第3の構成とすることが好ましい。上記第3の構成によると、ウィジェットデータ及びドライバデータの少なくとも一方によって組み合わせられているウィジェットとドライバとの通信を効率よく行うことが可能になる。上記第1~3のいずれかの構成のアプリケーションプログラムにおいて、前記電子機器がFA機器であることが好ましい。FA分野では、様々の製造メーカーのFA機器を組み合わせてシステムを構築することが多いため、操作管理の対象である電子機器本発明に係るアプリケーションプログラムが実装される通信機器と通信可能な電子機器をFA機器とすることで、本発明の効果が顕著になる。また、上記目的を達成するために本発明に係る通信機器は、ウィジェットをサポートしているオペレーションシステムと、ウィジェットを有するウィジェット層と、前記通信機器と電子機器との通信に必要なドライバを有するドライバ層と、コントローラとの3層を含むアプリケーションプログラムとを実装し、各ウィジェットの属性が記述されているウィジェットデータと、各ドライバの属性が記述されているドライバデータとを格納する不揮発性メモリを備える通信機器であって、前記コントローラが、前記ウィジェットデータ及び前記ドライバデータとを参照して、前記ウィジェット層の各ウィジェットと前記ドライバ層の各ドライバとの連携、並びに、前記ウィジェット層の各ウィジェット及び前記ドライバ層の各ドライバの制御を行う構成とする。このような構成によると、アプリケーションプログラムにおけるウィジェット層と、ドライバ層と、コントローラとの3層構造により、各ウィジェットの追加、削除、機能バージョンアップ及び各ドライバの追加、削除、機能バージョンアップを個別に行うことができる。これにより、操作管理の対象である電子機器本発明に係る通信機器と通信可能な電子機器の増減や操作項目及び管理項目の増減をフレキシブルに行うことができるので、利便性が高くなる。本発明によると、各ウィジェットの追加、削除、機能バージョンアップ及び各ドライバの追加、削除、機能バージョンアップを個別に行うことができる。これにより、操作管理の対象である電子機器の増減や操作項目及び管理項目の増減をフレキシブルに行うことができるので、利便性が高くなる。本発明の実施形態について図面を参照して以下に説明する。図1は、本発明に係る通信機器の一例であるスマートフォンと、当該スマートフォンの通信対象であるFA機器を備える情報管理システムの一例とを示す概略構成図である。図1に示す情報管理システムは、複数のプログラマブル表示器1及びプログラムレスプロトコル変換器2と、それらから送信される情報をWeb上で管理するWebサーバ装置3とを備えている。ある管理者一つの会社、一つの事業所、あるいは一つの工場などは、LANLocalAreaNetwork4と、LAN4からインターネット5への不適切なデータ流出やインターネット5からLAN4への不適切なデータ流入を防止するファイアウォール6と、プログラマブル表示器1と、プログラムレスプロトコル変換器2と、PLC7と、デバイス8と、例えばパーソナルコンピュータで実現することができるオペレーションセンターサーバ装置9と、無線ルータ10とを特定のエリア内に設けている。なお、図1においては、一管理者分のLAN4、ファイアウォール6、プログラマブル表示器1、プログラムレスプロトコル変換器2、PLC7、デバイス8、オペレーションセンターサーバ装置9、及び無線ルータ10しか図示していないが、Webサーバ装置3は、一管理者分のプログラマブル表示器1、プログラムレスプロトコル変換器2、或いはPLC7から送信される情報のみを管理するものに限定されるのではなく、複数管理者分のプログラマブル表示器1、プログラムレスプロトコル変換器2、或いはPLC7から送信される情報を管理するものであってもよい。プログラマブル表示器1、プログラムレスプロトコル変換器2、及びPLC7はそれぞれ、LAN4、ファイアウォール6、及びインターネット5を介してWebサーバ装置3とインターネット通信可能である。また、プログラマブル表示器1、プログラムレスプロトコル変換器2、及びPLC7はそれぞれ、LAN4を介してオペレーションセンターサーバ装置9と通信可能である。さらに、プログラマブル表示器1、プログラムレスプロトコル変換器2、及びPLC7はそれぞれ、LAN4、ファイアウォール6、インターネット5、及び基地局11を介してスマートフォン12と移動体通信例えば3G通信が可能である。また、さらに、プログラマブル表示器1、プログラムレスプロトコル変換器2、及びPLC7はそれぞれ、LAN4及び無線ルータ10を介してスマートフォン12と無線LAN通信例えばWi-Fi通信が可能である。PLC7は、ユーザが作成した制御プログラムラダープログラムを実行することにより、例えば、数十msなどの予め定められたスキャンタイム毎に、入力用のデバイス8の状態を取り込むとともに、出力用のデバイス8に制御指示を与える。入力用のデバイス8としては、例えば、スイッチ、センサなどがあり、出力用のデバイス8としては、例えば、ランプ、バルブなどがある。これら各種のデバイス8は、製造ラインなどの各種のターゲットシステムの所要各部に配置される。次に、スマートフォン12の構成について説明する。図2は、スマートフォン12の概略構成例を示す図である。図2に示すスマートフォン12は、CPUCentralProcessingUnit13と、通信部14と、不揮発性メモリ15と、揮発性メモリ16と、表示装置17と、タッチパネル18と、マイクロフォン等の音声入力部19と、スピーカ等の音声出力部20とを備えている。CPU13は、スマートフォン12全体の動作を制御する。通信部14は、移動体通信及び無線LAN通信の双方を行うことができるように構成されている。不揮発性メモリ15は、OSオペレーションシステムやアプリケーションプログラム等の各種プログラム及び後述するウィジェットデータやドライバデータ等の各種データを格納している。揮発性メモリ16は、CPU13のワークエリア等が設定される作業メモリである。表示装置17は、液晶表示装置やEL表示装置等の薄型表示装置が好適である。タッチパネル18は、表示装置17の表示画面上でタッチ入力を行うために表示装置17の表示画面上に配置されている入力装置である。図2に示すスマートフォン12は、本発明に係るアプリケーションプログラムであって当該スマートフォンの通信対象であるFA機器のデータの確認や更新を行うためのアプリケーションプログラム以下、本発明に係るFA機器管理用アプリケーションプログラムというを不揮発性メモリ15に格納している。また、図2に示すスマートフォン12は、ウィジェットをサポートしているOSの一例であるAndroidOS登録商標を不揮発性メモリ15に格納している。図1に示す構成では、プログラマブル表示器1、プログラムレスプロトコル変換器2、及びPLC7がそれぞれスマートフォン12の通信対象であるFA機器に該当する。プログラマブル表示器1は、PLC7から得たデータやプログラマブル表示器1で発生したデータをプログラマブル表示器1内の不揮発性メモリに格納している。プログラムレスプロトコル変換器2は、PLC7から得たデータやプログラムレスプロトコル変換器2で発生したデータをプログラムレスプロトコル変換器2内の不揮発性メモリに格納している。PLC7から送出されるデータとしては、PLC7がデバイス8から得たサンプリングデータが挙げられる。プログラマブル表示器1やプログラムレスプロトコル変換器2で発生したデータとしては、アラームデータ、折れ線グラフデータ、操作ログデータなどが挙げられる。アラームデータは、アラームに関する情報である。プログラマブル表示器1やプログラムレスプロトコル変換器2は、PLC7における所定のアラームビットがONしたことを受信すると、当該アラームビットに対して予め設定されているアラームについての内容メッセージなどを発報時刻受信時刻と併せて作成する。折れ線グラフデータは、折れ線グラフを表示するためのデータである。プログラマブル表示器1やプログラムレスプロトコル変換器2は、上記のサンプリングデータに基づいて折れ線グラフデータを作成する。操作ログデータは、プログラマブル表示器1やプログラムレスプロトコル変換器2に対するユーザの操作履歴に関するデータであり、ユーザがプログラマブル表示器1やプログラムレスプロトコル変換器2に対して行った操作内容ログイン、ログアウト、画面における各タッチ操作などや、操作者情報氏名、所属などや、その発生時刻などからなる。本発明に係るFA機器管理用アプリケーションプログラムは、図3に示すように、コントローラ21と、ウィジェット層22と、ドライバ層23との3層構造になっている。なお、当該3層構造は、AndroidOSから見て、各層間の上下がなく、各層が並列になっている。本発明に係るFA機器管理用アプリケーションプログラムでは、コントローラ21と、ウィジェット層22と、ドライバ層23との3層構造により、各ウィジェットの追加、削除、機能バージョンアップ及び各ドライバの追加、削除、機能バージョンアップを個別に行うことができる。これにより、操作管理の対象であるFA機器の増減や操作項目及び管理項目の増減をフレキシブルに行うことができるので、利便性が高くなる。図3に示す例では、スイッチデバイス8の一つに関するGUIGraphicalUserInterfaceであるスイッチウィジェットと、ランプデバイス8の一つに関するGUIであるランプウィジェットと、データを表示するためのGUIであるデータ表示ウィジェットと、グラフを表示するためのGUIであるグラフウィジェットとがそれぞれ1つずつウィジェット層22に存在しており、Modbusと、プログラマブル表示器用ドライバと、オペレーションセンターサーバ装置用ドライバと、Webサーバ装置用ドライバとがそれぞれ1つずつドライバ層23に存在している。本発明に係るFA機器管理用アプリケーションプログラムがインストールされた後のスマートフォン12においては、新たなドライバがスマートフォン12にインストールされると、そのインストールされたドライバの機器データ等がXMLExtensibleMarkupLanguage形式のドライバデータに追加される。ここで、XML形式のドライバデータの一例を図4に示す。Driverparameterの具体的内容はドライバの種類によって異なる。XML形式のドライバデータは不揮発性メモリ15に保存される。ウィジェットをスマートフォン12の表示装置17の画面に新たに配置する際には、ウィジェット層22は、コントローラ21に対して、どのようなドライバがインストールされているかを問い合わせる。その問い合わせに応じて、コントローラ21は、不揮発性メモリ15に保存されているXML形式のドライバデータを参照して、インストールされているドライバの情報をウィジェット層22に提供する。そして、ウィジェット層22は、コントローラ21から提供されたドライバの情報に基づいて、新たに配置するウィジェットと組み合わせ可能なドライバやデバイスの一覧を表示し、ユーザがその一覧の中から新たに配置するウィジェットと組み合わせるドライバやデバイスを選択する。ユーザがスマートフォン12を操作することによって、gpweb19216803600001というパラメータで特定されるプログラマブル表示器1との組み合わせを選択した場合、例えば、図5に示すような画面になるようにする。図5に示すような画面において作成と表示されているソフトウェアキーをタッチすることで、当該選択が確定するようにすればよい。本発明に係るFA機器管理用アプリケーションプログラムは、上述した通りウィジェットとドライバとが別々になっている3層構造であるため、或るウィジェットに対して組み合わせるドライバを変更することだけで、異なるメーカーのFA機器への変更が可能である。当該選択が確定すると、コントローラ21は、選択されたドライバやデバイスに対応するデータをドライバデータの中から抽出してウィジェット層22に提供し、このコントローラ21から提供されたデータを用いてウィジェット層22はウィジェット自体の情報及びそのウィジェットと組み合わせたドライバやデバイスの情報等をXML形式のウィジェットデータに追加する。ここで、XML形式のウィジェットデータの一例を図6に示す。Widgetparameterの具体的内容はウィジェットの種類によって異なる。XML形式のウィジェットデータは不揮発性メモリ15に保存される。複数のウィジェットを配置した後の画面例を図7に示す。図7に示す例では、1つのデータ表示ウィジェットと、4つのランプウィジェットと、4つのスイッチウィジェットとが配置されている。コントローラ21は、不揮発性メモリ15に保存されているXML形式のドライバデータ及びウィジェットデータを用いて、ウィジェットとドライバの連携やウィジェット及びドライバの制御を行うことができる。また、上述した通りウィジェットとドライバとが別々になっている3層構造であるため、ウィジェットやドライバの追加、削除、機能バージョンアップを行っても、コントローラ21は、ウィジェット及びドライバを一括制御することができる。ここで、コントローラ21によるウィジェット及びドライバの一括制御の一例として、表示装置17の画面に配置している全ウィジェットの一括スタート制御について説明する。表示装置17の画面に配置している全ウィジェットの一括スタートがユーザ操作によって指示されると、コントローラ21は、不揮発性メモリ15に保存されているウィジェットデータ及びドライバデータを参照する。コントローラ21は、参照したウィジェットデータ及びドライバデータに基づいて、表示装置17の画面に配置している全ウィジェットに関係する全てのウィジェット及びドライバに通信開始を通知する。コントローラ21から通信開始を通知されたウィジェットは、通信を開始し、不揮発性メモリ15に保存されているウィジェットデータに基づいて、組み合わせ相手であるドライバを特定し、その組み合わせ相手であるドライバと周期的或いはユーザの操作タイミングによって通信する。その通信において、ウィジェットは、FA機器から得られるデータを、組み合わせ相手であるドライバに直接要求する。組み合わせ相手であるウィジェットからの要求を受けたドライバは、接続されているFA機器と通信を行い、その通信によって得られたデータをウィジェットに返送する。その後、ウィジェットとドライバの直接通信によって、FA機器から得られるデータの要求及び返送が繰り返される。そして、表示装置17の画面に配置している全ウィジェットの一括インターロック、一括ストップ、一括スリープ等がユーザ操作によって指示されると、コントローラ21は、不揮発性メモリ15に保存されているウィジェットデータ及びドライバデータを参照して、表示装置17の画面に配置している全ウィジェットに関係する全てのウィジェット及びドライバに対して各指示に応じた制御を行う。このような一括制御により、個々のウィジェットに対して個別に制御の設定を行う必要がなくなるので、作業効率が向上する。また、一部のウィジェットに対する制御の設定忘れなどの操作ミスも防止することができる。以上、本発明に係る実施形態について説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実行することができる。例えば、本発明に係る通信装置はスマートフォンに限定されることはなく、タブレット型パーソナルコンピュータ等であってもよい。また例えば、本発明に係る通信装置の通信対象は、FA機器以外の電子機器であっても構わない。ただし、FA分野では、様々の製造メーカーのFA機器を組み合わせてシステムを構築することが多いため、本発明に係る通信装置の通信対象をFA機器にした場合に、本発明の効果が顕著になる。また、図4に示すドライバデータと図6に示すウィジェットデータはそれぞれ一例である。そして、ドライバデータとウィジェットデータとはコントローラ21が参照することによって互いに関連付けられるので、例えば、図6に示すウィジェットデータの項目の一部を図4に示すドライバデータに移しても構わない。また、幾つかのウィジェットをグループ化して、グループ単位での一括制御が行えるようにしてもよい。この実現方法としては、上述した3層構造にホームアプリ層24を追加して図8に示すような4層構造とし、各ホームアプリで1つのグループを構成するようにすればよい。