IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ジェイテクトの特許一覧

<>
  • 特開-プログラム動作確認システム 図1
  • 特開-プログラム動作確認システム 図2A
  • 特開-プログラム動作確認システム 図2B
  • 特開-プログラム動作確認システム 図2C
  • 特開-プログラム動作確認システム 図3A
  • 特開-プログラム動作確認システム 図3B
  • 特開-プログラム動作確認システム 図3C
  • 特開-プログラム動作確認システム 図4
  • 特開-プログラム動作確認システム 図5
  • 特開-プログラム動作確認システム 図6
  • 特開-プログラム動作確認システム 図7
  • 特開-プログラム動作確認システム 図8
  • 特開-プログラム動作確認システム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022069060
(43)【公開日】2022-05-11
(54)【発明の名称】プログラム動作確認システム
(51)【国際特許分類】
   G06F 11/07 20060101AFI20220428BHJP
   G06F 11/32 20060101ALI20220428BHJP
   G06N 20/00 20190101ALI20220428BHJP
   G05B 19/05 20060101ALN20220428BHJP
【FI】
G06F11/07 172
G06F11/32 150
G06F11/07 140Q
G06N20/00 130
G05B19/05 A
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2020178012
(22)【出願日】2020-10-23
(71)【出願人】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(74)【代理人】
【識別番号】110000648
【氏名又は名称】特許業務法人あいち国際特許事務所
(74)【代理人】
【識別番号】110000604
【氏名又は名称】特許業務法人 共立
(72)【発明者】
【氏名】山羽 聡
【テーマコード(参考)】
5B042
5H220
【Fターム(参考)】
5B042GB07
5B042JJ17
5B042MA08
5B042MA14
5B042MC15
5B042NN02
5H220AA05
5H220BB12
5H220CC05
5H220CX01
5H220CX09
5H220JJ12
5H220JJ16
5H220JJ24
5H220JJ26
5H220JJ53
(57)【要約】
【課題】制御対象の稼働状況を取得して報知するプログラムのデバッグの工数を大幅に削減できるプログラム動作確認システムを提供すること。
【解決手段】プログラム動作確認システム1は、検査条件表データの条件入力で動作確認対象10に実際に報知される画像データを学習済みモデルに入力し、学習済みモデルの中から動作確認対象の報知に関する実出力を取得している。また、当該条件入力に対応する検査条件表データの動作確認対象10の報知に関する設計出力を取得している。よって、実出力と設計出力を比較することで、動作確認対象10の報知の正常状態/異常状態を自動的に判定できる。
【選択図】図4
【特許請求の範囲】
【請求項1】
制御対象の稼働状況を取得して報知するプログラムの動作の確認が可能なプログラム動作確認システムであって、
前記制御対象の稼働状況の報知が可能な動作確認対象と、
前記制御対象の動作を制御するとともに前記制御対象の稼働状況を取得して前記動作確認対象に報知させる制御装置と、
前記動作確認対象及び前記制御装置に対して通信可能な端末装置と、
を備え、
前記端末装置は、
前記動作確認対象の少なくとも画像データを説明変数データとし、前記画像データに対応する前記動作確認対象の報知に関するラベルデータを目的変数データとする訓練データセットを用いて機械学習により生成された学習済みモデルを格納する学習済みモデル格納部と、
前記動作確認対象の報知の条件を示す条件入力と、前記条件入力に対する前記動作確認対象の報知に関する設計出力との対応関係を含む検査条件表データを格納する検査条件表格納部と、
前記検査条件表格納部に格納される前記検査条件表データに基づいて、前記条件入力を入力して前記制御装置に出力する条件入力部と、
前記条件入力部で入力される前記条件入力に対する前記動作確認対象の報知を含む前記画像データを取得するデータ取得部と、
前記データ取得部で取得される前記動作確認対象の報知を含む前記画像データを前記学習済みモデルに入力して、前記動作確認対象の報知に関する実出力を取得する出力取得部と、
前記条件入力部で入力される前記条件入力に対する前記設計出力を、前記検査条件表格納部に格納される前記検査条件表データから読み出し、読み出した前記設計出力と、前記出力取得部で取得される前記実出力とを比較する出力比較部と、
前記出力比較部で比較される比較結果に基づいて、前記動作確認対象の報知の正常状態/異常状態を判定する状態判定部と、
前記状態判定部で判定される判定結果を前記条件入力毎に記憶する動作確認記憶部と、
を備える、プログラム動作確認システム。
【請求項2】
前記動作確認対象は、少なくとも点灯可能部位を含み、実空間内に設置されるモニタ装置であり、
前記データ取得部は、前記モニタ装置を撮影して前記モニタ装置の報知を含む前記画像データを取得するカメラ装置を備える、請求項1に記載のプログラム動作確認システム。
【請求項3】
前記動作確認対象は、少なくとも点灯可能部位を含み、仮想空間内に設置される機器を表す画像プログラムであり、
前記データ取得部は、スクリーンショットにより前記仮想空間内に設置される機器の報知を含む前記画像データを取得する、請求項1に記載のプログラム動作確認システム。
【請求項4】
前記画像データは、前記点灯可能部位の画像を含み、
前記ラベルデータは、前記点灯可能部位の位置座標、色、点灯状態を含み、
前記出力取得部は、前記位置座標に対応する前記点灯可能部位の関係を記憶しており、前記学習済みモデルから出力される前記点灯可能部位の位置座標、色、点灯状態を前記実出力として取得する、請求項2又は3に記載のプログラム動作確認システム。
【請求項5】
前記学習済みモデル格納部は、さらに、前記動作確認対象から発せられる音響データを説明変数データとし、前記音響データに対応する前記動作確認対象の報知に関するラベルデータを目的変数データとする訓練データセットを用いて機械学習により生成された学習済みモデルを格納し、
前記データ取得部は、さらに、前記条件入力に対する前記音響データを取得する、請求項1-4の何れか一項に記載のプログラム動作確認システム。
【請求項6】
前記動作確認対象は、実空間内に設置されるスピーカ装置であり、生産ラインを構成する前記制御対象の稼働状況を音で報知するものであり、
前記データ取得部は、前記音を取得するマイク装置である、請求項5に記載のプログラム動作確認システム。
【請求項7】
前記動作確認対象は、仮想空間内において音を発する音響プログラムであり、生産ラインを構成する前記制御対象の稼働状況を音で報知するものであり、
前記データ取得部は、前記音を波形データで取得する、請求項5に記載のプログラム動作確認システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御対象の稼働状況を取得して報知するプログラムの動作の確認が可能なプログラム動作確認システムに関する。
【背景技術】
【0002】
制御対象として例えば生産ラインを構成する工作機械等の設備は、PLC(Programmable logic Controller)と接続されて動作制御される。PLCは、設備の稼働状況を取得して報知、例えばモニタ装置の表示画面に表示させることが可能である。この稼働状況の取得と報知は、ユーザからの要求仕様を元に作成されるプログラム(回路)で動作する。よって、プログラムを更新した場合、更新したプログラムの動作を確認してデバッグを行う必要がある。
【0003】
例えば、下記特許文献1には、等値化入力データを用いてプログラムを実行して模擬出力データを得、この模擬出力データと等値化出力データを比較して一致箇所及び不一致箇所の検出を行うプログラム動作確認システムが記載されている。また、下記特許文献2には、プログラムにおける一部の演算結果の情報を格納する専用記憶領域を設け、専用記憶領域に格納された情報に基づいてプログラムの動作を再現させて不良箇所の検出を行うプログラム動作確認システムが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2016-24798号公報
【特許文献2】特開2016-45712号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来のプログラム動作確認システムでは、モニタ装置の表示画面を作業者が視てデバッグを行う箇所を確認しているため、デバッグの工数が非常に掛かるという問題がある。
【0006】
本発明は、制御対象の稼働状況を取得して報知するプログラムのデバッグの工数を大幅に削減できるプログラム動作確認システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係るプログラム動作確認システムは、制御対象の稼働状況を取得して報知するプログラムの動作の確認が可能なプログラム動作確認システムであって、前記制御対象の稼働状況の報知が可能な動作確認対象と、前記制御対象の動作を制御するとともに前記制御対象の稼働状況を取得して前記動作確認対象に報知させる制御装置と、前記動作確認対象及び前記制御装置に対して通信可能な端末装置と、を備える。
【0008】
前記端末装置は、前記動作確認対象の少なくとも画像データを説明変数データとし、前記画像データに対応する前記動作確認対象の報知に関するラベルデータを目的変数データとする訓練データセットを用いて機械学習により生成された学習済みモデルを格納する学習済みモデル格納部と、前記動作確認対象の報知の条件を示す条件入力と、前記条件入力に対する前記動作確認対象の報知に関する設計出力との対応関係を含む検査条件表データを格納する検査条件表格納部と、前記検査条件表格納部に格納される前記検査条件表データに基づいて、前記条件入力を入力して前記制御装置に出力する条件入力部と、を備える。
【0009】
さらに、前記条件入力部で入力される前記条件入力に対する前記動作確認対象の報知を含む前記画像データを取得するデータ取得部と、前記データ取得部で取得される前記動作確認対象の報知を含む前記画像データを前記学習済みモデルに入力して、前記動作確認対象の報知に関する実出力を取得する出力取得部と、前記条件入力部で入力される前記条件入力に対する前記設計出力を、前記検査条件表格納部に格納される前記検査条件表データから読み出し、読み出した前記設計出力と、前記出力取得部で取得される前記実出力とを比較する出力比較部と、前記出力比較部で比較される比較結果に基づいて、前記動作確認対象の報知の正常状態/異常状態を判定する状態判定部と、前記状態判定部で判定される判定結果を前記条件入力毎に記憶する動作確認記憶部と、を備える。
【0010】
このプログラム動作確認システムによれば、検査条件表データの条件入力で動作確認対象に実際に報知される画像データを学習済みモデルに入力し、学習済みモデルの中から動作確認対象の報知に関する実出力を取得している。また、当該条件入力に対応する検査条件表データの動作確認対象の報知に関する設計出力を取得している。よって、実出力と設計出力を比較することで、動作確認対象の報知の正常状態/異常状態を自動的に判定できるので、制御対象の稼働状況を取得して報知するプログラムのデバッグの工数を大幅に削減できる。
【図面の簡単な説明】
【0011】
図1】プログラム動作確認システムと制御対象の構成を示す図である。
図2A】従来の検査条件表データを示す図である。
図2B】従来の検査条件表データの一アドレスに応じたモニタ装置の表示画面の表示を示す図である。
図2C】従来の検査条件表データの別アドレスに応じたモニタ装置の表示画面の表示を示す図である。
図3A】本実施形態の検査条件表データを示す図である。
図3B】本実施形態の動作確認プログラムを起動させたときのモニタ装置の表示画面の表示を示す図である。
図3C】本実施形態の検査条件表データの一アドレスに応じたモニタ装置の表示画面の表示を示す図である。
図4】プログラム動作確認システムの詳細構成を示す図である。
図5】プログラム動作確認システムで説明変数データとして取得する画像データを示す図である。
図6】プログラム動作確認システムで目的変数データとして取得するモニタ装置の表示画面の表示に関するラベルデータを示す図である。
図7】プログラム動作確認システムによる学習済みモデルの生成処理を説明するための図である。
図8】プログラム動作確認システムによるプログラム動作確認処理を説明するための図である。
図9】プログラム動作確認システムの別例の詳細構成を示す図である。
【発明を実施するための形態】
【0012】
(1.プログラム動作確認システム1の構成)
図1に示すように、本実施形態のプログラム動作確認システム1は、制御対象の稼働状況を取得して報知(表示)するプログラム(回路)(以下、確認対象プログラムという)の動作を確認することが可能なシステムである。制御対象としては、例えば生産ライン2を構成する複数の工作機械等の設備3がある。プログラム動作確認システム1は、モニタ装置10(動作確認対象)と、複数台のPLC20(制御装置)と、端末装置30を備える。プログラム動作確認システム1を動作させる際は、設備3の電源はオフ状態でよい。
【0013】
各PLC20は、制御対象の設備3と有線又は無線でそれぞれ接続される。そして、各PLC20は、各設備3の動作を制御するとともに、各設備3の稼働状況を取得してモニタ装置10の表示画面に表示させる。端末装置30は、モニタ装置10及び各PLC20に対して通信可能に有線又は無線でそれぞれ接続される。そして、端末装置30は、各PLC20に対し各設備3の稼働状況の表示を指令してモニタ装置10の表示画面に表示させ、機械学習によりモニタ装置10の表示画面に表示される各設備3の稼働状況の正常状態/異常状態を判定する。
【0014】
端末装置30は、第一サーバ30A及び第二サーバ30Bを備える。なお、本例では、第一サーバ30Aと第二サーバ30Bとは、別装置として説明するが、同一装置によって構成することも可能である。第一サーバ30Aは、機械学習における学習フェーズとして機能する。第一サーバ30Aは、取得した説明変数データ及び目的変数データでなる訓練データセットを用いた機械学習により学習済みモデルを生成して記憶する。
【0015】
すなわち、第一サーバ30Aは、モニタ装置10の表示画面の画像データを説明変数データとして取得し、画像データに対応するモニタ装置10の報知(表示)に関するラベルデータを目的変数データとして取得し、これらのデータでなる訓練データセットを教師データとして記憶する。なお、第一サーバ30Aにおける機械学習は、教師あり学習の場合を例に挙げて説明するが、他の機械学習アルゴリズムを適用することも可能である。
【0016】
第二サーバ30Bは、機械学習における推論フェーズとして機能する。第二サーバ30Bは、詳細は後述する検査条件表データに基づくモニタ装置10の表示画面の画像データを入力データとして取得する。そして、第一サーバ30Aにより生成され記憶された学習済みモデルを用いて、取得したモニタ装置10の表示画面に表示される各設備3の稼働状況の正常状態/異常状態を判定して出力データとして出力する。
【0017】
(2.プログラム動作確認の概要)
上述のように、確認対象プログラムは、設備3の稼働状況を取得して表示するプログラムである。この確認対象プログラムのプログラム動作確認とは、予め作成しておいた検査条件表データに基づいて、モニタ装置10の表示画面に設備3の稼働状況が正確に表示されているか否かを確認することである。
【0018】
検査条件表データとは、モニタ装置10の表示画面の表示の条件を示す条件入力と、当該条件入力に対するモニタ装置10の表示画面の表示に関する設計出力との対応関係を含むデータである。すなわち、モニタ装置10への表示指令とその表示指令により表示される設備3の稼働状況が書き込まれたデータである。ここで、従来のプログラム動作確認システムの構成は、本実施形態のプログラム動作確認システム1の構成(モニタ装置10、PLC20、端末装置30)と同様であり、具体的に従来と本実施形態のプログラム動作確認について以下説明する。
【0019】
従来は、図2Aに示すように、検査条件表データDCPは、「OP」と、「信号名」と、「アドレス」と、「配色」とで構成される。「OP」は、例えば工作機械である設備3を表し、「OP1」,「OP2」,「OP3」,「OP4」は、4種類の設備3があることを示す。なお、便宜上、図では4種類の設備3を示すが、種類の数は特に制限は無い。
【0020】
「信号名」は、設備3の状態を表し、本例では「運転中」、「呼出」、「異常」がある。「配色」は、信号名に応じて決められており、「運転中」は「緑点灯」、「呼出」は「黄点滅」、「異常」は「赤点灯」である。「アドレス」は、作業者が端末装置30からPLC20に入力する識別番号であり、例えば「アドレス」が「X000」の場合、「OP」は「1」、「信号名」は「運転中」、「配色」は「緑点灯」となる。なお、便宜上、図では3種類の「信号名」及び「配色」を示すが、種類の数は特に制限は無い。
【0021】
従来の確認対象プログラムを起動させると、図2Bに示すように、モニタ装置10の表示画面には、設備3を表す枠に囲まれた「OP1」,「OP2」,「OP3」,「OP4」と、設備3の「計画」の台数、「実績」の台数、「可動率」である割合が表示される。「OP1」,「OP2」,「OP3」,「OP4」の枠内は、無色(モニタ装置10の表示画面の色)で表示される。設備3を表す枠に囲まれた「OP1」-「OP2」は、任意の色に点灯(点滅も含む)が可能な部位(点灯可能部位)である。
【0022】
作業者は、検査条件表データDCPを見て、最初のアドレス「X000」を端末装置30からPLC20に手入力する。PLC20は、アドレス「X000」を入力したら、アドレス「X000」が「OP」は「1」、「信号名」は「運転中」、「配色」は「緑点灯」であることを認識する。そして、図2Cに示すように、モニタ装置10に表示されている「OP1」の枠内を「運転中」を表す「緑点灯」(図では網掛けで示す)に切り替える。作業者は、モニタ装置10の表示画面の表示を見て、表示内容がアドレス「X000」の指示と一致していることを確認する。
【0023】
以降、作業者は、検査条件表データDCPを見て、全てのアドレスを端末装置30からPLC20に順次手入力し、モニタ装置10の表示画面の表示を見て、表示内容がアドレスの指示と一致しているか否かを確認する。そして、表示内容がアドレスの指示と不一致な箇所を見付けたら、確認対象プログラムの該当箇所のデバッグを行う。以上のように、従来は、検査条件表データDCPの全てのアドレスに対し作業者による手入力及び視認が必須であり、デバッグの工数が非常に掛かるという問題がある。
【0024】
本実施形態では、図3Aに示すように、検査条件表データDCIは、「条件入力」と、「設計出力」とで構成される。「条件入力」は、A,B,C・・・と符合が付けられ、各符号には強制オンするアドレスが対応付けられている。「設計出力」は、4種類の設備3を示す「OP1」-「OP4」の状態に応じた「配色」と「信号名」が対応付けられている。
【0025】
「配色」と「信号名」は、「緑点灯」が「生産中」、「工具交換」、「品質チェック」、「段取り替え」を示し、「黄点滅」が「呼出」を示し、「赤点灯」が「異常」を示す。「緑点灯」は「生産中」、「工具交換」、「品質チェック」、「段取り替え」の4種類の状態を示すが、モニタ装置10の表示には4種類の状態を区別するためのアイコンが付加される。なお、便宜上、図では4種類の設備3を示し、3種類の「信号名」及び「配色」を示すが、種類の数は特に制限は無い。
【0026】
本実施形態の動作確認プログラムを起動させると、PLC20は、モニタ装置10の表示画面に初期画像を表示させる。つまり、図3Bに示すように、モニタ装置10には、従来と同様に設備3を表す枠に囲まれた「OP1」,「OP2」,「OP3」,「OP4」と、設備3の「計画」の台数、「実績」の台数、「可動率」である割合が表示される。「OP1」,「OP2」,「OP3」,「OP4」の枠内は、無色(モニタ装置10の表示画面の色)で表示されるが、任意の色に点灯(点滅も含む)が可能な部位(点灯可能部位)である。
【0027】
続いて、検査条件表データDCIの中から強制オンすべきアドレスが自動判定され、自動判定されたアドレスが端末装置30からPLC20に自動入力される。例えば強制オンすべきアドレスとして条件Aが自動判定されてPLC20に入力されるとする。PLC20は、アドレス「X000」は、「OP1」の「配色」が「赤点灯」で「信号名」が「異常」であり、「OP2」の「配色」が「緑点灯」で「信号名」が「生産中」であることを認識する。さらに、「OP3」の「配色」が「緑点灯」で「信号名」が「生産中」であり、「OP4」の「配色」が「緑点灯」で「信号名」が「生産中」であることを認識する。
【0028】
そして、PLC20は、モニタ装置10の表示画面に表示されている初期画面を変更、すなわち、図3Cに示すように、モニタ装置10に表示されている「OP1」-「OP4」の枠内を該当する色に切り替える。具体的には、「OP1」の枠内を「異常」を表す「赤点灯」(図ではドットで示す)に切り替え、「OP2」-「OP4」の枠内を「運転中」を表す「緑点灯」(図では網掛けで示す)に切り替える。
【0029】
端末装置30は、モニタ装置10の表示画面を図に示すデータ取得部38が備えるカメラ装置38Aで撮影して画像データを取得する。そして、詳細は後述するが、予め機械学習しているモニタ装置10の表示画面の画像データに基づいて、モニタ装置10の表示画面の表示の正常状態/異常状態を判定する。作業者は、判定結果に基づいて、確認対象プログラムのデバッグを行う。以上のように、本実施形態は、検査条件表データDCIのうち自動判定されるアドレスが自動的に入力され、モニタ装置10の表示画面の表示の正常状態/異常状態が判定されるので、デバッグの工数を大幅に削減できる。
【0030】
(3.端末装置30の詳細構成)
次に、端末装置30(第一サーバ30A及び第二サーバ30B)の詳細構成について説明する。図4に示すように、第一サーバ30Aは、説明変数データ取得部31、目的変数データ取得部32、訓練データセット記憶部33、学習済みモデル生成部34及び学習済みモデル格納部35を備える。
【0031】
説明変数データ取得部31は、モニタ装置10の表示画面における多数の表示パターンの画像データを説明変数データとして取得する。具体的には、説明変数データ取得部31は、モニタ装置10の表示画面に表示される点灯可能部位である「OP1」-「OP4」に対し全ての「配色」を割り当てた組合わせ毎の画像データを説明変数データとして取得する。
【0032】
例えば、図5に示すように、先ず、「OP1」-「OP4」を「緑点灯」(図では網掛けで示す)に表示する画像データDP1を取得する。次に、「OP1」を「赤点灯」(図ではドットで示す)、「OP2」-「OP4」を「緑点灯」(図では網掛けで示す)に表示する画像データDP2を取得する。このようにモニタ装置10の表示画面の表示を順次変化させて、全画像データを取得する。なお、図での「緑点灯」は全て「生産中」であるためアイコンは付加されていないが、「工具交換」、「品質チェック」、「段取り替え」である場合は、「緑点灯」に所定のアイコンが付加された画像データを取得する。
【0033】
目的変数データ取得部32は、画像データに対応するモニタ装置10の表示画面の表示に関するラベルデータを目的変数データとして取得する。具体的には、目的変数データ取得部32は、説明変数データ取得部31で取得した画像データに対応する点灯可能部位の位置座標、色、点灯状態を目的変数データとして取得する。なお、目的変数データ取得部32は、過去に行ったデバッグ結果の実例からのラベリングにより取得するようにしてもよい。
【0034】
例えば、図6に示すモニタ装置10の表示画面に表示される画像データDPのラベルデータは以下の通りである。なお、図の縦方向をx軸、横方向をy軸とする。点灯可能部位の位置座標は、「OP1」,「OP2」,「OP3」,「OP4」の枠の中心座標(図では便宜上、白丸で示す)であり、「OP1」が(x1、y1)、「OP2」が(x1、y2)、「OP3」が(x1、y3)、「OP4」が(x1、y4)である。点灯可能部位の色は、「OP1」が赤(図ではドットで示す)、「OP2」-「OP4」が緑(図では網掛けで示す)である。そして、点灯可能部位の点灯状態は、「OP1」-「OP4」が点灯である。
【0035】
説明変数データ取得部31及び目的変数データ取得部32は、取得する説明変数データ及び目的変数データを訓練データセットとして訓練データセット記憶部33に記憶する。学習済みモデル生成部34は、訓練データセット記憶部33に記憶される訓練データセットで機械学習を行う。これにより、学習済みモデル生成部34は、モニタ装置10の画像データと画像データに対応するモニタ装置10の表示画面の表示に関するラベルデータの関係を学んだ学習済みモデルを生成し、学習済みモデル格納部35に格納する。
【0036】
第二サーバ30Bは、検査条件表格納部36、条件入力部37、データ取得部38、出力取得部39、出力比較部40、状態判定部41及び動作確認記憶部42を備える。検査条件表格納部36は、作業者から入力される上述した検査条件表データDCIを格納する。
【0037】
条件入力部37は、検査条件表格納部36に格納される検査条件データDCIに基づいて、条件入力を入力してPLC20に出力する。具体的には、条件入力部37は、検査条件データDCIの中から条件入力を無作為抽出して入力し、PLC20に強制オンを行うアドレスを出力する。これにより、PLC20は、モニタ装置10の表示画面に強制オンを行うアドレスに応じた点灯可能部位の位置座標、色、点灯状態を表示させる。
【0038】
データ取得部38は、条件入力部37に入力される条件入力対するモニタ装置10の表示画面の表示を含む画像データを取得する。具体的には、データ取得部38は、カメラ装置38Aを備え、カメラ装置38Aでモニタ装置10の表示画面を撮影し、点灯可能部位の位置座標、色、点灯状態を含む画像データを取得する。
【0039】
出力取得部39は、データ取得部38で取得されるモニタ装置10の表示画面の表示を含む画像データを学習済みモデルに入力して、モニタ装置10の表示画面の表示に関する実出力を取得する。具体的には、出力取得部39は、モニタ装置10の表示画面の位置座標に対応する点灯可能部位の関係を記憶しており、カメラ装置38Aで撮影したモニタ装置10の表示画面の画像データを学習済みモデルに入力し、学習済みモデルから出力される画像データの点灯可能部位の位置座標、色、点灯状態を実出力として取得する。
【0040】
出力比較部40は、条件入力部37で入力される条件入力に対する設計出力を、検査条件表格納部36に格納される検査条件表データDCIから読み出し、読み出した設計出力と出力取得部39で取得した実出力とを比較する。具体的には、出力比較部40は、検査条件表データDCIから読み出したモニタ装置10の表示画面の点灯可能部位の位置座標、色、点灯状態と、出力取得部39で取得する学習済みモデルから出力される画像データの点灯可能部位の位置座標、色、点灯状態とを比較する。
【0041】
状態判定部41は、出力比較部40の比較結果に基づいて、モニタ装置10の表示画面の表示の正常状態/異常状態を判定する。具体的には、状態判定部41は、出力取得部39で取得する学習済みモデルから出力される画像データの点灯可能部位の位置座標、色、点灯状態が、検査条件表データDCIから読み出したモニタ装置10の表示画面の画像データの点灯可能部位の位置座標、色、点灯状態と一致するか否かを判定する。そして、状態判定部41は、点灯可能部位の位置座標、色、点灯状態が全て一致する場合は正常状態であると判定し、一部でも異なる箇所がある場合は異常状態と判定する。
【0042】
動作確認記憶部42は、状態判定部41で判定される比較結果を条件入力毎に記憶する。具体的には、動作確認記憶部42は、条件入力に対応させてモニタ装置10の表示画面の表示の正常状態/異常状態を記憶する。そして、動作確認記憶部42は、異常状態のときはデバッグの対応のために異常箇所も記憶する。
【0043】
(4.端末装置30の処理)
次に、端末装置30の処理について説明する。先ず、図7を参照して学習済みモデルの生成処理について説明する。説明変数データ取得部31は、モニタ装置10の表示画面の表示を含む画像データを説明変数データとして取得する(ステップS1)。
【0044】
目的変数データ取得部32は、画像データに対応するモニタ装置10の表示に関するラベルデータを目的変数データとして取得する(ステップS2)。そして、訓練データセット記憶部33は、説明変数データ取得部31で取得した説明変数データと目的変数データ取得部32で取得した目的変数データを訓練データセットとして記憶する(ステップS3)。
【0045】
学習済みモデル生成部34は、訓練データセット記憶部33に記憶される訓練データセットにより機械学習を行い、モニタ装置10の画像データ及び画像データに対応するモニタ装置10の動作に関するラベルデータに関する学習済みモデルを生成して学習済みモデル格納部35に格納する(ステップS4)。
【0046】
そして、さらに学習済みモデルを生成するか否かを判断し(ステップS5)、さらに学習済みモデルを生成する場合はステップS1に戻って上述の処理を繰り返し、さらに学習済みモデルを生成しない場合は全ての処理を終了する。
【0047】
次に、図8を参照して確認対象プログラムの動作確認処理について説明する。条件入力部37は、検査条件データDCIの中から条件入力を無作為抽出して入力し、PLC20に強制オンを行うアドレスを出力する(ステップS11)。これにより、モニタ装置10の表示画面には、強制オンを行うアドレスに応じた点灯可能部位の位置座標、色、点灯状態が表示される。
【0048】
データ取得部38は、モニタ装置10の表示画面をカメラ装置38Aで撮影し、点灯可能部位の位置座標、色、点灯状態を含む画像データを取得する(ステップS12)。出力取得部39は、カメラ装置38Aで撮影したモニタ装置10の表示画面の画像データを学習済みモデルに入力する(ステップS13)。そして、予め記憶している位置座標に対応する点灯可能部位の関係に基づいて、学習済みモデルから出力される画像データの点灯可能部位の位置座標、色、点灯状態を実出力として取得する(ステップS14)。
【0049】
出力比較部40は、検査条件表データDCIから読み出したモニタ装置10の表示画面の点灯可能部位の位置座標、色、点灯状態と、出力取得部39で取得する学習済みモデルから出力される点灯可能部位の位置座標、色、点灯状態とを比較する(ステップS15)。
【0050】
状態判定部41は、出力取得部39で取得する学習済みモデルから出力される点灯可能部位の位置座標、色、点灯状態が、検査条件表データDCIから読み出したモニタ装置10の表示画面の点灯可能部位の位置座標、色、点灯状態と一致するか否かを判定する(ステップS16)。そして、状態判定部41は、点灯可能部位の位置座標、色、点灯状態が全て一致する場合は正常状態であると判定し(ステップS17)、一部でも異なる箇所がある場合は異常状態と判定する(ステップS18)。
【0051】
動作確認記憶部42は、条件入力に対応させてモニタ装置10の表示の正常状態/異常状態を記憶し、異常状態のときはデバッグの対応のために異常箇所も記憶する(ステップS19)。そして、条件入力部37は、検査条件データDCIの中からの条件入力の抽出が完了したか否かを判断し(ステップS20)、条件入力の抽出が完了していないときはステップS11に戻って上述の処理を繰り返す。一方、条件入力の抽出が完了したときは、全ての処理を終了する。
【0052】
このプログラム動作確認システム1によれば、検査条件表データDCIの条件入力でモニタ装置10の表示画面に実際に表示される画像データを学習済みモデルに入力し、学習済みモデルの中からモニタ装置10の表示画面の表示に関する実出力を取得している。また、当該条件入力に対応する検査条件表データDCIのモニタ装置10の表示画面の表示に関する設計出力を取得している。よって、実出力と設計出力を比較することで、モニタ装置10の表示画面の表示の正常状態/異常状態を自動的に判定できるので、制御対象3の稼働状況を取得して報知するプログラムのデバッグの工数を大幅に削減できる。
【0053】
(5.プログラム動作確認システム1の別例の構成)
上述の第1例では、プログラム動作確認システム1の動作確認対象であるモニタ装置10は、実空間内に設置される機器である。そして、端末装置30のデータ取得部38は、点灯可能部位を含むモニタ装置10の表示画面を撮影するカメラ装置である構成を説明した。しかし、第2例としては、プログラム動作確認システム1の動作確認対象として、仮想空間内に設置される機器を表す画像プログラムとする。そして、端末装置30のデータ取得部38として、カメラ装置38Aは不要であり、画像プログラムで表示される機器の点灯可能部位を含む画像データをスクリーンショットで取得する構成としてもよい。なお、第1例の他の構成は、第2例においても同一である。
【0054】
また、上述の第1例及び第2例では、画像データ、すなわちモニタ装置10又は画像プログラムにおいて設備3の状態別(「運転中」、「呼出」、「異常」)で「配色」を対応付けた「OP」の表示が正常状態であるか異常状態であるかを確認する場合を説明した。しかし、さらに、設備3の状態別(「運転中」、「呼出」、「異常」)で異なる音を発するようにし、その音響データの音が正常状態であるか異常状態であるかを確認するようにしてもよい。
【0055】
つまり、学習済みモデル格納部は、さらに、動作確認対象から発せられる音響データを説明変数データとし、音響データに対応する動作確認対象の報知に関するラベルデータを目的変数データとする訓練データセットを用いて機械学習により生成された学習済みモデルを格納する。そして、データ取得部は、さらに、条件入力に対する音響データを取得する。
【0056】
具体的には、第3例として、図4に対応させて示す図9に示すように、動作確認対象は、実空間内に設置されるスピーカ装置50であり、生産ライン2を構成する制御対象3の稼働状況を音で報知する。そして、データ取得部38は、音を取得するマイクロフォン装置38Bを備える。また、第4例として、動作確認対象は、仮想空間内において音を発する音響プログラムであり、生産ラインを構成する制御対象の稼働状況を音で報知するものである。そして、データ取得部38は、マイクロフォン装置38Bは不要であり、音を波形データで取得する。
【0057】
(6.その他)
上述の実施形態では、画像データ、音響データを取得してプログラム動作確認処理を行う場合を説明したが、文字データや数字データを取得してプログラム動作確認処理を行うことも可能である。これにより、モニタ装置10の表示画面に表示される設備3の「計画」の台数、「実績」の台数、「可動率」である割合のデータを取得してプログラム動作確認処理を行うことができる。また、動作確認プログラム(回路)の基本パターンを多数学習することにより、動作確認プログラム(回路)の自動作成が可能となる。
【符号の説明】
【0058】
1:プログラム動作確認システム、 2:生産ライン、 3:設備、 10:モニタ装置、 20:PLC、 30:端末装置、 30A:第一サーバ、 30B:第二サーバ、 50:スピーカ装置、 31:説明変数データ取得部、 32:目的変数データ取得部、 33:訓練データセット記憶部、 34:学習済みモデル生成部、 35:学習済みモデル格納部、 36:検査条件表格納部、 37:条件入力部、 38:データ取得部、 38A:カメラ装置、 38B:マイクロフォン装置、 DCI:検査条件表データ
図1
図2A
図2B
図2C
図3A
図3B
図3C
図4
図5
図6
図7
図8
図9