JP6430037B2 - デバッグ支援装置およびデバッグ支援方法 - Google Patents

デバッグ支援装置およびデバッグ支援方法 Download PDF

Info

Publication number
JP6430037B2
JP6430037B2 JP2017560640A JP2017560640A JP6430037B2 JP 6430037 B2 JP6430037 B2 JP 6430037B2 JP 2017560640 A JP2017560640 A JP 2017560640A JP 2017560640 A JP2017560640 A JP 2017560640A JP 6430037 B2 JP6430037 B2 JP 6430037B2
Authority
JP
Japan
Prior art keywords
data
calculation
unit
sequence program
debugging
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017560640A
Other languages
English (en)
Other versions
JPWO2018073868A1 (ja
Inventor
大之 中村
大之 中村
圭亮 中島
圭亮 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2018073868A1 publication Critical patent/JPWO2018073868A1/ja
Application granted granted Critical
Publication of JP6430037B2 publication Critical patent/JP6430037B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、産業機械を制御する制御装置で実行されるシーケンスプログラムのデバッグを支援するデバッグ支援装置およびデバッグ支援方法に関する。
工場の生産工程の自動化を図るFA(Factory Automation)分野における制御装置は、シーケンスプログラムに記述された演算を繰り返し実行する。近年における制御の高度化に伴い、シーケンスプログラムは、大規模化と演算処理の複雑化が顕著となっている。このため、シーケンスプログラムの最初のステップから最後のステップまでの演算を実行する1回のスキャンの中で、シーケンスプログラムの実行に用いられるメモリ領域である作業領域に一時格納される演算データが頻繁に変更されることがある。
特許文献1には、制御プログラムのデバッグ方法に関し、制御プログラムにおける実行位置に対応させて制御対象の入力デバイスおよび出力デバイスのデータを順次記録し、各ステップのデータを含む履歴情報を収集することが開示されている。
特開2003−248504号公報
しかしながら、上記従来の技術によれば、入力デバイスおよび出力デバイスのデータのみが記録されており、入力デバイスおよび出力デバイスに直接関係の無いデバイスのデータの記録がないため、シーケンスプログラムにおける異常の要因であるバグの特定に手間を要し、デバッグの効率化が困難となる。
本発明は、上記に鑑みてなされたものであって、デバッグの効率化を可能とするデバッグ支援装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかるデバッグ支援装置は、制御装置にて実行されるシーケンスプログラムのデバッグを支援する。本発明にかかるデバッグ支援装置は、シーケンスプログラムを構成する構成要素におけるステップごとの演算処理の実行順序を示す順序情報であるステップ番号と、ステップごとの演算処理にて扱われる演算データとのログデータを記録する記録部と、ログデータを基にステップ番号と演算データとの関係を示すグラフを表示させることにより、ステップ番号と演算データとの関係を提示させる提示処理部と、を備える
本発明にかかるデバッグ支援装置は、デバッグを効率化させることができるという効果を奏する。
本発明の実施の形態1にかかるデバッグ支援装置の基本的な構成を示す図 図1に示すPLCのハードウェア構成を示す図 図1に示すコンピュータのハードウェア構成を示す図 図1に示すコンピュータで作成されたシーケンスプログラムの一例を示す説明図 図1に示すコンピュータにおけるグラフ表示画面の一例を示す図 図5に示すグラフ表示画面におけるグラフ表示のためのPLCおよびコンピュータにおける処理の手順を示すフローチャート 図1に示すコンピュータにおけるデバッグ処理の手順を示すフローチャート 実施の形態1の提示処理工程において表示させるグラフ表示画面の例を示す図 図1に示すコンピュータの編集画面におけるシーケンスプログラムおよび演算データの表示例を示す図 本発明の実施の形態2にかかるデバッグ支援装置における処理の手順を示すフローチャート 実施の形態2の提示処理工程において表示させるグラフ表示画面の例を示す図
以下に、本発明の実施の形態にかかるデバッグ支援装置およびデバッグ支援方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかるデバッグ支援装置の基本的な構成を示す図である。デバッグ支援装置は、シーケンスプログラムにおけるバグの特定の際に参照されるデータを提示して、シーケンスプログラムのデバッグを支援する。
デバッグ支援装置は、エンジニアリングツールプログラムがインストールされたコンピュータ2と、制御装置であるPLC(Programmable Logic Controller)1とを備えて構成されている。ネットワークケーブル3は、PLC1およびコンピュータ2を通信可能に接続する。
コンピュータ2は、PLC1で実行されるシーケンスプログラムを含むプロジェクトデータを作成して、PLC1へ送信する。PLC1は、シーケンスプログラムを実行することにより、制御対象である機械の駆動を制御する。
本実施の形態のPLC1は、シーケンスプログラムを格納する機能部であるプログラム格納部11と、プログラム格納部11から読み出されたシーケンスプログラムを実行する機能部であるプログラム実行部12とを備える。また、本実施の形態のPLC1は、シーケンスプログラムによる演算処理にて扱われる演算データを格納する機能部であるデータ格納部13と、ステップ番号とステップごとの演算データとを記録してログデータを作成する機能部である記録部14とを備える。ステップ番号は、シーケンスプログラムを構成する構成要素における演算処理の実行順序を示す順序情報である。また、本実施の形態のPLC1は、記録部14で生成されたログデータを格納する機能部であるログデータ格納部15を備える。制御部18は、PLC1の各部を制御する機能部である。なお、図1のPLC1内に示す破線は、各機能部と、後述する図2に示すハードウェア構成との対応関係を示している。
本実施の形態のコンピュータ2は、エンジニアリングツール部10を備える。エンジニアリングツール部10は、コンピュータ2のハードウェアにてエンジニアリングツールプログラムを実行することで実現される。
エンジニアリングツール部10は、ログデータ格納部15から読み出されたログデータを基に、ステップ番号と演算データとの関係を示すグラフをグラフ表示画面に表示させる機能部であるグラフ表示処理部16を備える。提示処理部であるグラフ表示処理部16は、順序情報と、ステップごとの演算処理にて扱われる演算データとの関係を提示させる。
また、エンジニアリングツール部10は、シーケンスプログラムを含むプロジェクトデータを作成する機能部であるプログラム表示編集部17を備える。プログラム表示編集部17は、ユーザによる入力操作にしたがってプログラムコードの編集処理を実行するとともに、シーケンスプログラムを編集画面に表示させる。また、プログラム表示編集部17は、PLC1がシーケンスプログラムを実行している際における演算データをモニタするモニタ機能を備える。制御部19は、エンジニアリングツール部10の各部を制御する機能部である。
図2は、PLC1のハードウェア構成を示す図である。PLC1は、CPU(Central Processing Unit)21、メモリ22、通信インタフェース23、バスインタフェース24および記憶部25を備える。PLC1の各部は、内部バスB1を介して接続されている。
通信インタフェース23は、コンピュータ2との接続インタフェースである。バスインタフェース24は、内部バスB1と拡張バスB2とを連絡するバスブリッジ回路である。制御対象である機械4は、拡張バスB2を介してPLC1に接続されている。機械4は、製造装置、加工装置あるいは設備装置であって、FAシステムに使用されるいずれの装置であっても良い。
外部記憶装置である記憶部25は、コンピュータ2から受信されたプロジェクトデータ27およびログデータ28を格納する。記憶部25は、SSD(Solid State Drive)あるいはHDD(Hard Disk Drive)である。プロジェクトデータ27は、シーケンスプログラム27a、制御パラメータ27b、メモリ情報27cおよび接続情報27dを含む。プログラム格納部11およびログデータ格納部15の機能は、記憶部25を使用して実現される。
制御パラメータ27bは、シーケンスプログラム27aの実行において参照されるパラメータである。メモリ情報27cは、メモリ22内の作業領域における演算データごとのデータ領域についての規定が記述された情報である。接続情報27dは、PLC1と機械4との接続関係が規定された情報である。
実施の形態1では、シーケンスプログラム27aは、ラダー言語で記述されている。シーケンスプログラム27aは、ラダー言語以外の言語である構造化ラダー言語あるいはファンクションブロックダイアグラム言語で記述されたものでも良い。
メモリ22は、RAM(Random Access Memory)である。シーケンスプログラム27aは、メモリ22にロードされる。CPU21は、メモリ22内のプログラム格納領域にてシーケンスプログラム27aを展開して各種処理を実行する。プログラム実行部12、記録部14および制御部18の機能は、CPU21を使用して実現される。
メモリ22内のデータ格納領域は、各種処理の実行における作業領域26とされる。作業領域26には、メモリ情報27cで規定される複数のデータ領域が確保される。各データ領域は、演算処理にて扱われる演算データを格納する。データ格納部13の機能は、メモリ22を使用して実現される。
CPU21は、シーケンスプログラム27aのステップごとに、作業領域26から各演算データを読み出し、ログデータ28を作成する。CPU21は、作成されたログデータ28を記憶部25へ書き込む。ログデータ28は、機械4へ入力されるデータ、機械4から出力されるデータ、および機械4の内部データからなる各演算データを含む。
図3は、コンピュータ2のハードウェア構成を示す図である。コンピュータ2は、CPU31、RAM32、ROM(Read Only Memory)33、記憶部34、入力部35、表示部36および通信インタフェース37を備える。コンピュータ2の各部は、バスBを介して相互に接続されている。
CPU31は、ROM33および記憶部34に記憶されているプログラムを実行する。不揮発性メモリであるROM33には、プログラムであるBIOS(Basic Input/Output System)あるいはUEFI(Unified Extensible Firmware Interface)が記憶される。外部記憶装置である記憶部34は、SSDあるいはHDDである。記憶部34には、オペレーティングシステムプログラムおよびエンジニアリングツールプログラムが記憶される。
ROM33および記憶部34に記憶されているプログラムは、RAM32にロードされる。CPU31は、RAM32内のプログラム格納領域にてプログラムを展開して各種処理を実行する。RAM32内のデータ格納領域は、各種処理の実行における作業領域とされる。グラフ表示処理部16、プログラム表示編集部17および制御部19の機能は、CPU31を使用して実現される。
入力部35は、ユーザによる入力操作を受け付ける。入力部35は、ポインティングデバイスおよびキーボードである。表示部36は、各種画面を表示するディスプレイである。通信インタフェース37は、PLC1との接続インタフェースである。
図4は、コンピュータ2で作成されたシーケンスプログラムの一例を示す説明図である。図4には、ラダー言語により記述されたラダープログラムを示している。プログラム表示編集部17は、ラダープログラムの一部を編集画面に表示させる。
ラダープログラムは、複数の回路ブロックによって構成される。回路ブロックは、接点が直列あるいは並列に接続されたひとかたまりの回路である条件部と、1つ以上のコイルが直列に接続されたひとかたまりの回路である動作部とを組み合わせて構成される。動作部は、条件部の接点が導通されたときに実行される演算処理であるステップの内容を表す。ステップは、シーケンスプログラムの構成単位であり、1つ以上の命令で構成される。順序情報であるステップ番号は、シーケンスプログラムの構成要素における演算処理の実行順序を示す。1または複数の回路ブロックに対して、1つのステップ番号が付されている。図4には、ステップ番号(0)の回路ブロックを示している。なお、順序情報は、ステップ番号に限られず、演算処理の実行順序を示すいずれの情報であっても良い。
ラダー言語で作成されたプログラムコードは、基本的な構成要素である回路記号および変数を含む。回路記号にはPLC1での処理を表す接点およびコイルが含まれ、変数は回路記号で示された処理の対象を表している。作業領域26の各データ領域には、構成要素ごとにおける演算データが格納される。演算データは、ONおよびOFFの区別を表現するビットデータと、数値を表現するワードデータとを含む。
ラダープログラムにおいて各構成要素は、構成要素の種別を表すアルファベットと、アドレスを表す数字との組み合わせとして記述される。図4において、矩形により囲んで示した「SM400」、「D0」、「D10」、「D20」、「D30」、「D40」、「D50」および「T0」は、いずれも構成要素を表している。
図5は、コンピュータ2におけるグラフ表示画面の一例を示す図である。グラフ表示処理部16は、ステップごとの各演算データを記録部14にて記録した結果をデータ格納部13から読み出して、グラフ表示のための処理を実行する。
図5に示すグラフ表示画面の右側領域には、ラダープログラムの構成要素ごとのグラフが縦方向に並列されている。各グラフの縦軸は演算データを表し、横軸はステップ番号を表している。グラフ表示画面の左側領域には、グラフ上にカーソルが配置されることで指定された時点における各演算データが表示される。
図5に示すグラフ表示画面には、構成要素「D20」、「D40」、「D50」および「D100.B」についてのグラフおよび演算データが表示されている。グラフ表示画面は、構成要素ごとに色分けしてグラフおよび演算データを表示しても良い。グラフの横軸に示すステップ番号の範囲は任意に変更可能であっても良い。なお、グラフは、図5に例示する線グラフに限られない。グラフは、順序情報と演算データとの関係を表示可能ないずれのグラフであっても良く、棒グラフ、あるいはその他のグラフであっても良い。
図6は、図5に示すグラフ表示画面におけるグラフ表示のためのPLC1およびコンピュータ2における処理の手順を示すフローチャートである。実施の形態にかかるデバッグ支援方法は、ステップS1からステップS5の工程を含む。ステップS1において、PLC1の記録部14は、シーケンスプログラムの実行が開始された時からのステップごとに、データ格納部13内の各演算データを読み出す。記録工程であるステップS2において、記録部14は、ラダープログラムの構成要素ごとの演算データをステップ番号に対応付けて記録し、ログデータを作成する。ステップS3において、ログデータ格納部15は、記録部14で生成されたログデータを格納する。
このように、PLC1は、ステップごとの演算データを記録することで、シーケンスプログラムの実行に合わせて、ステップごとの演算データを連続して取得する。PLC1は、シーケンスプログラムの最初のステップから最後のステップまでの全てのステップの演算データを取得しても良く、全てのステップのうち一部のステップの演算データを取得しても良い。一部のステップの演算データを取得する場合とは、あるステップ数おきのステップの演算データを取得し、その他のステップの演算データの取得を省略する場合を含む。ステップごとの演算データを連続して取得する場合とは、全てのステップの演算データを取得する場合と、一部のステップの演算データを取得する場合とを含む。
ステップS4において、コンピュータ2のグラフ表示処理部16は、ログデータ格納部15からログデータを読み出す。提示処理工程であるステップS5において、グラフ表示処理部16は、読み出されたログデータを基に、構成要素ごとについてのステップ番号と演算データとの関係を表すグラフをグラフ表示画面に表示させる。これにより、グラフ表示処理部16は、順序情報と、ステップごとの演算処理にて扱われる演算データとの関係を、表示部36でのグラフ表示により提示させる。
図7は、コンピュータ2におけるデバッグ処理の手順を示すフローチャートである。コンピュータ2におけるデバッグ処理の実行において、表示部36は、デバッグ用画面である編集画面およびグラフ表示画面を表示する。デバッグ処理において、表示部36は、編集画面およびグラフ表示画面を切り換えて表示可能であっても良く、編集画面およびグラフ表示画面を同時に表示可能であっても良い。
ユーザは、シーケンスプログラムが実行されている際、プログラム表示編集部17のモニタ機能によるモニタ結果から、ラダープログラムのうち異常が発生している構成要素を特定する。ユーザは、異常が発生している構成要素を、コンピュータ2への入力操作によって指定する。グラフ表示処理部16は、異常が発生している構成要素の指定のための入力操作をステップS11にて受け付ける。
グラフ表示処理部16は、ステップS11での入力操作にしたがって、ステップS12においてログデータ格納部15からログデータを読み出す。提示処理工程において、グラフ表示処理部16は、読み出されたログデータを基に構成要素ごとについてのグラフをグラフ表示画面に表示させる。
図8は、実施の形態1の提示処理工程において表示させるグラフ表示画面の例を示す図である。ここでは、モニタ結果から「D50」に異常が発見されたとする。ユーザは、異常が生じた「D50」を入力部35からの入力操作により指定する。コンピュータ2は、PLC1からログデータを読み出し、デバッグ用画面であるグラフ表示画面に「D50」のグラフを表示する。
ユーザは、異常が発生している構成要素についてのグラフから、異常が発生したと判断される時点を特定する。ユーザは、かかる時点をグラフ上でのクリック操作により指定する。グラフ表示処理部16は、時点の指定のための操作を受け付ける。ステップS13では、グラフ表示処理部16は、かかる操作により、指定された時点を示すステップ番号を取得する。また、グラフ表示処理部16は、かかるステップ番号における各演算データをログデータから抽出する。
図8に示す例において、ユーザは、「D50」についてのグラフから、異常が発生したと判断される時点を、入力部35を用いたクリック操作により指定する。図8に示すグラフのうち楕円で囲われた部分に異常が発生していると判断した場合、ユーザは、かかる部分をクリックによって指定する。コンピュータ2のグラフ表示処理部16は、ユーザにより指定された時点を示すステップ番号における各演算データをログデータから取得する。
プログラム表示編集部17は、プログラム格納部11に格納されているシーケンスプログラムから、グラフ表示処理部16で取得されたステップ番号の回路ブロックを検索する。プログラム表示処理工程であるステップS14において、プログラム表示編集部17は、グラフから指定されたステップ番号に対応する各演算データを、シーケンスプログラムとともに編集画面に表示させる。プログラム表示編集部17は、シーケンスプログラムのうち取得されたステップ番号の部分である回路ブロックを表示させるとともに、当該回路ブロックに含まれる各構成要素に、グラフ表示処理部16で抽出された演算データを併記させる。ユーザは、編集画面に表示された回路ブロックと各演算データとを参照して、バグの除去のための編集作業を実施する。
図9は、コンピュータ2の編集画面におけるシーケンスプログラムおよび演算データの表示例を示す図である。デバッグ用画面である編集画面には、指定されたステップ番号の回路ブロックが復元される。図9にてハッチングを付した部分は、異常が発見された「D50」を含む命令を示している。コンピュータ2は、編集画面のうち、異常が発見された構成要素を含む命令の表示部分について、強調表示のための着色を施しても良い。
コンピュータ2は、図9に示す編集画面において、回路ブロックの「D0」、「D10」、「D20」、「D30」、「D40」、「D50」および「T0」の表示の下に、指定されたステップ番号における演算データを表示する。異常が発見された「D50」の下には、「D50」の演算データである「11186」が表示される。ユーザは、異常発生時における各構成要素の演算データを編集画面にて確認できる。ユーザは、編集画面に表示された回路ブロックと各構成要素の演算データとを参照して、バグの除去のための編集作業を実施する。
コンピュータ2は、各演算データを含む編集画面が表示されているときに入力部35から特定の入力操作があった場合に、編集画面の表示を切り換えても良い。プログラム表示編集部17は、入力部35であるキーボードにてAltキーと下矢印のカーソルキーとが同時に押下された場合に、それまでの表示に対し1つ前のステップにおける各演算データをログデータ格納部15から読み出す。コンピュータ2は、当該1つ前のステップの回路ブロックを編集画面に復元させるとともに、読み出された演算データを編集画面に表示する。
また、プログラム表示編集部17は、入力部35であるキーボードにてAltキーと上矢印のカーソルキーとが同時に押下された場合に、それまでの表示に対し1つ後のステップにおける各演算データをログデータ格納部15から読み出す。コンピュータ2は、当該1つ後のステップの回路ブロックを編集画面に復元させるとともに、読み出された演算データを編集画面に表示する。
これにより、ユーザは、簡易な入力操作によって、複数のステップにおける演算データを参照して、バグの除去のための編集作業を実施することができる。コンピュータ2は、入力部35によるいずれの入力操作によって編集画面の表示を切り換えても良い。
実施の形態1によると、デバッグ支援装置は、ステップごとの演算データを記録し、グラフにて指定されたステップ番号における演算データを即座に提示する。ユーザは、異常検出のためのシミュレーション機構を別途使用せずに、異常発生時における演算データをシーケンスプログラムとともに確認することができる。また、ユーザは、異常発生時のデータの絞り込みを行わなくても、少ない作業によって異常の要因を即座に確認することができる。ユーザは、スキャンを単位とする演算データが記録される場合に比べて、細かい粒度のログデータから異常の要因を特定することができる。
デバッグ支援装置は、記録部14にて、ステップごとの演算データを連続して取得する。記録部14は、入力デバイスおよび出力デバイスの演算データのみならず、入力デバイスおよび出力デバイスとは直接関係しない内部デバイスの演算データも取得する。デバッグ支援装置は、入力デバイスおよび出力デバイスのみの断片的なログデータに代えて、入力デバイスおよび出力デバイスのほか内部デバイスの演算データも含む連続的なログデータを記録する。デバッグ支援装置は、連続的かつ細かい粒度で記録されたログデータを基に、ステップ番号および演算データの関係を提示可能とする。ユーザは、ステップ番号および演算データの関係を参照することで、異常が生じた時点における演算データを効率良く確認することができ、シーケンスプログラムのバグを容易に特定することができる。これにより、デバッグ支援装置は、バグの容易な特定によってデバッグの工数を削減可能とし、デバッグを効率化させることができる。
実施の形態2.
図10は、本発明の実施の形態2にかかるデバッグ支援装置における処理の手順を示すフローチャートである。実施の形態2のデバッグ支援装置は、実施の形態1のデバッグ支援装置と同様の構成を備える。
実施の形態2にて、PLC1の記録部14は、シーケンスプログラムによる演算処理の実行において変更が検知されたときの演算データを記録する。記録部14は、演算処理の実行において変更が検知されない演算データについては記録を省略する。実施の形態2のデバッグ支援装置は、シーケンスプログラムの実行において変更が検知された演算データを記録し、変更が検知されなかった演算データの記録を省略する点で、実施の形態1のデバッグ支援装置とは異なる。実施の形態2によると、デバッグ支援装置は、変更が検知されなかった演算データの記録を省略することで、全ての演算データを記録する場合に比べて演算データの記録のための処理を少なくして、PLC1の処理負担を低減できる。
図10に示すステップS21において、記録部14は、ステップごとの各演算データをデータ格納部13から読み出し、値の変更を監視する。演算データの変更が検知されると、記録部14は、記録工程であるステップS22において当該演算データをステップ番号に対応付けて記録し、ログデータを作成する。ステップS23において、ログデータ格納部15は、記録部14で生成されたログデータを格納する。
例として、図4に示すシーケンスプログラムのうちの命令「E+ E0.03125 D0」を実行しているときに、記録部14は、演算処理にて使用される「D0」の演算データの変更の有無を監視する。記録部14は、「D0」の演算データに変更があった場合に、「D0」の演算データをステップ番号とともに記録する。ここで、ステップ番号1000から6000の各ステップが実行されたうち、ステップ番号1500から3000および3500から4500のステップにおいて「D0」の演算データに変更があり、その他のステップにおいて「D0」の演算データに変更がなかったとする。記録部14は、ステップ番号1500から3000および3500から4500における「D0」の演算データを記録し、「D0」のその他の演算データの記録を省略する。ログデータ格納部15は、ステップ番号1500から3000および3500から4500における「D0」の演算データが記録されたログデータを格納する。
ステップS24において、コンピュータ2のグラフ表示処理部16は、ログデータ格納部15からログデータを読み出す。提示処理工程であるステップS25において、グラフ表示処理部16は、読み出されたログデータを基に、ステップ番号と演算データとの関係を表すグラフをグラフ表示画面に表示させる。
図11は、実施の形態2の提示処理工程において表示させるグラフ表示画面の例を示す図である。ここでは、モニタ結果から「D0」に異常が発見され、デバッグ用画面であるグラフ表示画面に「D0」のグラフが表示されているものとする。
グラフ表示処理部16は、ステップ番号1500から3000および3500から4500における「D0」の演算データが記録されたログデータを基に、ステップ番号1500から3000および3500から4500の範囲における「D0」のグラフを表示させる。その他のステップ番号の範囲については、「D0」の演算データがログデータに記録されていないため、グラフは表示されない。ユーザは、表示されたグラフから、異常が発生したと判断される時点を特定する。
なお、記録部14は、シーケンスプログラムの構成要素のうち、演算処理の実行において演算データの変更が検知された構成要素についての演算データを記録しても良い。この場合、記録部14は、演算処理の実行において演算データの変更が検知されない構成要素については、演算データの記録を省略する。
この場合において、記録部14は、ステップごとの各演算データをデータ格納部13から読み出し、演算データの変更を監視する。演算データの変更が検知されると、記録部14は、演算データの変更があった構成要素を記録の対象に設定する。記録工程であるステップS22において、記録部14は、記録対象である構成要素の演算データをステップ番号に対応付けて記録して、ログデータを作成する。
実施の形態2によると、デバッグ支援装置は、変更が検知されたときの演算データ、あるいは演算データの変更が検知された構成要素の演算データを記録する。デバッグ支援装置は、シーケンスプログラムの実行による演算処理についての全ての演算データを記録する場合と比較して記録部14における処理を少なくする。デバッグ支援装置は、デバッグを効率化させるとともに、演算データの記録のための処理によるシーケンスプログラムの実行性能への影響を低減することができる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1 PLC、2 コンピュータ、3 ネットワークケーブル、11 プログラム格納部、12 プログラム実行部、13 データ格納部、14 記録部、15 ログデータ格納部、16 グラフ表示処理部、17 プログラム表示編集部。

Claims (6)

  1. 制御装置にて実行されるシーケンスプログラムのデバッグを支援するデバッグ支援装置であって、
    前記シーケンスプログラムを構成する構成要素におけるステップごとの演算処理の実行順序を示す順序情報であるステップ番号と、前記ステップごとの演算処理にて扱われる演算データとのログデータを記録する記録部と、
    前記ログデータを基に前記ステップ番号と前記演算データとの関係を示すグラフを表示させることにより、前記ステップ番号と前記演算データとの関係を提示させる提示処理部と、
    を備えることを特徴とするデバッグ支援装置。
  2. 前記グラフから指定されたステップ番号に対応する前記演算データを編集画面に表示させ、前記シーケンスプログラムの編集処理を実行するプログラム表示編集部
    を備えることを特徴とする請求項1に記載のデバッグ支援装置。
  3. 前記記録部は、前記シーケンスプログラムの実行を開始してからの前記ステップごとの前記演算データを記録することを特徴とする請求項1または2に記載のデバッグ支援装置。
  4. 前記記録部は、前記シーケンスプログラムの構成要素のうち、前記演算処理の実行において演算データの変更が検知された構成要素についての演算データを記録することを特徴とする請求項1または2に記載のデバッグ支援装置。
  5. 前記記録部は、前記演算処理の実行において変更が検知されたときの演算データを記録することを特徴とする請求項1または2に記載のデバッグ支援装置。
  6. 制御装置にて実行されるシーケンスプログラムのデバッグを支援するデバッグ支援方法であって、
    前記シーケンスプログラムを構成する構成要素におけるステップごとの演算処理の実行順序を示す順序情報であるステップ番号と、前記ステップごとの演算処理にて扱われる演算データとのログデータを記録する記録工程と、
    前記ログデータを基に前記ステップ番号と前記演算データとの関係を示すグラフを表示させることにより、前記ステップ番号と前記演算データとの関係を提示させる提示処理工程と、
    を含むことを特徴とするデバッグ支援方法。
JP2017560640A 2016-10-17 2016-10-17 デバッグ支援装置およびデバッグ支援方法 Active JP6430037B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/080722 WO2018073868A1 (ja) 2016-10-17 2016-10-17 デバッグ支援装置およびデバッグ支援方法

Publications (2)

Publication Number Publication Date
JPWO2018073868A1 JPWO2018073868A1 (ja) 2018-10-18
JP6430037B2 true JP6430037B2 (ja) 2018-11-28

Family

ID=62018325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017560640A Active JP6430037B2 (ja) 2016-10-17 2016-10-17 デバッグ支援装置およびデバッグ支援方法

Country Status (4)

Country Link
US (1) US10769049B2 (ja)
JP (1) JP6430037B2 (ja)
CN (1) CN109844660B (ja)
WO (1) WO2018073868A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7412076B2 (ja) * 2018-10-23 2024-01-12 株式会社キーエンス プログラマブルロジックコントローラ用のエンジニアリングツール
JP7405714B2 (ja) 2018-10-23 2023-12-26 株式会社キーエンス プログラマブルロジックコントローラ
JP6757386B2 (ja) * 2018-10-23 2020-09-16 株式会社キーエンス プログラマブルロジックコントローラおよびプログラム作成支援装置
JP7356778B2 (ja) 2019-02-12 2023-10-05 株式会社キーエンス プログラマブルロジックコントローラ用プログラム作成支援装置
CN116670600A (zh) * 2021-03-02 2023-08-29 三菱电机株式会社 调试辅助程序、调试辅助装置、调试辅助方法及机器学习装置
US20230367927A1 (en) * 2021-03-18 2023-11-16 Mitsubishi Electric Corporation Non-transitory computer readable storage medium storing operation improvement assistance program, operation improvement assistance device, and operation improvement assistance method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872909A (en) * 1995-01-24 1999-02-16 Wind River Systems, Inc. Logic analyzer for software
JP3715499B2 (ja) 2000-03-08 2005-11-09 株式会社東芝 制御装置のモニタシステム
JP2001312418A (ja) * 2000-04-28 2001-11-09 Mitsubishi Electric Corp プログラマブルコントローラ用シーケンスプログラムのデバッグ支援装置およびデバッグ支援方法、ならびにコンピュータ読み取り可能な記録媒体
CA2358563A1 (en) * 2001-10-05 2003-04-05 Ibm Canada Limited - Ibm Canada Limitee Method and system for managing software testing
JP2003248504A (ja) * 2002-02-22 2003-09-05 Digital Electronics Corp 制御プログラムのデバッグ方法
JP2005115426A (ja) 2003-10-02 2005-04-28 Omron Corp 異常復旧支援装置および異常復旧支援システム
EP1734432B1 (en) * 2004-03-22 2011-09-21 Digital Electronics Corporation Display apparatus, program for causing a computer to function as the display apparatus and storage medium including the program
US8863091B2 (en) * 2007-10-19 2014-10-14 Oracle International Corporation Unified tracing service
JP5252014B2 (ja) * 2011-03-15 2013-07-31 オムロン株式会社 制御装置、制御システム、ツール装置および収集指示プログラム
JP5599535B2 (ja) * 2012-03-26 2014-10-01 三菱電機株式会社 シーケンスプログラムデバッグ支援装置
JP5777842B2 (ja) * 2013-04-18 2015-09-09 三菱電機株式会社 プログラミングツール
US10203681B2 (en) * 2013-11-20 2019-02-12 Mistubishi Electric Corporation Sequence-program-creation supporting apparatus
JP6020509B2 (ja) * 2014-04-22 2016-11-02 Smk株式会社 回路基板接続用ターミナル
JP6626315B2 (ja) 2015-10-21 2019-12-25 株式会社キーエンス プログラマブル・ロジック・コントローラのモニタ装置及びプログラマブル・ロジック・コントローラ・システム
JP6996888B2 (ja) * 2017-07-11 2022-01-17 株式会社キーエンス プログラマブル・ロジック・コントローラ、データ収集装置およびプログラム作成支援装置
WO2019046254A1 (en) * 2017-08-28 2019-03-07 University Of Louisiana At Lafayette METHOD FOR MANUFACTURING HAND DISINFECTANT LOTION HAVING EXTENDED EFFICACY AND COMPOSITION OF MATERIAL OBTAINED

Also Published As

Publication number Publication date
JPWO2018073868A1 (ja) 2018-10-18
US10769049B2 (en) 2020-09-08
US20190340106A1 (en) 2019-11-07
CN109844660B (zh) 2021-01-12
WO2018073868A1 (ja) 2018-04-26
CN109844660A (zh) 2019-06-04

Similar Documents

Publication Publication Date Title
JP6430037B2 (ja) デバッグ支援装置およびデバッグ支援方法
TWI564685B (zh) 工程工具、程式編輯裝置及程式編輯系統
US20140364964A1 (en) Display method of synchronous control program for controlling driving of multi-axis synchronous control device
KR101324370B1 (ko) 시퀀스 프로그램의 디버그 장치, 디버그 방법, 및 프로그램
US8074182B2 (en) Work procedure display method and system, production process management method and system, and computer program of the same
US10248099B2 (en) Programmable logic controller, engineering tool, and engineering tool program
JP6150953B2 (ja) デバッグ装置、デバッグ方法及びデバッグプログラム
JP5906855B2 (ja) テストデータ作成方法、テストデータ作成プログラム及びテストデータ作成装置
US7003761B2 (en) Multi-process display method in debugger system
JP2010102454A (ja) 情報処理装置、情報処理プログラム
JP6076565B1 (ja) プログラム診断装置、プログラム診断方法及びプログラム診断プログラム
JP2009223471A (ja) シミュレーション・システム
JP2007034825A (ja) デバッグ装置
JP6058244B2 (ja) エンジニアリングツールプログラム及びエンジニアリングツール
JP4462402B2 (ja) プログラマブルコントローラ用のプログラム開発支援装置および処理方法並びにプログラムおよび記録媒体
JP2010152607A (ja) プロセス監視装置およびプロセス監視方法
JP2005100027A (ja) プログラマブルコントローラの故障情報表示装置前記故障詳細表示部には、前記の当該の故障についての詳細な内容をユーザが定義した属性別に区分してなる内容が、この属性を選択する毎に頁を繰るように表示されることを特徴とするプログラマブルコントローラの故障情報表示装置。
JP2017227973A (ja) 異常解析支援システム、および異常解析支援装置
JP5732726B2 (ja) 情報処理システム、情報処理システムの動作方法、および、プログラム
CN116167724A (zh) 一种实现流程自动化的方法、装置、设备及存储介质
JPH1091477A (ja) 制御用マイクロコンピュータ装置及び該装置の保守ツール
JP2011028711A (ja) 異常検出方法、及び異常検出装置
JP2019040293A (ja) エンジニアリング装置、および、エンジニアリング方法
JP2006157311A (ja) コンフィグ設定プログラム、コンフィグ設定装置、及びコンフィグ設定システム
JP2004318914A (ja) プログラムの表示方法及び装置並びにその処理プログラムを格納した記録媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180705

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181002

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181030

R150 Certificate of patent or registration of utility model

Ref document number: 6430037

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250