JPWO2016194099A1 - デバッグ装置、デバッグ方法及びデバッグプログラム - Google Patents

デバッグ装置、デバッグ方法及びデバッグプログラム Download PDF

Info

Publication number
JPWO2016194099A1
JPWO2016194099A1 JP2016555839A JP2016555839A JPWO2016194099A1 JP WO2016194099 A1 JPWO2016194099 A1 JP WO2016194099A1 JP 2016555839 A JP2016555839 A JP 2016555839A JP 2016555839 A JP2016555839 A JP 2016555839A JP WO2016194099 A1 JPWO2016194099 A1 JP WO2016194099A1
Authority
JP
Japan
Prior art keywords
data
dependency
unit
name
symbol
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.)
Granted
Application number
JP2016555839A
Other languages
English (en)
Other versions
JP6150953B2 (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
Application granted granted Critical
Publication of JP6150953B2 publication Critical patent/JP6150953B2/ja
Publication of JPWO2016194099A1 publication Critical patent/JPWO2016194099A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

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

Abstract

デバイス間の依存関係の把握を容易にすることができるデバック装置を得ることを目的とする。本発明のデバック装置は、制御装置で実行される制御プログラム及び制御装置のメモリ内の複数の作業領域である複数のデバイスを規定する規定する記述がなされたデータであるデバイスメモリを含むプロジェクトデータ(24a)を記憶する記憶部(24)と、文字又は画像を表示する表示部と、制御プログラム内で記述された複数のデバイスの依存関係を表す依存データ(24c)を作成して記憶部に格納する依存データ作成部(21a2a)と、依存データ(24c)に基づいて、複数のデバイスの依存関係を表す画像を表示部に表示させる描画部(21a2b,21a2c)と、を備える。

Description

本発明は、産業機械を制御する制御装置で実行される制御プログラムのデバッグを行うデバッグ装置、デバッグ方法及びデバッグプログラムに関する。
産業機械を制御する制御装置で実行される制御プログラムは、制御装置のメモリ内の複数の作業領域である複数のデバイスにアクセスする。制御プログラムは、あるデバイスのデータに応じて、他のデバイスにデータを書き込む。つまり、デバイス間には、依存関係がある。
従来、ユーザは、制御プログラムのデバッグを行う際に、制御プログラムをプログラムエディタで開いて、デバイス間の依存関係を辿る必要があった。
しかし、第1のデバイスが第2のデバイスに依存し、第2のデバイスが第3のデバイスに依存するような場合がある。また、第4及び第5のデバイスが、第6のデバイスに依存するような場合もある。このような場合には、ユーザは、制御プログラムを複数のプログラムエディタで開いて、デバイス間の依存関係を辿る必要があった。従って、ユーザはデバイス間の依存関係を把握しづらく、デバッグ工数が多くなり、トラブルの早期解決が困難であった。
関連する技術として、下記の特許文献1には、複数の制御プログラミング言語を混在表記可能とし、混在した制御プログラミング言語のコンパイルを行うプログラミング装置が記載されている(段落0092から0180まで及び図1から図7まで)。
特開2001−22412号公報
しかしながら、特許文献1記載の技術では、デバイス間の依存関係の把握を容易にすることは記載されていない。
本発明は、上記に鑑みてなされたものであって、デバイス間の依存関係の把握を容易にすることができるデバッグ装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、制御装置で実行される制御プログラム及び制御装置のメモリ内の複数の作業領域である複数のデバイスを規定する記述がなされたデータであるデバイスメモリを含むプロジェクトデータを記憶する記憶部と、文字又は画像を表示する表示部と、制御プログラム内で記述された複数のデバイスの依存関係を表す依存データを作成して記憶部に格納する依存データ作成部と、依存データに基づいて、複数のデバイスの依存関係を表す画像を表示部に表示させる描画部と、を備えることを特徴とする。
本発明にかかるデバッグ装置は、デバイス間の依存関係の把握を容易にすることができるという効果を奏する。
実施の形態1にかかる制御システムの構成を示す図 実施の形態1にかかる制御装置のハードウェア構成を示す図 実施の形態1にかかるラベル情報の例を示す図 実施の形態1にかかる制御プログラムの例を示す図 実施の形態1にかかるエンジニアリングツールのハードウェア構成を示す図 実施の形態1にかかるエンジニアリングツールの機能ブロックを示す図 実施の形態1にかかるシンボルデータの例を示す図 実施の形態1にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態1にかかる依存データの例を示す図 実施の形態1にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図 実施の形態1にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図 実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図 実施の形態1にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態1にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図 実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図 実施の形態2にかかる制御システムの構成を示す図 実施の形態2にかかるエンジニアリングツールの機能ブロックを示す図 実施の形態2にかかる制御プログラムの例を示す図 実施の形態2にかかる制御プログラムの例を示す図 実施の形態2にかかるエンジニアリングツールの処理を示すフローチャート 実施の形態2にかかる依存データの例を示す図 実施の形態2にかかる依存データの例を示す図
以下に、本発明の実施の形態にかかるデバッグ装置、デバッグ方法及びデバッグプログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、実施の形態1にかかる制御システムの構成を示す図である。制御システム1は、エンジニアリングツール2と、制御装置3と、を含む。エンジニアリングツール2と制御装置3とは、ネットワークN1を介して通信可能に接続されている。
エンジニアリングツール2は、制御装置3で実行される制御プログラムを含むプロジェクトデータを作成して、制御装置3に送信する。制御装置3は、プロジェクトデータに含まれる制御プログラムを実行することにより、機械を制御する。制御装置3は、プログラマブルコントローラ(JIS B 3502:2011、programmable controllers(PLC))が例示される。
図2は、実施の形態1にかかる制御装置のハードウェア構成を示す図である。制御装置3は、メイン基板3aと、サブ基板3bと、を含む。
メイン基板3aは、CPU(Central Processing Unit)3a1と、RAM(Random Access Memory)であるメモリ3a2と、通信インタフェース3a3と、バスインタフェース3a4と、記憶部3a5と、を含む。CPU3a1、メモリ3a2、通信インタフェース3a3、バスインタフェース3a4及び記憶部3a5は、内部バスB1を介して接続されている。
通信インタフェース3a3は、エンジニアリングツール2と通信を行う。
バスインタフェース3a4は、内部バスB1と拡張バスB2とを連絡するバスブリッジ回路である。サブ基板3bは、拡張バスB2を介して、メイン基板3aに接続されている。サブ基板3bは、機械4に接続されている。
記憶部3a5は、エンジニアリングツール2から受信したプロジェクトデータ24aを記憶する。記憶部3a5は、SSD(Solid State Drive)又はHDD(Hard Disk Drive)が例示される。
プロジェクトデータ24aは、制御プログラム24a1と、制御プログラム24a1の実行時に参照される制御パラメータ24a2と、メモリ3a2内の複数の作業領域である複数のデバイスを規定する記述がなされたデータであるデバイスメモリ24a3と、サブ基板3bと機械4との接続関係を規定する接続情報24a4と、各デバイスの名称であるデバイス名とユーザが各デバイスに付した別名であるラベル名とを対応付けたラベル情報24a5と、を含む。
実施の形態1では、制御プログラム24a1は、ラダー(Ladder、LD)言語(IEC 61131−3、JIS B 3503:2012)で記述されているものとするが、制御プログラム24a1はラダー言語で記述されることに限定されない。制御プログラム24a1が記述される他の言語は、構造化ラダー言語又はファンクションブロックダイアグラム(IEC 61131−3、JIS B 3503:2012、Function Block Diagram(FBD))言語が例示される。
メモリ3a2内には、デバイスメモリ24a3で規定される複数のデバイスが確保される。デバイス名は、制御装置3のメーカによって体系的に付される。実施の形態1では、メモリ3a2内の複数のデバイスの各々は、制御プログラム24a1の変数に対応する。実施の形態1では、デバイスのデータ型は、ワード型とビット型とがある。
図3は、実施の形態1にかかるラベル情報の例を示す図である。ラベル情報24a5は、デバイス名の項目と、ラベル名の項目と、を有する。行71のデバイス名の項目には、「M101」が記述されており、ラベル名の項目には、「B」が記述されている。つまり、ユーザは、デバイス名「M101」のデバイスに、ラベル名「B」を付している。ユーザは、制御プログラム24a1の中で、ラベル名「B」を記述することで、デバイス名「M101」のデバイスにアクセスすることができる。
これにより、ユーザのプログラミングが容易になり、制御プログラム24a1の可読性が向上する。
図4は、実施の形態1にかかる制御プログラムの例を示す図である。制御プログラム24a1は、行61,62,63及び64を含む。
行61は、条件部61aと、動作部61bと、を含む。条件部61aは、デバイス名「X0」のデバイスのデータを読み込むロード命令である。実施の形態1では、英字「X」と、数値と、の結合は、ビット型のデバイスを表す。
動作部61bは、デバイス名「M100」のデバイスにデータを出力する出力命令である。実施の形態1では、英字「M」と、数値と、の結合は、ビット型のデバイスを表す。
行61では、デバイス名「X0」のデバイスのデータが「1」である場合に、デバイス名「M100」のデバイスに「1」が出力される。また、デバイス名「X0」のデバイスのデータが「0」である場合に、デバイス名「M100」のデバイスに「0」が出力される。
つまり、デバイス名「M100」のデバイスは、デバイス名「X0」のデバイスに直接依存している。
行62は、条件部62aと、動作部62bと、を含む。条件部62aは、デバイス名が「X1」であるデバイスのデータを読み込むロード命令である。
動作部62bは、ラベル名「B」のデバイスにデータを出力する出力命令である。なお、先に図3で示したラベル情報24a5で説明したように、ラベル名「B」は、デバイス名「M101」のデバイスにユーザによって付された別名である。
行62では、デバイス名「X1」のデバイスのデータが「1」である場合に、ラベル名「B」のデバイスに「1」が出力される。また、デバイス名「X1」のデバイスのデータが「0」である場合に、ラベル名「B」のデバイスに「0」が出力される。
つまり、ラベル名「B」のデバイスは、デバイス名「X1」のデバイスに直接依存している。
行63は、条件部63a及び63bと、動作部63cと、を含む。条件部63aは、デバイス名「M100」のデバイスのデータを読み込むロード命令である。条件部63bは、ラベル名「B」のデバイスのデータを読み込むロード命令である。
動作部63cは、デバイス名「Y10」のデバイスにデータを出力する出力命令である。実施の形態1では、英字「Y」と、数値と、の結合は、ビット型のデバイスを表す。
行63では、デバイス名「M100」のデバイスのデータと、ラベル名「B」のデバイスのデータと、の論理和に応じて、デバイス名「Y10」のデバイスにデータが出力される。
つまり、デバイス名「M100」のデバイスのデータが「1」である場合に、ラベル名「B」のデバイスのデータに関わらず、デバイス名「Y10」のデバイスに「1」が出力される。
また、ラベル名「B」のデバイスのデータが「1」である場合に、デバイス名「M100」のデバイスのデータに関わらず、デバイス名「Y10」のデバイスに「1」が出力される。
また、デバイス名「M100」のデバイスのデータが「0」であり且つラベル名「B」のデバイスのデータが「0」である場合に、デバイス名「Y10」のデバイスに「0」が出力される。
つまり、デバイス名「Y10」のデバイスは、デバイス名「M100」のデバイスに直接依存している。また、デバイス名「Y10」のデバイスは、ラベル名「B」のデバイスに直接依存している。
行64は、条件部64aと、動作部64bと、を含む。条件部64aは、ラベル名が「B」であるデバイスのデータを読み込むロード命令である。
動作部64bは、デバイス名「Y11」のデバイスにデータを出力する出力命令である。
行64では、ラベル名「B」のデバイスのデータが「1」である場合に、デバイス名「Y11」のデバイスに「1」が出力される。また、ラベル名「B」のデバイスのデータが「0」である場合に、デバイス名「Y11」のデバイスに「0」が出力される。
つまり、デバイス名「Y11」のデバイスは、ラベル名「B」のデバイスに直接依存している。
図5は、実施の形態1にかかるエンジニアリングツールのハードウェア構成を示す図である。実施の形態1にかかるエンジニアリングツール2は、コンピュータを利用して実現可能である。コンピュータは、CPU21と、RAM22と、ROM(Read Only Memory)23と、記憶部24と、入力部25と、表示部26と、通信インタフェース27と、を含む。CPU21、RAM22、ROM23、記憶部24、入力部25、表示部26及び通信インタフェース27は、バスBを介して接続されている。
CPU21は、RAM22を作業領域として使用しながら、ROM23及び記憶部24に記憶されているプログラムを実行する。ROM23に記憶されているプログラムは、BIOS(Basic Input/Output System)又はUEFI(Unified Extensible Firmware Interface)が例示される。記憶部24に記憶されているプログラムは、オペレーティングシステムプログラム及びエンジニアリングツールプログラムが例示される。記憶部24は、SSD又はHDDが例示される。
入力部25は、ユーザからの操作入力を受け付ける。入力部25は、キーボード又はマウスが例示される。表示部26は、文字及び画像を表示する。表示部26は、液晶表示装置が例示される。通信インタフェース27は、制御装置3と通信を行う。
図6は、実施の形態1にかかるエンジニアリングツールの機能ブロックを示す図である。記憶部24は、プロジェクトデータ24aと、デバイスのデータ型並びにデバイスのデバイス名又はラベル名の種別とシンボルとを対応付けたシンボルデータ24bと、を記憶する。
図7は、実施の形態1にかかるシンボルデータの例を示す図である。シンボルデータ24bは、データ型の項目と、名称種別の項目と、シンボルの項目と、を有する。
行81のデータ型の項目には、「ビット」が記述されており、名称種別の項目には、「デバイス名」が記述されており、シンボルの項目には、円形が記述されている。つまり、行81は、デバイス名で記述されたビット型のデバイスには、円形のシンボルが対応付けられることを表している。
行82のデータ型の項目には、「ワード」が記述されており、名称種別の項目には、「デバイス名」が記述されており、シンボルの項目には、四角形が記述されている。つまり、行82は、デバイス名で記述されたワード型のデバイスには、四角形のシンボルが対応付けられることを表している。
行83のデータ型の項目には、「ビット」が記述されており、名称種別の項目には、「ラベル名」が記述されており、シンボルの項目には、三角形が記述されている。つまり、行83は、ラベル名で記述されたビット型のデバイスには、三角形のシンボルが対応付けられることを表している。
行84のデータ型の項目には、「ワード」が記述されており、名称種別の項目には、「ラベル名」が記述されており、シンボルの項目には、六角形が記述されている。つまり、行84は、ラベル名で記述されたワード型のデバイスには、六角形のシンボルが対応付けられることを表している。
再び図6を参照すると、CPU21は、記憶部24に記憶されたエンジニアリングツールプログラムを実行する。これにより、プロジェクトデータ作成部21a1及びデバッグ部21a2を含むエンジニアリングツール部21aが実現される。
プロジェクトデータ作成部21a1は、プロジェクトデータ24aを作成して、制御装置3に送信する。
デバッグ部21a2は、制御プログラム24a1内で記述された複数のデバイスの依存関係を表す依存データ24cを作成して記憶部24に格納する依存データ作成部21a2aを含む。
デバッグ部21a2は、依存データ24cに基づいて、複数のデバイスの依存関係を表す画像を表示部26に表示させる第1描画部21a2bを含む。
デバッグ部21a2は、画像の中のデバイスが選択されたら、依存データ24cに基づいて、選択されたデバイスに直接依存するデバイスを表示部26に表示させる第2描画部21a2cを含む。
デバッグ部21a2は、画像の中のデバイスのデータを制御装置3から受信したら、受信したデータに基づく画像を表示部26に表示させるモニタリング部21a2dを含む。
図8は、実施の形態1にかかるエンジニアリングツールの処理を示すフローチャートである。
依存データ作成部21a2aは、ステップS100において、ステップS102からステップS114までのループを制御するための変数Nを「1」に初期設定する。
依存データ作成部21a2aは、ステップS102において、N番目の条件部のフラグが「1」であるか否かを判定する。そして、依存データ作成部21a2aは、N番目の条件部のフラグが「1」であると判定したら(Yes)、処理をステップS114に進める。一方、依存データ作成部21a2aは、N番目の条件部のフラグが「0」、つまり「1」ではないと判定したら(No)、処理をステップS104に進める。
依存データ作成部21a2aは、ステップS104以降で説明するように、制御プログラム24a1内のデバイスを走査しながら依存データ24cを作成するが、重複走査を回避するために、各条件部に対してフラグを設ける。走査済みの条件部のフラグは、「1」にセットされる。フラグは、RAM22内に設けても良いし、記憶部24内に設けても良いし、制御プログラム24a1内に設けても良い。
依存データ作成部21a2aは、ステップS104において、N番目の条件部に記述されたデバイスに直接依存するデバイスを制御プログラム24a1の中から検索して、N番目の条件部に記述されたデバイス及び当該デバイスに直接依存するデバイスを依存データ24cに追記し、N番目の条件部のフラグを「1」にセットする。
依存データ作成部21a2aは、ステップS106において、ステップS104で検索したデバイスが記述された条件部を制御プログラム24a1の中から検索する。
依存データ作成部21a2aは、ステップS108において、ステップS106で検索した条件部のフラグが「1」であるか否かを判定する。そして、依存データ作成部21a2aは、ステップS106で検索した条件部のフラグが「1」であると判定したら(Yes)、処理をステップS112に進める。一方、依存データ作成部21a2aは、ステップS106で検索した条件部のフラグが「0」、つまり「1」ではないと判定したら(No)、処理をステップS110に進める。
依存データ作成部21a2aは、ステップS110において、ステップS106で検索した条件部内のデバイス及び当該デバイスに直接依存するデバイスを依存データ24cに追記し、ステップS106で検索した条件部のフラグを「1」にセットする。
依存データ作成部21a2aは、ステップS112において、ステップS106で検索した条件部内のデバイスに直接依存するデバイスに直接依存するデバイスが有るか否かを判定する。そして、依存データ作成部21a2aは、ステップS106で検索した条件部内のデバイスに直接依存するデバイスに直接依存するデバイスが有ると判定したら(Yes)、処理をステップS106に進める。一方、依存データ作成部21a2aは、ステップS106で検索した条件部内のデバイスに直接依存するデバイスに直接依存するデバイスが無いと判定したら(No)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目の条件部が制御プログラム24a1の最終の条件部であるか否かを判定する。そして、依存データ作成部21a2aは、N番目の条件部が制御プログラム24a1の最終の条件部ではないと判定したら(No)、処理をステップS116に進める。
依存データ作成部21a2aは、ステップS116において、変数Nをインクリメントし、処理をステップS102に進める。
一方、依存データ作成部21a2aは、N番目の条件部が制御プログラム24a1の最終の条件部であるとステップS114で判定したら(Yes)、処理を終了する。
図9は、実施の形態1にかかる依存データの例を示す図である。依存データ24cは、行91,92,93及び94を含む。
図4に示す制御プログラム24a1及び図8に示すフローチャートを参照しながら、依存データ24cの作成について説明する。
依存データ作成部21a2aは、ステップS100において、変数Nを「1」に初期設定する。
依存データ作成部21a2aは、ステップS102において、N番目、つまり1番目の条件部61aのフラグが「1」ではないと判定し(No)、処理をステップS104に進める。
依存データ作成部21a2aは、ステップS104において、N番目、つまり1番目の条件部61a内のデバイス名「X0」のデバイスに直接依存する、動作部61b内のデバイス名「M100」のデバイスを制御プログラム24a1の中から検索する。そして、依存データ作成部21a2aは、デバイス名「X0」及びデバイス名「M100」を含む行91を依存データ24cに追記する。
なお、行91,92,93及び94内の「:」は、デリミタ(delimiter)である。デリミタ「:」よりも図中左側に記述されたデバイスが依存先であり、デリミタ「:」よりも図中右側に記述されたデバイスが依存元である。
依存データ作成部21a2aは、ステップS106において、ステップS104で検索したデバイス名「M100」が記述された条件部63aを制御プログラム24a1の中から検索する。
依存データ作成部21a2aは、ステップS108において、ステップS106で検索した条件部63aのフラグが「1」ではないと判定し(No)、処理をステップS110に進める。
依存データ作成部21a2aは、ステップS110において、ステップS106で検索した条件部63a内のデバイス名「M100」及び当該デバイスに直接依存する、動作部63c内のデバイス名「Y10」を含む行92を依存データ24cに追記する。
依存データ作成部21a2aは、ステップS112において、デバイス名「Y10」のデバイスに直接依存するデバイスが無いと判定し(No)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目、つまり1番目の条件部61aが最終の条件部ではないと判定し(No)、処理をステップS116に進める。
依存データ作成部21a2aは、ステップS116において、変数Nをインクリメントし、処理をステップS102に進める。
依存データ作成部21a2aは、ステップS102において、N番目、つまり2番目の条件部62aのフラグが「1」ではないと判定し(No)、処理をステップS104に進める。
依存データ作成部21a2aは、ステップS104において、N番目、つまり2番目の条件部62a内のデバイス名「X1」のデバイスに直接依存する、動作部62b内のラベル名「B」のデバイスを制御プログラム24a1の中から検索する。そして、依存データ作成部21a2aは、デバイス名「X1」及びラベル名「B」を含む行93を依存データ24cに追記する。
依存データ作成部21a2aは、ステップS106において、ステップS104で検索したラベル名「B」が記述された条件部63b及び64aを制御プログラム24a1の中から検索する。
依存データ作成部21a2aは、ステップS108において、ステップS106で検索した条件部63b及び64bのフラグが「1」ではないと判定し(No)、処理をステップS110に進める。
依存データ作成部21a2aは、ステップS110において、ステップS106で検索した条件部63b及び64a内のラベル名「B」及び当該デバイスに直接依存する、動作部63c内のデバイス名「Y10」及び動作部64b内のデバイス名「Y11」を含む行94を依存データ24cに追記する。
依存データ作成部21a2aは、ステップS112において、デバイス名「Y10」又は「Y11」のデバイスに直接依存するデバイスが無いと判定し(No)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目、つまり2番目の条件部62aが最終の条件部ではないと判定し(No)、処理をステップS116に進める。
依存データ作成部21a2aは、ステップS116において、変数Nをインクリメントし、処理をステップS102に進める。
依存データ作成部21a2aは、ステップS102において、N番目、つまり3番目の条件部63aのフラグが「1」であると判定し(Yes)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目、つまり3番目の条件部63aが最終の条件部ではないと判定し(No)、処理をステップS116に進める。
依存データ作成部21a2aは、ステップS116において、変数Nをインクリメントし、処理をステップS102に進める。
依存データ作成部21a2aは、ステップS102において、N番目、つまり4番目の条件部63bのフラグが「1」であると判定し(Yes)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目、つまり4番目の条件部63bが最終の条件部ではないと判定し(No)、処理をステップS116に進める。
依存データ作成部21a2aは、ステップS116において、変数Nをインクリメントし、処理をステップS102に進める。
依存データ作成部21a2aは、ステップS102において、N番目、つまり5番目の条件部64aのフラグが「1」であると判定し(Yes)、処理をステップS114に進める。
依存データ作成部21a2aは、ステップS114において、N番目、つまり5番目の条件部64aが最終の条件部であると判定し(Yes)、処理を終了する。
以上説明したように、依存データ作成部21a2aは、図8のフローチャートで示される処理を実行することにより、制御プログラム24a1の中に記述されたデバイスの依存関係を表す依存データ24cを作成することができる。
図10は、実施の形態1にかかるエンジニアリングツールの処理を示すフローチャートである。
第1描画部21a2bは、ステップS200において、依存データ24cの、ユーザによって又はパラメータによって指定された行の依存先側のデバイスのシンボルを表示部26に表示し、当該デバイスのデバイス名又はラベル名をシンボル内に表示する。実施の形態1では、依存データ24cの1行目が指定されたものとする。
第1描画部21a2bは、ステップS202において、直前に表示したデバイスに直接依存するデバイスのシンボルを表示し、当該デバイスのデバイス名又はラベル名をシンボル内に表示するとともに、直前に表示したデバイスのシンボルと当該デバイスに直接依存するデバイスのシンボルとを結ぶ、依存の方向を表す有向線を表示する。
なお、第1描画部21a2bは、直前に表示したデバイスに直接依存するデバイスのシンボルを、直前に表示したデバイスの右側に表示すると好適である。
ラダー言語で記述された制御プログラム24a1の実行順序方向は、左側から右側に向かう方向である。従って、第1描画部21a2bが、制御プログラム24a1の実行順序の方向と同様に、直前に表示したデバイスに直接依存するデバイスのシンボルを直前に表示したデバイスの右側に表示することにより、ユーザは、デバイスの依存関係を直感的に把握することができる。
第1描画部21a2bは、ステップS204において、ステップS202で表示したデバイスに直接依存するデバイスがあるか否かを判定する。そして、第1描画部21a2bは、ステップS202で表示したデバイスに直接依存するデバイスがあると判定したら(Yes)、処理をステップS202に進める。一方、第1描画部21a2bは、ステップS202で表示したデバイスに直接依存するデバイスがないと判定したら(No)、処理を終了する。
図11は、実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図である。
図9に示す依存データ24c及び図10に示すフローチャートを参照しながら、エンジニアリングツール2の表示画面について説明する。
第1描画部21a2bは、ステップS200において、依存データ24cの1行目の依存先側のデバイス名「X0」のデバイスのシンボル101を表示部26に表示する。
なお、「X0」はデバイス名であり、当該デバイスはビット型である。従って、第1描画部21a2bは、シンボルデータ24bの行81を参照し、円形のシンボル101を表示部26に表示する。また、第1描画部21a2bは、デバイス名「X0」をシンボル101内に表示する。
第1描画部21a2bは、ステップS202において、直前に表示したデバイス名「X0」のデバイスに直接依存する、デバイス名「M100」のデバイスのシンボル102を、シンボル101の右側に表示し、当該デバイスのデバイス名「M100」をシンボル102内に表示するとともに、直前に表示したシンボル101とシンボル102とを結ぶ有向線103を表示する。
なお、「M100」はデバイス名であり、当該デバイスはビット型である。従って、第1描画部21a2bは、シンボルデータ24bの行81を参照し、円形のシンボル102を表示部26に表示する。また、第1描画部21a2bは、デバイス名「M100」をシンボル102内に表示する。
これにより、ユーザは、デバイス名「M100」のデバイスが、デバイス名「X0」のデバイスに直接依存することを、容易に把握することができる。
第1描画部21a2bは、ステップS204において、ステップS202で表示したデバイス名「M100」のデバイスに直接依存するデバイスがあるか否かを判定する。
依存データ24cの行92には、デバイス名「Y10」のデバイスがデバイス名「M100」のデバイスに直接依存することが、記述されている。
従って、第1描画部21a2bは、ステップS202で表示したデバイス名「M100」のデバイスに直接依存する、デバイス名「Y10」のデバイスがあると判定し(Yes)、処理をステップS202に進める。
第1描画部21a2bは、ステップS202において、直前に表示したデバイス名「M100」のデバイスに直接依存する、デバイス名「Y10」のデバイスのシンボル104を、シンボル102の右側に表示し、当該デバイスのデバイス名「Y10」をシンボル104内に表示するとともに、直前に表示したシンボル102とシンボル104とを結ぶ有向線105を表示する。
なお、「Y10」はデバイス名であり、当該デバイスはビット型である。従って、第1描画部21a2bは、シンボルデータ24bの行81を参照し、円形のシンボル104を表示部26に表示する。また、第1描画部21a2bは、デバイス名「Y10」をシンボル104内に表示する。
これにより、ユーザは、デバイス名「Y10」のデバイスが、デバイス名「M100」のデバイスに直接依存することを、容易に把握することができる。
第1描画部21a2bは、ステップS204において、ステップS202で表示したデバイス名が「Y10」であるデバイスに直接依存するデバイスがあるか否かを判定する。
依存データ24cには、デバイス名「Y10」のデバイスに直接依存するデバイスが記述されていない。
従って、第1描画部21a2bは、ステップS202で表示したデバイス名「Y10」のデバイスに直接依存するデバイスがないと判定し(No)、処理を終了する。
以上説明したように、第1描画部21a2bは、デバイス名「M100」のデバイスがデバイス名「X0」のデバイスに直接依存することを、表示することができる。また、第1描画部21a2bは、デバイス名「Y10」のデバイスがデバイス名「M100」のデバイスに直接依存することを、表示することができる。
従って、ユーザは、デバイスの依存関係を容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
図12は、実施の形態1にかかるエンジニアリングツールの処理を示すフローチャートである。
第2描画部21a2cは、ステップS300において、表示部26に表示されたデバイスのシンボルがユーザによって選択されたか否かを判定する。シンボルの選択は、ダブルクリックが例示される。
第2描画部21a2cは、表示部26に表示されたデバイスのシンボルがユーザによって選択されていないと判定したら(No)、ステップS300で待機する。
第2描画部21a2cは、表示部26に表示されたデバイスのシンボルがユーザによって選択されたと判定したら(Yes)、処理をステップS302に進める。
第2描画部21a2cは、ステップS302において、選択されたデバイスのデバイス名又はラベル名を含む行を依存データ24cから検索する。
第2描画部21a2cは、ステップS304において、検索された行の中で、選択されたデバイスと直接依存する関係にあるデバイスのシンボルを表示するとともに、選択されたデバイスのシンボルと当該デバイスと直接依存する関係にあるデバイスのシンボルとを結ぶ、依存の方向を表す有向線を表示し、処理を終了する。
図13は、実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図である。
図9に示す依存データ24c及び図12に示すフローチャートを参照しながら、エンジニアリングツール2の表示画面について説明する。
第2描画部21a2cは、ステップS300において、表示部26に表示されたデバイスのシンボルがユーザによって選択されたか否かを判定する。
実施の形態1では、先に説明した図11の表示画面において、シンボル104が選択されたものとする。
第2描画部21a2cは、シンボル104がユーザによって選択されたと判定し(Yes)、処理をステップS302に進める。
第2描画部21a2cは、ステップS302において、選択されたシンボル104のデバイス名「Y10」を含む行を依存データ24cから検索する。
依存データ24cの行94には、デバイス名「Y10」のデバイスがラベル名「B」のデバイスに直接依存することが、記述されている。
第2描画部21a2cは、ステップS304において、選択されたシンボル104のデバイスが直接依存する、ラベル名「B」のデバイスのシンボル106を表示するとともに、選択されたシンボル104と当該デバイスが直接依存するシンボル106とを結ぶ、依存の方向を表す有向線107を表示する。
なお、「B」はラベル名であり、当該デバイスはビット型である。従って、第2描画部21a2cは、シンボルデータ24bの行83を参照し、三角形のシンボル106を表示部26に表示する。また、第2描画部21a2cは、ラベル名「B」をシンボル106内に表示する。
以上説明したように、第2描画部21a2cは、デバイス名「Y10」のデバイスのシンボル104が選択されたら、選択されたデバイス名「Y10」のデバイスと直接依存する関係にあるラベル名「B」のデバイスのシンボル106を表示することができる。
従って、ユーザは、デバイス名「Y10」のデバイスとラベル名「B」のデバイスとの依存関係を容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
ここで、図13の表示画面において、シンボル106が更に選択されたものとする。
図14は、実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図である。
第2描画部21a2cは、ステップS300において、表示部26に表示されたデバイスのシンボルがユーザによって選択されたか否かを判定する。
第2描画部21a2cは、シンボル106がユーザによって選択されたと判定し(Yes)、処理をステップS302に進める。
第2描画部21a2cは、ステップS302において、選択されたシンボル106のラベル名「B」を含む行を依存データ24cから検索する。
依存データ24cの行93には、ラベル名「B」のデバイスがデバイス名「X1」のデバイスに直接依存することが記述されている。
依存データ24cの行94には、デバイス名「Y11」のデバイスがラベル名「B」のデバイスに直接依存することが記述されている。
第2描画部21a2cは、ステップS304において、選択されたシンボル106のデバイスが直接依存する、デバイス名「X1」のデバイスのシンボル108を表示するとともに、選択されたシンボル106と当該デバイスが直接依存するシンボル108とを結ぶ、依存の方向を表す有向線109を表示する。
なお、「X1」はデバイス名であり、当該デバイスはビット型である。従って、第2描画部21a2cは、シンボルデータ24bの行81を参照し、円形のシンボル108を表示部26に表示する。また、第2描画部21a2cは、デバイス名「X1」をシンボル108内に表示する。
また、第2描画部21a2cは、選択されたシンボル106のデバイスに直接依存する、デバイス名「Y11」のデバイスのシンボル110を表示するとともに、選択されたシンボル106と当該デバイスに直接依存するシンボル110とを結ぶ、依存の方向を表す有向線111を表示する。
なお、「Y11」はデバイス名であり、当該デバイスはビット型である。従って、第2描画部21a2cは、シンボルデータ24bの行81を参照し、円形のシンボル110を表示部26に表示する。また、第2描画部21a2cは、デバイス名「Y11」をシンボル110内に表示する。
以上説明したように、第2描画部21a2cは、ラベル名「B」のデバイスのシンボル106が選択されたら、選択されたラベル名「B」のデバイスと直接依存する関係にあるデバイス名「X1」のデバイスのシンボル108及びデバイス名「Y11」のデバイスのシンボル110を表示することができる。
従って、ユーザは、ラベル名「B」のデバイスとデバイス名「X1」のデバイスとの依存関係及びラベル名「B」のデバイスとデバイス名「Y11」のデバイスとの依存関係を容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
図15は、実施の形態1にかかるエンジニアリングツールの処理を示すフローチャートである。
第2描画部21a2cは、ステップS310において、ステップS300で選択されたデバイスのシンボルがユーザによって再度選択されたか否かを判定する。
第2描画部21a2cは、ステップS300で選択されたデバイスのシンボルがユーザによって再度選択されていないと判定したら(No)、ステップS310で待機する。
第2描画部21a2cは、ステップS300で選択されたデバイスのシンボルがユーザによって再度選択されたと判定したら(Yes)、処理をステップS312に進める。
第2描画部21a2cは、ステップS312において、ステップS304で表示したデバイスのシンボル及び有向線を表示画面から消去し、処理を終了する。
第2描画部21a2cが図15に示す処理を実行することにより、図14で示す表示画面においてラベル名「B」のデバイスのシンボル106が再度選択されたら、デバイス名「X1」のデバイスのシンボル108及びデバイス名「Y11」のデバイスのシンボル110並びに有向線109及び111が表示画面から消去される。
以上説明したように、第2描画部21a2cは、ラベル名「B」のデバイスのシンボル106が選択されたら、選択されたラベル名「B」のデバイスと直接依存する関係にあるデバイス名「X1」のデバイスのシンボル108及びデバイス名「Y11」のデバイスのシンボル110を表示することができ、その後、ラベル名「B」のデバイスのシンボル106が再度選択されたら、再度選択されたラベル名「B」のデバイスと直接依存する関係にあるデバイス名「X1」のデバイスのシンボル108及びデバイス名「Y11」のデバイスのシンボル110を消去することができる。
従って、ユーザは、確認が終わったデバイス名「X1」のデバイスのシンボル108及びデバイス名「Y11」のデバイスのシンボル110を消去することができ、表示画面を見易くすることができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
図16は、実施の形態1にかかるエンジニアリングツールの処理を示すフローチャートである。
モニタリング部21a2dは、ステップS400において、制御装置3からデバイスのデータを取得する。
モニタリング部21a2dは、ステップS402において、データを取得したデバイスのデータ型がビット型であるか否かを判定する。
モニタリング部21a2dは、データを取得したデバイスのデータ型がビット型であると判定したら(Yes)、処理をステップS404に進める。
モニタリング部21a2dは、データを取得したデバイスのデータ型がビット型ではない、つまりワード型であると判定したら(No)、処理をステップS406に進める。
モニタリング部21a2dは、ステップS404において、取得したデータの値に応じた色で、データを取得したデバイスのシンボルを表示し、処理を終了する。モニタリング部21a2dは、取得したデータの値が「0」であったら、シンボルを黒色で表示し、取得したデータの値が「1」であったら、シンボルを白色で表示することが例示される。なお、黒色及び白色は例示であり、他の色でも良い。また、モニタリング部21a2dは、取得したデータの値に応じて、シンボルを点滅表示させても良い。
モニタリング部21a2dは、ステップS406において、取得したデータの値を表示部26に表示し、処理を終了する。
図17は、実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図である。
モニタリング部21a2dは、デバイス名「X0」のビット型デバイスのデータ「0」を制御装置3から取得したら、シンボル101を黒色で表示する。
モニタリング部21a2dは、デバイス名「M100」のビット型デバイスのデータ「0」を制御装置3から取得したら、シンボル102を黒色で表示する。
モニタリング部21a2dは、デバイス名「Y10」のビット型デバイスのデータ「0」を制御装置3から取得したら、シンボル104を黒色で表示する。
モニタリング部21a2dは、ラベル名「B」のビット型デバイスのデータ「1」を制御装置3から取得したら、シンボル106を白色で表示する。
モニタリング部21a2dは、デバイス名「X1」のビット型デバイスのデータ「0」を制御装置3から取得したら、シンボル108を黒色で表示する。
モニタリング部21a2dは、デバイス名「Y11」のビット型デバイスのデータ「1」を制御装置3から取得したら、シンボル110を白色で表示する。
これにより、ユーザは、各デバイスの値を直感的に把握することができる。
図18は、実施の形態1にかかるエンジニアリングツールの表示画面の例を示す図である。
図18に示す表示画面では、デバイス名「G11」のワード型デバイスのシンボル120が表示されている。また、デバイス名「D100」のワード型デバイスのシンボル121が表示されている。また、シンボル120とシンボル121とを結ぶ、デバイス名「D100」のデバイスがデバイス名「G11」のデバイスに直接依存することを表す有向線122が、表示されている。
また、図18に示す表示画面では、ラベル名「A」のワード型デバイスのシンボル123が表示されている。また、シンボル121とシンボル123とを結ぶ、ラベル名「A」のデバイスがデバイス名「D100」のデバイスに直接依存することを表す有向線124が、表示されている。
また、図18に示す表示画面では、ラベル名「C」のワード型デバイスのシンボル125が表示されている。また、シンボル121とシンボル125とを結ぶ、ラベル名「C」のデバイスがデバイス名「D100」のデバイスに直接依存することを表す有向線126が、表示されている。
モニタリング部21a2dは、デバイス名「D100」のワード型デバイスのデータ「60」を制御装置3から取得したら、「60」という画像127を、シンボル121の傍に表示する。
「60」という画像127をシンボル121の傍に表示するとは、画像127とシンボル121との間の距離が、画像127と他のシンボル120,123又は125との間の距離よりも短くなるように、画像127を表示することをいう。
以上説明したように、モニタリング部21a2dは、制御装置3から取得したデータの値をユーザが識別可能に表示部26に表示する。
従って、ユーザは、デバイスのデータを容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
実施の形態2.
図19は、本発明の実施の形態2にかかる制御システムの構成を示す図である。制御システム1Aは、エンジニアリングツール2及び第1の制御装置3に加えて、第2の制御装置3Aを更に含む。エンジニアリングツール2と制御装置3及び3Aとは、ネットワークN1を介して通信可能に接続されている。
第2の制御装置3Aのハードウェア構成は、先に図2を参照して説明した第1の制御装置3のハードウェア構成と同様であるので、説明を省略する。
制御装置3及び3Aは、メモリ3a2内に、ローカルメモリ領域と、共有メモリ領域と、を設ける。ローカルメモリ領域は、制御装置3又は3Aが単有する領域である。共有メモリ領域は、制御装置3及び3Aが共有する領域である。
第1の制御装置3が、共有メモリ領域内のデバイスにデータを書き込むと、書き込まれたデータが第2の制御装置3Aの共有メモリの該当デバイスに転送される。第2の制御装置3Aが、共有メモリ領域内のデバイスにデータを書き込むと、書き込まれたデータが第1の制御装置3の共有メモリの該当デバイスに転送される。
これにより、制御装置3及び3Aは、データの共有を行うことができる。
図20は、実施の形態2にかかるエンジニアリングツールの機能ブロックを示す図である。記憶部24は、プロジェクトデータ24a及びシンボルデータ24bに加えて、プロジェクトデータ24dを更に記憶する。
プロジェクトデータ24dは、プロジェクトデータ24aと同様に、プロジェクトデータ作成部21a1によって作成される。プロジェクトデータ24dは、プロジェクトデータ24aと同様に、制御プログラム、制御パラメータ、デバイスメモリ、接続情報及びラベル情報を含む。
プロジェクトデータ24dは、第2の制御装置3Aに送信される。第2の制御装置3Aは、プロジェクトデータ24d内の制御プログラムを実行することで、機械を制御する。
図21は、実施の形態2にかかる制御プログラムの例を示す図である。制御プログラム24a1は、行61,62,63及び64に加えて、行65を含む。
行65は、条件部65aと、動作部65bと、を含む。条件部65aは、デバイス名「Y12」のデバイスのデータを読み込むロード命令である。
動作部65bは、第1引数の値を第2引数に転送する「MOV」(ムーブ)命令である。第1引数「K1000」は、「1000」という定数である。第2引数は、デバイス名が「D100」であるワード型のデバイスである。
実施の形態2では、デバイス名「D100」のデバイスは、共有メモリに配置されている。そして、デバイス名「D100」のデバイスは、制御プログラム24a1を実行する第1の制御装置3によってデータが書き込まれる。従って、動作部65bには、第1の制御装置3がデバイス名「D100」のデバイスにデータを書き込むことを表す「[PLC1:共有メモリ]」という文字列が含まれている。
行65では、デバイス名が「Y12」であるデバイスのデータが「1」である場合に、定数「1000」が、デバイス名「D100」のデバイスに転送される。
つまり、デバイス名「D100」のデバイスは、デバイス名「Y12」のデバイスに直接依存している。
図22は、実施の形態2にかかる制御プログラムの例を示す図である。プロジェクトデータ24dに含まれる制御プログラム24d1は、行131を含む。
行131は、条件部131aと、動作部131bと、を含む。条件部131aは、第1引数と第2引数とが等しいか否かを判定する「=」(イコール)命令である。
実施の形態2では、デバイス名「D100」のデバイスは、共有メモリに配置されている。そして、デバイス名「D100」のデバイスは、第1の制御装置3によってデータが書き込まれる。従って、条件部131aには、第1の制御装置3がデバイス名「D100」のデバイスにデータを書き込むことを表す「PLC1:共有メモリ」という文字列が含まれている。
動作部131bは、デバイス名「Y20」のデバイスにデータを出力する出力命令である。
行65では、デバイス名「D100」のデバイスのデータが定数「1000」と等しい場合に、デバイス名「Y20」のデバイスに「1」が出力される。
つまり、デバイス名「Y20」のデバイスは、デバイス名「D100」のデバイスに直接依存している。
図23は、実施の形態2にかかるエンジニアリングツールの処理を示すフローチャートである。
依存データ作成部21a2aは、ステップS500において、第1の制御装置3で実行される制御プログラム24a1に、図8で示した依存データ作成処理を実行する。
図24は、実施の形態2にかかる依存データの例を示す図である。依存データ24cは、行91,92,93及び94に加えて、行95を更に含む。
行95は、制御プログラム24a1の行65に対応する。デリミタ「:」の左側に依存先のデバイス名「Y12」が記述され、デリミタ「:」の右側に依存元のデバイス名「D100[PLC1:共有メモリ]」が記述されている。
再び図23を参照すると、依存データ作成部21a2aは、ステップS502において、第2の制御装置3Aで実行される制御プログラム24d1に、図8で示した依存データ作成処理を実行し、処理を終了する。
図25は、実施の形態2にかかる依存データの例を示す図である。依存データ24eは、行141を含む。
行141は、制御プログラム24d1の行131に対応する。デリミタ「:」の左側に依存先のデバイス名「D100[PLC1:共有メモリ]」が記述され、デリミタ「:」の右側に依存元のデバイス名「Y20」が記述されている。
第1描画部21a2bは、依存データ24c及び24eを検索対象の依存データとして、図10で示した処理を実行する。
これにより、第1描画部21a2bは、デバイス名「D100」のデバイスとデバイス名「Y20」のデバイスとの依存関係を表示することができる。
従って、ユーザは、制御プログラム24a1及び制御プログラム24d1に記述されたデバイスの依存関係を容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
第2描画部21a2cは、依存データ24c及び24eを検索対象の依存データとして、図12及び図15で示した処理を実行する。
これにより、第2描画部21a2cは、デバイス名「D100」のデバイスが選択されたら、選択されたデバイス名「D100」のデバイスと直接依存する関係にあるデバイス名「Y20」のデバイスのシンボルを表示することができ、その後、デバイス名「D100」のデバイスが再度選択されたら、再度選択されたデバイス名「D100」のデバイスと直接依存する関係にあるデバイス名「Y20」のデバイスのシンボルを消去することができる。
従って、ユーザは、確認が終わったデバイス名「Y20」のシンボルを消去することができ、表示画面を見易くすることができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
モニタリング部21a2dは、図16で示した処理を実行する。
これにより、モニタリング部21a2dは、デバイス名「D100」のデバイスのデータを第1の制御装置3から取得したら、取得したデータを、デバイス名「D100」のデバイスのシンボルの傍に表示できる。これにより、ユーザは、デバイス名「D100」のデバイスのデータを容易に把握することができる。
また、モニタリング部21a2dは、デバイス名「Y20」のデバイスのデータを第2の制御装置3Aから取得したら、取得したデータを、デバイス名「Y20」のデバイスのシンボルの傍に表示できる。
従って、ユーザは、デバイス名「Y20」のデバイスのデータを容易に把握することができる。これにより、エンジニアリングツール2は、デバッグ工数を削減でき、トラブルの早期解決を容易にすることができる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1,1A 制御システム、2 エンジニアリングツール、21 CPU、21a エンジニアリングツール部、21a2 デバッグ部、21a2a 依存データ作成部、21a2b 第1描画部、21a2c 第2描画部、21a2d モニタリング部、24 記憶部、24a,24d プロジェクトデータ、24b シンボルデータ、24c,24e 依存データ、26 表示部、3,3A 制御装置。

Claims (9)

  1. 制御装置で実行される制御プログラム及び前記制御装置のメモリ内の複数の作業領域である複数のデバイスを規定する記述がなされたデータであるデバイスメモリを含むプロジェクトデータを記憶する記憶部と、
    文字又は画像を表示する表示部と、
    前記制御プログラム内で記述された前記複数のデバイスの依存関係を表す依存データを作成して前記記憶部に格納する依存データ作成部と、
    前記依存データに基づいて、前記複数のデバイスの依存関係を表す画像を前記表示部に表示させる描画部と、
    を備えることを特徴とするデバッグ装置。
  2. 前記プロジェクトデータは、前記デバイスの名称であるデバイス名とデバイスの別名であるラベル名とを対応付けたラベル情報を更に含み、
    前記描画部は、
    前記ラベル名が付されている前記デバイスには前記ラベル名を表示し、前記ラベル名が付されていない前記デバイスには前記デバイス名を表示することを特徴とする請求項1に記載のデバッグ装置。
  3. 前記記憶部は、
    前記デバイスのデータ型並びに前記デバイスの前記デバイス名又は前記ラベル名の種別とシンボルとを対応付けたシンボルデータを更に記憶し、
    前記描画部は、
    前記シンボルデータに基づいて、前記デバイスを前記シンボルで表示することを特徴とする請求項2に記載のデバッグ装置。
  4. 前記画像の中の前記デバイスが選択されたら、前記依存データに基づいて、選択された前記デバイスに直接依存する前記デバイスを前記表示部に更に表示させる第2描画部を更に備えることを特徴とする請求項1に記載のデバッグ装置。
  5. 前記第2描画部は、
    前記画像の中の前記デバイスが再度選択されたら、再度選択された前記デバイスに直接依存する前記デバイスの画像を消去することを特徴とする請求項4に記載のデバッグ装置。
  6. 前記画像の中の前記デバイスのデータを前記制御装置から受信したら、受信したデータに基づく画像を前記表示部に表示させるモニタリング部を更に備えることを特徴とする請求項1から5のいずれか1項に記載のデバッグ装置。
  7. 前記記憶部は、複数の前記プロジェクトデータを記憶し、
    前記依存データ作成部は、複数の前記制御プログラム内で記述された前記複数のデバイスの依存関係を表す複数の前記依存データを作成して前記記憶部に格納し、
    前記描画部は、前記複数の依存データに基づいて、前記複数のデバイスの依存関係を表す画像を前記表示部に表示させることを特徴とする請求項1に記載のデバッグ装置。
  8. 制御装置で実行される制御プログラム及び前記制御装置のメモリ内の複数の作業領域である複数のデバイスを規定する記述がなされたデータであるデバイスメモリを含むプロジェクトデータを記憶する記憶部と、
    文字又は画像を表示する表示部と、
    を備える装置で実行される方法であって、
    前記制御プログラム内で記述された前記複数のデバイスの依存関係を表す依存データを作成して前記記憶部に格納する依存データ作成ステップと、
    前記依存データに基づいて、前記複数のデバイスの依存関係を表す画像を前記表示部に表示させる描画ステップと、
    を備えることを特徴とするデバッグ方法。
  9. 制御装置で実行される制御プログラム及び前記制御装置のメモリ内の複数の作業領域である複数のデバイスを規定する記述がなされたデータであるデバイスメモリを含むプロジェクトデータを記憶する記憶部と、
    文字又は画像を表示する表示部と、
    を備えるコンピュータに実行させるプログラムであって、
    前記制御プログラム内で記述された前記複数のデバイスの依存関係を表す依存データを作成して前記記憶部に格納する依存データ作成ステップと、
    前記依存データに基づいて、前記複数のデバイスの依存関係を表す画像を前記表示部に表示させる描画ステップと、
    をコンピュータに実行させることを特徴とするデバッグプログラム。
JP2016555839A 2015-06-01 2015-06-01 デバッグ装置、デバッグ方法及びデバッグプログラム Active JP6150953B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/065736 WO2016194099A1 (ja) 2015-06-01 2015-06-01 デバッグ装置、デバッグ方法及びデバッグプログラム

Publications (2)

Publication Number Publication Date
JP6150953B2 JP6150953B2 (ja) 2017-06-21
JPWO2016194099A1 true JPWO2016194099A1 (ja) 2017-06-22

Family

ID=57440951

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016555839A Active JP6150953B2 (ja) 2015-06-01 2015-06-01 デバッグ装置、デバッグ方法及びデバッグプログラム

Country Status (4)

Country Link
JP (1) JP6150953B2 (ja)
KR (1) KR101864565B1 (ja)
CN (1) CN107615191B (ja)
WO (1) WO2016194099A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6664562B1 (ja) * 2019-04-18 2020-03-13 三菱電機株式会社 デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム
KR102533869B1 (ko) * 2020-03-10 2023-05-17 엘에스일렉트릭(주) Plc 프로그램 블록 간 디바이스 간섭 방지 방법
WO2021210071A1 (ja) * 2020-04-14 2021-10-21 三菱電機株式会社 デバッグ支援プログラム、記憶媒体、デバッグ支援装置およびデバッグ支援方法
WO2022049724A1 (ja) * 2020-09-04 2022-03-10 三菱電機株式会社 プログラム作成支援プログラム、プログラム作成支援装置、およびプログラム作成支援方法
JP7049534B1 (ja) * 2021-03-02 2022-04-06 三菱電機株式会社 デバッグ支援プログラム、デバッグ支援装置、デバッグ支援方法および機械学習装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010095289A1 (ja) * 2009-02-18 2010-08-26 三菱電機株式会社 プログラム解析支援装置
JP2012256178A (ja) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
JP2013225251A (ja) * 2012-04-23 2013-10-31 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014097379A1 (ja) * 2012-12-17 2014-06-26 三菱電機株式会社 プログラム解析支援装置及び制御装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3819639B2 (ja) 1999-07-09 2006-09-13 株式会社東芝 プログラミング装置
JP2005025579A (ja) * 2003-07-04 2005-01-27 Matsushita Electric Ind Co Ltd シミュレータデバッガ
WO2010137139A1 (ja) * 2009-05-27 2010-12-02 三菱電機株式会社 シーケンスプログラムのデバッグ装置、デバッグ方法、及び、プログラム
JP5312695B2 (ja) * 2010-10-27 2013-10-09 三菱電機株式会社 ロギング設定装置、ロギング設定方法および記録媒体
US8726091B2 (en) * 2011-06-24 2014-05-13 Rockwell Automation Technologies, Inc. Troubleshooting system for industrial control programs
JP5942446B2 (ja) * 2012-02-01 2016-06-29 オムロン株式会社 サポート装置およびサポートプログラム
JP2013161376A (ja) * 2012-02-07 2013-08-19 Hakko Denki Kk プログラマブル表示器、そのプログラム、表示/制御システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010095289A1 (ja) * 2009-02-18 2010-08-26 三菱電機株式会社 プログラム解析支援装置
JP2012256178A (ja) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
JP2013225251A (ja) * 2012-04-23 2013-10-31 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
WO2014097379A1 (ja) * 2012-12-17 2014-06-26 三菱電機株式会社 プログラム解析支援装置及び制御装置

Also Published As

Publication number Publication date
CN107615191A (zh) 2018-01-19
KR101864565B1 (ko) 2018-06-04
WO2016194099A1 (ja) 2016-12-08
CN107615191B (zh) 2019-03-15
KR20180004825A (ko) 2018-01-12
JP6150953B2 (ja) 2017-06-21

Similar Documents

Publication Publication Date Title
JP6150953B2 (ja) デバッグ装置、デバッグ方法及びデバッグプログラム
US10031654B2 (en) Apparatus and method for generating industrial process graphics
US8032232B2 (en) Natively retaining project documentation in a controller
JP7414392B2 (ja) プロセスプラントにおけるグラフィカルディスプレイ構成設計検証のためのシステム及び方法
US9727442B2 (en) Engineering tool, program editing device, and program editing system
US8549422B2 (en) Graphical approach to setup data sharing between two controllers
KR102280113B1 (ko) 엔지니어링 장치, 엔지니어링 장치의 제어 방법 및 프로그램
KR101889631B1 (ko) 시퀀스 프로그램 작성 지원 장치
WO2018073868A1 (ja) デバッグ支援装置およびデバッグ支援方法
JP6926841B2 (ja) コントロールシステム、開発支援装置、及びコントロール方法
JP7063009B2 (ja) 表示装置、画面生成方法、および画面生成プログラム
CN109643096B (zh) 可编程逻辑控制器系统及存储有工程设计工具程序的可由计算机读取的存储介质
WO2015170408A1 (ja) 監視制御システム、監視端末及び監視プログラム
JP4780308B2 (ja) 制御プログラム開発支援装置及びコンピュータプログラム
US7721251B2 (en) Method and device for creating project planning for an operating device of an automation component
KR101230563B1 (ko) 디시전 테이블을 사용한 시퀀스 제어 장치, 프로그램 작성 장치, 및 인터프리터 실행 엔진
JP2022012393A (ja) ソフトウェア開発環境提供システム、ソフトウェア開発環境提供方法、及びソフトウェア開発環境提供プログラム
JP7241982B1 (ja) 画像生成プログラム、画像生成装置、プログラマブルコントローラシステム及び画像生成方法
US20220291903A1 (en) Information processing device, recording medium, and support system
JP7115506B2 (ja) ソフトウェア開発環境提供システム、ソフトウェア開発環境提供方法、及びソフトウェア開発環境提供プログラム
EP3933562A1 (en) System for providing software development environment, method for providing software development environment, and non-transitory computer readable medium
Sato et al. Latest Operaiton and Engineering Functions of Small-and Medium-Scale Monitoring and Control System,“MICREX-VieW XX”
JP2008242930A (ja) プログラマブルコントローラの高速化可視化方法
JP2010128680A (ja) パラメータ入力装置

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170310

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: 20170425

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170523

R150 Certificate of patent or registration of utility model

Ref document number: 6150953

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250