(57)【要約】【課題】ユーザが直感的に理解しやすいユーザ操作を記録し、利用する。【解決手段】ＨＭＩ（１０）は、デバイス（４０）に対する１つ以上のユーザ操作を含む一連の操作を、操作手順と共に記録し、記録した操作手順の通りに、記録した１つ以上のユーザ操作の各々に対応する処理をデバイス（４０）に実行させる。【選択図】図１
2018077795.tif 000002
【特許請求の範囲】
【請求項１】
製造装置または検査装置に対する１つ以上のユーザ操作を含む一連の操作を、操作手順と共に記録する記録部と、
前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させる実行指示部と、を備えることを特徴とする制御装置。
【請求項２】
前記記録部は、ユーザによって指定された一連の操作を、操作手順と共に記録することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記記録部が記録した１つ以上のユーザ操作の各々を示す情報と操作手順を示す情報とを表示する表示部をさらに備えることを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記記録部が記録した一連の操作における或るユーザ操作が行われると、
前記表示部は、前記記録部が記録した一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記表示部は、前記記録部が記録した１つ以上のユーザ操作の各々が、前記記録部が記録した一連の操作において何番目のユーザ操作に当たるかを示す情報と共に、前記記録部が記録した１つ以上のユーザ操作の各々を示す情報を表示することを特徴とする請求項３または４に記載の制御装置。
【請求項６】
前記実行指示部に、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させることを指示する実行指示操作を受け付ける受付部をさらに備え、
前記受付部が前記実行指示操作を受け付けると、前記実行指示部は、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させることを特徴とする請求項１から５のいずれか１項に記載の制御装置。
【請求項７】
前記受付部は、自装置以外の制御装置から前記実行指示操作を受け付けることを特徴とする請求項６に記載の制御装置。
【請求項８】
前記記録部は、前記記録部が記録する一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔をさらに記憶することを特徴とする請求項１から７のいずれか１項に記載の制御装置。
【請求項９】
制御装置の制御方法であって、
製造装置または検査装置に対する１つ以上のユーザ操作を含む一連の操作を、操作手順と共に記録する記録ステップと、
前記記録ステップにて記録した操作手順の通りに、前記記録ステップにて記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させる実行指示ステップと、を含むことを特徴とする制御方法。
【請求項１０】
請求項１から８のいずれか１項に記載の制御装置としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は製造装置または検査装置に対するユーザ操作を記録し、利用する制御装置等に関する。
【背景技術】
【０００２】
従来、装置が実行するプログラム等の装置の動作内容を記録し、ユーザが当該装置に所望の動作を実行させようとする際などに、記録した動作内容を利用する装置が知られている。
【０００３】
例えば、下掲の特許文献１には、プログラムの実行手順を収集して、故障原因・故障状態を速やかに把握しようとするプラント監視制御装置等が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−２６５５４０号公報（１９９３年１０月１５日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述のような従来技術は、プログラムの実行手順を記録し利用するものであるため、例えば、外国人労働者および非熟練者などプログラムについて不慣れなユーザが、所望の動作を装置に実行させようとする際には、記録されている内容がユーザにとって分かりにくいという問題がある。
【０００６】
本発明の一態様は、プログラムの実行手順等ではなく、ユーザが直感的に理解しやすいユーザ操作を記録し、利用する制御装置等を実現することを目的とする。
【課題を解決するための手段】
【０００７】
前記の課題を解決するために、本発明の一態様に係る制御装置は、製造装置または検査装置に対する１つ以上のユーザ操作を含む一連の操作を、操作手順と共に記録する記録部と、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させる実行指示部と、を備えている。
【０００８】
前記の構成によれば、前記実行指示部は、前記記録部が記録した操作手順の通りに、前記記録部が記録した「前記製造装置または前記検査装置に対する１つ以上のユーザ操作の各々」に対応する処理を、前記製造装置または前記検査装置に実行させる。
【０００９】
したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録する。そして、前記制御装置は、記録した操作手順の通りに、記録した「１つ以上のユーザ操作の各々」に対応する処理を、前記製造装置または前記検査装置に実行させることができるという効果を奏する。
【００１０】
本発明の一態様に係る制御装置において、前記記録部は、ユーザによって指定された一連の操作を、操作手順と共に記録してもよい。
【００１１】
前記の構成によれば、前記記録部は、ユーザによって指定された一連の操作を、操作手順と共に記録する。したがって、前記制御装置は、前記製造装置または前記検査装置に対する任意の一連の操作を、その操作手順と共に記録することができるという効果を奏する。
【００１２】
本発明の一態様に係る制御装置は、前記記録部が記録した１つ以上のユーザ操作の各々を示す情報と操作手順を示す情報とを表示する表示部をさらに備えてもよい。
【００１３】
前記の構成によれば、前記表示部は、前記記録部が記録した「前記製造装置または前記検査装置に対する１つ以上のユーザ操作の各々」を示す情報を、その操作手順を示す情報と共に表示する。したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録する。そして、前記制御装置は、記録した操作手順を示す情報と共に、記録した「１つ以上のユーザ操作の各々」を示す情報を、表示することができるという効果を奏する。
【００１４】
本発明の一態様に係る制御装置において、前記記録部が記録した一連の操作における或るユーザ操作が行われると、前記表示部は、前記記録部が記録した一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示してもよい。
【００１５】
前記の構成によれば、前記表示部は、前記記録部が記録した一連の操作における或るユーザ操作が行われると、前記一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示する。したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録し、記録した一連の操作における或るユーザ操作が行われると、前記一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示することができるという効果を奏する。つまり、前記制御装置は、操作手順と共に記録した一連操作における或るユーザ操作が行われると、前記次のユーザ操作を示す情報を強調して表示することによって、ユーザに、前記次のユーザ操作を通知することができるという効果を奏する。
【００１６】
本発明の一態様に係る制御装置において、前記表示部は、前記記録部が記録した１つ以上のユーザ操作の各々が、前記記録部が記録した一連の操作において何番目のユーザ操作に当たるかを示す情報と共に、前記記録部が記録した１つ以上のユーザ操作の各々を示す情報を表示してもよい。
【００１７】
前記の構成によれば、前記表示部は、前記記録部が記録した１つ以上のユーザ操作の各々が、前記記録部が記録した一連の操作において何番目のユーザ操作に当たるかを示す情報と共に、前記記録部が記録した１つ以上のユーザ操作の各々を示す情報を表示する。
【００１８】
したがって、前記制御装置は、前記記録部が操作手順と共に記録した一連の操作が、全部で幾つのユーザ操作を含むかを示す情報を表示することができるという効果を奏する。また、前記制御装置は、或るユーザ操作が、前記一連の操作において何番目のユーザ操作に当たるかを示す情報を表示することができるという効果を奏する。
【００１９】
本発明の一態様に係る制御装置は、前記実行指示部に、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させることを指示する実行指示操作を受け付ける受付部をさらに備え、前記受付部が前記実行指示操作を受け付けると、前記実行指示部は、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させてもよい。
【００２０】
前記の構成によれば、前記実行指示部は、前記受付部が前記実行指示操作を受け付けると、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させる。
【００２１】
したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録し、前記実行指示操作を受け付けると、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させることができるという効果を奏する。
【００２２】
本発明の一態様に係る制御装置において、前記受付部は、自装置以外の制御装置から前記実行指示操作を受け付けてもよい。
【００２３】
前記の構成によれば、前記受付部は、自装置以外の制御装置から前記実行指示操作を受け付ける。したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録し、自装置以外の制御装置から前記実行指示操作を受け付けると、前記記録部が記録した操作手順の通りに、前記記録部が記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させることができるという効果を奏する。例えば、前記制御装置は、自装置から離れて設置された自装置以外の制御装置から前記実行指示操作を受け付けて、前記操作手順の通りに、前記１つ以上のユーザ操作の各々に対応する処理を、前記製造装置または前記検査装置に実行させることができるという効果を奏する。
【００２４】
本発明の一態様に係る制御装置において、前記記録部は、前記記録部が記録する一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔をさらに記憶してもよい。
【００２５】
前記の構成によれば、前記記録部は、前記記録部が記録する一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔をさらに記憶する。したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作を、その操作手順と共に記録し、その際さらに、記録した一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔を記憶することができるという効果を奏する。例えば、前記製造装置または前記検査装置に対するユーザ操作の中には、前記製造装置または前記検査装置が特定の稼働状況にある場合にのみ適切であるようなユーザ操作がある。したがって、前記制御装置は、前記製造装置または前記検査装置に対する一連の操作における、或るユーザ操作の適切なタイミングを記憶することができるという効果を奏する。
【００２６】
前記の課題を解決するために、本発明の一態様に係る制御方法は、制御装置の制御方法であって、製造装置または検査装置に対する１つ以上のユーザ操作を含む一連の操作を、操作手順と共に記録する記録ステップと、前記記録ステップにて記録した操作手順の通りに、前記記録ステップにて記録した１つ以上のユーザ操作の各々に対応する処理を前記製造装置または前記検査装置に実行させる実行指示ステップと、を含んでいる。
【発明の効果】
【００２７】
本発明の一態様によれば、プログラムの実行手順等ではなく、ユーザが直感的に理解しやすいユーザ操作を記録し、利用することができるという効果を奏する。
【図面の簡単な説明】
【００２８】
【図１】本発明の実施形態１に係るＨＭＩの要部構成を示すブロック図である。
【図２】本実施形態に係る制御システムの全体概要を示す図である。
【図３】図１のＨＭＩがユーザ操作を記録する手順を説明する図である。
【図４】図１のＨＭＩが記録したユーザ操作に対応する処理を実行する手順を説明する図である。
【図５】図１のＨＭＩが記録するユーザ操作であって、操作時刻と共に記録するユーザ操作の一例を説明する図である。
【図６】図１のＨＭＩが記録するユーザ操作であって、操作時刻と共に記録するユーザ操作の、図５に示す例とは別の例を説明する図である。
【図７】図１のＨＭＩが記録するユーザ操作であって、操作時刻は記録しないユーザ操作の一例を説明する図である。
【図８】本発明の実施形態２に係るＨＭＩの要部構成を示すブロック図である。
【図９】図８のＨＭＩが問題の発生した場合に実行する処理を説明する図である。
【図１０】図８のＨＭＩが記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作に対応する処理を図８のＨＭＩが実行する手順を説明する図である。
【図１１】図８のＨＭＩが記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作を図８のＨＭＩが表示する手順を説明する図である。
【図１２】図８のＨＭＩが、記録しているユーザ操作を、ユーザ操作の実行者名と共に、時系列で表示することを説明する図である。
【図１３】図１２に示す操作履歴一覧に対してフィルタ機能が利用された場合に表示される表の一例を説明する図である。
【図１４】図８のＨＭＩが記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作を図８のＨＭＩがガイダンス表示する手順を説明する図である。
【図１５】ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、図８のＨＭＩが実行する処理の一例を説明する図である。
【図１６】ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、図８のＨＭＩが実行する処理の別の例を説明する図である。
【図１７】ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、図８のＨＭＩが実行する処理のさらに別の例を説明する図である。
【図１８】ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、図８のＨＭＩが実行する処理の他の例を説明する図である。
【図１９】本発明の実施形態３に係るＨＭＩの要部構成を示すブロック図である。
【図２０】本実施形態に係る制御システムの全体概要を示す図である。
【発明を実施するための形態】
【００２９】
〔実施形態１〕
以下、本発明の実施形態１について図１から図７に基づいて詳細に説明する。図中同一または相当部分には同一符号を付してその説明は繰返さない。本発明の一態様に係るＨＭＩ１０（制御装置）についての理解を容易にするため、先ず、ＨＭＩ１０を含む制御システム１の概要を、図２を用いて説明する。なお、本発明の一態様に係る制御装置がＨＭＩである例を以下では説明するが、本発明の一態様に係る制御装置がＨＭＩであることは必須ではない。
【００３０】
（実施形態１の制御システムの概要）
図２は、制御システム１の概要を示す図である。図２に示すように、制御システム１は、マスタ装置としてのＰＬＣ（Programmable Logic Controller）２０と、マスタ装置にネットワークを介して接続される１つ以上のスレーブ装置３０と、を含むマスタースレーブ制御システムである。なお、「マスタ装置」および「スレーブ装置」は、ＰＬＣ２０とスレーブ装置３０とを接続するネットワーク上のデータ伝送の制御機能に着目して定義されるものであり、各装置間でどのような情報が送受信されるかについては、特に限定されない。
【００３１】
ＰＬＣ２０は、ネットワークを介したスレーブ装置３０とのデータ伝送を管理しているという意味で「マスタ装置」と呼ばれる。ＰＬＣ２０は、センサなどの入力機器であるデバイス４０からの情報を入力データとして取得し、予め組み込まれたユーザプログラムに従って、デバイス４０からの入力データを用いて演算処理を実行する。そして、ＰＬＣ２０は、前記演算処理を実行して、アクチュエータなどの出力機器であるデバイス４０への制御内容を決定し、その制御内容に対応する制御データを、スレーブ装置３０を介して、デバイス４０へ出力する。
【００３２】
ＰＬＣ２０とスレーブ装置３０とを接続するネットワークは、ＰＬＣ２０が受信し、またはＰＬＣ２０が送信する各種データを伝送する。ＰＬＣ２０とスレーブ装置３０とを接続するネットワークは、例えば、ＥｔｈｅｒＣＡＴ（登録商標）、ＰＲＯＦＩＮＥＴ（登録商標）、ＭＥＣＨＡＴＲＯＬＩＮＫ（登録商標）−ＩＩＩ、Ｐｏｗｅｒｌｉｎｋ、ＳＥＲＣＯＳ（登録商標）−ＩＩＩ、ＣＩＰ  Ｍｏｔｉｏｎである。また、ＰＬＣ２０とスレーブ装置３０とを接続するネットワークは、例えば、ＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）、ＤｅｖｉｃｅＮｅｔ、ＣｏｍｐｏＮｅｔ（登録商標）などであってもよい。
【００３３】
なお以下では、ＰＬＣ２０とスレーブ装置３０とを接続するネットワーク上をデータフレームが順次転送されることで、ＰＬＣ２０とスレーブ装置３０との間でデータが送受信される制御システム１について説明を行う。
【００３４】
また以下の説明においては、ＰＬＣ２０とスレーブ装置３０とを接続するネットワークを、スレーブ装置３０とデバイス４０とを接続するネットワークと対比させるために、「上位バス（上位通信ネットワーク）」と呼ぶことがある。「上位バス（上位通信ネットワーク）」と対比して、スレーブ装置３０とデバイス４０とを接続するネットワークを、「下位バス（下位位通信ネットワーク）」と呼ぶことがある。
【００３５】
スレーブ装置３０は、ＰＬＣ２０とデバイス４０との間でデータの送受信を行なうための中継装置である。スレーブ装置３０は、例えば、ＰＬＣ２０からの制御指示を出力先のデバイス４０に与える出力ユニットとしてのモータ制御装置であり、または、ＰＬＣ２０が入力元のデバイス４０の状態を取り込むための入力ユニットとしてのデバイス通信管理ユニットである。スレーブ装置３０には、通信ケーブルを介して、１つ以上のデバイス４０が接続される。
【００３６】
デバイス４０は、例えば、センサ（温度センサ、光センサなど）、スイッチ（押ボタンスイッチ、リミットスイッチ、圧力スイッチなど）のような入力元のデバイス、または、アクチュエータ、リレー、電磁弁、表示器などのような出力先のデバイスである。制御システム１においては、ＰＬＣ２０が、スレーブ装置３０を介して、デバイス４０の動作制御およびデバイス４０の出力データの受信を行う。言い換えれば、デバイス４０は、ＰＬＣ２０およびスレーブ装置３０を介してＨＭＩ１０によって動作を制御される、製造装置または検査装置である。
【００３７】
図２に示すように、ＰＬＣ２０には、また、例えばＵＳＢ（Universal Serial Bus）ケーブルを介して、ＨＭＩ（Human Machine Interface）１０が接続している。
【００３８】
ＨＭＩ１０は、人間と機械とが情報をやり取りするための手段であり、具体的には、人間が機械を操作したり（機械に指示を与えたり）、機械が現在の状態・結果を人間に知らせたりする手段である。ＨＭＩ１０について、人間が機械に指示を与える手段は、例えば、スイッチ、ボタン、ハンドル、ダイヤル、ペダル、リモコン、マイク、キーボード、マウスなどを含む。また、機械が現在の状態・結果等に係る情報を人間に伝える手段は、例えば、液晶画面、メーター、ランプ、スピーカーなどを含む。以下では、ＨＭＩ１０が、タッチパネル式のディスプレイの設けられている制御装置である例を説明する。
【００３９】
（ＨＭＩについて）
これまで、制御システム１、および制御システム１に含まれる装置（ＨＭＩ１０、ＰＬＣ２０、スレーブ装置３０、および、デバイス４０）の概要について、図２を用いて説明を行ってきた。次に、制御システム１に含まれるＨＭＩ１０について、その構成および処理の内容を、図１等を用いて説明していく。図１を参照してＨＭＩ１０の詳細について説明する前に、ＨＭＩ１０についての理解を容易にするため、ＨＭＩ１０の概要について以下のように整理しておく。
【００４０】
（ＨＭＩの概要）
ＨＭＩ１０は、デバイス４０（製造装置または検査装置）に対する１つ以上のユーザ操作を含む一連の操作（後述する操作手順ファイルに記録される操作）を、操作手順と共に記録する操作記録部１２０（記録部）と、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した１つ以上のユーザ操作の各々に対応する処理をデバイス４０に実行させる操作実行部１３０（実行指示部）と、を備えている。前記の構成によれば、操作実行部１３０は、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した「デバイス４０に対する１つ以上のユーザ操作の各々」に対応する処理を、デバイス４０に実行させる。
【００４１】
したがって、ＨＭＩ１０は、デバイス４０に対する一連の操作を、その操作手順と共に記録する。そして、ＨＭＩ１０は、記録した操作手順の通りに、記録した「１つ以上のユーザ操作の各々」に対応する処理を、デバイス４０に実行させることができるという効果を奏する。
【００４２】
これまでに概要を説明してきたＨＭＩ１０について、次に、ＨＭＩ１０の構成の詳細を、図１を用いて説明する。
【００４３】
（ＨＭＩの詳細）
図１は、ＨＭＩ１０の要部構成を示すブロック図である。図１に示すＨＭＩ１０は、制御部１００と、タッチパネル２００と、記憶部３００と、通信部４００と、を含む構成である。なお、記載の簡潔性を担保するため、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、ＨＭＩ１０は、当該省略された構成を備えてもよい。
【００４４】
タッチパネル２００は、入力部２１０と、表示部２２０とを含んでいる。すなわち、本実施形態では、入力部２１０と表示部２２０とは一体に成形されており、これらがタッチパネル２００を構成している。
【００４５】
入力部２１０は、ユーザがＨＭＩ１０を操作するための指示信号を、タッチパネル２００を介して入力するためのものである。入力部２１０は、タッチ面とタッチセンサとで構成されている。タッチ面は、指示体（表示部２２０の画面位置を指示するもの、ここでは、例えば、指またはペンなど）の接触を受け付けるものである。タッチセンサは、指示体とタッチ面との間の接触／非接触（接近／非接近）、および、その接触（接近）位置を検知するためものである。タッチセンサは、指示体とタッチ面との接触／非接触を検知できればどのようなセンサで実現されていてもかまわない。例えば、圧力センサ、静電容量センサ、光センサなどで実現される。
【００４６】
表示部２２０は、ＨＭＩ１０が情報処理するオブジェクト、および、ユーザがＨＭＩ１０を操作するためのＧＵＩ（Graphical User Interface）画面などを表示するものである。表示部２２０は、例えば、ＬＣＤ（液晶ディスプレイ）などの表示装置で実現される。なお、記載の簡潔性を担保するため、以下の説明においては、表示部２２０が表示するソフトボタン（ソフトウェアで作成されたソフトボタン）について、ソフトボタンであることは略記して、単に「ボタン」と称することがある。例えば、ソフトボタンである「記録開始ボタン」について、単に「記録開始ボタン」と称することがある。
【００４７】
制御部１００は、ＨＭＩ１０の機能を統括して制御するものである。図示の制御部１００には、機能ブロックとして、入力受付部１１０と、操作記録部１２０と、操作実行部１３０と、表示制御部１４０と、が含まれている。上述した制御部１００の各機能ブロックは、例えば、ＣＰＵ（central processing unit）などが、ＲＯＭ（read only memory）、ＮＶＲＡＭ（non-Volatile random access memory）等で実現された記憶装置（記憶部３００）に記憶されているプログラムを不図示のＲＡＭ（random access memory）等に読み出して実行することで実現できる。
【００４８】
入力受付部１１０は、タッチパネル２００に対するユーザ操作（具体的には、ユーザのタッチ操作）によってＨＭＩ１０に入力される操作信号を受け付けるものである。入力受付部１１０は、入力部２１０のタッチセンサから出力される操作信号を取得して、表示部２２０に表示されている各種情報に対して、どの位置でどのようなタッチ操作（タップ、フリック、ピンチ、ドラッグなど）がなされたのかを認識する。そして、入力受付部１１０は、表示部２２０に表示されている情報と、どの位置でどのようなタッチ操作が行われたのかの情報とから、タッチパネル２００が受け付けたユーザ操作の内容を認識する（特定する）。入力受付部１１０は、認識結果、すなわち、タッチパネル２００が受け付けたユーザ操作の情報を操作記録部１２０および操作実行部１３０に供給する。入力受付部１１０は、例えば、表示制御部１４０がタッチパネル２００（つまり、表示部２２０）に表示させているソフトボタンを押下するユーザ操作を認識し、認識したユーザ操作の情報を、操作記録部１２０および操作実行部１３０に供給する。
【００４９】
操作記録部１２０は、入力受付部１１０から、タッチパネル２００が受け付けたユーザ操作の情報を取得する。操作記録部１２０は、入力受付部１１０から取得したユーザ操作の情報を、入力受付部１１０から取得した順に、操作手順ファイルに記録していく。言い換えれば、操作記録部１２０は、タッチパネル２００が受け付けた１つ以上のユーザ操作を、タッチパネル２００がそのユーザ操作を受け付けた順に、操作手順ファイルに記録していく。つまり、操作記録部１２０は、タッチパネル２００が受け付けた１つ以上のユーザ操作の情報と、操作手順と、から操作手順ファイルを作成する。操作記録部１２０は、入力受付部１１０から、さらに、タッチパネル２００が受け付けたユーザ操作のタイミング（発生時刻）である操作時刻を取得してもよく、また、タッチパネル２００が受け付けたユーザ操作の操作者の情報を取得してもよい。操作記録部１２０は、操作手順ファイルに、ユーザ操作の情報と、操作手順とに加えて、操作時刻および操作者の情報の少なくとも一方を含めてもよい。操作記録部１２０は、作成した操作手順ファイルを、操作手順テーブル３１０に格納する。なお、操作時刻は、操作時間（操作に対応する処理の実行に係る時間）でもよい。
【００５０】
操作手順ファイルは、タッチパネル２００が受け付けたユーザ操作の操作ログデータであり、タッチパネル２００が受け付けたユーザ操作の内容と、操作手順とを含んでいる。例えば、操作手順ファイルは、表示制御部１４０が表示部２２０に表示させている１つ以上のソフトボタンについて、どのソフトボタンが押されたのか、および、どのような順序でどのソフトボタンが押下されたのかの情報を含んでいる。操作手順ファイルはさらに、タッチパネル２００が受け付けたユーザ操作の操作者情報（当該ユーザ操作を行なったユーザのユーザＩＤ、氏名、所属など）を含んでいてもよい。また、操作手順ファイルは、タッチパネル２００が受け付けたユーザ操作の操作時刻（発生時間）を含んでいてもよく、つまり、或るユーザ操作と別のユーザ操作との間の時間間隔についての情報を含んでいてもよい。
【００５１】
操作実行部１３０は、操作手順ファイルにおける操作手順の通りに、当該操作手順ファイルに含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させるための指示信号を生成する。具体的には、操作実行部１３０は、先ず、操作手順テーブル３１０を参照して、所望の操作手順ファイルを取得する。操作実行部１３０は、取得した操作手順ファイルから、操作手順ファイルにおける操作手順の通りに、取得した操作手順ファイルに含まれるユーザ操作を取得していく。操作実行部１３０は、対応指示管理テーブル３２０を参照して、取得したユーザ操作に対応する制御信号（取得したユーザ操作に対応する処理を、デバイス４０に実行させるための制御信号）を取得する。操作実行部１３０は、取得した制御信号を通信部４００に通知する。
【００５２】
表示制御部１４０は、制御部１００の各部が情報処理した結果得られた情報を、表示部２２０の画面に配置して映像信号に変換し、表示部２２０に供給するものである。表示制御部１４０は、例えば、ソフトボタンを、タッチパネル２００に、つまり表示部２２０に表示させる。
【００５３】
記憶部３００は、ＨＭＩ１０が使用する各種データを格納する記憶装置である。なお、記憶部３００は、ＨＭＩ１０の制御部１００が実行する（１）制御プログラム、（２）ＯＳプログラム、（３）制御部１００が、ＨＭＩ１０の有する各種機能を実行するためのアプリケーションプログラム、および、（４）該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の（１）〜（４）のデータは、例えば、ＲＯＭ（read only memory）、フラッシュメモリ、ＥＰＲＯＭ（Erasable Programmable ROM）、ＥＥＰＲＯＭ（登録商標）（Electrically EPROM）、ＨＤＤ（Hard Disc Drive）等の不揮発性記憶装置に記憶される。ＨＭＩ１０は、図示しない一時記憶部を備えていてもよい。一時記憶部は、ＨＭＩ１０が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、ＲＡＭ（Random Access Memory）などの揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、ＨＭＩ１０の使用目的、利便性、コスト、または、物理的な制約などから適宜決定される。記憶部３００はさらに、操作手順テーブル３１０および対応指示管理テーブル３２０を格納している。
【００５４】
操作手順テーブル３１０は、タッチパネル２００が受け付けたユーザ操作の操作ログデータである操作手順ファイルを格納している。操作手順ファイルは、タッチパネル２００が受け付けたユーザ操作の内容と、操作手順とを含み、さらに、ユーザ操作の操作者情報を含んでいてもよい。また、操作手順ファイルは、当該操作手順ファイルに含まれている、或るユーザ操作と別のユーザ操作との間の時間間隔についての情報を含んでいてもよい。
【００５５】
対応指示管理テーブル３２０は、ユーザ操作と、当該ユーザ操作に対応する処理をデバイス４０に実行させるための制御信号と、を対応付けて格納している。対応指示管理テーブル３２０は、例えば、表示制御部１４０がタッチパネル２００に表示させた１つ以上のソフトボタンの各々について、各ソフトボタンに対応する制御信号を格納している。
【００５６】
通信部４００は、ＰＬＣ２０から、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つの状態に係る情報（状態情報）を受信する。通信部４００は、操作実行部１３０から取得した制御信号（ユーザ操作に対応する処理をデバイス４０に実行させるための制御信号）を、ＰＬＣ２０に送信する。通信部４００からＰＬＣ２０に送信された制御信号は、ＰＬＣ２０によってスレーブ装置３０を介してデバイス４０へと送信され、デバイス４０は、前記制御信号にしたがって、ユーザ操作に対応する処理を実行する。
【００５７】
これまでに構成について説明してきたＨＭＩ１０について、次に、ユーザが実際にＨＭＩ１０をどのように利用するかを、図３および図４を用いて説明する。
【００５８】
（ＨＭＩによる、ユーザ操作の記録）
図３は、ＨＭＩ１０がユーザ操作を記録する手順を説明する図である。図３に示すように、（１）ユーザは、表示制御部１４０がタッチパネル２００（つまり、表示部２２０）に表示させているソフトボタンである「記録開始ボタン」を押下する。（２）「記録開始ボタン」を押下するユーザ操作を検知したＨＭＩ１０は、操作記録の保存を開始する。具体的には、タッチパネル２００に表示されている「記録開始ボタン」を押下するユーザ操作を検知した入力受付部１１０が、操作記録部１２０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、操作記録部１２０に対して、「記録開始ボタン」が押下された後から「記録終了ボタン」が押下されるまでの間のユーザ操作を一連の操作とする操作手順ファイルを生成するように指示する。
【００５９】
（３）ユーザは、表示制御部１４０がタッチパネル２００に表示させているソフトボタンである「ボタンＢ１」を押下する。（４）「ボタンＢ１」を押下するユーザ操作を入力受付部１１０が検知すると、操作記録部１２０は、「ボタンＢ１押下」を操作手順ファイルに記録する。（５）ユーザは、「ボタンＢ１」の次に「ボタンＢ２」を押下する。（６）「ボタンＢ１」の次に「ボタンＢ２」を押下するユーザ操作を入力受付部１１０が検知すると、操作記録部１２０は、「ボタンＢ２押下」を、「ボタンＢ１押下」の次のユーザ操作として、操作手順ファイルに記録する。（７）ユーザは、さらに「ボタンＢ３」を押下する。（８）「ボタンＢ３」を押下するユーザ操作を入力受付部１１０が検知すると、操作記録部１２０は、「ボタンＢ３押下」を、「ボタンＢ２押下」の次のユーザ操作として、操作手順ファイルに記録する。
【００６０】
（９）ユーザは、「記録終了ボタン」を押下する。（１０）「記録終了ボタン」を押下するユーザ操作を検知したＨＭＩ１０は、操作記録の保存を終了する。具体的には、タッチパネル２００に表示されている「記録終了ボタン」を押下するユーザ操作を検知した入力受付部１１０が、操作記録部１２０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、操作記録部１２０に対して、「記録開始ボタン」が押下された後から「記録終了ボタン」が押下されるまでの間に生成した操作手順ファイルを、操作手順テーブル３１０に格納するように指示する。（１１）操作記録部１２０は、保存した内容を、つまり、「記録開始ボタン」押下後から「記録終了ボタン」押下までの間の１つ以上のユーザ操作の情報を、操作手順と共に、操作手順ファイルとして、操作手順テーブル３１０に保存する（格納する）。
【００６１】
具体的には、操作記録部１２０は、「ボタンＢ１押下」の後、「ボタンＢ２押下」が実行され、「ボタンＢ２押下」の後、「ボタンＢ３押下」が実行されたことを示す操作手順ファイルを、操作手順テーブル３１０に格納する。操作記録部１２０は、この操作手順ファイルに、「ボタンＢ１」、「ボタンＢ２」、および「ボタンＢ３」を押下したユーザの情報（操作者情報）を含めてもよい。また、操作記録部１２０は、この操作手順ファイルに、「ボタンＢ１押下」、「ボタンＢ２押下」、および「ボタンＢ３押下」の各々の操作間隔を含めてもよい。操作記録部１２０は、この操作手順ファイルに、例えば、「ボタンＢ１押下」、「ボタンＢ２押下」、および「ボタンＢ３押下」の各々の操作時刻（発生時刻）を含めてもよい。
【００６２】
これまでに図３を用いて説明してきたＨＭＩ１０は、以下のように整理することができる。すなわち、ＨＭＩ１０の操作記録部１２０（記録部）は、ユーザによって指定された一連の操作（「記録開始ボタン」押下後から「記録終了ボタン」押下までの操作）を、操作手順と共に記録する。前記の構成によれば、操作記録部１２０は、ユーザによって指定された一連の操作を、操作手順と共に記録する。したがって、ＨＭＩ１０は、デバイス４０に対する任意の一連の操作を、その操作手順と共に記録することができるという効果を奏する。
【００６３】
（ＨＭＩによる、記録したユーザ操作に対応する処理の実行）
図４は、ＨＭＩ１０が記録したユーザ操作に対応する処理を実行する手順を説明する図である。なお、以下の説明においては、ユーザが、図３でＨＭＩ１０が生成した操作手順ファイルを既に指定していることを前提としている。すなわち、ユーザが、「『ボタンＢ１押下』、『ボタンＢ２押下』、および『ボタンＢ３押下』という３つのユーザ操作の情報を、『ボタンＢ１押下』の後に『ボタンＢ２押下』、『ボタンＢ２押下』の後に『ボタンＢ３押下』という操作手順の情報と共に含む」操作手順ファイルを既に指定していることを前提としている。
【００６４】
図４に示すように、（１）ユーザは、所望の操作手順ファイルを指定して、「操作開始ボタン」を押下する。（２）「操作開始ボタン」を押下するユーザ操作を検知したＨＭＩ１０は、操作の実行を開始する。具体的には、タッチパネル２００に表示されている「操作開始ボタン」を押下するユーザ操作を検知した入力受付部１１０が、操作実行部１３０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、操作実行部１３０に対して、ユーザが指定した操作手順ファイルにおける操作手順の通りに、ユーザが指定した操作手順ファイルに含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させるよう指示する。
【００６５】
（３）操作実行部１３０は、操作手順テーブル３１０を参照して、ユーザが指定した操作手順ファイルを読み込む。操作実行部１３０は、読み込んだ操作手順ファイルにおいて、先ず「ボタンＢ１押下」のユーザ操作が実行されたことを確認し、「ボタンＢ１押下」のユーザ操作を実行する。すなわち、操作実行部１３０は、対応指示管理テーブル３２０を参照して、「ボタンＢ１押下」のユーザ操作に対応する制御信号（「ボタンＢ１押下」のユーザ操作に対応する処理を、デバイス４０に実行させるための制御信号）を取得する。操作実行部１３０は、取得した制御信号を通信部４００に通知し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ１押下」のユーザ操作に対応する処理を実行させる。
【００６６】
（４）操作実行部１３０は、（３）の時と同様に、ユーザが指定した操作手順ファイルを読み込み、読み込んだ操作手順ファイルにおいて、「ボタンＢ１押下」のユーザ操作の次に「ボタンＢ２押下」のユーザ操作が実行されたことを確認する。操作実行部１３０は、「ボタンＢ２押下」のユーザ操作を実行する。すなわち、操作実行部１３０は、「ボタンＢ２押下」のユーザ操作に対応する制御信号を取得し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ２押下」のユーザ操作に対応する処理を実行させる。
【００６７】
（５）操作実行部１３０は、（３）および（４）の時と同様に、ユーザが指定した操作手順ファイルを読み込み、読み込んだ操作手順ファイルにおいて、「ボタンＢ２押下」のユーザ操作の次に「ボタンＢ３押下」のユーザ操作が実行されたことを確認する。操作実行部１３０は、「ボタンＢ３押下」操作を実行する。すなわち、操作実行部１３０は、「ボタンＢ３押下」のユーザ操作に対応する制御信号を取得し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ３押下」のユーザ操作に対応する処理を実行させる。
【００６８】
これまでに図３および図４を用いて説明してきたＨＭＩ１０の実行する処理は、以下のように整理することができる。すなわち、ＨＭＩ１０の実行する処理は、ＨＭＩ１０（制御装置）の制御方法であって、デバイス４０に対する１つ以上のユーザ操作を含む一連の操作（例えば、図３における「記録開始ボタン」押下後から「記録終了ボタン」押下までの操作）を、操作手順と共に記録する記録ステップと、前記記録ステップにて記録した操作手順の通りに、前記記録ステップにて記録した１つ以上のユーザ操作の各々に対応する処理をデバイス４０に実行させる実行指示ステップ（例えば、図４においてＨＭＩ１０が（３）から（５）において実行する処理）と、を含んでいる。
【００６９】
（ユーザ操作の自動実行中である旨をユーザに通知する機能について）
図４を用いて説明してきたように、ＨＭＩ１０の操作実行部１３０は、操作手順テーブル３１０を参照して、ユーザが指定した操作手順ファイルを読み込む。そして、操作実行部１３０は、読込んだ操作手順ファイルに記録されている操作手順の通りに、読込んだ操作手順ファイルに記録されている１つ以上のユーザ操作の各々に対応する処理を、デバイス４０に実行させる。
【００７０】
操作実行部１３０が操作手順ファイルに記録されているユーザ操作の各々に対応する処理をデバイス４０に実行させている間、表示制御部１４０は、「デバイス４０が操作実行部１３０に指示された処理を実行中である」旨を、表示部２２０に表示させる。例えば、操作実行部１３０が、「『ボタンＢ１押下』、『ボタンＢ２押下』、および『ボタンＢ３押下』という３つのユーザ操作の情報を、『ボタンＢ１押下』の後に『ボタンＢ２押下』、『ボタンＢ２押下』の後に『ボタンＢ３押下』という操作手順の情報と共に含む」操作手順ファイルに記録されているユーザ操作の各々に対応する処理をデバイス４０に実行させている間、表示制御部１４０は、以下の情報を表示部２２０に表示させる。
【００７１】
（待ち時間の表示）
すなわち、表示制御部１４０は、現在時刻から、デバイス４０が操作手順ファイルに記録されているユーザ操作の各々に対応する処理を完了する予定時刻までの残り時間を、例えば「待機中。残り○○秒」等の表現で、表示部２２０に表示させる。具体的には、デバイス４０が現在実行中の「ボタンＢ１押下」に対応する処理を完了するまでにあと２秒必要とし、その後に実行する予定の「ボタンＢ２押下」および「ボタンＢ３押下」に対応する処理をデバイス４０が完了するまでに要する予想時間が、各々、５秒および３秒である場合、表示制御部１４０は、「待機中。残り１０秒」との文字列を表示部２２０に表示させる。また、デバイス４０が「ボタンＢ１押下」に対応する処理を完了した直後であれば、表示制御部１４０は、「待機中。残り８秒」を表示部２２０に表示させる。
【００７２】
ＨＭＩ１０は、「現在時刻から、デバイス４０が操作手順ファイルに記録されているユーザ操作の各々に対応する処理を完了する予定時刻までの残り時間に係る情報」を、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つから取得してもよい。ＨＭＩ１０は、「デバイス４０による、操作手順ファイルに記録されているユーザ操作の各々に対応する処理の実行状況、および、各々の処理の完了に要する予想時間に係る情報」をＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つから取得してもよい。
【００７３】
（「実行中」の表示）
また、デバイス４０が、操作手順ファイルに記録されているユーザ操作の各々に対応する処理を実行中である場合には、表示制御部１４０は、待機中（実行中）である旨の文字列を表示部２２０に表示させてもよい。表示制御部１４０は、例えば、「自動操作  実行中」との文字列を表示部２２０に表示させてもよい。
【００７４】
デバイス４０が、操作手順ファイルに記録されているユーザ操作の各々に対応する処理を実行中である場合、表示制御部１４０は、待ち時間（処理完了までの残り時間）および「実行中」との文字列の少なくとも一方を、表示部２２０に表示させる。したがって、ユーザは、「デバイス４０が、操作手順ファイルに記録されているユーザ操作の各々に対応する処理の実行している」ことを把握することができる。例えば、ＨＭＩ１０は、「デバイス４０が或るユーザ操作に対応する処理を実行している最中に、ユーザが誤って、デバイス４０に別の処理の実行を指示するユーザ操作をＨＭＩ１０に入力する」等の事態を防ぐことができる。
【００７５】
（ＨＭＩによるユーザ操作の記録についての注記）
既に説明している通り、操作記録部１２０は、入力受付部１１０から、さらに、タッチパネル２００が受け付けたユーザ操作のタイミング（発生時刻）である操作時刻を取得してもよく、操作手順ファイルに、ユーザ操作の操作時刻を含めてもよい。すなわち、操作記録部１２０は、操作記録部１２０が記録する一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔をさらに記憶する。
【００７６】
前記の構成によれば、操作記録部１２０は、操作記録部１２０が記録する一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔をさらに記憶する。
言い換えれば、操作記録部１２０は、１つ以上のユーザ操作の内容および操作手順を記録する操作手順ファイルに、さらに、或るユーザ操作と別のユーザ操作との間の時間間隔を記録する。
【００７７】
したがって、ＨＭＩ１０は、デバイス４０に対する一連の操作を、その操作手順と共に記録し、その際さらに、記録した一連の操作における、或るユーザ操作と別のユーザ操作との間の時間間隔を記憶することができるという効果を奏する。例えば、デバイス４０に対するユーザ操作の中には、デバイス４０が特定の稼働状況にある場合にのみ、つまり、特定のタイミングにのみ、適切であるようなユーザ操作がある。したがって、ＨＭＩ１０は、デバイス４０に対する一連の操作における、或るユーザ操作の適切なタイミングを記憶することができるという効果を奏する。
【００７８】
ここで、操作記録部１２０は、操作時刻と一緒に操作手順ファイルに記録するのが望ましいユーザ操作と、操作時刻と一緒に操作手順ファイルに記録する必要性の低いユーザ操作と、について図５から図７を用いて説明しておく。
【００７９】
（操作時刻の記録が必要なユーザ操作の一例）
図５は、ＨＭＩ１０が記録するユーザ操作であって、操作時刻と共に記録するユーザ操作の一例を説明する図である。
【００８０】
図５に示すように、製造ラインにおいてＨＭＩ１０が単体で動作することは少なく、ＨＭＩ１０は、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０等の様々な機械と同時に利用されることが多い。ＨＭＩ１０は、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０等の様々な機械からの情報を読み込んだり、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０等の様々な機会に必要なデータを書き込んだりする。
【００８１】
ＨＭＩ１０が、或る機械（具体的には、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０等の少なくとも１つ）に対して、停止命令等の制御指令Ａを非同期で行う場合、以下のような事象が生じ得る。すなわち、ＨＭＩ１０から或る機械への非同期による制御指令Ａは、ＨＭＩ１０（表示制御部１４０）による、当該「非同期による制御指令Ａ」の結果等についての表示部２２０への描画と同期していない。そのため、ＨＭＩ１０の表示部２２０を見たユーザは、前記或る機械への非同期による制御指令Ａを行なったＨＭＩ１０が、前記或る機械への非同期による制御指令Ａを行なった直後に、次の動作を受け入れ可能な状態になっていると考える。
【００８２】
しかし、前記或る機械が前の制御指令Ａを実行している最中に、ＨＭＩ１０が、前記或る機械に対して別の制御指令Ｂを送信した場合、新しい制御指令Ｂの実行結果は、前記或る機械が有するユーザプログラム動作に依存し、想定した実行結果にならないことがある。
【００８３】
例えば、（１）ＨＭＩ１０が、ＰＬＣ２０に対して、停止命令を非同期で行う。（２）ＰＬＣ２０が、スレーブ装置３０（およびデバイス４０）に、停止指令（同期実行）している最中に、（３）ＨＭＩ１０が、他の機械（ＰＬＣ２０）が停止中にも関わらず、ＰＬＣ２０に対してパラメータ変更指令を非同期で行う場合、以下のような事象が生じ得る。すなわち、（４）ＰＬＣ２０は、パラメータ変更指令を実行する、またはパラメータ変更指令を破棄するなど、パラメータ変更指令に対して、ＰＬＣ２０内のユーザプログラムに依存した処理を実行するため、制御システム１において発生する事象が不確定となる。よって、ＨＭＩ１０は、図５に例示したようなユーザ操作については、他の機械（具体的には、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０等の少なくとも１つ）に影響を及ぼさないように、（１）のユーザ操作と（３）のユーザ操作との間の「待ち時間」を考慮して、（１）および（３）のユーザ操作を記録する必要がある。
【００８４】
（操作時刻の記録が必要なユーザ操作の別の例）
図６は、ＨＭＩ１０が記録するユーザ操作であって、操作時刻と共に記録するユーザ操作の、図５に示す例とは別の例を説明する図である。
【００８５】
ＨＭＩ１０（表示制御部１４０）が、表示部２２０に表示させているＰＬＣ２０からの情報の更新を行い、ＰＬＣ２０からの最新情報を反映させた内容に表示を更新する処理がある。しかしながら、ＰＬＣ２０からの情報があまりに多い場合、描画が遅くなる（表示の更新に時間がかかる）ことがある。
【００８６】
描画が遅くなっている（表示の更新に時間がかかっている）状態で、ユーザがＨＭＩ１０に対して別の同期動作の操作Ｂ（例えば、画面の切り替え（同期動作））を行うと、以下の事象が発生し得る。すなわち、ＨＭＩ１０がデータ更新（表示部２２０の表示内容の更新）に時間を取られるため、前記別の同期動作の操作Ｂの完了時間が想定より遅くなることがある。その結果、次の画面（ＰＬＣ２０からの最新情報を反映させた内容の画面）が表示されていないにもかかわらず、次の非同期動作の操作Ｂが実行されると、その操作Ｂは、画面が表示されていないため、無効になる。
【００８７】
例えば、（１）ＨＭＩ１０は、指定周期で、ＰＬＣ２０から、データ取得を非同期で実行する。（２）ＨＭＩ１０（表示制御部１４０）がＰＬＣ２０からの最新情報を反映させた画面に切り替える処理（同期動作）を実行中に、（３）ユーザが、次の非同期動作の操作をＨＭＩ１０に与えても、ＨＭＩ１０は、次の非同期動作の操作に対応する処理を実行しない。
【００８８】
よって、ＨＭＩ１０は、図６に例示したようなユーザ操作についても、ＰＬＣ２０からの最新情報を反映させた画面に切り替える処理（同期動作）の完了時刻とユーザ操作の操作時刻との間の「待ち時間」を考慮して、ユーザ操作を記録する必要がある。
【００８９】
（操作時刻の記録が不要なユーザ操作の一例）
図７は、ＨＭＩ１０が記録するユーザ操作であって、操作時刻は記録しないユーザ操作の一例を説明する図である。
【００９０】
ＨＭＩ１０が、複数のＰＬＣ２０各々に対して、バックアップ指令を送信する際、複数のＰＬＣ２０の各々のバックアップが完了したかどうかが問題になるのは、ユーザがバックアップデータを直接取得する必要がある場合だけである。したがって、ＨＭＩ１０は、タイミングを考慮することなく、複数のＰＬＣ２０の各々に対して、バックアップ指令を並列に送信することができる。複数のＰＬＣ２０の各々に対するバックアップ指令の送信のようなユーザ操作については、操作タイミング（操作時刻）の考慮は不必要であり、そのようなユーザ操作については、操作記録部１２０が操作時刻を一緒に操作手順ファイルに記録する必要性は低い。
【００９１】
例えば、ユーザは、複数のＰＬＣ２０（１）、２０（２）、２０（３）の各々にバックアップを指令する複数のユーザ操作を、ＨＭＩ１０に与える。（１）ＨＭＩ１０は、複数のＰＬＣ２０（１）、２０（２）、２０（３）の各々に、バックアップ指令（非同期実行）を送信する。（２）複数のＰＬＣ２０（１）、２０（２）、２０（３）の各々は、自装置の記憶部に、現システムをバックアップする（非同期実行）。
【００９２】
操作記録部１２０は、複数のＰＬＣ２０（１）、２０（２）、２０（３）の各々にバックアップを指令する複数のユーザ操作の各々については、操作時刻を操作手順ファイルに記録しなくともよい。
【００９３】
〔実施形態２〕
本発明の他の実施形態について、図８から図１８に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００９４】
（ＨＭＩについて）
図８は、本発明の実施形態２に係るＨＭＩ１１の要部構成を示すブロック図である。図８に例示するＨＭＩ１１の制御部１０１は、図１に例示したＨＭＩ１０の制御部１００が含んでいた機能ブロックに加えて、状態取得部１５０および報知部１６０をさらに含んでいる。状態取得部１５０および報知部１６０以外の構成については、ＨＭＩ１１はＨＭＩ１０と変わらない。
【００９５】
状態取得部１５０は、通信部４００から、ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つの状態に係る情報（状態情報）を取得する。状態取得部１５０は、取得した状態情報を、報知部１６０および操作記録部１２０に通知する。例えば、状態取得部１５０は、通信部４００から、「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」との状態情報を取得すると、取得した状態情報を、報知部１６０および操作記録部１２０に通知する。
【００９６】
報知部１６０は、状態取得部１５０が取得した状態情報に基づいて、操作手順テーブル３１０に格納されている操作手順ファイル、および、状態取得部１５０が取得した状態情報の少なくとも一方を、外部の装置等に報知する。報知部１６０は、外部のメールサーバにメール送信を指示するメール送信部１６１と、外部のファイルサーバに操作手順ファイルを送信するサーバ送信部１６２と、を含んでいる。
【００９７】
メール送信部１６１は、外部のメールサーバに、状態取得部１５０が取得した状態情報を含むメールを、所定の連絡先に送信するよう指示する。例えば、メール送信部１６１は、「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」場合、問題発生を通知するメールを、問題の発生した装置のベンダー、ＦＡＥ（Field Application Engine）等に送信するよう、外部のメールサーバに指示する。
【００９８】
サーバ送信部１６２は、外部のファイルサーバに、操作手順テーブル３１０に格納されている操作手順ファイルを格納する。例えば、サーバ送信部１６２は、「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」場合、問題が発生する直前までのユーザ操作を含む操作手順ファイルを、操作手順テーブル３１０を参照して取得する。サーバ送信部１６２は、取得した操作手順ファイルを、外部のファイルサーバに格納する。
【００９９】
（問題発生時の処理）
図９は、ＨＭＩ１１が問題の発生した場合に実行する処理を説明する図である。なお、図９に説明するＨＭＩ１１の操作記録部１２０は、入力受付部１１０から取得する「タッチパネル２００が受け付けたユーザ操作」の情報を、常に、操作手順ファイルに記録しているものとする。操作記録部１２０は、操作手順ファイルに、ユーザ操作の情報と、操作手順とに加えて、操作時刻の情報を記録していてもよい。
【０１００】
（１）「ボタンＢ１」を押下するユーザ操作を入力受付部１１０が検知すると、操作記録部１２０は、「ボタンＢ１押下」のユーザ操作を、操作時刻と共に、操作手順ファイルに記録する。（２）「ボタンＢ２」を押下するユーザ操作を入力受付部１１０が検知すると、操作記録部１２０は、「ボタンＢ２押下」のユーザ操作を、操作時刻と共に、操作手順ファイルに記録する。
【０１０１】
（３）「ボタンＢ３を押す」を押下するユーザ操作を入力受付部１１０が検知した後、状態取得部１５０は、通信部４００から、「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」との状態情報を取得する。（４）通信部４００から、「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」との状態情報を取得した状態取得部１５０は、操作記録部１２０に、操作手順ファイルの格納を依頼する。
【０１０２】
（５）操作記録部１２０は、「ボタンＢ３押下」のユーザ操作を、操作時刻と共に、操作手順ファイルに記録する。そして、操作記録部１２０は、「ボタンＢ１押下」、「ボタンＢ２押下」、および「ボタンＢ３押下」のユーザ操作と、操作手順と、各ユーザ操作の操作時刻とを含む操作手順ファイルを、操作手順テーブル３１０に格納する。
【０１０３】
（６）「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」との状態情報を取得した状態取得部１５０は、サーバ送信部１６２に、問題発生を通知する。（７）状態取得部１５０から問題発生を通知されたサーバ送信部１６２は、操作手順テーブル３１０を参照して取得した操作手順ファイルを、外部のファイルサーバに送信する。具体的には、サーバ送信部１６２は、操作手順テーブル３１０を参照して、「ボタンＢ１押下」、「ボタンＢ２押下」、および「ボタンＢ３押下」のユーザ操作と、操作手順と、各ユーザ操作の操作時刻とを含む操作手順ファイルを取得する。サーバ送信部１６２は、取得した操作手順ファイルを外部のファイルサーバに送信し、取得した操作手順ファイルを外部のファイルサーバに格納する。
【０１０４】
（８）「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つに問題が発生した」との状態情報を取得した状態取得部１５０は、メール送信部１６１に、問題発生を通知する。（９）状態取得部１５０から問題発生を通知されたメール送信部１６１は、所定の連絡先に、問題発生をメールによって通知する。所定の連絡先とは、例えば、問題が発生した装置のベンダーおよびＦＡＥなどである。
【０１０５】
（１０）ユーザは、問題発生前の操作手順ファイル（「ボタンＢ１押下」、「ボタンＢ２押下」、および「ボタンＢ３押下」のユーザ操作と、操作手順と、各ユーザ操作の操作時刻とを含む操作手順ファイル）を元に、再現テストを実行する。ここで、ユーザ（前記ベンダーおよび前記ＦＡＥを含む）は、操作手順テーブル３１０に格納されている操作手順ファイルを元に、ＨＭＩ１０が設置されている現場で、再現テストを行なってもよい。また、ユーザは、外部のファイルサーバに格納されている操作手順ファイルを元に、ＨＭＩ１０が設置されている現場から離れた場所で、再現テストを行なってもよい。
【０１０６】
ＨＭＩ１１は、問題発生時の操作手順ファイルを外部のファイルサーバに転送し、所定の連絡先に問題発生を通知することによって、ユーザが、問題発生時の状況を再現したテストを早期に実施することができるようにする。
【０１０７】
（操作の一覧表示）
図１０は、ＨＭＩ１１が記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作に対応する処理をＨＭＩ１１が実行する手順を説明する図である。まず、（１）ユーザは、表示制御部１４０がタッチパネル２００に表示させている「操作一覧ボタン」を押下する。
【０１０８】
（２）「操作一覧ボタン」を押下するユーザ操作を検知したＨＭＩ１１は、登録されている操作一覧を表示する。具体的には、タッチパネル２００に表示されている「操作一覧ボタン」を押下するユーザ操作を検知した入力受付部１１０が、表示制御部１４０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、表示制御部１４０に対して、操作手順テーブル３１０に格納されている１つ以上の操作手順ファイルを、表示部２２０に一覧表示させるように指示する。入力受付部１１０からの前記指示を受け付けた表示制御部１４０は、操作手順テーブル３１０に格納されている１つ以上の操作手順ファイルを、表示部２２０に一覧表示させる。
【０１０９】
（３）ユーザは、表示制御部１４０がタッチパネル２００に表示させている操作手順ファイルの一覧（操作一覧）を確認し、操作一覧の中から所望の操作（操作手順ファイル）を選択し、選択した操作の「実行ボタン」を押下する。
【０１１０】
（４）「実行ボタン」を押下するユーザ操作を検知したＨＭＩ１１は、指定された操作を実行する。具体的には、タッチパネル２００に表示されている「実行ボタン」を押下するユーザ操作を検知した入力受付部１１０が、操作実行部１３０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、操作実行部１３０に対して、「実行ボタン」が押下された操作（操作手順ファイル）における操作手順の通りに、「実行ボタン」が押下された操作（操作手順ファイル）に含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させるよう指示する。
【０１１１】
（５）操作実行部１３０は、指定された操作の内容に従って、指定された操作に含まれるユーザ操作に対応する処理を、指定された操作で指定された順番（操作手順）通りに実行する。具体的には、操作実行部１３０は先ず、操作手順テーブル３１０を参照して、「実行ボタン」が押下された操作の操作手順ファイルを読み込む。操作実行部１３０は、読み込んだ操作手順ファイルに含まれるユーザ操作に対応する処理を、読み込んだ操作手順ファイルで指定されている操作手順の通りに実行する。例えば、「実行ボタン」が押下された操作の操作手順ファイルが、「『ボタンＢ２押下』および『ボタンＢ３押下』という２つのユーザ操作の情報を、『ボタンＢ２押下』の後に『ボタンＢ３押下』という操作手順の情報と共に含む」操作手順ファイルであった場合、操作実行部１３０は以下の処理を実行する。
【０１１２】
すなわち、操作実行部１３０は、読み込んだ操作手順ファイルにおいて、「ボタンＢ２押下」のユーザ操作が最初に実行されたことを確認し、「ボタンＢ２押下」のユーザ操作を実行する。具体的には、操作実行部１３０は、対応指示管理テーブル３２０を参照して、「ボタンＢ２押下」のユーザ操作に対応する制御信号（「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させるための制御信号）を取得する。操作実行部１３０は、取得した制御信号を通信部４００に通知し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ２押下」のユーザ操作に対応する処理を実行させる。
【０１１３】
次に、操作実行部１３０は、読み込んだ操作手順ファイルにおいて、「ボタンＢ２押下」のユーザ操作の後に「ボタンＢ３押下」のユーザ操作が実行されたことを確認し、「ボタンＢ３押下」のユーザ操作を実行する。具体的には、操作実行部１３０は、対応指示管理テーブル３２０を参照して、「ボタンＢ３押下」のユーザ操作に対応する制御信号を取得する。操作実行部１３０は、取得した制御信号を通信部４００に通知し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ３押下」のユーザ操作に対応する処理を実行させる。
【０１１４】
（操作のガイダンス実行）
図１１は、ＨＭＩ１１が記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作をＨＭＩ１１が表示する手順を説明する図である。まず、（１）ユーザは、表示制御部１４０がタッチパネル２００に表示させている「操作一覧ボタン」を押下する。
【０１１５】
（２）「操作一覧ボタン」を押下するユーザ操作を検知したＨＭＩ１１は、登録されている操作一覧を表示する。具体的には、タッチパネル２００に表示されている「操作一覧ボタン」を押下するユーザ操作を検知した入力受付部１１０が、表示制御部１４０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、表示制御部１４０に対して、操作手順テーブル３１０に格納されている１つ以上の操作手順ファイルを、表示部２２０に一覧表示させるように指示する。
【０１１６】
（３）ユーザは、表示制御部１４０がタッチパネル２００に表示させている操作手順ファイルの一覧（操作一覧）を確認し、操作一覧の中から所望の操作（操作手順ファイル）を選択し、選択した操作の「プレビュー」の「実行ボタン」を押下する。なお、以下の説明においては、記載の簡潔性を担保するため、「プレビュー」の「実行ボタン」を「プレビュー実行」と略記することがある。
【０１１７】
（４）「プレビュー実行」を押下するユーザ操作を検知したＨＭＩ１１は、指定された操作のプレビュー表示を実行する。具体的には、タッチパネル２００に表示されている「プレビュー実行」を押下するユーザ操作を検知した入力受付部１１０が、表示制御部１４０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、表示制御部１４０に対して、「プレビュー実行」が押下された操作（操作手順ファイル）における操作手順の通りに、「プレビュー実行」が押下された操作（操作手順ファイル）に含まれるユーザ操作を示す情報を、表示部２２０に表示させるよう指示する。
【０１１８】
（５）表示制御部１４０は、指定の操作内容に従って、実行される順番がユーザに分かるようにユーザ操作を強調表示させる。すなわち、表示制御部１４０は、指定された操作の内容に従って、つまりユーザによって「プレビュー実行」を指示された操作の操作手順ファイルの内容に従って、当該操作手順ファイルに含まれるユーザ操作の各々を、実行順番がユーザに分かるように、表示部２２０に強調表示させる。具体的には、表示制御部１４０は先ず、操作手順テーブル３１０を参照して、「プレビュー実行」が押下された操作の操作手順ファイルを読み込む。表示制御部１４０は、読み込んだ操作手順ファイルに含まれるユーザ操作を示す情報を、読み込んだ操作手順ファイルで指定されている操作手順の通りに、順次、強調表示させていく。例えば、「プレビュー実行」が押下された操作の操作手順ファイルが、「『ボタンＢ３押下』および『ボタンＢ１押下』という２つのユーザ操作の情報を、『ボタンＢ３押下』の後に『ボタンＢ１押下』という操作手順の情報と共に含む」操作手順ファイルであった場合、表示制御部１４０は以下の処理を実行する。
【０１１９】
すなわち、表示制御部１４０は、タッチパネル２００（表示部２２０）に、先ず「ボタンＢ３」を強調表示させ、例えば、「ボタンＢ３」を、所定時間、点滅表示させる。表示制御部１４０は、「ボタンＢ３」を強調表示させた後、「ボタンＢ１」を強調表示させ、例えば、「ボタンＢ１」を、所定時間、点滅表示させる。
【０１２０】
（６）表示制御部１４０は、指定された操作が、つまりユーザによって「プレビュー実行」を指示された操作が、いくつのユーザ操作を必要としているかを表示させる。表示制御部１４０は、また、現在強調表示させているユーザ操作が、指定された操作において何番目のユーザ操作であるかを表示させる。例えば、ユーザによって「プレビュー実行」を指示された操作の操作手順ファイルが、７つのユーザ操作を含み、表示制御部１４０が現在強調表示させているユーザ操作が４番目のユーザ操作であった場合、表示制御部１４０は以下の情報を表示部２２０に表示させる。すなわち、図１１において（６）の矢印が伸びている操作ステップに示されているように、表示制御部１４０は、操作手順ファイルに含まれる７つのユーザ操作に対応する７つのブロックを表示させ、また、現在強調表示させている４番目のユーザ操作に対応する４つ目のブロックを点滅表示させる。
【０１２１】
（７）ユーザは、表示制御部１４０によって（５）において強調表示されたユーザ操作の順番を確認し、所望の操作の内容を、つまり、どのような操作手順で（どのような順番で）、どのユーザ操作を実行する必要があるのかを正しく確認する。
【０１２２】
図１１を用いて説明したように、ＨＭＩ１１は、操作記録部１２０が記録した１つ以上のユーザ操作の各々を示す情報と操作手順を示す情報とを表示する表示部２２０を備えている。前記の構成によれば、表示部２２０は、操作記録部１２０が記録した「デバイス４０に対する１つ以上のユーザ操作の各々」を示す情報を、その操作手順を示す情報と共に表示する。したがって、ＨＭＩ１１は、デバイス４０に対する一連の操作を、その操作手順と共に記録する。そして、ＨＭＩ１１は、記録した操作手順を示す情報と共に、記録した「１つ以上のユーザ操作の各々」を示す情報を、表示することができるという効果を奏する。
【０１２３】
（操作履歴の表示）
図１２は、ＨＭＩ１１が、記録しているユーザ操作を、ユーザ操作の実行者名と共に、時系列で表示することを説明する図である。ここで、図１２を用いて説明する制御システムは、以下の５つの前提を含んでいるものとする。すなわち、（Ｉ）ＨＭＩ１１が動作を制御する装置Ｘは、起動時に、ユーザ操作：ＣＣＣに対応する処理を実行しなければならない。（ＩＩ）ＨＭＩ１１が制御する製造ラインＡを正しく動作させるためには、装置Ｘが起動した後に必ず、ユーザ操作：ＧＧＧに対応する処理を、一度実行しなければならない。（ＩＩＩ）突発的な問題が発生した後、装置Ｘを復帰させるには必ず、ユーザ操作：ＥＥＥに対応する処理を実行しなければならない。（ＩＶ）ユーザは、５時（午前５時）に、装置Ｘを停止させなければならない。（Ｖ）装置Ｘを停止させる前には必ず、操作：ＦＦＦに対応する処理を実行しなければならない。さらに、図１２を用いて説明する制御システムにおいて、「ユーザ：太郎およびユーザ：花子は日勤担当であり、ユーザ：Ｍｉｋｅは夜勤担当である」ものとする（ＶＩ）。
【０１２４】
図１２に示すように、（１）２０１６年９月３日の１７：３０（午後５：３０）以降、ユーザ：Ｍｉｋｅは、ユーザ：太郎、または、ユーザ：花子からの引き継ぎができなかった。ユーザ：Ｍｉｋｅは、表示制御部１４０がタッチパネル２００に表示させている「操作履歴ボタン」を押下し、ユーザ：太郎、または、ユーザ：花子によって、現在までに、どのような操作が行われたかを確認する。
【０１２５】
（２）「操作履歴ボタン」を押下するユーザ操作を検知したＨＭＩ１１は、操作履歴一覧を表示する。具体的には、タッチパネル２００に表示されている「操作履歴ボタン」を押下するユーザ操作を検知した入力受付部１１０が、表示制御部１４０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、表示制御部１４０に対して、操作手順テーブル３１０に格納されている「現在までに行われたユーザ操作（を含む操作手順ファイル）」を示す情報を、ユーザ操作の実行者名と共に、時系列で、表示部２２０に一覧表示させるように指示する。入力受付部１１０からの前記指示を受け付けた表示制御部１４０は、操作手順テーブル３１０に格納されている「現在までに行われたユーザ操作」を示す情報を、ユーザ操作の実行者名と共に、時系列で、表示部２２０に一覧表示させる。
【０１２６】
（３）ユーザ：Ｍｉｋｅは、ユーザ：花子が、２０１６年９月３日の９：３２（午前９：３２）に、初回起動時のユーザ操作：ＣＣＣを実行していることを確認する。ユーザ：Ｍｉｋｅは、また、ユーザ：花子が、９：３２にユーザ操作：ＣＣＣを実行した後、製造ラインＡの初期化（具体的には、ユーザ操作：ＧＧＧ）が、実行されていないことを確認する。
【０１２７】
ここで、前述の通り、（ＩＩ）ＨＭＩ１１が制御する製造ラインＡを正しく動作させるためには、装置Ｘが起動した後に必ず、ユーザ操作：ＧＧＧに対応する処理を、一度実行しなければならない。したがって、ユーザ：Ｍｉｋｅは、製造ラインＡの初期化（ユーザ操作：ＧＧＧ）を実行しなればならないことを把握する。
【０１２８】
（ソート機能およびフィルタ機能について）
表示制御部１４０は、図１２に示す「操作履歴一覧」について、「ソート機能」および「フィルタ機能」を実現するため、以下の内容を表示部２２０に表示させる。
【０１２９】
（ソート機能について）
図１２に示す「操作履歴一覧」の表において、表中のタイトル（項目）をクリックするユーザ操作を入力受付部１１０が検出すると、表示制御部１４０は、表中の内容を昇順または降順に並べ替えて表示部２２０に表示させる。ここで、表のタイトル（項目）とは、表示制御部１４０が表示部２２０に表示させている「操作履歴一覧」の表における、「日時」、「ユーザ」、「操作名」、および「内容」といった項目を指している。
【０１３０】
表示制御部１４０は、「操作履歴一覧」において、ユーザに指定されたタイトル（項目）中の値（内容）に応じて、昇順、降順のソートの仕方を変更してもよい。表示制御部１４０は、例えば、ユーザに指定された項目の値が数値であれば「値が大きくなる順、または、値が小さくなる順」にソートし、アルファベットであれば「ＡからＺの順、または、ＺからＡの順」にソートし、ソートした結果を表示部２２０に表示させる。
【０１３１】
表示制御部１４０は、指定された列（タイトル・項目）の内容だけを独立にソートするのではなく、同じ行の内容はひとまとまりのデータとして扱い、同じ行の他の列の値も同時にソートして、ソートした結果を表示部２２０に表示させる。
【０１３２】
ユーザは、このソート機能を利用し、「操作履歴一覧」の内容を、例えば作業者（ユーザ）の順に並び替えることによって、ユーザ操作をユーザごとに確認することができる。
【０１３３】
（フィルタ機能について）
図１２に示す「操作履歴一覧」の表において、表中のタイトル（項目）の横に表示されている所定のマークをクリックするユーザ操作を入力受付部１１０が検出すると、表示制御部１４０は、図１３に示す表を表示部２２０に表示させる。
【０１３４】
図１３は、図１２に示す操作履歴一覧に対してフィルタ機能が利用された場合に表示される表の一例を説明する図である。表示制御部１４０は先ず、図１３の（Ａ）に示すように、図１２の「操作履歴一覧」において指定されたタイトル中の値（内容）から重複を排除した一覧を、表示部２２０に表示させる。例えば、図１２の「操作履歴一覧」における「ユーザ」のタイトルの横に表示されているマークをクリックするユーザ操作を入力受付部１１０が検出すると、表示制御部１４０は、「操作履歴一覧」に重畳させて、図１３の（Ａ）に示す表を表示部２２０に表示させる。
【０１３５】
図１３の（Ａ）に例示する表において「太郎」をチェックし、[ＯＫ]を押下するユーザ操作を入力受付部１１０が検出すると、表示制御部１４０は、図１３の（Ｂ）に示す表を表示部２２０に表示させる。すなわち、表示制御部１４０は、図１２に示す操作履歴一覧で示していた内容を、図１３の（Ａ）で指定された条件（チェックの入っている項目）によって抽出した結果を、表示部２２０に表示させる。
【０１３６】
ここで、図１３の（Ａ）に示す例では、「太郎」のみがチェックされているが、ユーザは、複数の対象をチェックしてもよく、例えば、「太郎」および「花子」をチェックし、[ＯＫ]を押下してもよい。すなわち、ユーザは、図１３の（Ａ）に示す表の任意の値に対して、「チェックあり」または「チェックなし」とすることができる。表示制御部１４０は、図１３の（Ａ）に示す表において「チェックあり」となっている値に対応する、図１２の「操作履歴一覧」中の行を、表示部２２０に表示させる（図１３の（Ｂ））。
【０１３７】
例えば、図１３の（Ａ）において「太郎」および「花子」をチェックするユーザ操作を入力受付部１１０が検出すると、表示制御部１４０は、図１２に示す操作履歴一覧で示していた内容のうち、ユーザが「太郎」または「花子」であるデータのみを、表示部２２０に表示させる。
【０１３８】
このフィルタ機能を利用することで、ユーザは、例えば、数日間分の操作履歴に対して必要な情報だけを抽出することができ、確認が容易になる。例えば、夜勤担当のユーザ：Ｍｉｋｅは、日勤担当のユーザ：太郎およびユーザ：花子の操作履歴を、容易に抽出して確認することができる。
【０１３９】
なお、これまで図１３を説明してきた表示制御部１４０のソート機能およびフィルタ機能は、「操作履歴一覧」の表についてのみ適用されるものではない。表示制御部１４０は、図１０、図１１、図１４〜１８に示す「操作一覧」についても、「ソート機能」および「フィルタ機能」を実現することができる。
【０１４０】
（操作のガイダンス表示と手動実行）
図１４は、ＨＭＩ１１が記録しているユーザ操作の中から１つのユーザ操作が選択され、選択されたユーザ操作をＨＭＩ１１がガイダンス表示する手順を説明する図である。
【０１４１】
図１４に示すように、（１）ユーザは、表示制御部１４０がタッチパネル２００に表示させている「操作一覧ボタン」を押下する。（２）「操作一覧ボタン」を押下するユーザ操作を検知したＨＭＩ１１は、登録されている操作一覧を表示する。
【０１４２】
（３）ユーザは、表示制御部１４０がタッチパネル２００に表示させている操作手順ファイルの一覧（操作一覧）を確認し、操作一覧の中から所望の操作（操作手順ファイル）を選択し、選択した操作の「ガイダンス実行」の「実行ボタン」を押下する。なお、以下の説明においては、記載の簡潔性を担保するため、「ガイダンス実行」の「実行ボタン」を「ガイダンス実行」と略記することがある。
【０１４３】
（４）「ガイダンス実行」を押下するユーザ操作を検知したＨＭＩ１１は、指定された操作のガイダンスを実行する。具体的には、タッチパネル２００に表示されている「ガイダンス実行」を押下するユーザ操作を検知した入力受付部１１０が、表示制御部１４０に対して、以下の処理を実行するように指示する。すなわち、入力受付部１１０は、表示制御部１４０に対して、「ガイダンス実行」が押下された操作（操作手順ファイル）における操作手順の通りに、「ガイダンス実行」が押下された操作（操作手順ファイル）に含まれるユーザ操作を示す情報を、表示部２２０に表示させるよう指示する。
【０１４４】
（５）表示制御部１４０は、指定の操作内容に従って、実行される順番がユーザに分かるようにユーザ操作を表示部２２０に強調表示させる。すなわち、表示制御部１４０は、指定された操作の内容に従って、つまりユーザによって「ガイダンス実行」を指示された操作の操作手順ファイルの内容に従って、当該操作手順ファイルに含まれるユーザ操作の各々を、実行順番がユーザに分かるように強調表示させる。具体的には、表示制御部１４０は先ず、操作手順テーブル３１０を参照して、「ガイダンス実行」が押下された操作の操作手順ファイルを読み込む。表示制御部１４０は、読み込んだ操作手順ファイルに含まれるユーザ操作を示す情報を、読み込んだ操作手順ファイルで指定されている操作手順の通りに、順次、強調表示させていく。例えば、「ガイダンス実行」が押下された操作の操作手順ファイルが、「『ボタンＢ３押下』および『ボタンＢ１押下』という２つのユーザ操作の情報を、『ボタンＢ３押下』の後に『ボタンＢ１押下』という操作手順の情報と共に含む」操作手順ファイルであった場合、表示制御部１４０は以下の処理を実行する。
【０１４５】
すなわち、表示制御部１４０は、タッチパネル２００（表示部２２０）に、先ず「ボタンＢ３」を強調表示させ、例えば、「ボタンＢ３」を、表示部２２０に、所定時間、点滅表示させる。ここで、ＨＭＩ１１は、ユーザが強調表示されたユーザ操作を実行しない限り、先には進まない。例えば、表示制御部１４０が「ボタンＢ３」を強調表示させているのにもかかわらず、ユーザが「ボタンＢ３」以外のボタンを押下するユーザ操作を実行した場合、入力受付部１１０は、「ボタンＢ３」以外のボタンを押下するユーザ操作を受け付けない。また、表示制御部１４０が「ボタンＢ３」を強調表示させているのにもかかわらず、ユーザが「ボタンＢ３」以外のボタンを押下するユーザ操作を実行した場合、表示制御部１４０は、表示部２２０に、「ボタンＢ１」を強調表示させず、「ボタンＢ１」の強調表示を維持させる。
【０１４６】
（６）ＨＭＩ１１は、指定の操作がいくつのユーザ操作を必要とするか、および、現在強調表示しているユーザ操作が、指定の操作において何番目のユーザ操作であるかを表示する。具体的には、表示制御部１４０は、ユーザによって「ガイダンス実行」を指示された操作が、いくつのユーザ操作を必要としているかを、表示部２２０に表示させる。表示制御部１４０は、また、現在強調表示させているユーザ操作が、指定された操作において何番目のユーザ操作であるかを、表示部２２０に表示させる。例えば、ユーザによって「ガイダンス実行」を指示された操作の操作手順ファイルが、７つのユーザ操作を含み、表示制御部１４０が現在強調表示させているユーザ操作が４番目のユーザ操作であった場合、表示制御部１４０は以下の情報を表示部２２０に表示させる。すなわち、すなわち、図１４において（６）の矢印が伸びている操作ステップに示されているように、表示制御部１４０は、表示部２２０に、操作手順ファイルに含まれる７つのユーザ操作に対応する７つのブロックを表示させ、また、現在強調表示させている４番目のユーザ操作に対応する４つ目のブロックを点滅表示させる。
【０１４７】
（７）ユーザは、強調表示されたボタンを確認し、実行する。すなわち、ユーザは、表示制御部１４０が表示部２２０に表示させている「ボタンＢ３」を押下する。
【０１４８】
（８）「ボタンＢ３」を押下するユーザ操作があったことを入力受付部１１０から通知された表示制御部１４０は、表示部２２０に、「次の操作」を強調表示させる。すなわち、表示制御部１４０は、ユーザによって「ガイダンス実行」を指示された操作の操作手順ファイルにおいて「ボタンＢ３押下」の後に「ボタンＢ１押下」が実行されるのを確認すると、「ボタンＢ１」を、表示部２２０に強調表示させる。
【０１４９】
また、「ボタンＢ３」を押下するユーザ操作があったことを入力受付部１１０から通知された操作実行部１３０は、対応指示管理テーブル３２０を参照して、「ボタンＢ３押下」のユーザ操作に対応する制御信号を取得する。操作実行部１３０は、取得した制御信号を通信部４００に通知し、ＰＬＣ２０およびスレーブ装置３０を介して、デバイス４０に、「ボタンＢ３押下」のユーザ操作に対応する処理を実行させる。
【０１５０】
これまでに図１４を用いて説明してきたＨＭＩ１１は、以下のように整理することができる。すなわち、「ガイダンス実行」を指示された操作の操作手順ファイル（操作記録部１２０が記録した一連の操作）における或るユーザ操作（例えば、「ボタンＢ３押下」）が行われると、表示部２２０は、前記操作手順ファイルにおける前記或るユーザ操作の次のユーザ操作（すなわち、「ボタンＢ１押下」）を示す情報（つまり、「ボタンＢ１」）を、強調して表示する。前記の構成によれば、表示部２２０は、操作記録部１２０が記録した一連の操作における或るユーザ操作が行われると、前記一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示する。したがって、ＨＭＩ１１は、デバイス４０に対する一連の操作を、その操作手順と共に記録し、記録した一連の操作における或るユーザ操作が行われると、前記一連の操作における前記或るユーザ操作の次のユーザ操作を示す情報を強調して表示することができるという効果を奏する。
【０１５１】
つまり、ＨＭＩ１１は、操作手順と共に記録した一連操作における或るユーザ操作が行われると、前記次のユーザ操作を示す情報を強調して表示することによって、ユーザに、前記次のユーザ操作を通知することができるという効果を奏する。
【０１５２】
さらに、表示部２２０は、操作記録部１２０が記録した１つ以上のユーザ操作の各々が、操作記録部１２０が記録した一連の操作において何番目のユーザ操作に当たるかを示す情報と共に、操作記録部１２０が記録した１つ以上のユーザ操作の各々を示す情報を表示する。具体的には、表示部２２０は、図１１の（６）において説明したように、ユーザが指定した操作（操作名：ＦＦＦの操作）がいくつのユーザ操作を必要としているか、および、現在強調表示しているユーザ操作が、指定の操作において何番目のユーザ操作であるかを表示する。
【０１５３】
前記の構成によれば、表示部２２０は、操作記録部１２０が記録した１つ以上のユーザ操作の各々が、操作記録部１２０が記録した一連の操作において何番目のユーザ操作に当たるかを示す情報と共に、操作記録部１２０が記録した１つ以上のユーザ操作の各々を示す情報を表示する。
【０１５４】
したがって、ＨＭＩ１１は、操作記録部１２０が操作手順と共に記録した一連の操作が、全部で幾つのユーザ操作を含むかを示す情報を表示することができるという効果を奏する。また、ＨＭＩ１１は、或るユーザ操作が、前記一連の操作において何番目のユーザ操作に当たるかを示す情報を表示することができるという効果を奏する。
【０１５５】
図１４の（８）に示したように、ＨＭＩ１１は、操作実行部１３０に、操作記録部１２０が記録した操作手順（つまり、操作手順ファイルに記録されている操作手順）の通りに、操作記録部１２０が記録した１つ以上のユーザ操作（つまり、操作手順ファイルに記録されているユーザ操作）の各々に対応する処理をデバイス４０に実行させることを指示する実行指示操作（例えば、表示制御部１４０が現在強調表示させている「ボタンＢ３」を押下するユーザ操作）を受け付ける入力受付部１１０（受付部）を備えている。すなわち、入力受付部１１０は、例えば、表示制御部１４０が現在強調表示させている「ボタンＢ３」を押下するユーザ操作を受け付ける。
【０１５６】
入力受付部１１０が前記実行指示操作（例えば、「ボタンＢ３」を押下するユーザ操作）を受け付けると、操作実行部１３０は、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した１つ以上のユーザ操作の各々に対応する処理をデバイス４０に実行させる。
【０１５７】
前記の構成によれば、操作実行部１３０は、入力受付部１１０が前記実行指示操作を受け付けると、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した１つ以上のユーザ操作の各々（例えば、「ボタンＢ３」を押下するユーザ操作）に対応する処理をデバイス４０に実行させる。
【０１５８】
したがって、ＨＭＩ１１は、デバイス４０に対する一連の操作を、その操作手順と共に記録し、前記実行指示操作を受け付けると、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した１つ以上のユーザ操作の各々に対応する処理をデバイス４０に実行させることができるという効果を奏する。
【０１５９】
（誤ったボタンが押下される可能性への対策例−不要なボタンを非表示にする）
図１５は、ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、ＨＭＩ１１が実行する処理の一例を説明する図である。
【０１６０】
図１５に示すように、先ず（１）ユーザは、表示制御部１４０がタッチパネル２００に表示させている操作手順ファイルの一覧（操作一覧）の中から、所望の操作の「ガイダンス実行」を押下する。（２）「ガイダンス実行」を押下するユーザ操作を検知したＨＭＩ１１は、指定された操作のガイダンスを実行する。すなわち、表示制御部１４０は、「ガイダンス実行」が押下された操作（操作手順ファイル）における操作手順の通りに、「ガイダンス実行」が押下された操作（操作手順ファイル）に含まれるユーザ操作を示す情報を、表示部２２０に表示させる。
【０１６１】
ここで、（３）表示制御部１４０は不要なボタン（「ガイダンス実行」が押下された操作の操作手順ファイルに含まれていないユーザ操作に対応するボタン）を非表示にする。例えば、表示制御部１４０は、「ガイダンス実行」が押下された操作の操作手順ファイルが「ボタンＢ２押下」のユーザ操作を含んでいないことを確認すると、表示部２２０に、「ボタンＢ２」を非表示にさせる（表示させない）。
【０１６２】
（４）表示制御部１４０は、指定の操作内容に従って、実行される順番がユーザに分かるようにユーザ操作を表示部２２０に強調表示させる。すなわち、表示制御部１４０は、指定された操作の内容に従って、つまりユーザによって「ガイダンス実行」を指示された操作の操作手順ファイルの内容に従って、当該操作手順ファイルに含まれるユーザ操作の各々を、実行順番がユーザに分かるように、表示部２２０に強調表示させる。そして、ＨＭＩ１１は、ユーザが強調表示されたユーザ操作を実行しない限り、先には進まない。
【０１６３】
（誤ったボタンが押下される可能性への対策例−不要なボタンを押下不可にする）
図１６は、ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、ＨＭＩ１１が実行する処理の別の例を説明する図である。図１６の（１）、（２）、および（４）は、図１５の（１）、（２）、および（４）と同様であるから、説明は繰り返さない。
【０１６４】
（３）表示制御部１４０は不要なボタン（「ガイダンス実行」が押下された操作の操作手順ファイルに含まれていないユーザ操作に対応するボタン）を押下不可にする。表示制御部１４０は、通常、任意のボタン（ソフトボタン）について、入力受付部１１０がそのボタンに対する押下を受け付けると、押下に伴う表示を表示部２２０に実行させる。例えば、入力受付部１１０が「ボタンＢ３」に対する押下を受け付けると、表示制御部１４０は、押下された「ボタンＢ３」の表面が凹んでいるような表示、押下された「ボタンＢ３」の色を変更するような表示等を、表示部２２０に実行させる。これに対して、表示制御部１４０が不要なボタンを押下不可にすると、押下不可にされたボタンが押下されても、表示制御部１４０は、押下不可にしたボタンについて、押下に伴う表示（表面が凹んでいるような表示、色を変更するような表示等）を、表示部２２０に実行させない。例えば、「ガイダンス実行」が押下された操作の操作手順ファイルが「ボタンＢ２押下」のユーザ操作を含んでいないことを確認すると、入力受付部１１０が「ボタンＢ２」に対する押下を受け付けても、表示制御部１４０は、「ボタンＢ２」について、押下に伴う表示を表示部２２０に実行させない。
【０１６５】
（５）ユーザは、タッチパネル２００に表示されているボタンＢ２を押下しても、ボタンＢ２は反応しない（押している感じがなくなる）。すなわち、「ボタンＢ２」について、表示制御部１４０は押下に伴う表示を表示部２２０に実行させず、また、操作実行部１３０は、「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させない。
【０１６６】
（誤ったボタンが押下される可能性への対策例−不要なボタンへの操作を無効化）
図１７は、ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、ＨＭＩ１１が実行する処理のさらに別の例を説明する図である。図１７の（１）、（２）、および（４）は、図１５の（１）、（２）、および（４）と同様であるから、説明は繰り返さない。
【０１６７】
（３）表示制御部１４０は不要なボタンの機能を一時的に無効化する。言い換えれば、表示制御部１４０は、不要なボタンについて、押下に伴う表示（表面が凹んでいるような表示、色を変更するような表示等）を表示部２２０に実行させる。しかし、操作実行部１３０は、不要なボタンに対する押下に対応する処理を、デバイス４０に実行させない。例えば、「ガイダンス実行」が押下された操作の操作手順ファイルが「ボタンＢ２押下」のユーザ操作を含んでいないことを確認すると、表示制御部１４０は、操作実行部１３０に、「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させないように指示する。表示制御部１４０から上記の指示を受け取った操作実行部１３０は、入力受付部１１０が「ボタンＢ２」に対する押下を受け付けても、「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させない。
【０１６８】
（５）ユーザがボタンＢ２を押下しても、ボタンＢ２は反応しない（押している感じはするが、何も起こらない）。すなわち、「ボタンＢ２」について、表示制御部１４０は押下に伴う表示を表示部２２０に実行させるが、操作実行部１３０は、「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させない。
【０１６９】
（誤ったボタンが押下される可能性への対策例−警告用ポップアップを表示する）
図１８は、ガイダンス表示を実行中に、表示している内容と異なる操作をユーザが実行するのを防ぐために、ＨＭＩ１１が実行する処理の他の例を説明する図である。図１８の（１）から（４）は図１７の（１）から（４）と同様であるから、説明は繰り返さない。
【０１７０】
（５）ユーザがボタンＢ２を押下しても、ボタンＢ２は反応せず、ガイダンスに従ってボタン押下を実行するよう指示するポップアップが表示される。例えば、「ガイダンス実行」が押下された操作の操作手順ファイルが「ボタンＢ２押下」のユーザ操作を含んでいないことを確認すると、表示制御部１４０は、操作実行部１３０に、以下の処理を実行する。すなわち、表示制御部１４０は、先ず、「ボタンＢ２押下」のユーザ操作に対応する処理を、デバイス４０に実行させないように指示する。表示制御部１４０は、また、入力受付部１１０が「ボタンＢ２」に対する押下を受け付けると、ガイダンスに従ってボタン押下を実行するよう指示するポップアップを、表示部２２０に表示させる。
【０１７１】
（６）ユーザからの不要なボタンへの押下に対し、ＨＭＩ１１は、指定のガイダンスを表示する。例えば、表示制御部１４０は、入力受付部１１０が「ボタンＢ２」に対する押下を受け付けると、ガイダンスに従ってボタン押下を実行することをユーザに指示するための「ガイダンスに沿って操作を実行してください。」とのポップアップを、表示部２２０に表示させる。
【０１７２】
〔実施形態３〕
本発明の他の実施形態について、図１９および図２０に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。本発明の一態様に係るＨＭＩ１２（制御装置）についての理解を容易にするため、先ず、ＨＭＩ１２を含む制御システム３の概要を、図２０を用いて説明する。
【０１７３】
（実施形態３の制御システムの概要）
図２０は、制御システム３の概要を示す図である。図２０に示すように、制御システム３において、複数のＨＭＩ１２（１）〜１２（３）は、ネットワークを介して互いに接続している。なお、以下の説明において、複数のＨＭＩ１２（１）〜（３）の各々を区別する必要がない場合には、複数のＨＭＩ１２（１）〜（３）の各々について、単に「ＨＭＩ１２」と称する。図２０に示すように、制御システム３は、複数のＰＬＣ２０（１）および２０（１）と、複数のスレーブ装置３０（１）および３０（１）と、複数のデバイス４０（１）および４０（１）と、を含んでいる。また、複数のＨＭＩ１２（１）〜（３）の各々が備える機能ブロックについて、複数のＨＭＩ１２（１）〜（３）の各々の間で区別する必要がある場合には、その機能ブロックの番号（符号）に、（１）〜（３）等の添え字を付して区別するものとする。例えば、ＨＭＩ１２（１）の通信部５００と、ＨＭＩ１２（２）の通信部５００と、を区別する必要がある場合、ＨＭＩ１２（１）の通信部５００は「通信部５００（１）」と表現し、ＨＭＩ１２（２）の通信部５００は「通信部５００（２）」と表現する。
【０１７４】
（ＨＭＩについて）
図１９は、本発明の実施形態３に係るＨＭＩ１２の要部構成を示すブロック図である。図１９に例示するＨＭＩ１２の機能ブロックは、図１に例示したＨＭＩ１０の機能ブロックとほぼ同様である。しかしながら、ＨＭＩ１２の通信部５００は、ＨＭＩ１０の通信部４００と比べて、以下の点において異なる。
【０１７５】
すなわち、ＨＭＩ１０の通信部４００は、ＰＬＣ２０から「ＰＬＣ２０、スレーブ装置３０、およびデバイス４０の少なくとも１つの状態に係る情報」を受信し、ＰＬＣ２０に「操作実行部１３０から取得した制御信号」を送信し、つまり、ＰＬＣ２０との間で通信を行なう。これに対して、ＨＭＩ１２の通信部５００は、ＰＬＣ２０との間の通信に加えて、他の制御装置との間で通信を行なう。ＨＭＩ１２（１）の通信部５００（１）は、例えば、自装置以外の制御装置であるＨＭＩ１２（２）の通信部５００（２）およびＨＭＩ１２（３）の通信部５００（３）との間で通信を行なう。同様に、例えば、ＨＭＩ１２（３）の通信部５００（３）は、自装置以外の制御装置であるＨＭＩ１２（１）の通信部５００（１）およびＨＭＩ１２（２）の通信部５００（２）との間で通信を行なう。
【０１７６】
通信部５００は、他の制御装置から、他の制御装置が受け付けた以下のユーザ操作に係る情報を受信する。具体的には、制御システム３において、複数のＨＭＩ１２（１）〜（３）の各々は、以下のように、自装置以外のＨＭＩ１２（１）〜（３）の各々から、自装置以外のＨＭＩ１２（１）〜（３）の各々が受け付けた以下のユーザ操作に係る情報を受信する。
【０１７７】
例えば、ＨＭＩ１２（２）の入力受付部１１０（２）は、ＨＭＩ１２（１）の操作記録部１２０（１）が或る操作手順ファイルＡに記録した操作手順の通りに、操作記録部１２０（１）が或る操作手順ファイルＡに記録した１つ以上のユーザ操作の各々に対応する処理を、デバイス４０（１）に実行させることを指示する実行指示操作を受け付ける。
【０１７８】
前記実行指示操作を受け付けた入力受付部１１０（２）は、通信部５００（２）に、受け付けた前記実行指示操作に対応する信号を、ＨＭＩ１２（１）に送信するよう指示する。ＨＭＩ１２（２）の通信部５００（２）は、入力受付部１１０（２）が受け付けた前記実行指示操作に対応する信号を、ＨＭＩ１２（１）に送信する。
【０１７９】
ＨＭＩ１２（１）の通信部５００（１）は、ＨＭＩ１２（２）から、入力受付部１１０（２）が受け付けた前記実行指示操作に対応する信号を、受信する。具体的には、ＨＭＩ１２（１）の通信部５００（１）は、ＨＭＩ１２（２）から、ＨＭＩ１２（１）の操作記録部１２０（１）が或る操作手順ファイルＡに記録した操作手順の通りに、操作記録部１２０（１）が或る操作手順ファイルＡに記録した１つ以上のユーザ操作の各々に対応する処理を、デバイス４０（１）に実行させることを指示する実行指示操作に対応する信号を、受信する。
【０１８０】
通信部５００（１）は、受信した前記実行指示操作に対応する信号を、入力受付部１１０（１）に出力する。前記実行指示操作に対応する信号を通信部５００（１）から受け取った入力受付部１１０（１）は、操作実行部１３０（１）に対して、或る操作手順ファイルＡに記録された操作手順の通りに、或る操作手順ファイルＡに記録された１つ以上のユーザ操作の各々に対応する処理を、デバイス４０（１）に実行させるよう指示する。操作実行部１３０（１）は、或る操作手順ファイルＡに記録された操作手順の通りに、或る操作手順ファイルＡに記録された１つ以上のユーザ操作の各々に対応する処理を、デバイス４０（１）に実行させる。
【０１８１】
すなわち、入力受付部１１０は、自装置以外の制御装置から前記実行指示操作を受け付ける。例えば、ＨＭＩ１２（１）の入力受付部１１０（１）は、ＨＭＩ１２（２）から、ＨＭＩ１２（２）の入力受付部１１０（２）が受け付けた以下のユーザ操作（に対応する信号）を受け付ける。具体的には、入力受付部１１０（１）は、ＨＭＩ１２（２）が受け付けた「ＨＭＩ１２（１）の操作記録部１２０（１）が或る操作手順ファイルＡに記録した操作手順の通りに、操作記録部１２０（１）が或る操作手順ファイルＡに記録した１つ以上のユーザ操作の各々に対応する処理を、デバイス４０（１）に実行させることを指示する実行指示操作」に対応する信号を受け付ける。
【０１８２】
前記の構成によれば、入力受付部１１０は、自装置以外の制御装置から前記実行指示操作を受け付ける。したがって、ＨＭＩ１２は、デバイス４０に対する一連の操作を、その操作手順と共に記録し、自装置以外の制御装置から前記実行指示操作を受け付けると、操作記録部１２０が記録した操作手順の通りに、操作記録部１２０が記録した１つ以上のユーザ操作の各々に対応する処理をデバイス４０に実行させることができるという効果を奏する。例えば、ＨＭＩ１２は、自装置から離れて設置された自装置以外の制御装置から前記実行指示操作を受け付けて、前記操作手順の通りに、前記１つ以上のユーザ操作の各々に対応する処理を、デバイス４０に実行させることができるという効果を奏する。
【０１８３】
（注記）
ＨＭＩ１２は、ユーザの操作ログを記録し、つまり、ユーザの操作ログデータである操作手順ファイルを作成する。ＨＭＩ１２は、作成した操作手順ファイルを、自装置の操作手順テーブル３１０に格納してもよいし、ＨＭＩ１１について説明したように、外部のファイルサーバに格納してもよい。ＨＭＩ１２は、操作手順テーブル３１０および外部のファイルサーバの少なくとも一方に格納した操作手順ファイルを読み出す。そして、ＨＭＩ１２は、読み出した操作手順ファイルにおける操作手順の通りに、読み出した操作手順ファイルに含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させる。
【０１８４】
また、ＨＭＩ１２（例えば、ＨＭＩ１２（１））は、自装置以外の制御装置（例えば、ＨＭＩ１２（２）および１２（３）の少なくとも一方）が、「自装置（例えば、ＨＭＩ１２（１））が記録した操作手順ファイルにおける操作手順の通りに、自装置が記録した操作手順ファイルに含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させる」ことを指示するユーザ操作を受け付けると、以下の処理を実行する。すなわち、ＨＭＩ１２（例えば、ＨＭＩ１２（１））は、自装置の操作手順テーブル３１０および外部のファイルサーバの少なくとも一方に格納した操作手順ファイルを読み出す。そして、ＨＭＩ１２は、読み出した操作手順ファイルにおける操作手順の通りに、読み出した操作手順ファイルに含まれるユーザ操作の各々に対応する処理を、デバイス４０に実行させる。
【０１８５】
〔ソフトウェアによる実現例〕
ＨＭＩ１０、１１、および１２の制御ブロック（特に、入力受付部１１０、操作記録部１２０、操作実行部１３０、表示制御部１４０、状態取得部１５０、および報知部１６０）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１８６】
後者の場合、ＨＭＩ１０、１１、および１２は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１８７】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【０１８８】
１０、１１、１２  ＨＭＩ（制御装置）
４０  デバイス（製造装置または検査装置）
１１０  入力受付部（受付部）
１２０  操作記録部（記録部）
１３０  操作実行部（実行指示部）
２２０  表示部
【図１】
2018077795.tif 000003
【図２】
2018077795.tif 000004
【図３】
2018077795.tif 000005
【図４】
2018077795.tif 000006
【図５】
2018077795.tif 000007
【図６】
2018077795.tif 000008
【図７】
2018077795.tif 000009
【図８】
2018077795.tif 000010
【図９】
2018077795.tif 000011
【図１０】
2018077795.tif 000012
【図１１】
2018077795.tif 000013
【図１２】
2018077795.tif 000014
【図１３】
2018077795.tif 000015
【図１４】
2018077795.tif 000016
【図１５】
2018077795.tif 000017
【図１６】
2018077795.tif 000018
【図１７】
2018077795.tif 000019
【図１８】
2018077795.tif 000020
【図１９】
2018077795.tif 000021
【図２０】
2018077795.tif 000022