(57)【要約】【課題】発生したイベントに対処するためのコンテンツを逸早く使用することができるプログラマブル表示器を提供する。【解決手段】生産機器を制御する制御装置と通信可能なプログラマブル表示器１００は、ディスプレイと、プログラマブル表示器１００で使用され得る複数のコンテンツを格納する記憶装置１２０と、生産機器に発生した所定の事象を検知する検知部１５１と、所定の事象が検知されたときにプログラマブル表示器１００で使用されたコンテンツを監視することで、所定の事象が発生した条件下で複数のコンテンツの各々が使用された確率を学習する学習部１５２と、所定の事象が検知された場合に、学習された確率に基づいて、複数のコンテンツの内からプログラマブル表示器１００で使用される可能性が高いコンテンツを特定する特定部１５３とを備える。【選択図】図５
2018128969.tif 000002
【特許請求の範囲】
【請求項１】
機器を制御するコントローラと通信可能なプログラマブル表示器であって、
前記プログラマブル表示器で使用され得る複数のコンテンツを格納するための記憶装置と、
前記機器に発生した所定の事象を検知するための検知部と、
前記所定の事象が検知されたときに前記プログラマブル表示器で使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するための学習部と、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記プログラマブル表示器で使用される可能性が高いコンテンツを特定するための特定部とを備える、プログラマブル表示器。
【請求項２】
前記プログラマブル表示器は、ディスプレイをさらに備え、
前記学習部は、前記所定の事象が検知されたときに前記ディスプレイに表示されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が前記ディスプレイに表示される前記第１確率を学習し、
前記プログラマブル表示器は、前記特定されたコンテンツの参照先を前記ディスプレイに表示するための表示制御部をさらに備える、請求項１に記載のプログラマブル表示器。
【請求項３】
前記表示制御部は、前記参照先の選択操作を受け付けたことに基づいて、当該参照先のコンテンツを前記ディスプレイに表示する、請求項２に記載のプログラマブル表示器。
【請求項４】
前記表示制御部は、前記表示される可能性が高いコンテンツが前記特定部によって特定されたことに基づいて、当該特定されたコンテンツを前記ディスプレイに表示するための準備処理を実行する、請求項２または３に記載のプログラマブル表示器。
【請求項５】
前記表示制御部は、前記第１確率が高いコンテンツの参照先ほど表示サイズを大きくする、請求項２〜４のいずれか１項に記載のプログラマブル表示器。
【請求項６】
前記学習部は、前記プログラマブル表示器に対する操作によって前記機器において発生したエラーの種類を監視することで、前記プログラマブル表示器に対して所定の操作が行われた条件下で前記エラーの各々が発生する第２確率をさらに学習し、
前記表示制御部は、前記所定の操作が検知された場合において、前記エラーの各々についての前記第２確率が予め定められた条件を満たしたときに、前記ディスプレイに警告画面を表示する、請求項２〜５のいずれか１項に記載のプログラマブル表示器。
【請求項７】
前記警告画面は、前記第２確率が所定値よりも高いエラーの種類を示す情報を含む、請求項６に記載のプログラマブル表示器。
【請求項８】
前記学習部は、前記プログラマブル表示器のユーザごとに前記第１確率を学習する、請求項１〜７のいずれか１項に記載のプログラマブル表示器。
【請求項９】
機器を制御するコントローラと通信可能なプログラマブル表示器における制御方法であって、
前記プログラマブル表示器で使用され得る複数のコンテンツを準備するステップと、
前記機器に発生した所定の事象を検知するステップと、
前記所定の事象が検知されたときに前記プログラマブル表示器で使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するステップと、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記プログラマブル表示器で使用される可能性が高いコンテンツを特定するステップとを備える、制御方法。
【請求項１０】
機器を制御するコントローラと通信可能なコンピュータの制御プログラムであって、
前記制御プログラムは、前記コンピュータに、
前記コンピュータで使用され得る複数のコンテンツを準備するステップと、
前記機器に発生した所定の事象を検知するステップと、
前記所定の事象が検知されたときに前記コンピュータで使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するステップと、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記コンピュータで使用される可能性が高いコンテンツを特定するステップとを実行させる、制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、機器を制御する制御装置と通信可能なプログラマブル表示器の画面を制御するための技術に関する。
【背景技術】
【０００２】
様々な製造現場において、ＰＬＣ（Programmable Logic Controller）などの制御装置が導入されている。ＰＬＣは、製造装置や製造設備などに応じて設計された制御プログラムに従って製造現場における各種生産機器を制御する。このようなＰＬＣに対する操作指示は、ＰＬＣと通信可能に構成されているＨＭＩ（Human Machine Interface）などのプログラマブル表示器によって実現される。
【０００３】
製造現場の作業者は、プログラマブル表示器に表示される操作画面を操作することで各種生産機器を遠隔操作することができる。プログラマブル表示器に関し、特表２０１６−５０６５５９号公報（特許文献１）は、ボタンやテキストなどの複数のオブジェクトを操作画面に表示するＨＭＩを開示している。ユーザは、ＨＭＩ上に表示されている各オブジェクトをタッチ操作することで、当該オブジェクトに関連付けられている指令を生産機器に出力することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１６−５０６５５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
エラーなどのイベントが生産機器に生じた場合には、オペレータは、生産機器の状態を確認するためのモニター画面や生産機器の操作画面などの様々な画面をプログラマブル表示器に表示しながら生産機器のエラーに対処する。このとき、オペレータには、生産機器のエラーに対して早急に対処することが求められている。オペレータが必要とする画面をすぐに開くことができれば、エラーに対処するためにかかる時間を短縮することができる。したがって、エラーなどのイベントに対処するために使用される画面などのコンテンツを逸早く開くための技術が望まれている。
【課題を解決するための手段】
【０００６】
ある局面に従うと、機器を制御するコントローラと通信可能なプログラマブル表示器は、上記プログラマブル表示器で使用され得る複数のコンテンツを格納するための記憶装置と、上記機器に発生した所定の事象を検知するための検知部と、上記所定の事象が検知されたときに上記プログラマブル表示器で使用されたコンテンツを監視することで、上記所定の事象が発生した条件下で上記複数のコンテンツの各々が使用される第１確率を学習するための学習部と、上記所定の事象が検知された場合に、上記学習された第１確率に基づいて、上記複数のコンテンツの内から上記プログラマブル表示器で使用される可能性が高いコンテンツを特定するための特定部とを備える。
【０００７】
好ましくは、上記プログラマブル表示器は、ディスプレイをさらに備える。上記学習部は、上記所定の事象が検知されたときに上記ディスプレイに表示されたコンテンツを監視することで、上記所定の事象が発生した条件下で上記複数のコンテンツの各々が上記ディスプレイに表示される上記第１確率を学習する。上記プログラマブル表示器は、上記特定されたコンテンツの参照先を上記ディスプレイに表示するための表示制御部をさらに備える。
【０００８】
好ましくは、上記表示制御部は、上記参照先の選択操作を受け付けたことに基づいて、当該参照先のコンテンツを上記ディスプレイに表示する。
【０００９】
好ましくは、上記表示制御部は、上記表示される可能性が高いコンテンツが上記特定部によって特定されたことに基づいて、当該特定されたコンテンツを上記ディスプレイに表示するための準備処理を実行する。
【００１０】
好ましくは、上記表示制御部は、上記第１確率が高いコンテンツの参照先ほど表示サイズを大きくする。
【００１１】
好ましくは、上記学習部は、上記プログラマブル表示器に対する操作によって上記機器において発生したエラーの種類を監視することで、上記プログラマブル表示器に対して所定の操作が行われた条件下で上記エラーの各々が発生する第２確率をさらに学習する。上記表示制御部は、上記所定の操作が検知された場合において、上記エラーの各々についての上記第２確率が予め定められた条件を満たしたときに、上記ディスプレイに警告画面を表示する。
【００１２】
好ましくは、上記警告画面は、上記第２確率が所定値よりも高いエラーの種類を示す情報を含む。
【００１３】
好ましくは、上記学習部は、上記プログラマブル表示器のユーザごとに上記第１確率を学習する。
【００１４】
他の局面に従うと、好ましくは、機器を制御するコントローラと通信可能なプログラマブル表示器における制御方法は、上記プログラマブル表示器で使用され得る複数のコンテンツを準備するステップと、上記機器に発生した所定の事象を検知するステップと、上記所定の事象が検知されたときに上記プログラマブル表示器で使用されたコンテンツを監視することで、上記所定の事象が発生した条件下で上記複数のコンテンツの各々が使用される第１確率を学習するステップと、上記所定の事象が検知された場合に、上記学習された第１確率に基づいて、上記複数のコンテンツの内から上記プログラマブル表示器で使用される可能性が高いコンテンツを特定するステップとを備える。
【００１５】
他の局面に従うと、機器を制御するコントローラと通信可能なコンピュータの制御プログラムは、上記コンピュータに、上記コンピュータで使用され得る複数のコンテンツを準備するステップと、上記機器に発生した所定の事象を検知するステップと、上記所定の事象が検知されたときに上記コンピュータで使用されたコンテンツを監視することで、上記所定の事象が発生した条件下で上記複数のコンテンツの各々が使用される第１確率を学習するステップと、上記所定の事象が検知された場合に、上記学習された第１確率に基づいて、上記複数のコンテンツの内から上記コンピュータで使用される可能性が高いコンテンツを特定するステップとを実行させる。
【発明の効果】
【００１６】
ある局面において、発生したイベントに対処するためのコンテンツを逸早く使用することができる。
【００１７】
本開示の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【００１８】
【図１】第１の実施の形態に従う情報処理システムの全体構成を示す模式図である。
【図２】第１の実施の形態に従うプログラマブル表示器が表示する画面の一例を示す図である。
【図３】第１の実施の形態に従うプログラマブル表示器のディスプレイに表示される画面の階層関係を示す図である。
【図４】第１の実施の形態に従うカウントテーブルのデータ構造の一例を示す図である。
【図５】第１の実施の形態に従うプログラマブル表示器の機能構成の一例を示す図である。
【図６】第１の実施の形態に従うプログラマブル表示器で実行される学習処理を表わすフローチャートである。
【図７】第１の実施の形態に従うプログラマブル表示器で実行される表示処理を表わすフローチャートである。
【図８】第１の実施の形態に従うプログラマブル表示器の主要なハードウェア構成を示すブロック図である。
【図９】第１の実施の形態に従うプログラマブル表示器における画面遷移の一例を示す図である。
【図１０】第２の実施の形態に従うプログラマブル表示器が表示する画面の一例を示す図である。
【図１１】第２の実施の形態に従うプログラマブル表示器のディスプレイに表示される画面の階層関係を示す図である。
【図１２】第２の実施の形態に従うカウントテーブルのデータ構造の一例を示す図である。
【図１３】所定のユーザ操作が検知されたときに表示される警告画面の一例を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
【００２０】
＜第１の実施の形態＞
［Ａ．情報処理システム１の全体構成］
まず、本実施の形態の情報処理システム１の全体構成について説明する。図１は、本実施の形態の情報処理システム１の全体構成を示す模式図である。図１を参照して、情報処理システム１は、実際に製造作業が行われる製造現場２と、製造現場２に対してリモートで閲覧や操作が可能なリモートサイト４とを含む。製造現場２とリモートサイト４とは、任意のネットワーク６（たとえば、インターネットやＶＰＮ（Virtual Private Network）など）を介してネットワーク接続されているとする。なお、製造現場２とリモートサイト４との間の通信は、セキュアであることが好ましく、典型的には、送受信するデータの暗号化、および／または、通信回線自体をセキュアなものにするといった手法が採用される。
【００２１】
製造現場２には、製造装置やロボットなどを制御するコントローラ２００と、コントローラ２００に接続されるプログラマブル表示器１００とが配置される。
【００２２】
コントローラ２００は、ＰＬＣ（Programmable Logic Controller）と称される産業用のコントローラであり、図示しない制御対象の生産機器（たとえば、製造装置やロボットなど）との間で、フィールド信号（各種センサで検出された入力信号（アナログおよび／またはデジタル）、ならびに、各種アクチュエータへ与える出力信号（アナログおよび／またはデジタル））を遣り取りすることで、これらの生産機器を制御する。
【００２３】
図１に示す製造現場２では、コントローラ２００とフィールドバス１４を介してリモートＩ／Ｏ（Input/Output）装置２０２が接続されている。リモートＩ／Ｏ装置２０２は、コントローラ２００から離れた位置にある制御対象の生産機器との間でフィールド信号を遣り取りする。
【００２４】
プログラマブル表示器１００は、コントローラ２００とフィールドバス１２を介して接続されており、コントローラ２００が保持している情報をユーザに対して表示するとともに、ユーザからの操作に従って、コントローラ２００に対して内部コマンドを送出する。プログラマブル表示器１００に表示されるＨＭＩ（Human Machine Interface）画面は、ユーザが任意に作成できるようになっており、一般的には、製造現場２に応じた画面や情報が表示できるように作成される。
【００２５】
プログラマブル表示器１００における表示画面は、外部装置（以下、「情報処理装置３００」と総称する。）において作成することができる。外部装置としては、プログラマブル表示器１００と何らかの手段で通信できるデバイスであれば、特に制限はなく、たとえば、パーソナルコンピュータ、スマートフォン、別のプログラマブル表示器などを用いることができる。プログラマブル表示器１００と通信する手段としては、ＵＳＢ（Universal Serial Bus）通信、シリアル通信、パラレル通信、有線ネットワーク（たとえば、イーサネット（登録商標））、無線ネットワーク（たとえば、無線ＬＡＮやＢＬＵＥＴＯＯＴＨ（登録商標））などの公知の手段を用いることができる。
【００２６】
図１の情報処理システム１においては、情報処理装置３００としてパーソナルコンピュータを例示し、これらのパーソナルコンピュータは、ネットワークを介して、直接的または間接的にプログラマブル表示器１００と接続される。より具体的には、製造現場２には、ネットワーク８を介してプログラマブル表示器１００と接続される、情報処理装置３００＿１が配置され、リモートサイト４には、ネットワーク６およびネットワーク１０を介してプログラマブル表示器１００と接続される、情報処理装置３００＿２，３００＿３が配置される例を示す。
【００２７】
［Ｂ．プログラマブル表示器１００の画面表示］
図２および図３を参照して、プログラマブル表示器１００による画面表示について説明する。図２は、プログラマブル表示器１００が表示する画面の一例を示す図である。
【００２８】
プログラマブル表示器１００は、コントローラ２００が制御する生産機器にエラーなどのイベントが生じると、そのことを通知するためのエラー画面２０を表示する。エラー画面２０は、警告メッセージ２２と、エラーの詳細情報２３と、ボタン２４とを含む。
【００２９】
オペレータは、エラー画面２０を確認すると、生産機器の状態を確認するためのモニター画面や、生産機器の操作画面などの様々な画面をプログラマブル表示器１００に表示させながら生産機器のエラーに対処する。このとき、画面の切り替えに時間がかかれば、エラーに対処するためにかかる時間が長くなってしまう。そこで、本実施の形態に従うプログラマブル表示器１００は、通知対象のエラーが検知されたときに使用されたコンテンツを監視することで、当該エラーが発生した条件下で表示される確率の高い画面を学習するとともに、同エラーが新たに生じた場合に、学習結果に基づいて、使用される確率が高いコンテンツを特定する。
【００３０】
以下では、コンテンツの一例として画面を例に挙げて説明を行うが、コンテンツは、画面に限定されない。たとえば、コンテンツは、ＰＤＦ（Portable Document Format）データなどのファイルや、アプリケーションなども含み得る。
【００３１】
画面を例に挙げると、プログラマブル表示器１００は、通知対象のエラーが検知されたときにディスプレイ１０４に表示される画面を監視することで、当該エラーが発生した条件下で表示される確率の高い画面を学習する。その後、プログラマブル表示器１００は、同エラーが新たに生じた場合に、学習結果に基づいて、表示される確率が高い画面（以下、「表示候補画面」ともいう。）の参照先を表示する。学習処理の詳細については後述する。
【００３２】
一例として、表示候補画面の参照先として参照先２６Ａ，２６Ｂが特定されたとする。プログラマブル表示器１００は、ボタン２４が押下されたことに基づいて、特定された参照先２６Ａ，２６Ｂをディスプレイ１０４に表示する。参照先２６Ａ，２６Ｂは、たとえば、ショートカットアイコンとして表される。あるいは、参照先２６Ａ，２６Ｂは、アドレス（ファイルパス）として表されてもよい。
【００３３】
好ましくは、プログラマブル表示器１００は、表示される確率が高い画面の参照先であるほど目立つ態様で表示する。一例として、プログラマブル表示器１００は、表示される確率が高い画面の参照先であるほど表示サイズを大きくする。たとえば、参照先２６Ａの表示候補画面が参照先２６Ｂの表示候補画面よりも表示される可能性が高い場合には、プログラマブル表示器１００は、参照先２６Ａの表示サイズを参照先２６Ｂの表示サイズよりも大きくする。これにより、オペレータは、開くべき画面を特定しやすくなる。
【００３４】
オペレータが参照先２６Ａ，２６Ｂのいずれかを選択すると、選択された参照先の画面がディスプレイ１０４に表示される。このように、エラー時に表示される画面の参照先２６Ａ，２６Ｂが表示されることで、オペレータは、エラーに対処するための画面を逸早く開くことができ、エラーに素早く対処することができる。
【００３５】
好ましくは、プログラマブル表示器１００は、表示候補画面が特定されたことに基づいて、当該表示候補画面をディスプレイ１０４に表示するための準備処理（前処理）を実行する。当該準備処理は、たとえば、現在表示されているエラー画面２０の背面に表示候補画面を準備することを含む。その例が図３に示されている。図３は、ディスプレイ１０４に表示される画面の階層関係を示す図である。
【００３６】
図３に示されるように、プログラマブル表示器１００は、表示候補画面が特定されたことに基づいて、参照先２６Ａに対応する表示候補画面２７Ａと、参照先２６Ｂに対応する表示候補画面２７Ｂとを、現在表示されているエラー画面２０の背面に準備する。当該準備処理は、たとえば、表示候補画面２７Ａ，２７Ｂを作成し、キャッシュなどに書き込むことをいう。このように、表示候補画面２７Ａ，２７Ｂがエラー画面２０の背面で準備されることで、エラー画面２０から表示候補画面２７Ａ，２７Ｂに切り替えられたときの描画時間が短縮される。
【００３７】
なお、上述では、表示候補画面を表示するための準備処理として、エラー画面２０の背面に表示候補画面２７Ａ，２７Ｂを準備する処理を例に挙げたが、準備処理として他の処理が行われてもよい。たとえば、準備処理として、プログラマブル表示器１００は、表示候補画面２７Ａ，２７Ｂを表示するためのビューア（たとえば、ＰＤＦビューアなど）を起動してもよい。ビューアが予め起動されることで、エラー画面２０から表示候補画面２７Ａ，２７Ｂに切り替えられたときの描画時間が短縮される。
【００３８】
好ましくは、プログラマブル表示器１００は、表示される可能性が高い表示候補画面から順に上記準備処理を実行する。たとえば、表示候補画面２７Ａが表示候補画面２７Ｂよりも表示される可能性が高い場合には、プログラマブル表示器１００は、表示候補画面２７Ａの準備処理を表示候補画面２７Ｂの準備処理よりも先に実行する。
【００３９】
［Ｃ．学習処理］
上述したように、プログラマブル表示器１００は、生産機器のエラーが検知されたときにディスプレイ１０４に表示される画面を監視することで、当該エラーが発生した条件下で表示される可能性の高い画面を学習する。以下では、プログラマブル表示器１００による学習処理について説明する。一例として、学習処理には、以下の式（１）に示されるベイズの定理が利用される。
【００４０】
Ｐ（Ｙ｜Ｘ）＝Ｐ（Ｘ∧Ｙ）／Ｐ（Ｘ）＝Ｐ（Ｘ｜Ｙ）・Ｐ（Ｙ）／Ｐ（Ｘ）・・・（１）
式（１）に示される「Ｘ」，「Ｙ」は、所定の事象を表わす。「Ｐ（Ｘ）」は、事象Ｘが生じる確率を表わす。「Ｐ（Ｙ）」は、事象Ｙが生じる確率を表わす。「Ｐ（Ｙ｜Ｘ）」は、事象Ｘが生じている条件下で事象Ｙが生じる条件付き確率を表わす。「Ｐ（Ｘ｜Ｙ）」は、事象Ｙが生じている条件下で事象Ｘが生じる条件付き確率を表わす。「Ｐ（Ｘ∧Ｙ）」は、事象Ｘ，Ｙが同時に生じる確率を表わす。
【００４１】
本例においては、事象「Ｘ」は所定のイベントが発生しているという事象を表わし、事象「Ｙ」は所定の画面を表示しているという事象を表わす。すなわち、「Ｐ（Ｙ｜Ｘ）」は、所定のイベントが発生している条件下で所定の画面が表示される条件付き確率を表わす。プログラマブル表示器１００は、条件付き確率「Ｐ（Ｙ｜Ｘ）」を算出するために、図４に示されるカウントテーブル１２４Ａを用いる。
【００４２】
図４は、カウントテーブル１２４Ａのデータ構造の一例を示す図である。プログラマブル表示器１００は、表示され得る画面ごと、およびイベントの種類ごとに、画面の表示回数をカウントし、当該カウント結果をカウントテーブル１２４Ａに書き込む。カウントテーブル１２４Ａは、たとえば、画面が切り替えられる度に更新される。たとえば、画面「Ａ」に切り替えられたとする。このとき、イベント「００１」が発生していたとする。この場合、プログラマブル表示器１００は、画面「Ａ」およびイベント「００１」に対応するカウント数「ｎＡ１」をカウントアップする。好ましくは、プログラマブル表示器１００は、所定時間以上表示された画面についてのみカウントアップ処理を実行する。これにより、直ぐに切り替えられた画面がカウント結果に反映されず、ある程度表示された画面のみがカウント結果に反映される。すなわち、ユーザが表示を意図する画面のみがカウント結果に反映される。
【００４３】
プログラマブル表示器１００は、カウントテーブル１２４Ａから確率テーブル１２４Ｂを生成する。より具体的には、プログラマブル表示器１００は、カウントテーブル１２４Ａに含まれる各カウント数の合計を算出し、各カウント数を当該合計で除算する。これにより、各イベントの発生時に各画面が表示される確率が学習結果として算出される。確率テーブル１２４Ｂは、イベントが発生する度に更新されてもよいし、所定のタイミング（たとえば、１時間）ごとに更新されてもよいし、ユーザからの更新操作に基づいて更新されてもよい。
【００４４】
プログラマブル表示器１００は、所定のイベントが新たに検知された場合に、確率テーブル１２４Ｂを参照して、当該所定のイベントが発生した条件下で各画面が表示される条件付き確率（第１確率）を算出する。一例として、イベント「００１」が検知されたとする。この場合、プログラマブル表示器１００は、イベント「００１」に関連付けられている確率の合計値（すなわち、破線部分３２の合計）を算出する。プログラマブル表示器１００は、確率「ｐＡ１」を当該合計値で除算することで、イベント「００１」が発生している条件下で画面「Ａ」が表示される条件付き確率を算出する。同様に、プログラマブル表示器１００は、他の画面についても、イベント「００１」が発生している条件下で当該他の画面が表示される条件付き確率を算出する。
【００４５】
プログラマブル表示器１００は、算出された条件付き確率に基づいて、各画面の内からディスプレイ１０４に表示される可能性が高い画面（すなわち、表示候補画面）を特定する。このときの画面の特定方法は、任意である。一例として、プログラマブル表示器１００は、算出された条件付き確率が所定値を超えている画面を表示候補画面として特定する。あるいは、プログラマブル表示器１００は、算出された条件付き確率が高い上位所定数の画面を表示候補画面として特定する。
【００４６】
なお、上述では、ベイズの定理を応用した学習処理について説明を行ったが、他の学習処理が採用されてもよい。たとえば、ニューラルネットワーク、サポートベクターマシン、ディープラーニング、その他の機械学習が採用されてもよい。
【００４７】
［Ｄ．機能構成］
図５を参照して、プログラマブル表示器１００の機能構成について説明する。図５は、プログラマブル表示器１００の機能構成の一例を示す図である。
【００４８】
図５に示されるように、プログラマブル表示器１００は、主要なハードウェア構成として、制御装置１０１と、記憶装置１２０とを含む。制御装置１０１は、機能構成の一例として、操作受付部１５０と、検知部１５１と、学習部１５２と、特定部１５３と、表示制御部１５４とを含む。
【００４９】
操作受付部１５０は、プログラマブル表示器１００に対するユーザ操作を受け付ける。一例として、操作受付部１５０は、プログラマブル表示器１００に接続されるマウスや、ディスプレイ１０４（図２参照）に重ねられているタッチパネルからユーザ操作を受け付ける。操作受付部１５０は、ディスプレイ１０４の画面を切り替える操作を受け付けた場合には、そのことを学習部１５２に出力する。
【００５０】
検知部１５１は、制御対象の生産機器に生じるイベント（事象）を監視し、所定のイベントを検知する。検知対象のイベントは、予め登録されていてもよいし、ユーザによって任意に設定されてもよい。検知対象のイベントは、生産機器のエラーを明示的に示す事象だけでなく、生産機器のエラーを示唆する事象であってもよい。検知部１５１は、検知対象である所定のイベントを検知すると、そのことを学習部１５２に出力する。
【００５１】
学習部１５２は、検知対象のイベントが検知されたときにディスプレイ１０４に表示される画面を監視することで、当該イベントが発生した条件下で各画面が表示される条件付き確率を学習する。学習部１５２による学習方法は、上述の「Ｃ．学習処理」の項で説明した通りであるので、その説明については繰り返さない。学習部１５２は、算出した条件確率を学習結果１２４に書き込む。学習結果１２４は、上述のカウントテーブル１２４Ａおよび確率テーブル１２４Ｂを含む。
【００５２】
特定部１５３は、検知対象のイベントが検知された場合に、学習結果１２４に規定されている条件付き確率に基づいて、当該イベントの発生時に表示される確率が高い画面（すなわち、表示候補画面）を特定する。一例として、特定部１５３は、条件付き確率が所定値を超えている画面を表示候補画面として特定する。あるいは、プログラマブル表示器１００は、算出された条件付き確率が高い上位所定数の画面を表示候補画面として特定する。特定された表示候補画面は、表示制御部１５４に出力される。
【００５３】
表示制御部１５４は、特定された表示候補画面の参照先をディスプレイ１０４（図２参照）に表示する。このとき、表示制御部１５４は、表示される確率が高い表示候補画面の参照先であるほど目立つ態様で表示する。一例として、表示制御部１５４は、表示される確率が高い表示候補画面の参照先であるほど表示サイズを大きくする。あるいは、表示制御部１５４は、表示される確率が高い表示候補画面の参照先であるほど目立つ色（たとえば、赤色）で表示する。あるいは、表示制御部１５４は、表示される確率が高い表示候補画面の参照先であるほど濃く表示する。
【００５４】
表示制御部１５４は、表示されている参照先に対する選択操作を受け付けたことに基づいて、当該選択された参照先の画面をディスプレイ１０４に表示する。これにより、オペレータは、生産機器に生じたイベントに対処するために使用される画面を逸早く開くことができ、早急にエラーなどに対処することができる。
【００５５】
好ましくは、表示制御部１５４は、特定部１５３によって表示候補画面が特定されたことに基づいて、当該表示候補画面をディスプレイ１０４に表示するための準備処理を実行する。これにより、表示候補画面の参照先が選択されたときにかかる描画時間が短縮され、オペレータは、さらに早急にエラーに対処することができる。
【００５６】
［Ｅ．制御構造］
図６および図７を参照して、上述の学習処理のフローと、上述の表示候補画面の参照先を表示する表示処理のフローとについて説明する。図６は、上述の学習処理を表わすフローチャートである。図７は、上述の表示候補画面の参照先を表示する表示処理を表わすフローチャートである。図６および図７に示される処理は、プログラマブル表示器１００の制御装置１０１（図５参照）がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
【００５７】
（Ｅ１．学習処理のフロー）
まず、図６を参照して、上述の学習処理のフローについて説明する。
【００５８】
ステップＳ１１０において、制御装置１０１は、ユーザから画面の切り替え操作を受け付けたか否かを判断する。制御装置１０１は、ユーザから画面の切り替え操作を受け付けたと判断した場合（ステップＳ１１０においてＹＥＳ）、制御をステップＳ１１２に切り替える。そうでない場合には（ステップＳ１１０においてＮＯ）、制御装置１０１は、ステップＳ１１０の処理を再び実行する。
【００５９】
ステップＳ１１２において、制御装置１０１は、上述の表示制御部１５４（図５参照）として、ステップＳ１１０で指定された画面をプログラマブル表示器１００のディスプレイ１０４に表示する。
【００６０】
ステップＳ１１４において、制御装置１０１は、上述の検知部１５１（図５参照）として、生産機器を制御するためのコントローラ２００（図１参照）に現在発生しているイベントを検知する。
【００６１】
ステップＳ１１６において、制御装置１０１は、上述のカウントテーブル１２４Ａ（図４参照）において、ステップＳ１１２で表示された画面と、ステップＳ１１４で検知されたイベントとに対応付けられている表示回数をカウントアップする。
【００６２】
ステップＳ１１８において、制御装置１０１は、上述の学習部１５２（図５参照）として、カウントテーブル１２４Ａから確率テーブル１２４Ｂ（図４参照）を生成する。確率テーブル１２４Ｂの生成方法については、上述の「Ｃ．学習処理」の項で説明した通りであるので、その説明については繰り返さない。
【００６３】
ステップＳ１２０において、制御装置１０１は、学習処理を終了するか否かを判断する。一例として、制御装置１０１は、ユーザから学習処理の終了操作を受け付けたことに基づいて、学習処理を終了すると判断する。制御装置１０１は、学習処理を終了すると判断した場合（ステップＳ１２０においてＹＥＳ）、図６に示される処理を終了する。そうでない場合には（ステップＳ１２０においてＮＯ）、制御装置１０１は、制御をステップＳ１１０に戻す。
【００６４】
（Ｅ２．表示処理のフロー）
続いて、図７を参照して、学習結果に基づいて表示候補画面の参照先を表示する表示処理のフローについて説明する。
【００６５】
ステップＳ１５０において、制御装置１０１は、上述の検知部１５１（図５参照）として、検知対象のイベントを検知したか否かを判断する。制御装置１０１は、検知対象のイベントを検知したと判断した場合（ステップＳ１５０においてＹＥＳ）、制御をステップＳ１５２に切り替える。そうでない場合には（ステップＳ１５０においてＮＯ）、制御装置１０１は、ステップＳ１５０の処理を再び実行する。
【００６６】
ステップＳ１５２において、制御装置１０１は、上述の特定部１５３（図５参照）として、図６の学習処理による学習結果に規定される条件付き確率に基づいて、ステップＳ１５０で検知されたイベントの発生時に表示される確率が高い画面（すなわち、表示候補画面）を特定する。一例として、制御装置１０１は、条件付き確率が所定値を超えている画面を表示候補画面として特定する。あるいは、制御装置１０１は、算出された条件付き確率が高い上位所定数の画面を表示候補画面として特定する。
【００６７】
ステップＳ１５４において、制御装置１０１は、上述の表示制御部１５４（図５参照）として、ステップＳ１５２で特定された各表示候補画面の参照先をプログラマブル表示器１００のディスプレイ１０４に表示する。当該参照先は、たとえば、表示候補画面の概略化したショートカットアイコンとして表されてもよいし、表示候補画面のアドレス（ファイルパス）として表されてもよい。
【００６８】
ステップＳ１５６において、制御装置１０１は、ステップＳ１５２で特定された各表示候補画面を表示するための準備処理を実行する。たとえば、当該準備処理は、たとえば、現在表示されている画面の背面に表示候補画面を準備（スタンバイ）することを含む。また、制御装置１０１は、準備処理として、表示候補画面を表示するためのビューア（たとえば、ＰＤＦビューアなど）の起動処理を実行してもよい。
【００６９】
ステップＳ１６０において、制御装置１０１は、ステップＳ１５４で表示された参照先の中から特定の参照先が選択されたか否かを判断する。制御装置１０１は、特定の参照先が選択されたと判断した場合（ステップＳ１６０においてＹＥＳ）、制御をステップＳ１６２に切り替える。そうでない場合には（ステップＳ１６０においてＮＯ）、制御装置１０１は、ステップＳ１６０の処理を再び実行する。
【００７０】
ステップＳ１６２において、制御装置１０１は、上述の表示制御部１５４として、ステップＳ１６０で選択された参照先の表示候補画面を表示する。
【００７１】
［Ｆ．プログラマブル表示器１００のハードウェア構成］
図８を参照して、プログラマブル表示器１００のハードウェア構成の一例について説明する。図８は、プログラマブル表示器１００の主要なハードウェア構成を示すブロック図である。
【００７２】
図８に示されるように、プログラマブル表示器１００は、制御装置１０１と、ＲＯＭ（Read  Only  Memory）１０２と、ＲＡＭ（Random  Access  Memory）１０３と、ディスプレイ１０４と、通信インターフェイス１０５と、Ｉ／Ｏインターフェイス１０６と、フィールドバスインターフェイス１０７と、記憶装置１２０とを備える。
【００７３】
制御装置１０１は、プログラマブル表示器１００を制御する。制御装置１０１は、たとえば、少なくとも１つの集積回路によって構成される。集積回路は、たとえば、少なくとも１つのＣＰＵ（Central  Processing  Unit）、少なくとも１つのＡＳＩＣ（Application  Specific  Integrated  Circuit）、少なくとも１つのＦＰＧＡ（Field  Programmable  Gate  Array）、またはそれらの組み合わせなどによって構成される。
【００７４】
制御装置１０１は、表示制御プログラム１２２などの各種プログラムを実行することでプログラマブル表示器１００の動作を制御する。制御装置１０１は、表示制御プログラム１２２の実行命令を受け付けたことに基づいて、記憶装置１２０からＲＯＭ１０２に表示制御プログラム１２２を読み出す。ＲＡＭ１０３は、ワーキングメモリとして機能し、表示制御プログラム１２２の実行に必要な各種データを一時的に格納する。
【００７５】
ディスプレイ１０４は、たとえば、液晶ディスプレイ、有機ＥＬ（Electro  Luminescence）ディスプレイ、またはその他の表示機器である。ディスプレイ１０４は、タッチパネルに重ねられており、プログラマブル表示器１００に対する各種操作をタッチ操作で受け付ける。
【００７６】
通信インターフェイス１０５、Ｉ／Ｏインターフェイス１０６、およびフィールドバスインターフェイス１０７は、プログラマブル表示器１００と外部装置とのデータの遣り取りを仲介する。より具体的には、通信インターフェイス１０５は、ネットワーク８（図１参照）などを介した、情報処理装置３００との通信を仲介する。通信インターフェイス１０５としては、たとえば、イーサネットに従う通信が可能なコンポーネントを採用することができる。Ｉ／Ｏインターフェイス１０６は、各種のユーザインターフェイス装置（たとえば、キーボード、マウスなど）との通信を仲介する。Ｉ／Ｏインターフェイス１０６としては、たとえば、ＵＳＢ通信やシリアル通信が可能なコンポーネントを採用することができる。フィールドバスインターフェイス１０７は、コントローラ２００との間のデータの遣り取りを仲介する。フィールドバスインターフェイス１０７は、としては、ＥｔｈｅｒＣＡＴ（登録商標）に従う通信が可能なコンポーネントを採用してもよいし、通信インターフェイス１０５と同様に、イーサネットに従う通信が可能なコンポーネントを採用してもよい。
【００７７】
記憶装置１２０は、たとえば、フラッシュメモリなどの記憶媒体である。一例として、記憶装置１２０は、プログラマブル表示器１００の表示制御プログラム１２２、上述の学習処理による学習結果１２４（カウントテーブル１２４Ａおよび確率テーブル１２４Ｂ）、ディスプレイ１０４に表示され得る画面１２６などのデータを格納する。表示制御プログラム１２２、学習結果１２４、および画面１２６の格納場所は、記憶装置１２０に限定されず、制御装置１０１の記憶領域（たとえば、キャッシュメモリなど）、ＲＯＭ１０２、ＲＡＭ１０３、外部機器（たとえば、コントローラ２００、情報処理装置３００、サーバー）などに格納されていてもよい。
【００７８】
なお、表示制御プログラム１２２は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う表示制御プログラム１２２の趣旨を逸脱するものではない。さらに、表示制御プログラム１２２によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、プログラマブル表示器１００とコントローラ２００と情報処理装置３００とが協働して、表示制御プログラム１２２を実行するように構成されてもよい。さらに、少なくとも１つのサーバーが表示制御プログラム１２２の処理の一部を実行する所謂クラウドサービスのような形態でプログラマブル表示器１００が構成されてもよい。
【００７９】
［Ｇ．第１の実施の形態のまとめ］
以上のようにして、本実施の形態に従うプログラマブル表示器１００は、検知対象のイベントが検知されたときにディスプレイ１０４に表示される画面を監視することで、当該イベントが発生した条件下で各画面が表示される確率を学習する。プログラマブル表示器１００は、検知対象のイベントが検知された場合に、学習処理で算出された確率に基づいて、ディスプレイ１０４に表示される可能性が高い画面（すなわち、表示候補画面）を特定し、当該表示候補画面の参照先を表示する。プログラマブル表示器１００は、当該参照先の選択操作を受け付けたことに基づいて、選択された参照先の表示候補画面をディスプレイ１０４に表示する。
【００８０】
表示される可能性が高い画面の参照先が、発生したイベントに応じて表示されることで、オペレータは、発生したイベントに対処するための画面を逸早く開くことができる。結果として、発生したイベントに素早く対処することができる。また、画面の表示間違いなども防ぐことができる。
【００８１】
＜第２の実施の形態＞
［Ａ．概要］
図９を参照して、第２の実施の形態に従うプログラマブル表示器１００の概要について説明する。図９は、プログラマブル表示器１００における画面遷移の一例を示す図である。
【００８２】
イベントの発生時に表示される画面は、ユーザごとに異なる。たとえば、経験が少ないオペレータは、発生したイベントに自動で対処するために自動モードで生産機器を制御するための画面を表示する傾向にある。図９の例では、新人のオペレータ「Ａ」は、メイン画面２８Ａから自動モードの画面２８Ｂに切り替えている。一方で、経験が豊富なオペレータは、自身でエラーに対処するために手動モードで生産機器を制御するための画面を表示する傾向にある。図９の例では、エキスパートのオペレータ「Ｂ」は、メイン画面２８Ａから手動モードの画面２８Ｃに切り替えている。このように、エラー時に表示される画面の確率は、ユーザによって異なる。
【００８３】
そこで、第２の実施の形態に従うプログラマブル表示器１００は、上述の学習処理をユーザごとに実行する。これにより、ユーザごとに学習結果１２４（図５参照）が得られる。プログラマブル表示器１００は、検知対象のイベントが検知された場合に、現在のユーザに対応する学習結果１２４を特定し、当該学習結果１２４に基づいて、表示される可能性が高い画面（すなわち、表示候補画面）を特定する。
【００８４】
その他の点については、第１の実施の形態に従うプログラマブル表示器１００と同じであるので、以下ではその他の点については繰り返さない。
【００８５】
［Ｂ．プログラマブル表示器１００の画面表示］
図１０および図１１を参照して、第２の実施の形態に従うプログラマブル表示器１００における画面表示について説明する。図１０は、第２の実施の形態に従うプログラマブル表示器１００が表示する画面の一例を示す図である。
【００８６】
本実施の形態においては、上述の学習結果１２４がユーザごとに準備されている。プログラマブル表示器１００は、検知対象のイベントを検知した場合に、現在のユーザを識別する。一例として、ユーザは、プログラマブル表示器１００にログインしているユーザのユーザ情報によって識別される。あるいは、ユーザの識別は、顔認証技術によって実現される。プログラマブル表示器１００は、現在のユーザに対応する学習結果１２４を特定し、当該学習結果１２４に基づいて、現在のイベントに対処するために表示される可能性の高い画面（すなわち、表示候補画面）の参照先を特定する。
【００８７】
一例として、新人のオペレータ「Ａ」については、表示候補画面の参照先として参照先２６Ａ，２６Ｂが特定されたとする。その結果、図１０（Ａ）に示されるように、プログラマブル表示器１００は、参照先２６Ａ，２６Ｂをディスプレイ１０４に表示する。一方で、エキスパートのオペレータ「Ｂ」については、表示候補画面の参照先として参照先２６Ｃが特定されたとする。その結果、図１０（Ｂ）に示されるように、プログラマブル表示器１００は、参照先２６Ｃを表示する。このように、ユーザごとに学習処理が実行されることで、ユーザに合わせた画面の参照先が表示される。
【００８８】
好ましくは、プログラマブル表示器１００は、表示候補画面が特定されたことに基づいて、当該表示候補画面をディスプレイ１０４に表示するための準備処理（前処理）を実行する。当該準備処理は、たとえば、現在表示されているエラー画面２０の背面に表示候補画面を準備することを含む。その例が図１１に示されている。図１１は、ディスプレイ１０４に表示される画面の階層関係を示す図である。
【００８９】
図１１に示されるように、プログラマブル表示器１００は、新人のオペレータ「Ａ」については、参照先２６Ａに対応する表示候補画面２７Ａと、参照先２６Ｂに対応する表示候補画面２７Ｂとを、現在表示されているエラー画面２０の背面に準備する。一方で、プログラマブル表示器１００は、エキスパートのオペレータ「Ｂ」については、参照先２６Ｃに対応する表示候補画面２７Ｃを、現在表示されているエラー画面２０の背面に準備する。
【００９０】
なお、図１では、準備処理として、表示候補画面がエラー画面２０の背面に表示される例について説明を行ったが、準備処理は、これに限定されない。たとえば、所定のイベントと、当該イベント発生時に使用されたアプリケーションとの関係が学習されている場合には、プログラマブル表示器１００は、当該イベントが発生した場合に、使用可能性が高いアプリケーションをバックグランドで起動する。これにより、当該アプリケーションを使用するための準備処理が行われる。
【００９１】
［Ｃ．第２の実施の形態のまとめ］
以上のようにして、本実施の形態に従うプログラマブル表示器１００は、イベントの発生時に表示される各画面の確率をユーザごとに学習する。プログラマブル表示器１００は、イベントが検知された場合には、現在のユーザに対応する学習結果に基づいて、表示される確率が高い画面を特定し、当該画面の参照先を表示する。これにより、表示される可能性が高い画面の参照先がユーザに合わせて表示される。
【００９２】
＜第３の実施の形態＞
［Ａ．概要］
第１の実施の形態に従うプログラマブル表示器１００は、発生したイベントと、表示される画面との関係を学習することにより、発生したイベントに表示される可能性が高い画面を推定していた。これに対して、第３の実施の形態に従うプログラマブル表示器１００は、ユーザ操作と当該ユーザ操作により生じるエラーとの関係を学習することにより、所定のユーザ操作が行われたときに生じる可能性が高いエラーを推定する。これにより、エラーの発生を未然に防止することができる。
【００９３】
その他の点については、第１の実施の形態に従うプログラマブル表示器１００と同じであるので、以下ではその他の点については繰り返さない。
【００９４】
［Ｂ．学習処理］
上述したように、学習処理には、上記式（１）に示されるベイズの定理が利用される。第１の実施の形態においては、式（１）に示される事象「Ｘ」が所定のイベントが発生しているという事象を表わし、事象「Ｙ」が所定の画面を表示しているという事象を表わしていた。これに対して、本実施の形態においては、式（１）に示される事象「Ｘ」が所定のユーザ操作が行われているという事象を表わし、事象「Ｙ」が所定のエラーが発生しているという事象を表わす。すなわち、式（１）に示される「Ｐ（Ｙ｜Ｘ）」は、所定のユーザ操作が行われている条件下で所定のエラーが発生する条件付き確率を表わす。プログラマブル表示器１００は、条件付き確率「Ｐ（Ｙ｜Ｘ）」を算出するために、図１２に示されるカウントテーブル１２４Ｃを用いる。
【００９５】
図１２は、カウントテーブル１２４Ｃのデータ構造の一例を示す図である。プログラマブル表示器１００は、エラーの種類ごと、およびユーザ操作の種類ごとに、エラーの発生数をカウントし、当該カウント結果をカウントテーブル１２４Ｃに書き込む。カウントテーブル１２４Ｃは、たとえば、所定のユーザ操作を検知する度に更新される。検知対象のユーザ操作は、ユーザによって設定されてもよいし、予め設定されていてもよい。一例として、検知対象の操作は、所定のボタンを連続的に押下する操作、所定の入力項目に対する入力操作、その他の所定の操作パターンなどである。
【００９６】
たとえば、ユーザ操作「Ａ」が検知されたとする。このとき、所定時間後にエラー「００１」が発生していたとする。この場合、プログラマブル表示器１００は、ユーザ操作「Ａ」およびエラー「００１」に対応するカウント数「ｎ１Ａ」をカウントアップする。このように、プログラマブル表示器１００は、ユーザ操作を監視し、所定のユーザ操作を検知したときに所定時間後に発生するエラーに対応するカウント数をカウントアップする。
【００９７】
プログラマブル表示器１００は、カウントテーブル１２４Ｃから確率テーブル１２４Ｄを生成する。より具体的には、プログラマブル表示器１００は、カウントテーブル１２４Ｃに含まれる各カウント数の合計を算出し、各カウント数を当該合計で除算する。これにより、各ユーザ操作が行われたときにその後に各エラーが発生する確率が学習結果として算出される。確率テーブル１２４Ｄは、検知対象のユーザ操作が検知する度に更新されてもよいし、検知対象のエラーが発生する度に更新されてもよいし、所定のタイミング（たとえば、１時間）ごとに更新されてもよいし、ユーザからの更新操作に基づいて更新されてもよい。
【００９８】
プログラマブル表示器１００は、所定のユーザ操作が新たに検知された場合に、確率テーブル１２４Ｂを参照して、当該所定のユーザ操作が行われた条件下で各エラーが発生する条件付き確率（第２確率）を算出する。一例として、ユーザ操作「Ａ」が検知されたとする。この場合、プログラマブル表示器１００は、ユーザ操作「Ａ」に関連付けられている確率の合計値（すなわち、破線部分３３の合計）を算出する。プログラマブル表示器１００は、確率「ｐ１Ａ」を当該合計値で除算することで、ユーザ操作「Ａ」が行われている条件下でエラー「００１」が発生する条件付き確率を算出する。同様に、プログラマブル表示器１００は、他のエラーについても、ユーザ操作「Ａ」が行われている条件下で他のエラーが発生する条件付き確率を算出する。
【００９９】
プログラマブル表示器１００は、各エラーについて算出された条件付き確率が予め定められた条件を満たした場合に、警告画面をディスプレイ１０４に表示する。一例として、当該予め定められた条件は、算出された条件付き確率の少なくともに１つが所定値（たとえば、９０％）よりも高い場合に満たされる。あるいは、当該予め定められた条件は、算出された条件付き確率の平均値が所定値（たとえば、５０％）よりも高い場合に満たされる。
【０１００】
図１３は、所定のユーザ操作が検知されたときに表示される警告画面の一例を示す図である。図１３に示されるディスプレイ１０４には、生産機器における製品の搬送速度をアップするためのボタン４０Ａと、当該搬送速度をダウンするためのボタン４０Ｂとが表示されている。この画面に対して、ユーザは、ボタン４０Ａを繰り返し押下したとする。このとき、ボタン４０Ａを連続的に押下するというユーザ操作について算出された上記条件付き確率が所定値を超えていたとする。その結果、プログラマブル表示器１００は、警告画面４１を表示する。これにより、プログラマブル表示器１００は、エラーの発生を未然に防ぐことができる。
【０１０１】
好ましくは、警告画面４１は、上記算出された条件付き確率が所定値よりも高いエラーの種類を示す識別情報を含む。図１３の例では、エラーの識別情報としてエラー番号「０００」が表示されている。エラーの識別情報が表示されることで、ユーザは、生じる可能性が高いエラーを一見して把握することができる。
【０１０２】
さらに好ましくは、警告画面４１は、プログラマブル表示器１００に対して行われたユーザ操作の種類を識別するための情報を含む。
【０１０３】
なお、上述では、式（１）に示される事象「Ｘ」が所定のユーザ操作が行われているという事象を表わし、事象「Ｙ」が所定のエラーが発生しているという事象を表わしている例について説明を行ったが、学習対象の事象は、これらに限定されない。たとえば、学習対象の事象は、時間（たとえば、シフト制、夜／昼／朝、春夏秋冬、年間イベント）、連続操作時間、制御データ（制御パラメータ）などであってもよい。あるいは、学習対象の事象は、ＰＬＣの制御データ（たとえば、イベントなど）であってもよい。このように、学習対象の事象を変えることで、様々な事象間の関係が学習される。また、学習される事象は、２つに限定されず、３つ以上の事象間の関係が学習されてもよい。
【０１０４】
［Ｃ．第３の実施の形態のまとめ］
以上のようにして、本実施の形態に従うプログラマブル表示器１００は、ユーザ操作によって生産機器において発生したエラーの種類を監視することで、所定のユーザ操作が行われた条件下で各エラーが発生する発生確率を学習する。プログラマブル表示器１００は、検知対象の所定のユーザ操作が検知された場合において、各エラーについて算出されたエラーの発生確率が予め定められた条件を満たしたときに、警告画面を表示する。これにより、プログラマブル表示器１００は、ユーザ操作により生じるエラーを未然に防ぐことができる。
【０１０５】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１０６】
１  情報処理システム、２  製造現場、４  リモートサイト、６，８，１０  ネットワーク、１２，１４  フィールドバス、２０  エラー画面、２２  警告メッセージ、２３  詳細情報、２４，４０Ａ，４０Ｂ  ボタン、２６Ａ〜２６Ｃ  参照先、２７Ａ〜２７Ｃ  表示候補画面、２８Ａ  メイン画面、２８Ｂ，２８Ｃ，１２６  画面、３２，３３  破線部分、４１  警告画面、１００  プログラマブル表示器、１０１  制御装置、１０２  ＲＯＭ、１０３  ＲＡＭ、１０４  ディスプレイ、１０５  通信インターフェイス、１０６  インターフェイス、１０７  フィールドバスインターフェイス、１２０  記憶装置、１２２  表示制御プログラム、１２４  学習結果、１２４Ａ，１２４Ｃ  カウントテーブル、１２４Ｂ，１２４Ｄ  確率テーブル、１５０  操作受付部、１５１  検知部、１５２  学習部、１５３  特定部、１５４  表示制御部、２００  コントローラ、２０２  リモートＩ／Ｏ装置、３００  情報処理装置。
【図１】
2018128969.tif 000003
【図２】
2018128969.tif 000004
【図３】
2018128969.tif 000005
【図４】
2018128969.tif 000006
【図５】
2018128969.tif 000007
【図６】
2018128969.tif 000008
【図７】
2018128969.tif 000009
【図８】
2018128969.tif 000010
【図９】
2018128969.tif 000011
【図１０】
2018128969.tif 000012
【図１１】
2018128969.tif 000013
【図１２】
2018128969.tif 000014
【図１３】
2018128969.tif 000015
【手続補正書】
【提出日】平成30年4月6日(2018.4.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
機器を制御するコントローラと通信可能なプログラマブル表示器であって、
前記プログラマブル表示器で使用され得る複数のコンテンツを格納するための記憶装置と、
前記機器に発生した所定の事象を検知するための検知部と、
前記所定の事象が検知されたときに前記プログラマブル表示器で使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するための学習部と、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記プログラマブル表示器で使用される可能性が高いコンテンツを特定するための特定部とを備える、プログラマブル表示器。
【請求項２】
前記プログラマブル表示器は、ディスプレイをさらに備え、
前記学習部は、前記所定の事象が検知されたときに前記ディスプレイに表示されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が前記ディスプレイに表示される前記第１確率を学習し、
前記プログラマブル表示器は、前記特定されたコンテンツの参照先を前記ディスプレイに表示するための表示制御部をさらに備える、請求項１に記載のプログラマブル表示器。
【請求項３】
前記表示制御部は、前記参照先の選択操作を受け付けたことに基づいて、当該参照先のコンテンツを前記ディスプレイに表示する、請求項２に記載のプログラマブル表示器。
【請求項４】
前記表示制御部は、前記使用される可能性が高いコンテンツが前記特定部によって特定されたことに基づいて、当該特定されたコンテンツを前記ディスプレイに表示するための準備処理を実行する、請求項２または３に記載のプログラマブル表示器。
【請求項５】
前記表示制御部は、前記第１確率が高いコンテンツの参照先ほど表示サイズを大きくする、請求項２〜４のいずれか１項に記載のプログラマブル表示器。
【請求項６】
前記学習部は、前記プログラマブル表示器に対する操作によって前記機器において発生したエラーの種類を監視することで、前記プログラマブル表示器に対して所定の操作が行われた条件下で前記エラーの各々が発生する第２確率をさらに学習し、
前記表示制御部は、前記所定の操作が検知された場合において、前記エラーの各々についての前記第２確率が予め定められた条件を満たしたときに、前記ディスプレイに警告画面を表示する、請求項２〜５のいずれか１項に記載のプログラマブル表示器。
【請求項７】
前記警告画面は、前記第２確率が所定値よりも高いエラーの種類を示す情報を含む、請求項６に記載のプログラマブル表示器。
【請求項８】
前記学習部は、前記プログラマブル表示器のユーザごとに前記第１確率を学習する、請求項１〜７のいずれか１項に記載のプログラマブル表示器。
【請求項９】
機器を制御するコントローラと通信可能なプログラマブル表示器における制御方法であって、
前記プログラマブル表示器で使用され得る複数のコンテンツを準備するステップと、
前記機器に発生した所定の事象を検知するステップと、
前記所定の事象が検知されたときに前記プログラマブル表示器で使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するステップと、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記プログラマブル表示器で使用される可能性が高いコンテンツを特定するステップとを備える、制御方法。
【請求項１０】
機器を制御するコントローラと通信可能なコンピュータの制御プログラムであって、
前記制御プログラムは、前記コンピュータに、
前記コンピュータで使用され得る複数のコンテンツを準備するステップと、
前記機器に発生した所定の事象を検知するステップと、
前記所定の事象が検知されたときに前記コンピュータで使用されたコンテンツを監視することで、前記所定の事象が発生した条件下で前記複数のコンテンツの各々が使用される第１確率を学習するステップと、
前記所定の事象が検知された場合に、前記学習された第１確率に基づいて、前記複数のコンテンツの内から前記コンピュータで使用される可能性が高いコンテンツを特定するステップとを実行させる、制御プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
プログラマブル表示器１００における表示画面は、外部装置（以下、「情報処理装置」と総称する。）において作成することができる。外部装置としては、プログラマブル表示器１００と何らかの手段で通信できるデバイスであれば、特に制限はなく、たとえば、パーソナルコンピュータ、スマートフォン、別のプログラマブル表示器などを用いることができる。プログラマブル表示器１００と通信する手段としては、ＵＳＢ（Universal Serial Bus）通信、シリアル通信、パラレル通信、有線ネットワーク（たとえば、イーサネット（登録商標））、無線ネットワーク（たとえば、無線ＬＡＮやＢＬＵＥＴＯＯＴＨ（登録商標））などの公知の手段を用いることができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
図１の情報処理システム１においては、情報処理装置としてパーソナルコンピュータを例示し、これらのパーソナルコンピュータは、ネットワークを介して、直接的または間接的にプログラマブル表示器１００と接続される。より具体的には、製造現場２には、ネットワーク８を介してプログラマブル表示器１００と接続される、情報処理装置３００＿１が配置され、リモートサイト４には、ネットワーク６およびネットワーク１０を介してプログラマブル表示器１００と接続される、情報処理装置３００＿２，３００＿３が配置される例を示す。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
ステップＳ１１６において、制御装置１０１は、上述のカウントテーブル１２４Ａ（図４参照）において、ステップＳ１１２で表示された画面と、ステップＳ１１４で検知されたイベントとに対応付けられている画面の表示回数をカウントアップする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００７６
【補正方法】変更
【補正の内容】
【００７６】
通信インターフェイス１０５、Ｉ／Ｏインターフェイス１０６、およびフィールドバスインターフェイス１０７は、プログラマブル表示器１００と外部装置とのデータの遣り取りを仲介する。より具体的には、通信インターフェイス１０５は、ネットワーク８（図１参照）などを介した、情報処理装置との通信を仲介する。通信インターフェイス１０５としては、たとえば、イーサネットに従う通信が可能なコンポーネントを採用することができる。Ｉ／Ｏインターフェイス１０６は、各種のユーザインターフェイス装置（たとえば、キーボード、マウスなど）との通信を仲介する。Ｉ／Ｏインターフェイス１０６としては、たとえば、ＵＳＢ通信やシリアル通信が可能なコンポーネントを採用することができる。フィールドバスインターフェイス１０７は、コントローラ２００との間のデータの遣り取りを仲介する。フィールドバスインターフェイス１０７としては、ＥｔｈｅｒＣＡＴ（登録商標）に従う通信が可能なコンポーネントを採用してもよいし、通信インターフェイス１０５と同様に、イーサネットに従う通信が可能なコンポーネントを採用してもよい。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００９０
【補正方法】変更
【補正の内容】
【００９０】
なお、図１１では、準備処理として、表示候補画面がエラー画面２０の背面に表示される例について説明を行ったが、準備処理は、これに限定されない。たとえば、所定のイベントと、当該イベント発生時に使用されたアプリケーションとの関係が学習されている場合には、プログラマブル表示器１００は、当該イベントが発生した場合に、使用可能性が高いアプリケーションをバックグランドで起動する。これにより、当該アプリケーションを使用するための準備処理が行われる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００９８
【補正方法】変更
【補正の内容】
【００９８】
プログラマブル表示器１００は、所定のユーザ操作が新たに検知された場合に、確率テーブル１２４Ｄを参照して、当該所定のユーザ操作が行われた条件下で各エラーが発生する条件付き確率（第２確率）を算出する。一例として、ユーザ操作「Ａ」が検知されたとする。この場合、プログラマブル表示器１００は、ユーザ操作「Ａ」に関連付けられている確率の合計値（すなわち、破線部分３３の合計）を算出する。プログラマブル表示器１００は、確率「ｐ１Ａ」を当該合計値で除算することで、ユーザ操作「Ａ」が行われている条件下でエラー「００１」が発生する条件付き確率を算出する。同様に、プログラマブル表示器１００は、他のエラーについても、ユーザ操作「Ａ」が行われている条件下で他のエラーが発生する条件付き確率を算出する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０１０６
【補正方法】変更
【補正の内容】
【０１０６】
１  情報処理システム、２  製造現場、４  リモートサイト、６，８，１０  ネットワーク、１２，１４  フィールドバス、２０  エラー画面、２２  警告メッセージ、２３  詳細情報、２４，４０Ａ，４０Ｂ  ボタン、２６Ａ〜２６Ｃ  参照先、２７Ａ〜２７Ｃ  表示候補画面、２８Ａ  メイン画面、２８Ｂ，２８Ｃ，１２６  画面、３２，３３  破線部分、４１  警告画面、１００  プログラマブル表示器、１０１  制御装置、１０２  ＲＯＭ、１０３  ＲＡＭ、１０４  ディスプレイ、１０５  通信インターフェイス、１０６  Ｉ／Ｏインターフェイス、１０７  フィールドバスインターフェイス、１２０  記憶装置、１２２  表示制御プログラム、１２４  学習結果、１２４Ａ，１２４Ｃ  カウントテーブル、１２４Ｂ，１２４Ｄ  確率テーブル、１５０  操作受付部、１５１  検知部、１５２  学習部、１５３  特定部、１５４  表示制御部、２００  コントローラ、２０２  リモートＩ／Ｏ装置、３００＿１，３００＿２，３００＿３  情報処理装置。
【手続補正９】
【補正対象書類名】図面
【補正対象項目名】図２
【補正方法】変更
【補正の内容】
【図２】
2018128969.tif 000016
【手続補正１０】
【補正対象書類名】図面
【補正対象項目名】図１０
【補正方法】変更
【補正の内容】
【図１０】
2018128969.tif 000017