JP6664562B1 - デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム - Google Patents

デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム Download PDF

Info

Publication number
JP6664562B1
JP6664562B1 JP2019551407A JP2019551407A JP6664562B1 JP 6664562 B1 JP6664562 B1 JP 6664562B1 JP 2019551407 A JP2019551407 A JP 2019551407A JP 2019551407 A JP2019551407 A JP 2019551407A JP 6664562 B1 JP6664562 B1 JP 6664562B1
Authority
JP
Japan
Prior art keywords
result
value
factor
devices
display
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
JP2019551407A
Other languages
English (en)
Other versions
JPWO2020213129A1 (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 JP6664562B1 publication Critical patent/JP6664562B1/ja
Publication of JPWO2020213129A1 publication Critical patent/JPWO2020213129A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31705Debugging aspects, e.g. using test circuits for debugging, using dedicated debugging test circuits
    • 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
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31712Input or output aspects
    • G01R31/31713Input or output interfaces for test, e.g. test pins, buffers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318536Scan chain arrangements, e.g. connections, test bus, analog signals
    • 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/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data

Landscapes

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

Abstract

デバッグ支援装置(10)が、複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、他のデバイスの値を決定させる要因となる要因デバイスと、要因デバイスによって値が決定される結果デバイスとの対応関係に基づいて、結果デバイスを抽出するルートデバイス抽出部(12)と、結果デバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する関連デバイス検索部(13)と、結果デバイスと、結果デバイスの値と、関連デバイスと、関連デバイスの値とを対応付けしたグループの情報であるグループ情報を表示装置(101)に出力する表示制御部(16)と、を備える。

Description

本発明は、シーケンスプログラムのデバッグを支援するデバッグ支援装置、デバッグ支援方法、デバッグ支援プログラムに関する。
工場の生産設備では、一般にプログラマブルロジックコントローラ(PLC:Programmable Logic Controller)と呼ばれる産業用コントローラが用いられている。PLCで実行される制御プログラムであるシーケンスプログラムは、シーケンスプログラム作成装置を用いて作成される。
このようなシーケンスプログラムに対しては、ユーザは、作成したシーケンスプログラムが期待通りに動作しているかを検証するために、入力デバイス、出力デバイスといった種々のデバイスの値を確認するデバッグを行う。このデバッグを目的として、シーケンスプログラム作成装置の中にはデバッグ支援装置を備えたものがある。
特許文献1のシーケンスプログラム作成装置は、エミュレートによってシーケンスプログラムの検証を実行し、検証結果を表示している。そして、特許文献1のシーケンスプログラム作成装置は、ユーザが、検証結果に基づいて、異常発生の原因と考えられるデバイスを指定すると、このデバイスに関連するデバイスである関連デバイスを抽出して一覧表示している。
特開平10−49206号公報
しかしながら、上記特許文献1の技術では、関連デバイスの値が表示されないので、ユーザは、関連デバイスの値を表示させるための処理が必要となる。このため、デバッグに手間がかかるという問題があった。
本発明は、上記に鑑みてなされたものであって、デバッグにかかる手間を低減することができるデバッグ支援装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明のデバッグ支援装置は、複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、他のデバイスの値を決定させる要因となる要因デバイスと、要因デバイスによって値が決定される結果デバイスとの対応関係に基づいて、結果デバイスを抽出する結果デバイス抽出部を備える。また、本発明のデバッグ支援装置は、結果デバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する関連デバイス検索部と、結果デバイスと、結果デバイスの値と、関連デバイスと、関連デバイスの値とを対応付けしたグループの情報であるグループ情報を表示装置に出力する表示制御部と、を備える。結果デバイス抽出部は、結果デバイスのうち、シーケンスプログラムの中の全ての結果デバイスに対して要因デバイスとならないデバイスであるルートデバイスを抽出する。関連デバイス検索部は、ルートデバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する。グループ情報では、ルートデバイスと、ルートデバイスの値と、関連デバイスと、関連デバイスの値とが対応付けされている。
本発明にかかるデバッグ支援装置は、デバッグにかかる手間を低減することができるという効果を奏する。
実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置の構成を示す図 実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第1例を示す図 実施の形態にかかるデバッグ支援装置によるデータ処理の処理手順を示すフローチャート 図2に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図 実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第2例を示す図 図5に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図 実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第3例を示す図 図7に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図 実施の形態にかかるデバッグ支援装置が、指定されたグループのデバイスを抽出して表示させる処理を説明するための図 実施の形態にかかるデバッグ支援装置が、指定されたレベルのデバイスを抽出して表示させる処理を説明するための図 実施の形態にかかるデバッグ支援装置が、指定されたサブ番号のデバイスを抽出して表示させる処理を説明するための図 実施の形態にかかるデバッグ支援装置を実現するハードウエア構成を示す図
以下に、本発明の実施の形態にかかるデバッグ支援装置、デバッグ支援方法、デバッグ支援プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
図1は、実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置の構成を示す図である。プログラム作成装置100は、ラダープログラム等のシーケンスプログラムを作成、編集、およびデバッグ支援する装置であり、プログラム作成部30、デバッグ支援装置10、およびプログラム記憶部20を備えている。
プログラム作成部30は、ユーザからの指示に従ってシーケンスプログラムを作成する。プログラム作成部30は、作成したシーケンスプログラムをプログラム記憶部20に記憶させる。
デバッグ支援装置10は、シーケンスプログラムのデバッグを支援する装置であり、デバッグ対象となる入力デバイス、出力デバイスといったデバイスと、デバイスの値とを一覧表示または階層表示する。デバイスの値は、デバイスの状態を示す情報である。プログラム記憶部20は、シーケンスプログラムを記憶するメモリ等である。なお、デバッグ支援装置10は、プログラム作成装置100の外部に配置されてもよい。
ここで実施の形態で用いる用語の定義を説明する。
要因デバイス:他のデバイス(結果デバイス)の値を決定させる要因となるデバイス。
結果デバイス:他のデバイス(要因デバイス)によって値が決定されるデバイス。結果デバイスは、別の結果デバイスの要因デバイスになる場合がある。
ルートデバイス:結果デバイスのうち、シーケンスプログラムの中の全ての結果デバイスの要因デバイスとならないデバイス。すなわち、ルートデバイスは、結果デバイスのうち要因デバイスとならないデバイスである。
回路ブロック:シーケンスプログラムの構成要素。回路ブロックは、複数または単一の回路要素と、接続線とで構成される。1つの回路ブロックは、左母線と右母線の間を回路要素と1つの接続線とで繋げた範囲である。
グループ:シーケンスプログラムを構成するデバイスのうち、ルートデバイスと、当該ルートデバイスの値を決定する全ての要因デバイスとで構成される。
レベル:回路ブロックを構成するデバイス。ルートデバイスおよび要因デバイスを含む回路ブロックに対し、回路ブロック毎に1つのレベルが割り当てられる。
レベル番号:レベルの番号。レベル番号は、グループの構成に用いられた回路ブロックを特定(識別)する識別子である。ルートデバイスを含む回路ブロックからの階層が遠い回路ブロックほどレベル番号は大きくなる。
階層表示:要因デバイスと結果デバイスとの依存関係を視覚的に認識できる表示。各デバイスは、レベル番号毎に分けて階層表示される。
ルートデバイスは、グループ内で最後の結果デバイスとなるので、ルートデバイスの値は、デバッグをするうえで重要である。このため、本実施の形態のデバッグ支援装置10は、複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、要因デバイスと結果デバイスとの対応関係に基づいて、ルートデバイスを抽出し、ルートデバイスの値を決定する全ての要因デバイスを抽出する。そして、デバッグ支援装置10は、ルートデバイスと、ルートデバイスの値と、関連デバイスと、関連デバイスの値とを対応付けしたグループの情報(以下、グループ情報という)を表示装置101に出力し、表示装置101がグループ情報を表示する。すなわち、デバッグ支援装置10は、ルートデバイスに影響を与える要因デバイスを自動で抽出し、ルートデバイスの値と、要因デバイスの値とを表示させる。
プログラム作成装置100は、表示装置101、操作装置102、および図示しないPLCに接続されている。表示装置101は、液晶モニタといった、情報を表示する装置である。操作装置102は、マウス、キーボードといった、プログラム作成装置100への操作を行う装置である。
プログラム作成装置100は、パーソナルコンピュータといったコンピュータ上で動作するソフトウェアツールを用いて実現される。プログラム作成装置100は、シーケンスプログラムの作成および編集を支援する機能、設備で動作しているシーケンスプログラムの稼働状態をPLCから収集して表示させる機能、編集したシーケンスプログラムをPLCへ転送する機能などを有している。
デバッグ支援装置10は、入力部11、ルートデバイス抽出部12、関連デバイス検索部13、グループ記憶部14、階層情報作成部15、表示制御部16、グループ検索部17、レベル検索部18、および操作受付部19を備えている。
入力部11は、プログラム記憶部20から送られてくるシーケンスプログラムを受け付けて、ルートデバイス抽出部12に入力する。ルートデバイス抽出部12は、シーケンスプログラムにおける要因デバイスと結果デバイスとの対応関係に基づいて、シーケンスプログラムからルートデバイスを検索して抽出する。ルートデバイス抽出部12は、シーケンスプログラムおよびルートデバイスを関連デバイス検索部13に送る。
関連デバイス検索部13は、シーケンスプログラムから、ルートデバイスに関連するデバイスを検索して抽出する。ルートデバイスに関連するデバイスは、ルートデバイスの値を決定する要因デバイスである。以下の説明では、ルートデバイスに関連するデバイスを関連デバイスという場合がある。
関連デバイスは、ルートデバイスに対する直接的または間接的な要因デバイスである。間接的な要因デバイスは、他の要因デバイス(間接的な要因デバイスから見ると結果デバイス)を介してルートデバイスの値に影響を与える。いくつのレベル(回路ブロック)を介してルートデバイスの値に影響を与えるかが、関連デバイスの階層に対応している。
関連デバイス検索部13は、シーケンスプログラムにおける要因デバイスと結果デバイスとの対応関係に基づいて、関連デバイスにレベル番号を設定する。関連デバイス検索部13は、関連デバイスを含む回路ブロック毎にレベル番号を割り付ける。関連デバイス検索部13は、ルートデバイスを含むグループのグループ情報を作成する。関連デバイス検索部13は、関連デバイスの検索結果と、ルートデバイス抽出部12から送られてきた情報とに基づいてグループ情報を作成する。なお、シーケンスプログラムにおける要因デバイスと結果デバイスとの対応関係に基づいて、関連デバイスにレベル番号を設定する処理は、グループ記憶部14が実行してもよい。また、関連デバイスを含む回路ブロック毎にレベル番号を割り付ける処理は、グループ記憶部14が実行してもよい。また、ルートデバイスを含むグループのグループ情報を作成する処理は、グループ記憶部14が実行してもよい。なお、以下では、関連デバイス検索部13が、上述した関連デバイスにレベル番号を設定する処理、関連デバイスを含む回路ブロック毎にレベル番号を割り付ける処理、およびグループ情報を作成する処理を実行する場合について説明する。
グループ情報には、ルートデバイスと、ルートデバイスの値と、関連デバイスと、関連デバイスの値と、関連デバイスのレベル番号と、グループ名と、関連デバイスの区分と、グループ内の回路ブロックの実行順序と、が含まれている。関連デバイスの区分は、関連デバイスが、要因デバイスであるか、結果デバイスであるかの区分である。関連デバイスの区分は、関連デバイス検索部13が要因デバイスと結果デバイスとの対応関係に基づいて設定する。なお、グループ情報には、後述するサブ番号が含まれている場合がある。関連デバイス検索部13は、作成したグループ情報をグループ記憶部14に記憶させる。グループ記憶部14は、グループ情報を記憶する。
階層情報作成部15は、グループ情報に基づいて、グループの関連デバイスを階層表示するための情報を作成する。具体的には、階層情報作成部15は、グループ記憶部14で保持している、レベル番号と回路ブロックを構成するデバイスの区分とに基づいて、関連デバイス毎の表示位置と、ルートデバイスの表示位置とを示す情報を作成する。レベル番号および区分は、要因デバイスと結果デバイスとの対応関係に基づいて、設定されているので、階層情報作成部15は、要因デバイスと結果デバイスとの対応関係に基づいて、ルートデバイスの表示位置を示す情報を作成しているともいえる。
表示制御部16は、グループ記憶部14が記憶しているグループ情報に基づいて、グループの情報を表示装置101に表示させる。また、表示制御部16は、表示中の内容を、グループ検索部17およびレベル検索部18から指定された内容に変更する。
操作受付部19は、操作装置102から送られてくる操作内容に対応する情報を受け付けて、グループ検索部17またはレベル検索部18に送る。操作受付部19は、グループ検索の操作の場合は、操作内容に対応する情報をグループ検索部17に送り、レベル検索の場合は、操作内容に対応する情報をレベル検索部18に送る。グループ検索部17は、指定されたグループ(名称)のデバイスを表示させる指示を表示制御部16に送り、レベル検索部18は、指定されたレベル(レベル番号)のデバイスを表示させる指示を表示制御部16に送る。
なお、デバッグ支援装置10は、ルートデバイスの代わりに結果デバイスに基づいて、結果デバイスの値と、要因デバイスの値とを表示装置101に表示させてもよい。すなわち、デバッグ支援装置10は、結果デバイスに影響を与える要因デバイスを自動で抽出し、結果デバイスの値と要因デバイスの値とを含んだグループ情報を表示装置101に表示させてもよい。この場合、ルートデバイス抽出部12は、ルートデバイスの代わりに結果デバイスを検索して抽出する。関連デバイス検索部13は、シーケンスプログラムから、結果デバイスに関連する要因デバイスを検索して抽出する。また、この場合、グループ情報には、結果デバイスと、結果デバイスの値と、関連デバイスと、関連デバイスの値とが含まれている。また、階層情報作成部15は、関連デバイス毎の表示位置と、結果デバイスの表示位置とを示す情報を作成する。
図2は、実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第1例を示す図である。プログラム作成部30は、ユーザからの指示に従って、シーケンスプログラム150を作成する。シーケンスプログラム150は、1または複数の回路ブロックを含んでいる。図2では、シーケンスプログラム150が4つの回路ブロック、すなわち、回路ブロック121、回路ブロック122、回路ブロック123、回路ブロック124から構成されている場合を示している。シーケンスプログラム150は、上側の回路ブロックから順番に実行される。なお、以下の説明では、回路ブロック121〜124を識別する必要がない場合には、回路ブロック121〜124を回路ブロックCBという場合がある。
回路ブロックCBは、それぞれ複数の回路要素で構成されている。各回路要素は、回路記号およびデバイスで構成されている。回路記号は、接点、コイル等の回路の種別を表すシンボルであり、PLCの処理においては命令に相当する。デバイスは、回路記号(命令)の処理対象となるデータを表現したものである。
例えば、デバイスでは、入力デバイスをXデバイス、出力デバイスをYデバイス、内部リレーデバイスをMデバイス、データレジスタをDデバイス、というようにデータ種別によってデバイス記号が予め決められている。デバイスは、デバイス記号とアドレスとにより表記される。例えば、入力デバイスのアドレス0のものは「X0」と表記され、出力デバイスのアドレス0のものは「Y0」と表記される。ここでのアドレスは、PLCのメモリ空間の場所(メモリアドレス)を示している。したがって、各デバイスの値は、各デバイスのメモリアドレスに対応する領域に格納される。
回路ブロックCBは、複数のデバイスを含んでいる。具体的には、回路ブロック121は、X0デバイス110およびM0デバイス111から構成されており、回路ブロック122は、X1デバイス112およびM1デバイス113から構成されている。回路ブロック123は、X2デバイス114、M0デバイス115、M1デバイス116、およびM2デバイス117から構成されており、回路ブロック124は、X3デバイス118、M2デバイス119、およびY0デバイス120から構成されている。
図3は、実施の形態にかかるデバッグ支援装置によるデータ処理の処理手順を示すフローチャートである。ここでは、デバッグ支援装置10が、図2に示したシーケンスプログラム150に対してデータ処理を実行する場合について説明する。
入力部11は、プログラム記憶部20から送られてくるシーケンスプログラム150を受け付けて、ルートデバイス抽出部12に入力する。ルートデバイス抽出部12は、シーケンスプログラム150からルートデバイスを抽出する(ステップS10)。ルートデバイスは結果デバイスであるので、ルートデバイス抽出部12は、シーケンスプログラム150から結果デバイスを抽出し、抽出した結果デバイスの中からルートデバイスを抽出する。すなわち、ルートデバイス抽出部12は、各回路ブロックCBの中からM0デバイス111、M1デバイス113、M2デバイス117、およびY0デバイス120を結果デバイスとして抽出する。ルートデバイス抽出部12は、抽出した結果デバイスの中から、シーケンスプログラム150の中の全ての結果デバイスの要因デバイスとならないデバイスであるY0デバイス120をルートデバイスとして抽出する。
ルートデバイス抽出部12は、シーケンスプログラム150およびルートデバイスを関連デバイス検索部13に送る。なお、シーケンスプログラムによっては、複数のルートデバイスが抽出されることもある。
関連デバイス検索部13は、ルートデバイスから、ルートデバイスの値を決定する全ての要因デバイスを検索する(ステップS20)。すなわち、関連デバイス検索部13は、シーケンスプログラム150の中から、ルートデバイスであるY0デバイス120の値に影響を与える全ての要因デバイスを検索する。まず、関連デバイス検索部13は、Y0デバイス120を含む回路ブロック124の要因デバイスを確認し、M2デバイス119、およびX3デバイス118を、ルートデバイスであるY0デバイス120の要因デバイスと判断する。
さらに、要因デバイスは他の結果デバイスになっている可能性があるので、関連デバイス検索部13は、シーケンスプログラム150の中からM2デバイス119、およびX3デバイス118のそれぞれに対する要因デバイスを検索する。
M2デバイス119は、回路ブロック123内にあるM2デバイス117の結果デバイスとなっている。このため、関連デバイス検索部13は、回路ブロック123の要因デバイスであるM1デバイス116、M0デバイス115、およびX2デバイス114を、ルートデバイスであるY0デバイス120の要因デバイスとして抽出する。
回路ブロック124の要因デバイスであるX3デバイス118は、他の結果デバイスになっていないので、関連デバイス検索部13は、X3デバイス118に関連するデバイスの検索を終了する。
回路ブロック123の要因デバイスであるM1デバイス116、M0デバイス115、およびX2デバイス114が他の結果デバイスになっている可能性があるので、関連デバイス検索部13は、シーケンスプログラム150の中からM1デバイス116、M0デバイス115、およびX2デバイス114のそれぞれに対する要因デバイスを検索する。
M1デバイス116は、回路ブロック122内にあるM1デバイス113の結果デバイスとなっている。このため、関連デバイス検索部13は、回路ブロック122の要因デバイスであるX1デバイス112をルートデバイスであるY0デバイス120の要因デバイスとして抽出する。
また、M0デバイス115は、回路ブロック121内にあるM0デバイス111の結果デバイスとなっている。このため、関連デバイス検索部13は、回路ブロック121の要因デバイスであるX0デバイス110をルートデバイスであるY0デバイス120の要因デバイスとして抽出する。
回路ブロック123の要因デバイスであるX2デバイス114は、他の結果デバイスになっていないので、関連デバイス検索部13は、X2デバイス114に関連するデバイスの検索を終了する。
回路ブロック122の要因デバイスであるX1デバイス112は、他の結果デバイスになっていないので、関連デバイス検索部13は、X1デバイス112に関連するデバイスの検索を終了する。
同様に、回路ブロック121の要因デバイスであるX0デバイス110は他の結果デバイスになっていないので、関連デバイス検索部13は、X0デバイス110に関連するデバイスの検索を終了する。
このように、関連デバイス検索部13は、ルートデバイスであるY0デバイス120の要因デバイスとして、M2デバイス119、X3デバイス118、M1デバイス116、M0デバイス115、X2デバイス114、X1デバイス112、X0デバイス110を抽出する。
関連デバイス検索部13は、抽出したルートデバイスの名称および関連デバイスの名称をグループ記憶部14に送る。これにより、グループ記憶部14は、ルートデバイスの名称および関連デバイスの名称を記憶する。すなわち、グループ記憶部14は、ルートデバイス抽出部12および関連デバイス検索部13が検索して抽出したルートデバイスと、このルートデバイスの値を決定する全ての要因デバイスと、を1つのグループとして記憶する(ステップS30)。
また、関連デバイス検索部13は、抽出したルートデバイスの値、および抽出した要因デバイスの値を、グループ記憶部14に送る。グループ記憶部14は、抽出されたルートデバイスの値、および抽出された要因デバイスの値を記憶する。
また、グループ記憶部14は、グループを特定するグループ名、グループ内の回路ブロックCBを特定するレベル番号、回路ブロックCBを構成するデバイスの区分、およびグループ内の回路ブロックCBの実行順序を保持しておく。
グループ名、レベル番号、区分、および実行順序は、関連デバイス検索部13が決定し、ルートデバイスおよび関連デバイスと対応付けして、グループ記憶部14に記憶させる。
関連デバイス検索部13は、例えば、ルートデバイスの名称をグループ名とする。ルートデバイスがY0デバイス120である場合、グループ名は、「Y0」である。関連デバイス検索部13は、グループ内の結果デバイスと要因デバイスとの対応関係と、シーケンスプログラムに含まれる回路ブロックの実行順序とに基づいてレベル番号を決定する。以下の説明では、レベル番号がR(Rは自然数)のレベルをレベルRという。
関連デバイス検索部13が設定するレベルは、回路ブロックの処理順に対応する情報である。本実施の形態では、回路ブロックの処理が遅い順に小さな数値のレベルが設定される。具体的には、関連デバイス検索部13は、ルートデバイスを含む回路ブロックをレベル1とし、レベル1を構成する要因デバイスが他の結果デバイスとなる場合に、この結果デバイスを含む回路ブロックをレベル2とする。関連デバイス検索部13は、さらに、レベル2を構成する要因デバイスが他の結果デバイスとなる場合に、この結果デバイスを含む回路ブロックをレベル3とし、以降同様のルールでレベル番号を付与する。すなわち、関連デバイス検索部13は、レベルN(Nは自然数)を構成する要因デバイスが他の結果デバイスとなる場合に、この結果デバイスを含む回路ブロックをレベル(N+1)とする。
なお、ある回路ブロックを構成する複数の要因デバイスが、他の結果デバイスになっている場合、同一のレベル番号が複数存在することになる。この場合、関連デバイス検索部13は、レベル番号にサブ番号を付与する。関連デバイス検索部13は、サブ番号を、回路ブロックの実行順序に従って決定する。すなわち、関連デバイス検索部13は、回路ブロックの実行順が遅い順にサブ番号を1から順に付与し、以降1をプラスしていく。関連デバイス検索部13は、M(Mは2以上の自然数)個のサブ番号を付与する場合、実行順がL(Lは、2以上でM以下の自然)番目の回路ブロックには、(M−L+1)のサブ番号を付与する。
シーケンスプログラム150の場合、関連デバイス検索部13は、回路ブロック124のレベル番号をレベル1、回路ブロック123のレベル番号をレベル2とする。回路ブロック122および回路ブロック121はそれぞれレベル3となるので、関連デバイス検索部13は、回路ブロック122および回路ブロック121の実行順に基づいて、サブ番号を付与する。すなわち、関連デバイス検索部13は、回路ブロック122のレベル番号をレベル3−1、回路ブロック121のレベル番号をレベル3−2とする。結果として、レベル番号の降順は、シーケンスプログラム150の実行順となる。
階層情報作成部15は、グループのデバイスを階層表示するための情報を作成する(ステップS40)。階層表示するための情報は、デバイス毎の表示位置を示す情報である。階層情報作成部15は、グループ記憶部14で保持している、レベル番号と回路ブロックを構成するデバイスの区分とに基づいてデバイス毎の表示位置を示す情報を作成する。階層情報作成部15は、作成した表示位置の情報を、グループ記憶部14に記憶させる。表示制御部16は、グループ記憶部14が記憶しているグループ情報および表示位置の情報に基づいて、グループのデバイスの情報を表示装置101に表示させる(ステップS50)。具体的には、表示制御部16は、グループ記憶部14が記憶している、ルートデバイスの名称、ルートデバイスの値、要因デバイスの名称、要因デバイスの値、グループ名、レベル番号、区分、および表示位置の情報に基づいて、グループを階層表示させるための情報である階層表示情報を生成し、生成した階層表示情報を出力する。これにより、表示装置101は、階層表示情報に対応する情報を表示する。
図4は、図2に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図である。図4では、シーケンスプログラム150から抽出されたグループの階層表示情報151を示している。
階層表示情報151は、デバイスの名称と、デバイスの値(現在値)と、表示形式と、データ型とが対応付けされた情報である。階層表示情報151では、1行毎に、デバイスの名称に対応する現在値と、表示形式と、データ型とが表示される。
階層表示情報151における表示形式は、デバイスの値を2進数で表示するか10進数で表示するか16進数で表示するかを示し、データ型は、デバイスの値をビット単位とするか、ワード(16ビット)単位とするかを示す。デバイスの値を2進数で表示する場合、ビットデバイスのオンは「TRUE」で表示され、ビットデバイスのオフは「FALSE」で表示される。デバイスの値を10進数で表示する場合、ビットデバイスのオンは「1」で表示され、ビットデバイスのオフは「0」で表示される。階層表示情報151における名称の列が、階層表示のイメージとなる。
階層表示情報151では、デバイスが属するレベルのレベル番号毎に列を揃えてデバイスの名称が表示される。ここでは、左端の列がレベル1のデバイスであり、左から2番目の列がレベル2のデバイスであり、左から3番目の列がレベル3のデバイスであり、左から4番目の列がレベル4のデバイスである場合を示している。
階層表示情報151では、1行目にルートデバイス(Y0デバイス120)が表示され、Y0デバイス120に対するレベル2の1つ目の要因デバイス(M2デバイス119)が2行目に表示される。このM2デバイス119に対するレベル3の1つ目の要因デバイス(M1デバイス113)が3行目に表示され、M1デバイス113に対するレベル4の要因デバイス(X1デバイス112)が4行目に表示される。
また、M2デバイス119に対するレベル3の2つ目の要因デバイス(M0デバイス115)が5行目に表示され、M0デバイス115に対するレベル4の要因デバイス(X0デバイス110)が6行目に表示される。また、M2デバイス119に対するレベル3の3つ目の要因デバイス(X2デバイス114)が7行目に表示される。また、Y0デバイス120に対するレベル2の2つ目の要因デバイス(X3デバイス118)が8行目に表示される。
階層表示の際には、レベルP(Pは2以上の自然数)の列でQ(Qは2以上の自然数)行目に表示されているデバイスを結果デバイスとした場合に、レベル(P−1)の列のQ行目よりも前の直近に表示されているデバイスが要因デバイスとなるよう各デバイスが表示される。例えば、レベル3の列で3行目に表示されているM1デバイス113を結果デバイスとした場合、レベル2の列で、2行目以前の直近に表示されているデバイスであるM2デバイス119が要因デバイスである。このように、階層表示情報151では、要因デバイスと結果デバイスとの対応関係が分かるように、各デバイスがツリー型で表示される。
ここで、階層表示のイメージを2つのシーケンスプログラム例を用いて説明する。図5は、実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第2例を示す図である。図6は、図5に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図である。図6では、図5のシーケンスプログラム160に対応する階層表示情報161を、表示制御部16が表示装置101に表示させた場合の階層表示のイメージ図を示している。
図5に示すシーケンスプログラム160は、1つの回路ブロックで構成され、回路ブロックはX0デバイスとY0デバイスとで構成されている。デバイスの依存関係は、X0デバイスが要因デバイスであり、Y0デバイスが結果デバイスである。Y0デバイスは、ルートデバイスであり、ルートデバイスの値を決定する全ての要因デバイスはデバイスX0となる。レベル番号は、ルートデバイスを含む回路ブロックをレベル1とするので、レベル1となる。
シーケンスプログラム160に基づいて生成された階層表示情報が、図6に示した階層表示情報161である。階層表示情報161における名称の列が、階層表示のイメージとなる。
図7は、実施の形態にかかるデバッグ支援装置を備えたプログラム作成装置が作成するシーケンスプログラムの第3例を示す図である。図8は、図7に示したシーケンスプログラムから抽出されたグループの階層表示情報を示す図である。図8では、図7のシーケンスプログラム170に対応する階層表示情報171を、表示制御部16が表示装置101に表示させた場合の階層表示のイメージ図を示している。
図7に示すシーケンスプログラム170は、2つの回路ブロック、すなわち回路ブロック130および回路ブロック131で構成されている。回路ブロック130は、X0デバイスとM0デバイスとで構成されている。デバイスの依存関係は、X0デバイスが要因デバイスであり、M0デバイスが結果デバイスである。回路ブロック131は、M0デバイスとY0デバイスとで構成されている。デバイスの依存関係は、M0デバイスが要因デバイスであり、Y0デバイスが結果デバイスである。
Y0デバイスは、ルートデバイスであり、ルートデバイスの値を決定する全ての要因デバイスは、回路ブロック131の要因デバイスであるM0デバイスと、M0デバイスの要因デバイスである、回路ブロック130のX0デバイスとである。
Y0デバイスはルートデバイスであるので、回路ブロック131がレベル1であり、回路ブロック130がレベル2となる。これは、回路ブロック130の次に回路ブロック131が実行されるとともに、M0デバイスは、回路ブロック131の要因デバイスであり且つ回路ブロック130の結果デバイスだからである。
シーケンスプログラム170に基づいて生成された階層表示情報が、図8に示した階層表示情報171である。階層表示情報171における名称の列が、階層表示のイメージとなる。
表示制御部16は、図4、図6、および図8に示したような階層表示情報151,161,171を表示装置101に表示させる。
表示装置101が階層表示情報151,161,171等を表示している状態で、ユーザによって、操作装置102に操作が行われると、操作装置102は、操作内容に対応する情報を操作受付部19に送る。これにより、操作受付部19は、操作内容に対応する情報を受け付けて、グループ検索部17またはレベル検索部18に操作内容に対応する情報を送る。操作受付部19は、グループを指定する操作を受け付けると、グループを指定する情報をグループ検索部17に送る。また、操作受付部19は、レベルを指定する操作を受け付けると、レベルを指定する情報をレベル検索部18に送る。
グループ検索部17は、グループを指定した情報(名称)を受信すると、指定されたグループのデバイスを検索して抽出表示する指示を表示制御部16に送る。また、レベル検索部18は、レベルを指定した情報(レベル番号)を受信すると、指定されたレベルのデバイスを検索して抽出表示する指示を表示制御部16に送る。
表示制御部16は、グループ検索部17から送られてくる指示に基づいて、指定されたグループのデバイスを抽出して表示装置101に表示させる。また、表示制御部16は、グループ検索部17およびレベル検索部18から送られてくる指示に基づいて、指定されたグループの指定されたレベルのデバイスを抽出して表示装置101に表示させる。
ここで、指定されたグループのデバイスを抽出して表示させる処理、および指定されたグループの指定されたレベルのデバイスを抽出して表示させる処理について説明する。図9は、実施の形態にかかるデバッグ支援装置が、指定されたグループのデバイスを抽出して表示させる処理を説明するための図である。図9では、デバイスの値を10進数で表示するにあたり、デバイスの値にプラスまたはマイナスの符号を付す場合を示している。
図9に示す上段の情報は、表示装置101が表示している階層表示情報180である。この階層表示情報180は、2つのグループ(Y0とY1)を含んでいるものとする。階層表示情報180には、2つのグループの何れかを指定するためのプルダウンボタン(ドロップダウンボタン、またはアローボタンともいう)152が配置されている。このプルダウンボタン152がクリックされると、「Y0」および「Y1」がプルダウンリストとして表示される。「Y0」または「Y1」がユーザによって指定されると、操作受付部19は、指定された名称をグループ検索部17に送る。ここでは、「Y0」がユーザによって指定された場合について説明する。
操作受付部19は、「Y0」を指定する操作を受け付けると、「Y0」を指定した情報をグループ検索部17に送る。グループ検索部17は、「Y0」のグループのデバイスを表示させる指示を表示制御部16に送る。表示制御部16は、グループ検索部17から送られてくる、「Y0」のグループのデバイスを表示させる指示に基づいて、表示中のデバイスから、指定された「Y0」のグループのデバイスを抽出して表示装置101に表示させる。図9に示す下段の情報が、抽出された「Y0」のグループの階層表示情報181である。このように、ユーザが指定したグループの階層表示情報181を表示させることで、ユーザは、所望のグループのデバイスに対し容易にデバッグを行うことが可能となる。
図10は、実施の形態にかかるデバッグ支援装置が、指定されたレベルのデバイスを抽出して表示させる処理を説明するための図である。図10に示す上段の情報は、表示装置101が表示している階層表示情報190である。この階層表示情報190は、3つのグループ(レベル1〜3)を含んでいるものとする。階層表示情報190は、図9に示した階層表示情報181に対して、3つのレベルの何れかを指定するためのプルダウンボタン153を配置したものである。このプルダウンボタン153がクリックされると、「レベル1」、「レベル2」、および「レベル3」がプルダウンリストとして表示される。「レベル1」から「レベル3」の何れかがユーザによって指定されると、操作受付部19は、指定されたレベルをレベル検索部18に送る。ここでは、「レベル1」がユーザによって指定された場合について説明する。
操作受付部19は、「レベル1」を指定する操作を受け付けると、「レベル1」を指定した情報をレベル検索部18に送る。レベル検索部18は、「レベル1」のデバイスを表示させる指示を表示制御部16に送る。表示制御部16は、「レベル1」のデバイスを表示させる指示に基づいて、表示中の「Y0」のグループのデバイスの中から、「レベル1」のデバイスを抽出して表示装置101に表示させる。図10に示す下段の情報が、抽出された「Y0」のグループの「レベル1」の階層表示情報191である。このように、ユーザが指定したレベルの階層表示情報191を表示させることで、ユーザは、所望のレベルのデバイスに対し容易にデバッグを行うことが可能となる。
つぎに、グループ、レベル、およびサブ番号が指定された場合に、指定された、グループ、レベル、およびサブ番号に対応するデバイスを抽出して表示させる処理について説明する。
図11は、実施の形態にかかるデバッグ支援装置が、指定されたサブ番号のデバイスを抽出して表示させる処理を説明するための図である。図11に示す上段の情報は、表示装置101が表示している階層表示情報195である。この階層表示情報195では、レベル3が、2つのサブ番号(レベル3−1,3−2)を含んでいるものとする。階層表示情報195は、図10に示した階層表示情報190に対して、2つのサブ番号の何れかを指定するためのプルダウンリスト154を表示させたものである。
表示制御部16は、ユーザによってプルダウンボタン153がクリックされ、レベル3が指定されると、「レベル3−1」および「レベル3−2」をプルダウンリストとして表示させる。「レベル3−1」または「レベル3−2」の何れかがユーザによって指定されると、操作受付部19は、指定されたサブ番号をレベル検索部18に送る。ここでは、「レベル3−1」がユーザによって指定された場合について説明する。
操作受付部19は、「レベル3−1」を指定する操作を受け付けると、指定された「レベル3−1」のデバイスを表示させる指示を表示制御部16に送る。表示制御部16は、「レベル3−1」のデバイスを表示させる指示に基づいて、表示中の「Y0」のグループのデバイスの中から、「レベル3−1」のデバイスを抽出して表示装置101に表示させる。図11に示す下段の情報が、抽出された「Y0」のグループの「レベル3−1」の階層表示情報196である。このように、ユーザが指定したサブ番号の階層表示情報196を表示させることで、ユーザは、所望のサブ番号のデバイスに対して容易にデバッグを行うことが可能となる。
このように、デバッグ支援装置10は、シーケンスプログラムを構成する複数のデバイスを、ルートデバイスと、当該ルートデバイスの値を決定する関連デバイスと、を含むグループに分けてグループ毎に抽出している。そして、デバッグ支援装置10は、抽出したグループに含まれる全てのデバイスの値をグループ記憶部14に自動で登録しているので、デバッグ対象のデバイスを登録するまでの手間が無くなる。すなわち、ユーザがデバッグ対象のデバイスを抽出して登録する必要がなく、デバッグ支援装置10がデバッグ対象のデバイスを自動登録するので、シーケンスプログラムのプログラムサイズが大きい場合であっても、デバイスの登録を短時間で実行することが可能となる。この結果、デバッグに要する時間を低減することが可能となる。
シーケンスプログラムは、PLCに接続された制御対象機器を制御する際に用いられるプログラムである。このため、PLCは、シーケンスプログラムに従った出力信号を制御対象機器に出力することによって、制御対象機器を制御する。PLCが出力する出力信号は、PLCが備える出力端子から出力される。この出力端子に対応するデバイスが、出力デバイスであり、シーケンスプログラムの重要なデバイスとなる。このため、ルートデバイス抽出部12は、シーケンスプログラムの全てのルートデバイスのうち、確認しなければならない必要最小限のデバイスを出力デバイスに限定してもよい。すなわち、ルートデバイス抽出部12は、抽出対象のルートデバイスを出力デバイスとしてもよい。これにより、デバッグ対象とするデバイスの数を減らすことができるので、デバッグに要する時間を低減することが可能となる。
また、デバッグ支援装置10は、グループを階層表示することによって、グループ内の結果デバイスと要因デバイスとの依存関係をユーザにビジブルに表示できるので、ユーザは、デバイスの値のみの確認だけでなくデバイス間の依存関係を含めた観点でデバッグを行うことが可能となる。また、デバイスが階層表示されるので、登録されたデバイスが多くなっても、ユーザは、デバッグしたいデバイスを容易に探すことができる。したがって、デバッグに要する時間を低減することが可能となる。
また、デバッグ支援装置10は、グループを単位としてデバイスを検索して表示させることができるので、ユーザは、デバイスを探し出す手間が軽減し、デバッグに要する時間を低減することが可能となる。また、ユーザは、表示されたグループに着目することで視認性が向上するので、デバイスの確認誤りの防止に繋がる。
また、デバッグ支援装置10は、レベルを単位としてデバイスを検索して表示させることができるので、ユーザは、表示されたレベルに着目することで視認性が向上し、デバイスの確認誤りの防止に繋がる。
また、ユーザは、レベル番号に対応する列に表示されているデバイス(レベル毎にツリー表示されたデバイス)に基づいて、シーケンスプログラムの実行順序を認識することができるので、シーケンスプログラムに何らかの問題があった場合に、不良個所を特定するための手助けとなる。さらに、ユーザは、全てのレベル番号をデバッグすることで、グループの回路ブロックを漏れなくデバッグすることができるので、確認漏れの防止に繋がる。
ここで、デバッグ支援装置10のハードウエア構成について説明する。図12は、実施の形態にかかるデバッグ支援装置を実現するハードウエア構成を示す図である。デバッグ支援装置10は、プロセッサ301、メモリ302、出力装置303、およびインターフェース回路304で実現される。プロセッサ301は、メモリ302、出力装置303、およびインターフェース回路304を制御する。インターフェース回路304は、デバッグ支援装置10の外部装置(プログラム記憶部20、操作装置102等)との間で通信を行う。メモリ302は、情報を記憶し、出力装置303は、表示装置101に情報を出力する。
プロセッサ301の例は、CPU(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSP(Digital Signal Processor)ともいう)またはシステムLSI(Large Scale Integration)である。メモリ302の例は、RAM(Random Access Memory)またはROM(Read Only Memory)である。
入力部11および操作受付部19は、インターフェース回路304を用いて実現される。表示制御部16は、出力装置303を用いて実現される。ルートデバイス抽出部12、関連デバイス検索部13、階層情報作成部15、表示制御部16、グループ検索部17、およびレベル検索部18は、プロセッサ301を用いて実現される。グループ記憶部14は、メモリ302を用いて実現される。
デバッグ支援装置10は、プロセッサ301が、メモリ302で記憶されているデバッグ支援装置10の動作を実行するためのデバッグ支援プログラムを読み出して実行することにより実現される。また、このデバッグ支援プログラムは、デバッグ支援装置10の手順または方法をコンピュータに実行させるものであるともいえる。メモリ302は、プロセッサ301が各種処理を実行する際の一時メモリにも使用される。
プロセッサ301が実行するデバッグ支援プログラムは、コンピュータで実行可能な、データ処理を行うための複数の命令を含むコンピュータ読取り可能かつ非遷移的な(non-transitory)記録媒体を有するコンピュータプログラムプロダクトであってもよい。プロセッサ301が実行するデバッグ支援プログラムは、複数の命令がデータ処理を行うことをコンピュータに実行させる。
また、デバッグ支援装置10を専用のハードウエアで実現してもよい。また、デバッグ支援装置10の機能について、一部を専用のハードウエアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
このように、実施の形態では、シーケンスプログラムからルートデバイスを抽出し、ルートデバイスの値を決定する関連デバイスを抽出し、ルートデバイスと、ルートデバイスの値と、関連デバイスと、関連デバイスの値とを対応付けして表示させている。これにより、ユーザは、ルートデバイスと関連デバイスとの関係を確認しやすくなるので、デバッグにかかる手間を低減することが可能となる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
10 デバッグ支援装置、11 入力部、12 ルートデバイス抽出部、13 関連デバイス検索部、14 グループ記憶部、15 階層情報作成部、16 表示制御部、17 グループ検索部、18 レベル検索部、19 操作受付部、20 プログラム記憶部、30 プログラム作成部、100 プログラム作成装置、101 表示装置、102 操作装置、110 X0デバイス、111,115 M0デバイス、112 X1デバイス、113,116 M1デバイス、114 X2デバイス、117,119 M2デバイス、118 X3デバイス、120 Y0デバイス、121〜124,130,131 回路ブロック、150,160,170 シーケンスプログラム、151,161,171,180,181,190,191,195,196 階層表示情報、152,153 プルダウンボタン、154 プルダウンリスト、301 プロセッサ、302 メモリ、303 出力装置、304 インターフェース回路、CB 回路ブロック。

Claims (8)

  1. 複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、他のデバイスの値を決定させる要因となる要因デバイスと、前記要因デバイスによって値が決定される結果デバイスとの対応関係に基づいて、前記結果デバイスを抽出する結果デバイス抽出部と、
    前記結果デバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する関連デバイス検索部と、
    前記結果デバイスと、前記結果デバイスの値と、前記関連デバイスと、前記関連デバイスの値とを対応付けしたグループの情報であるグループ情報を表示装置に出力する表示制御部と、
    を備え
    前記結果デバイス抽出部は、前記結果デバイスのうち、前記シーケンスプログラムの中の全ての結果デバイスに対して要因デバイスとならないデバイスであるルートデバイスを抽出し、
    前記関連デバイス検索部は、前記ルートデバイスの値を決定する全ての要因デバイスを検索し、前記関連デバイスとして抽出し、
    前記グループ情報では、前記ルートデバイスと、前記ルートデバイスの値と、前記関連デバイスと、前記関連デバイスの値とが対応付けされていることを特徴とするデバッグ支援装置。
  2. 前記対応関係および前記グループ情報に基づいて、前記結果デバイスおよび前記関連デバイスを階層表示するための情報を作成する階層情報作成部をさらに備え、
    前記表示制御部は、前記階層表示するための情報を前記表示装置に出力する、
    ことを特徴とする請求項1に記載のデバッグ支援装置。
  3. 前記表示制御部は、前記表示装置に表示させている前記結果デバイスおよび前記関連デバイスを、ユーザからの指示に従って、グループ単位で検索して表示する、
    ことを特徴とする請求項1または2に記載のデバッグ支援装置。
  4. 前記関連デバイス検索部は、前記グループの構成に用いられた各回路ブロックに、前記回路ブロックの処理順に対応する情報であるレベルを設定し、
    前記表示制御部は、前記表示装置に表示させている前記結果デバイスおよび前記関連デバイスを、ユーザからの指示に従って、レベル単位で検索して表示する、
    ことを特徴とする請求項1から3の何れか1つに記載のデバッグ支援装置。
  5. 前記結果デバイス抽出部は、抽出対象のルートデバイスを出力デバイスとする、
    ことを特徴とする請求項に記載のデバッグ支援装置。
  6. 前記階層情報作成部は、出力デバイスに処理が近い要因デバイスほど上方に位置するよう、前記結果デバイスおよび前記関連デバイスを階層表示する、
    ことを特徴とする請求項に記載のデバッグ支援装置。
  7. 複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、他のデバイスの値を決定させる要因となる要因デバイスと、前記要因デバイスによって値が決定される結果デバイスとの対応関係に基づいて、前記結果デバイスを抽出する結果デバイス抽出ステップと、
    前記結果デバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する関連デバイス検索ステップと、
    前記結果デバイスと、前記結果デバイスの値と、前記関連デバイスと、前記関連デバイスの値とを対応付けしたグループの情報であるグループ情報を表示装置に出力する表示制御ステップと、
    前記表示装置が、前記グループ情報を表示する表示ステップと、
    を含み、
    前記結果デバイス抽出ステップでは、前記結果デバイスのうち、前記シーケンスプログラムの中の全ての結果デバイスに対して要因デバイスとならないデバイスであるルートデバイスを抽出し、
    前記関連デバイス検索ステップでは、前記ルートデバイスの値を決定する全ての要因デバイスを検索し、前記関連デバイスとして抽出し、
    前記グループ情報では、前記ルートデバイスと、前記ルートデバイスの値と、前記関連デバイスと、前記関連デバイスの値とが対応付けされていることを特徴とするデバッグ支援方法。
  8. 複数のデバイスを含んだ回路ブロックを有するシーケンスプログラムから、他のデバイスの値を決定させる要因となる要因デバイスと、前記要因デバイスによって値が決定される結果デバイスとの対応関係に基づいて、前記結果デバイスを抽出する結果デバイス抽出ステップと、
    前記結果デバイスの値を決定する全ての要因デバイスを検索し、関連デバイスとして抽出する関連デバイス検索ステップと、
    前記結果デバイスと、前記結果デバイスの値と、前記関連デバイスと、前記関連デバイスの値とを対応付けしたグループの情報であるグループ情報を表示装置に出力する表示制御ステップと、
    をコンピュータに実行させ
    前記結果デバイス抽出ステップでは、前記結果デバイスのうち、前記シーケンスプログラムの中の全ての結果デバイスに対して要因デバイスとならないデバイスであるルートデバイスを抽出し、
    前記関連デバイス検索ステップでは、前記ルートデバイスの値を決定する全ての要因デバイスを検索し、前記関連デバイスとして抽出し、
    前記グループ情報では、前記ルートデバイスと、前記ルートデバイスの値と、前記関連デバイスと、前記関連デバイスの値とが対応付けされていることを特徴とするデバッグ支援プログラム。
JP2019551407A 2019-04-18 2019-04-18 デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム Active JP6664562B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/016661 WO2020213129A1 (ja) 2019-04-18 2019-04-18 デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム

Publications (2)

Publication Number Publication Date
JP6664562B1 true JP6664562B1 (ja) 2020-03-13
JPWO2020213129A1 JPWO2020213129A1 (ja) 2021-04-30

Family

ID=70000319

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019551407A Active JP6664562B1 (ja) 2019-04-18 2019-04-18 デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム

Country Status (4)

Country Link
US (1) US11300612B2 (ja)
JP (1) JP6664562B1 (ja)
CN (1) CN113711142B (ja)
WO (1) WO2020213129A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6854996B1 (ja) * 2020-09-04 2021-04-07 三菱電機株式会社 プログラム作成支援プログラム、プログラム作成支援装置、およびプログラム作成支援方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012256178A (ja) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
JP5138090B2 (ja) * 2009-02-18 2013-02-06 三菱電機株式会社 プログラム解析支援装置
JP5362148B1 (ja) * 2012-12-17 2013-12-11 三菱電機株式会社 プログラム解析支援装置及び制御装置
JP6150953B2 (ja) * 2015-06-01 2017-06-21 三菱電機株式会社 デバッグ装置、デバッグ方法及びデバッグプログラム
US20180314225A1 (en) * 2015-06-24 2018-11-01 Siemens Aktiengesellschaft Control contextualization and reasoning about control

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5153620A (ja) * 1974-11-06 1976-05-12 Unyusho Kowan Gijutsu Kenkyush Ryutaiatsuryokunyoru shinshukuhoosu
JPS5293791A (en) * 1976-02-02 1977-08-06 Sangyo Kagaku Kenkyu Kyokai Preparation of acylamides
JPH1049206A (ja) 1996-07-31 1998-02-20 Kobe Steel Ltd シーケンスプログラム作成装置
CN101441645B (zh) * 2007-11-23 2016-09-28 财团法人工业技术研究院 技术数据分析的系统与方法
CN104204975B (zh) * 2012-03-26 2016-10-12 三菱电机株式会社 定序程序调试辅助装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5138090B2 (ja) * 2009-02-18 2013-02-06 三菱電機株式会社 プログラム解析支援装置
JP2012256178A (ja) * 2011-06-08 2012-12-27 Mitsubishi Electric Corp 情報処理装置及び情報処理方法及びプログラム
JP5362148B1 (ja) * 2012-12-17 2013-12-11 三菱電機株式会社 プログラム解析支援装置及び制御装置
JP6150953B2 (ja) * 2015-06-01 2017-06-21 三菱電機株式会社 デバッグ装置、デバッグ方法及びデバッグプログラム
US20180314225A1 (en) * 2015-06-24 2018-11-01 Siemens Aktiengesellschaft Control contextualization and reasoning about control

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6854996B1 (ja) * 2020-09-04 2021-04-07 三菱電機株式会社 プログラム作成支援プログラム、プログラム作成支援装置、およびプログラム作成支援方法
WO2022049724A1 (ja) * 2020-09-04 2022-03-10 三菱電機株式会社 プログラム作成支援プログラム、プログラム作成支援装置、およびプログラム作成支援方法
US12014156B2 (en) 2020-09-04 2024-06-18 Mitsubishi Electric Corporation Program creation support program to provide log data on device values and dependency relationships between devices

Also Published As

Publication number Publication date
CN113711142B (zh) 2022-09-09
US11300612B2 (en) 2022-04-12
US20220043060A1 (en) 2022-02-10
JPWO2020213129A1 (ja) 2021-04-30
WO2020213129A1 (ja) 2020-10-22
CN113711142A (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
US9626160B2 (en) Sequence-program-component creation program and sequence-program-component creation device
US10769049B2 (en) Debugging support apparatus and debugging support method
EP1942386A1 (en) Simulation data creation supporting device
EP3540593B1 (en) Program development assist system, program development assist method, and program development assist program
US10203850B2 (en) Data editing apparatus, data editing method, and data editing program
CN105095497A (zh) 基于网页模板生成网页的方法及装置
US9811071B2 (en) System construction support apparatus
JP6664562B1 (ja) デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム
US20230129280A1 (en) Computer readable storage medium, program creation support apparatus, and program creation support method
JPWO2014162575A1 (ja) エンジニアリングツールおよびプログラマブルロジックコントローラ
JPS62226231A (ja) プロセツサ
JP5936769B2 (ja) プログラム編集装置、プログラム編集方法およびプログラム編集プログラム
JP2012168900A (ja) プログラミング装置、プログラム
JP6665576B2 (ja) 支援装置、支援方法及びプログラム
US5453936A (en) Computer aided hardware design support system and method for processing manual and automatic functional element blocks
JP6833152B2 (ja) 故障支援装置、故障支援プログラム及び故障支援方法
JP6618642B1 (ja) プログラム実行支援装置、プログラム実行支援方法、およびプログラム実行支援プログラム
JP2007047971A (ja) 個別プログラム生成装置及び方法
US20190362660A1 (en) Engineering tool
JP3164730B2 (ja) 表形式回路記述生成装置とその方法
US20170371704A1 (en) Program information generating system, method, and program product
JPH03123974A (ja) Cadの信号線表示方法
CN114637778A (zh) 一种可视化数据验收方法及系统
JP2532621B2 (ja) ディジタル処理装置
JPS61127042A (ja) 論理シミユレ−シヨンのテストカバレ−ジ方式

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190917

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190917

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190917

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20191016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200218

R150 Certificate of patent or registration of utility model

Ref document number: 6664562

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