JPWO2018051441A1 - ラダープログラム編集支援装置およびラダープログラムの編集方法 - Google Patents

ラダープログラム編集支援装置およびラダープログラムの編集方法 Download PDF

Info

Publication number
JPWO2018051441A1
JPWO2018051441A1 JP2018501386A JP2018501386A JPWO2018051441A1 JP WO2018051441 A1 JPWO2018051441 A1 JP WO2018051441A1 JP 2018501386 A JP2018501386 A JP 2018501386A JP 2018501386 A JP2018501386 A JP 2018501386A JP WO2018051441 A1 JPWO2018051441 A1 JP WO2018051441A1
Authority
JP
Japan
Prior art keywords
ladder program
program
editing
circuit element
ladder
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
JP2018501386A
Other languages
English (en)
Other versions
JP6351899B1 (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 JP6351899B1 publication Critical patent/JP6351899B1/ja
Publication of JPWO2018051441A1 publication Critical patent/JPWO2018051441A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • 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
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • 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
    • G05B19/056Programming the PLC
    • 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/10Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches
    • G05B19/102Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for input of programme steps, i.e. setting up sequence
    • 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/10Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches
    • G05B19/102Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for input of programme steps, i.e. setting up sequence
    • G05B19/104Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for input of programme steps, i.e. setting up sequence characterised by physical layout of switches; switches co-operating with display; use of switches in a special way
    • 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/10Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches
    • G05B19/106Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for selecting a programme, variable or parameter
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape

Abstract

ラダープログラム編集支援装置(100)は、ラダープログラムにおける、プラス母線とマイナス母線との間の領域にシンボルで表示されてラダープログラムを構成する複数の回路要素を表示部(20)に表示させてラダープログラムを編集する。ラダープログラム編集支援装置(100)は、ラダープログラムを表示する表示部(20)と、表示部(20)に表示されたラダープログラムのうち編集対象となる選択範囲を選択し、選択範囲のラダープログラムに含まれる回路要素の識別情報を、予め設定された表示順序に従って表示部(20)においてリスト形式で表示する編集制御部(33)とを備える。

Description

本発明は、ラダープログラムの編集に用いられるラダープログラム編集支援装置およびラダープログラムの編集方法に関する。
一般に、各種設備の制御には、プログラマブルロジックコントローラ(Programmable Logic Controller:PLC)と呼ばれる産業用コントローラが用いられている。産業用コントローラで実行される制御プログラムに用いられる代表的なプログラム言語にラダー言語がある。通常、ラダー言語で記述されたプログラムは、プログラム編集支援装置を用いて作成され。以下、ラダー言語で記述されたプログラムをラダープログラムと呼ぶ。
PLCに接続される制御対象機器は、既存装置が流用される場合、および既存装置が拡張されて使用される場合が多い。このため、大部分は既存のラダープログラムと同一であるが、部分的に既存のラダープログラムと差異があるラダープログラムが作成される場合が多い。したがって、プログラムを作成する際には、既存のラダープログラムの一部を機能単位で部品化して再利用することが多く行われる。
ラダープログラムの部品化および再利用は、一般的に国際電気標準会議(International Electrotechnical Commission:IEC)61131規格で定義されたファンクションブロックの仕組みを用いて実現されている。ファンクションブロックにより、ラダープログラムを構成する情報のカプセル化が実現され、ラダープログラムを部品として再利用することが可能になっている。
しかしながら、ファンクションブロックは、部品化するプログラムを構成する入出力機器に対応するシンボルを変数として記述する。そして、この変数に対して実際に使用する入出力機器を結びつけることでプログラムの再利用を行う。このため、ファンクションブロックの挿入個所には、変数と入出力機器を結びつけるための入力手段が必要となり、部品化を行うプログラム内の入出力機器の数だけ入力個所を設ける必要がある。
一般的にファンクションブロックの挿入個所を1つの箱として表現した場合、入力は箱の左側に、出力は箱の右側に入出力機器の数だけ縦方向に配置される。入出力機器の数が多い場合は、挿入個所の箱が縦に長くなり、プログラムの可読性を悪化させるとともに変数と入出力機器を結びつける操作が困難となり、作業効率が悪くなり、ラダープログラムの編集効率が悪くなる。
このようなファンクションブロックを用いる技術として、特許文献1では、ファンクションブロック内のプログラムを真理値表で表し、プログラムの修正と変更を容易にする方法が提案されている。
特開2000−194406号公報
しかしながら、上記特許文献1においては、作成されたファンクションブロックを対象とした、ファンクションブロック内のプログラムの修正を容易にする技術は開示されているが、上述したようなファンクションブロックの構造に起因したラダープログラムの編集効率の問題を解消しうる技術については記載されておらず、上記問題を解消できない。
本発明は、上記に鑑みてなされたものであって、ラダープログラムの編集効率を向上させることが可能なラダープログラム編集支援装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかるラダープログラム編集支援装置は、ラダープログラムにおける、プラス母線とマイナス母線との間の領域にシンボルで表示されてラダープログラムを構成する複数の回路要素を表示部に表示させてラダープログラムを編集する。ラダープログラム編集支援装置は、ラダープログラムを表示する表示部と、表示部に表示されたラダープログラムのうち編集対象となる選択範囲を選択し、選択範囲のラダープログラムに含まれる回路要素の識別情報を、予め設定された表示順序に従って表示部においてリスト形式で表示する編集制御部とを備える。
本発明にかかるラダープログラム編集支援装置は、ラダープログラムの編集効率を向上させることが可能なラダープログラム編集支援装置を得ることができる、という効果を奏する。
本発明の実施の形態にかかるラダープログラム編集支援装置の構成を示すブロック図 本発明の実施の形態にかかるラダープログラム編集支援装置における表示部の画面の一例を示す模式図 本発明の実施の形態にかかる処理回路のハードウェア構成の一例を示す図 本発明の実施の形態にかかるプログラム編集支援装置においてラダープログラムの部品化に使用される部品化元のラダープログラムの例を示す図 本発明の実施の形態にかかるラダープログラム編集支援装置におけるプログラム部品の生成処理の流れを示すフローチャート 本発明の実施の形態にかかるラダープログラム編集支援装置において選択された選択範囲に含まれている回路要素を示す図 位置情報の表示方法の一例を示す模式図 本発明の実施の形態にかかるプログラム編集支援装置におけるプログラム部品生成処理の流れを示すフローチャート 本発明の実施の形態にかかるプログラム部品生成部がプログラム部品リストにリスト形式で記憶させるプログラム部品の情報を示す図 本発明の実施の形態にかかるプログラム部品が登録されたプログラム部品リストの一例を示す図 本発明の実施の形態において選択範囲の部品化が完了した状態のラダープログラムを示す図 本発明の実施の形態において選択範囲の部品化を行う前の状態のラダープログラムを示す図 本発明の実施の形態において選択されたプログラム部品内の回路要素の情報が回路要素編集領域にリスト形式で表示され、選択されたプログラム部品内のラダープログラムが部品化前プログラム表示領域に省略表示された状態の一例を示す図 本発明の実施の形態においてプログラム部品のラダープログラムへの配置が完了した状態のプログラム編集領域の画面表示の一例を示す図 本発明の実施の形態においてプログラム部品が選択された状態のプログラム編集領域の画面表示の一例を示す図 本発明の実施の形態においてプログラム部品の作成が完了した状態の回路要素編集領域および部品化前プログラム表示領域の画面表示の一例を示す図 本発明の実施の形態にかかるラダープログラム編集支援装置における仮想回路要素条件を決定する処理の流れを示すフローチャート 本発明の実施の形態においてプログラム部品が部品化された状態でPLCに書き込まれたラダープログラムの動作確認においてプログラム部品の回路要素の条件が成立した状態のプログラム編集領域の画面表示の一例を示す図 本発明の実施の形態においてプログラム部品が部品化された状態でPLCに書き込まれたラダープログラムの動作確認においてプログラム部品の回路要素の条件が非成立の状態のプログラム編集領域の画面表示の一例を示す図 本発明の実施の形態においてセキュリティ情報によりプログラム部品の情報が読み取り禁止となった状態のプログラム編集領域の画面表示の一例を示す図 本発明の実施の形態においてセキュリティ情報によりプログラム部品の情報が読み取り禁止となった状態の回路要素編集領域および部品化前プログラム表示領域の画面表示の一例を示す図 本発明の実施の形態において選択されたプログラム部品内の回路要素の情報が回路要素編集領域に他の表示パターンによりリスト形式で表示された状態の一例を示す図 本発明の実施の形態において選択範囲の部品化を行う前の状態のラダープログラムを示す図 本発明の実施の形態において選択範囲の部品化が完了した状態のラダープログラムを示す図 本発明の実施の形態において選択されたプログラム部品内の回路要素の情報が回路要素編集領域に他の表示パターンによりリスト形式で表示された状態の一例を示す図
以下に、本発明の実施の形態にかかるラダープログラム編集支援装置およびラダープログラムの編集方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態
図1は、本発明の実施の形態にかかるラダープログラム編集支援装置100の構成を示すブロック図である。ラダープログラム編集支援装置100は、PLCシステムにおいてPLCが制御対象機器を制御する際に用いられるラダープログラムの作成を支援する装置である。ラダープログラム編集支援装置100は、入力部10、表示部20、制御部30、記憶部40、および出力部50を備える。これらの各構成部は、互いに情報を通信可能に接続されている。ラダープログラム編集支援装置100は、入力部10から入力された指令に基づいて表示部20の画面上に既定の回路要素をシンボリックに表示させて、1つの出力条件につき少なくとも1つの入力条件が対応したラダープログラムを編集および作成する。
ラダープログラムでは、PLCに接続された制御対象機器において制御に用いられる素子ごとの設定を回路要素により行う。回路要素は、1つの接点または1つのコイルといった不可分なものとして取り扱われる素子に対応する、ラダープログラムにおける基本的な構成要素である。回路要素は、ラダープログラムにおいて視覚的なオブジェクトによりシンボリックに表示されるグラフィカルなものである。PLCでは、接続された制御対象機器との間の入出力データを、PLCの予め定められたメモリ領域に格納する。したがって、素子ごとに対応するメモリアドレスが定められている。各回路要素は、回路要素文字とアドレスを示す数字とで示される識別情報である回路要素識別子で識別される。回路要素文字は、データ種別によって定められている。一例として、入力は「X」、出力は「Y」である。したがって、例えば入力データが格納される回路要素、すなわちメモリ領域であって、アドレスが「0」の回路要素は、「X0」と示される。回路要素は、回路要素の種別を示す回路要素種別、回路要素を識別する回路要素識別子および命令種別によって定義される。
入力部10は、キーボード、ポインティングデバイス、マウス、データ読み取り装置等の入力装置を用いて構成されて、ラダープログラムの編集にかかる指令およびラダープログラムをユーザの操作の下に制御部30に入力する。
表示部20は、液晶表示装置等の表示装置を用いて構成され、制御部30による制御の下に動作してメニュー画面、編集画面などの画面を表示する。図2は、本発明の実施の形態にかかるラダープログラム編集支援装置100における表示部20の画面の一例を示す模式図である。表示部20は、プログラム部品リスト71を表示するプログラム部品リスト表示領域21と、ラダープログラムを表示してラダープログラムの編集および作成を行うためのプログラム編集領域22とを有する画面を表示する。また表示部20は、プログラム部品によって定義された部分プログラムで使用されている回路要素を示すシンボル、定数を表示して編集するための回路要素編集領域23と、プログラム部品に対応する部品化前のラダープログラムを表示する部品化前プログラム表示領域24とを有する画面を表示する。
制御部30は、表示部20の画面上でラダープログラムを編集および作成するための動作制御、編集および作成したラダープログラムのデータを記憶部40に格納するための動作制御、記憶部40に格納されたデータを出力部50から出力するための動作制御等のラダープログラム編集支援装置100の動作制御を行う。
これらの動作制御を行うために、制御部30は、入力部10から入力された指示を受け付ける入力処理部31と、ラダープログラム編集支援装置100における表示の動作制御を行う表示制御部32と、ラダープログラムの編集の動作制御を行う編集制御部33と、記憶部40からデータを読み出して出力部50から出力させる出力制御部34と、を有している。
入力処理部31は、入力部10から入力された各種指示を受け付けて、指令の内容に基づいて該指令を表示制御部32、編集制御部33、または出力制御部34に振り分ける。
表示制御部32は、表示部20での画面表示の画像を作成して表示する画面表示の動作制御を行う。
編集制御部33は、表示部20の画面上でのラダープログラムの編集および表示の動作制御を行う。編集制御部33は、基本機能としてラダーエディタとしてのプログラミング機能を含んでおり、図2に示すように、表示部20のプログラム編集領域22上でラダープログラムを作成できる。編集制御部33は、入力部10からの指令に基づいてラダープログラムでのプラス母線Bpとマイナス母線Bmとを表示部20のプログラム編集領域22に表示させ、当該プラス母線Bpとマイナス母線Bmとの間の領域に複数本の補助線を縦横に表示させて当該領域を複数のセルに区画する処理を行うことができる。また、編集制御部33は、入力部10からの指令に基づいて、ラダープログラムの編集時に上記の画面に編集メニューを表示させたり、入力部10からの指令に基づいて所望の回路要素を所望のセルにシンボリックに表示させることができる。また、編集制御部33は、ラダープログラムでの入力条件と出力条件との論理構造に対応した論理式のデータを作成し、該データを用いてラダープログラムに自動的に接続線を引いたりする。
これらの動作制御および処理を行うために、編集制御部33は、ラダープログラムでの各回路要素の配置を特定することができる情報である座標情報を作成して記憶部40に格納し、該座標情報を用いて各回路要素の配置および接続線の描画位置を特定する。また、編集制御部33は、編集したラダープログラムの座標情報等のデータおよび上記論理式のデータを記憶部40に格納する。
また、編集制御部33は、プログラム部品の生成および編集にかかる機能部として、プログラム部品を生成するプログラム部品生成部61と、プログラム編集領域22においてプログラム部品を1つの図形として表示するプログラム部品表示制御部62と、プログラム部品の回路要素に関連する情報を編集するプログラム部品回路要素編集部63と、を有する。
プログラム部品生成部61は、入力部10から入力された指令の内容に基づいて、プログラム編集領域22に表示されたラダープログラムの一部から、再利用可能なプログラム部品を生成する。プログラム部品は、既存のラダープログラムにおけるプログラム部品の編集対象であって任意に選択される選択範囲に含まれるラダープログラムを構成する回路要素と同じ論理構造を有する部分プログラムである。プログラム部品は、上記の選択範囲の動作処理と同一の動作処理を行う1つの動作処理部として、すなわち一つの回路要素と同様に、管理される。プログラム部品は、一つの回路要素からなり単一動作が行われる単一動作処理プログラム、または複数の回路要素を含んで複数の動作が行われる複合動作処理プログラムを含む。
プログラム部品生成部61は、入力部10から入力された指令の内容に基づいて、プログラム編集領域22に表示されたラダープログラムにおける任意の指定範囲に含まれるラダープログラムを座標情報と共に記憶部40のプログラム部品リスト71に記憶させる。すなわち、プログラム部品生成部61は、回路要素の情報を記憶部40に記憶されたラダープログラムの情報から取得する。そして、プログラム部品生成部61は、この情報にプログラム部品名とセキュリティ情報とを付加してプログラム部品の情報を生成し保持すると共に、プログラム部品リスト71に登録する。回路要素の情報は、回路要素の位置情報である座標情報と、プロパティ情報と、回路要素に関連するコメントである回路要素コメントと、PLCから取得した回路要素の状態と、を有する。回路要素の位置情報は、表示部20のプログラム編集領域22に表示されたラダープログラムにおける回路要素の、プログラム編集領域22上での配置位置を示す情報である。回路要素コメントは、回路要素が何に使用されるのか等の、回路要素に関する任意の説明が記述されたコメントである。ユーザは、回路要素コメントを参照することにより、選択範囲に含まれるラダープログラムをイメージしやすくなる。したがって、回路要素コメントは、ラダープログラムの編集効率の向上に寄与する。
座標情報は、プログラム編集領域22のグリッド領域での位置を、原点(0,0)を基準にして数値で表す直交座標系における絶対座標である。座標情報は、グリッド領域の横軸をx軸、グリッド領域の縦軸をy軸とした場合、グリッド領域における位置をx軸の値とy軸の値とを組み合わせて、座標(x1、y1)のように表現される。ラダープログラム編集支援装置100では、この座標情報を使用して、ラダープログラムをプログラム編集領域22に表示している。
プロパティ情報は、回路要素の特性を表す情報である。回路要素のプロパティ情報に、回路要素の種別を示す回路要素種別、回路要素を識別する回路要素識別子および命令種別がある。
命令種別は、回路要素がA接点であれば「LD」で示される論理演算開始、回路要素がB接点であれば「LDI」で示される論理演算など、プログラムの命令の動作を表現したものである。
プログラム部品名は、プログラム編集領域22に表示されたラダープログラムにおいて、プログラム部品として識別可能な一意に定義されるプログラム部品の名称である。プログラム部品名は、入力部10から入力された指令の内容により指定された名称でもよく、プログラム部品生成部61により自動で付加される名称でもよい。
セキュリティ情報は、部品化されたプログラム部品が、プログラム部品の内部の情報を表示部20に表示可能な部品であるか否か、およびプログラム部品の内部の情報を編集可能な部品であるか否か、を示す情報である。表示可能な部品は、プログラム部品の内部の情報を表示部20に表示できる部品である。表示不可能な部品は、プログラム部品の内部の情報を表示部20に表示できない部品である。編集可能な部品は、プログラム部品の内部の情報を表示部20に表示可能であり、且つ編集することができる部品である。編集不可能な部品は、プログラム部品の内部の情報を表示部20に表示可能であるが、編集することができない部品である。表示可能な部品および編集可能な部品については、表示および編集のそれぞれの処理はパスワードにより保護することが可能である。
プログラム部品リスト71は、記憶部40に記憶されており、複数のプログラム部品の情報を記憶することができる。プログラム部品リスト71は、複数のプログラム部品の情報を記憶する場合に、各プログラム部品内の先頭の回路要素の座標位置の行の順番に、各プログラム部品の情報を格納する。すなわち、プログラム部品リスト71は、各プログラム部品内の先頭の回路素子の座標位置が小さい順に、各プログラム部品の情報を格納する。また、プログラム部品リスト71は、選択範囲のラダープログラムに含まれる回路要素および各プログラム部品の情報を、ラダープログラムの行の順番、および1行のラダープログラムのプラス母線Bpとマイナス母線Bmとの間の領域における回路要素のプラス母線Bp側からの配置の順番に従って格納する。プログラム部品リスト71においては、各プログラム部品のプログラム部品名とセキュリティ情報も記憶されている。
プログラム部品表示制御部62は、入力部10から入力された指令の内容に基づいて、プログラム編集領域22に表示されたラダープログラムにおいてプログラム部品の範囲として選択される選択範囲を、プログラム編集領域22において1つの図形として表示する制御を行う。すなわち、プログラム部品表示制御部62は、プログラム編集領域22に表示されたラダープログラムにおいて、プログラム部品を1つの図形として表示する制御を行う。プログラム部品として表示する図形は、部品化するラダープログラムの大きさに関係なく任意の大きさで定義することができ、部品化する前のラダープログラムと比較して表示領域を小さくすることが可能である。プログラム部品として表示する図形には、プログラム部品名およびプログラム部品に関する任意の説明を付加することができる。プログラム部品名およびプログラム部品に関する任意の説明は、プログラム部品として表示する図形上に表示することができる。
また、プログラム部品表示制御部62は、選択状態情報および条件成立情報を保持する。そして、プログラム部品表示制御部62は、選択状態情報と条件成立情報とを、表示部20に表示されたラダープログラム上で区別して表示する機能を有する。
選択状態情報は、単純にプログラム部品が選択状態か非選択状態かを示す情報である。条件成立情報は、プログラム部品に対応する仮想回路要素の状態を表す情報であり、プログラム部品の仮想回路要素条件の成立または非成立の状態を表す。仮想回路要素条件は、プログラム部品が有効となる条件である。仮想回路要素は、ラダープログラム上に表示されている回路要素ではなく、プログラム部品の中から出力に最終的に影響する単一または複数の回路要素から自動的に生成され、プログラム部品表示制御部62の内部に保持される。仮想回路要素条件の詳細については後述する。
プログラム部品回路要素編集部63は、入力部10から入力された指令の内容に基づいて、プログラム部品リスト71に記憶された複数のプログラム部品のうち任意のプログラム部品に関連する情報を回路要素編集領域23に表示し、編集する制御を行う。すなわち、プログラム部品回路要素編集部63は、プログラム部品として定義されたラダープログラムにおいて使用されている回路要素、定数といった情報を回路要素編集領域23に表示し、編集する制御を行う。
プログラム部品回路要素編集部63は、プログラム部品生成部61およびプログラム部品リスト71に保持された情報を使用し、プログラム部品内に記述されたプログラム部品を構成する回路要素の情報として、回路要素識別子、命令種別、回路要素に対応した回路要素コメント、PLCから取得した回路要素の状態を、回路要素編集領域23にリスト形式で表示する制御を行う。プログラム部品回路要素編集部63は、選択範囲のラダープログラムに含まれる回路要素を、予め設定された表示順序に従って回路要素編集領域23にリスト形式で表示させる。すなわち、プログラム部品回路要素編集部63は、ラダープログラムの行の順番、および1行のラダープログラムのプラス母線Bpとマイナス母線Bmとの間の領域における回路要素のプラス母線Bp側からの配置の順番に従って表示する。プログラム部品回路要素編集部63は、選択範囲のラダープログラムに含まれる回路要素の情報として、回路要素識別子、命令種別、回路要素に対応した回路要素コメント、PLCから取得した回路要素の状態を回路要素編集領域23にリスト形式で表示させるため、選択範囲のラダープログラムと、回路要素編集領域23におけるリスト形式での表示とには相関関係がある。そして、上述した選択範囲のラダープログラムの回路要素の情報が回路要素編集領域23にリスト形式で表示されることにより、選択範囲のラダープログラム内の回路要素の配置および詳細が理解しやすくなる。
また、プログラム部品回路要素編集部63は、入力部10から入力された指令の内容に基づいて、リスト形式で表示された各回路要素の回路要素識別子、命令種別、回路要素コメントを変更して記憶部40のプログラム部品リスト71に記憶させるとともに記憶部40に記憶されたラダープログラムに反映させてラダープログラムを更新する機能を有する。また、プログラム部品回路要素編集部63は、どのプログラム部品に関連する情報が回路要素編集領域23に表示されているかの情報を回路要素編集領域23に表示させる機能を有する。
プログラム部品回路要素編集部63は、プログラム部品生成部61およびプログラム部品リスト71が持つ情報の一つである回路要素の座標位置の情報に基づいて、プログラム部品における各回路要素のラダープログラム上の位置を部品化前プログラム表示領域24に示す機能を有する。
また、プログラム部品回路要素編集部63は、対象のプログラム部品がセキュリティ情報により表示禁止状態であれば、回路要素編集領域23および部品化前プログラム表示領域24への表示を禁止してラダープログラム上で1つの図形状態のままで表示させて、プログラム部品の詳細の情報を表示しない機能を有する。また、プログラム部品回路要素編集部63は、対象のプログラム部品がセキュリティ情報により編集禁止状態であれば、プログラム部品回路要素編集部63で編集することを禁止する機能を有する。
なお、上述したようにプログラム部品に関連する情報は、回路要素編集領域23に表示され、プログラム部品の編集に必要な情報がユーザに提供される。このため、部品化前プログラム表示領域24には、プログラム部品内のラダープログラムをそのまま表示しなくてもよく、プログラム部品内のラダープログラムが持つ論理構造のみを部品化前プログラム表示領域24に表示させるのみで十分である。したがって、プログラム部品回路要素編集部63は、プログラム部品内のラダープログラムの表示から、定数、命令種別といった情報を省略して、ラダープログラムが持つ論理構造で部品化前プログラム表示領域24に表示させる機能を有する。また、プログラム部品回路要素編集部63は、部品化前プログラム表示領域24に省略表示したラダープログラムの座標位置を部品化前プログラム表示領域24に表示する。これにより、元のラダープログラムにおけるプログラム部品内の位置を容易に認識できる。
出力制御部34は、入力部10からデータの出力を指示する指令が入力され、該指令が入力処理部31により振り分けられてくると、記憶部40からデータを読み出して出力部50に送り、該出力部50の動作を制御してデータを出力させる。
図3は、本発明の実施の形態にかかるラダープログラム編集支援装置100の機能を実現するコンピュータ装置のハード構成の一例を模式的に示すブロック図である。図1に示した制御部30は、図3に示すプロセッサ101がメモリ102に記憶された、制御部30の処理手順が記述されたプログラムを読み出して実行することにより、実現される。このプログラムは、ハードディスク、CD(Compact Disk)−ROM(Read Only Memory)、MO(Magneto−Optical disk)、DVD(Digital Versatile DiskまたはDigital Video Disk)などのコンピュータ装置で読取可能な記録媒体に記録され、または、このプログラムは、インターネットなどのネットワーク通信回線を介して配布することもできる。
図1に示した記憶部40は、図3に示したメモリ102により実現される。記憶部40には、制御部30用の制御プログラム、ラダープログラムの編集に必要なデータ、ラダープログラムの編集中に発生するデータ、編集制御部33が編集したラダープログラムのデータなど、ラダープログラム編集支援装置100の処理に関連したデータが格納される。
出力部50は、図示しないプリンタ、補助記憶装置、ネットワークに接続された送信装置等の装置により構成され、出力制御部34による制御の下に動作して、編集したラダープログラム等のラダープログラム編集支援装置100内のデータを出力する。
上述した構成を有するラダープログラム編集支援装置100は、装置の立ち上げ後に入力部10からの既定の指令を受け付けて、編集制御部33による動作制御の下に表示部20のプログラム編集領域22にラダープログラムでのプラス母線Bpとマイナス母線Bmとを表示させ、さらにはプラス母線Bpとマイナス母線Bmとの間の領域に複数本の補助線を縦横に表示させて当該領域を複数のセルに区画した後、ラダープログラムの編集をユーザに行わせる。
つぎに、本実施の形態にかかるラダープログラム編集支援装置100におけるラダープログラムの部品化およびラダープログラムの編集方法について説明する。図4は、本発明の実施の形態にかかるラダープログラム編集支援装置100においてラダープログラムの部品化に使用される部品化元のラダープログラムの例を示す図である。図5は、本発明の実施の形態にかかるラダープログラム編集支援装置100におけるプログラム部品の生成処理の流れを示すフローチャートである。ここでは、図4に示したラダープログラムのうち、選択範囲S1の部分を部品化する場合について説明する。
まず、部品化元のラダープログラムが入力部10から入力される。入力された部品化元のラダープログラムは、入力部10から編集制御部33に送られ、編集制御部33による動作制御の下に、プログラム編集領域22のグリッド領域に表示される。また、編集制御部33は、部品化元のラダープログラムを記憶部40に記憶させる。
ラダープログラムは、回路要素を示すシンボルと接続線とを用いて表示される。図4に示した部品化元のラダープログラムでは、1行目におけるプラス母線Bpとマイナス母線Bmとの間に、入力条件を示す回路要素X0および回路要素X1、出力条件を示す回路要素Y0が配置され、これらの回路要素とプラス母線Bpとマイナス母線Bmとが接続線により接続されている。また、ラダープログラムの2行目におけるプラス母線Bpとマイナス母線Bmとの間に、入力条件を示す回路要素X2が配置され、接続線により一行目の接続線と接続されている。また、3行目におけるプラス母線Bpとマイナス母線Bmとの間に、入力条件を示す回路要素X3、回路要素X4および回路要素X5、出力条件を示す回路要素Y1が配置され、これらの回路要素が接続線により接続されている。なお、図4においては補助線の記載を省略している。
つぎに、プログラム編集領域22に表示されたラダープログラムのうちプログラム部品編集対象となる、部品化する範囲を指定する範囲選択情報が入力部10から入力される。ここでは、図4で示したラダープログラムのうちの選択範囲S1の部分を選択する範囲選択情報が入力される。入力された範囲選択情報は、入力部10からプログラム部品生成部61に送られる。
範囲選択情報が入力されると、ステップS10においてプログラム部品生成部61は、範囲選択情報により指定された選択範囲S1に含まれる回路要素を読み出す。すなわち、プログラム部品生成部61は、選択範囲S1に含まれる回路要素の情報を、記憶部40に記憶させた部品化元のラダープログラムから読み出し、記憶する処理を行う。ここでの回路要素の情報は、選択範囲S1に含まれる回路要素の位置情報、回路要素コメントおよびプロパティ情報、すなわち回路要素の回路要素種別、回路要素識別子、命令種別、回路要素コメント、座標位置の情報である。
図6は、本発明の実施の形態にかかるラダープログラム編集支援装置100において選択された選択範囲S1に含まれている回路要素を示す図である。図6においては、回路要素の周辺の補助線Hを点線で示し、プログラム編集領域22における座標位置を(0,0),(2,2)といったグリッド領域での直交座標系表示で示している。
また、位置情報は、プログラム編集領域22のグリッド領域での直交座標系において、特定の位置を基準にした相対位置で表示されてもよい。相対位置は、基準となる回路要素の位置情報に対して相対的に決まる相対座標での位置の情報である。(σ,ε)を基準点とした場合、(σ+2,ε+2)の相対位置は、(2,2)となり、(σ+X,ε+Y)の相対位置は(X,Y)となる。XおよびYは、整数である。また、XおよびYは、直交座標系における軸目盛りの数値であってもよく、グリッド領域におけるセルの個数であってもよい。
また、位置情報は、極座標で表示されてもよい。図7は、位置情報の表示方法の一例を示す模式図である。図7においては、プログラム編集領域22における位置P1、位置P2、位置P3を極座標で示している。すなわち、位置P1は(L1,θ1)で表され、位置P2は(L2,θ2)で表され、位置P3は(L3,θ3)で表される。L1,L2,L3は、原点Oからの距離を表す動径である。θ1,θ2,θ3は、原点を通る基準の半直線である始線から反時計周りに測った角度を表す偏角である。
回路要素の読み出しが完了すると、ステップS20においてプログラム部品生成部61は、読み出した各回路要素を解析する。そして、ステップS30においてプログラム部品生成部61は、読み出した各回路要素のプロパティ情報と、部品化不可条件とに基づいて、読み出したすべての回路要素が部品化可能な回路要素であるか否かを解析する。すなわち、プログラム部品生成部61は、読み出した各回路要素のプロパティ情報を解析し、各回路要素のプロパティ情報が部品化不可条件に該当するか否かにより、回路要素が部品化可能な回路要素であるか否かを解析する。
プログラム部品生成部61は、部品化が不可能な回路要素の条件である部品化不可条件を予め記憶している。部品化不可条件は、回路要素が部品化可能な回路要素であるか否かを判定する判定基準である。プログラム部品生成部61は、部品化不可条件として、部品化が不可能な回路要素の回路要素種別、部品化が不可能な回路要素の回路要素識別子、部品化が不可能な回路要素の命令種別の情報を記憶している。プロパティ情報が部品化不可条件に該当しない回路要素は、部品化が可能な回路要素である。プロパティ情報が部品化不可条件に該当する回路要素は、部品化が不可能な回路要素である。
読み出したすべての回路要素が部品化可能な回路要素である場合、すなわちステップS30においてYesの場合は、ステップS40においてプログラム部品生成部61は、読み出した回路要素を部品化してプログラム部品を生成するプログラム部品生成処理を行う。
一方、読み出した回路要素に部品化できない回路要素が1つでも含まれている場合、すなわちステップS30においてNoの場合は、ステップS50においてプログラム部品生成部61は、プログラム部品生成処理を行わずにエラー処理を行い、表示部20にエラー表示をする制御を行う。
つぎに、プログラム部品生成処理の流れについて説明する。図8は、本発明の実施の形態にかかるラダープログラム編集支援装置100におけるプログラム部品生成処理の流れを示すフローチャートである。
ステップS110においてプログラム部品生成部61は、記憶している部品化する回路要素の情報に対してプログラム部品名を付加する。プログラム部品名は、ラダープログラム内で一意に定義されるものであれば、ユーザにより指定されても良く、プログラム部品生成部61により自動で付加されてもよい。
プログラム部品生成部61は、プログラム部品名の入力を要求するコメントを表示部20に表示させる処理を行う。ユーザがコメントに応答して入力部10からプログラム部品名の情報を入力すると、入力されたプログラム部品名の情報は、プログラム部品生成部61に送られる。プログラム部品生成部61は、プログラム部品名の情報を受信した場合は、受信したプログラム部品名の情報に基づいて、記憶している部品化する回路要素の情報にプログラム部品名を付加する。ここでは、プログラム部品名を部品Aとする。
また、ユーザは、プログラム部品名の自動付加を指示する自動付加指示情報をコメントに応答して入力部10から入力することができる。入力部10に入力された自動付加指示情報は、プログラム部品生成部61に送られる。プログラム部品生成部61は、自動付加指示情報を受信した場合は、記憶している部品化する回路要素の情報に、既定のルールに従ってプログラム部品名を付加する。
つぎに、ステップS120においてプログラム部品名は、記憶している部品化する回路要素の情報に対してセキュリティ情報を付加する。
プログラム部品生成部61は、表示の可否および編集の可否のそれぞれについて、セキュリティ情報のパスワードの入力を要求するコメントを表示部20に表示させる処理を行う。そして、入力部10からパスワードが入力されると、入力されたパスワードは、プログラム部品生成部61に送られる。プログラム部品生成部61は、パスワードを受信した場合は、記憶している部品化する回路要素の情報に、受信したパスワードとともにセキュリティ情報を付加する。セキュリティ情報が付加されたプログラム部品は、パスワードを入力しないと、表示または編集ができない状態に管理される。
上記のようにしてプログラム部品生成部61が記憶している部品化する回路要素の情報に対してプログラム部品名およびセキュリティ情報が付加されることにより、ラダープログラムにおける選択範囲S1が部品化される。
そして、ステップS130においてプログラム部品生成部61は、部品化されたプログラム部品の情報、すなわちプログラム部品名およびセキュリティ情報が付加されて部品化された回路要素の情報を記憶部40のプログラム部品リスト71にファイル形式で記憶させて登録する。図9は、本発明の実施の形態にかかるプログラム部品生成部61がプログラム部品リスト71にリスト形式で記憶させるプログラム部品の情報を示す図である。図10は、本発明の実施の形態にかかるプログラム部品が登録されたプログラム部品リスト71の一例を示す図である。
各プログラム部品のファイルには、図9に示すようにプログラム部品に含まれる回路要素の座標位置およびプロパティ情報、回路要素コメント、プログラム部品名、セキュリティ情報が記憶されている。また、各プログラム部品のファイルには、回路要素の状態として、信号のONおよびOFFを制御する回路要素であればONであるか、OFFであるかの情報、数値を制御する回路要素であれば数値が、現在値として記憶されている。図10におけるプログラム部品リスト71に示されたセキュリティ情報である(R/W)は、部品Aが表示可能であり、編集可能であることを示している。図10におけるプログラム部品リスト71に示されたセキュリティ情報である(R禁止)は、部品Bが表示不可能であることを示している。
また、部品化された選択範囲S1のラダープログラムに関する情報がプログラム部品リスト71に登録されると、プログラム部品表示制御部62の制御により、部品化が完了した状態のラダープログラムがプログラム編集領域22に表示される。図11は、本発明の実施の形態において選択範囲S1の部品化が完了した状態のラダープログラム72を示す図である。図12は、本発明の実施の形態において選択範囲S1の部品化を行う前の状態のラダープログラム73を示す図である。
プログラム編集領域22の画面表示においては、ラダープログラムにおける部品化された箇所は1つの図形である四角形のシンボルで表現され、プログラム部品名が表示されている。プログラム編集領域22の画面表示において部品化された図形を選択する情報、すなわちプログラム部品Aを選択するプログラム部品選択情報が入力部10から入力された場合、プログラム部品選択情報がプログラム部品回路要素編集部63に送られる。
図13は、本発明の実施の形態において選択されたプログラム部品A内の回路要素の情報が回路要素編集領域23にリスト形式で表示され、選択されたプログラム部品A内のラダープログラムが部品化前プログラム表示領域24に省略表示された状態の一例を示す図である。プログラム部品回路要素編集部63は、プログラム部品選択情報が入力されると、図13に示すように、選択されたプログラム部品内の回路要素の情報をリスト形式で回路要素編集領域23に表示させると同時に、図13に示すように部品化前プログラム表示領域24にプログラム部品A内のラダープログラムを省略表示させる。また、プログラム部品回路要素編集部63は、選択されたプログラム部品A内の回路要素の、すなわち選択範囲S1の回路要素の、部品化元のラダープログラムにおける位置を、グリッド領域における直交座標系表示の座標情報で部品化前プログラム表示領域24に表示させる。プログラム部品回路要素編集部63は選択されたプログラム部品A内のラダープログラムの回路要素の情報を回路要素編集領域23にリスト形式で表示させるため、選択されたプログラム部品A内のラダープログラムと、回路要素編集領域23におけるリスト形式とには相関関係がある。そして、選択されたプログラム部品A内の回路要素の情報を回路要素編集領域23にリスト形式で表示することにより、プログラム部品A内の回路要素の配置および詳細が理解しやすくなる。
また、プログラム部品回路要素編集部63は、回路要素編集領域23に表示されたプログラム部品内の回路要素の情報のうち、プログラム部品の編集対象として選択された回路要素に関連する情報を強調して表示させる。図13においては、選択された回路要素に関連する情報が着色表示されている。また、プログラム部品回路要素編集部63は、部品化前プログラム表示領域24に省略表示された部品化前のラダープログラム上で、回路要素編集領域23で選択されている編集対象の回路要素の位置を強調して表示させる。図13においては、回路要素編集領域23で選択されている編集対象の回路要素の位置が選択線74により強調表示されている。
また、ここで回路要素編集領域23に表示されるプログラム部品内の回路要素の情報は、プログラム部品を構成する回路要素の回路要素識別子、命令種別、回路要素コメント、回路要素の状態である現在値である。なお、座標情報は、プログラム部品における各回路要素のラダープログラム上の位置を部品化前プログラム表示領域24に示す際に使用するものであり編集対象ではないため、回路要素編集領域23には表示されない。また、回路要素種別は、各回路要素において回路要素識別子と1対1で対応しており、1つの回路要素において回路要素識別子が決まれば回路要素種別の内容は一義的に決まる。プログラム部品回路要素編集部63は、回路要素識別子が編集された場合に、編集された回路要素識別子に対応する回路要素種別を、編集された回路要素識別子に対応する内容に合わせて変更して記憶部40に記憶させる。このため、回路要素編集領域23の表示をシンプルにするため、回路要素種別は回路要素編集領域23には表示されていない。ただし、座標情報および回路要素種別を回路要素編集領域23に表示しても構わない。
ここで、プログラム部品選択情報により選択されたプログラム部品がセキュリティ情報により表示が保護されている場合は、プログラム部品回路要素編集部63は、パスワードの入力を要求するコメントを表示部20に表示させる処理を行う。入力部10からパスワードが入力されると、パスワードはプログラム部品回路要素編集部63に送られる。入力されたパスワードが、プログラム部品に設定されているパスワードに一致する場合は、プログラム部品回路要素編集部63はプログラム部品の情報を回路要素編集領域23および部品化前プログラム表示領域24に表示する。入力されたパスワードが、プログラム部品に設定されているパスワードに一致しない場合は、プログラム部品回路要素編集部63は、プログラム部品の情報を回路要素編集領域23および部品化前プログラム表示領域24に表示しない。
つぎに、部品化されたプログラム部品Aを再利用して、回路要素の異なるプログラム部品Bを作成する流れについて説明する。ユーザは、プログラム部品Aを選択して複製を行う旨の複製指示情報を入力部10から入力する。入力された複製指示情報は、入力部10からプログラム部品回路要素編集部63に送られる。プログラム部品回路要素編集部63は、複製指示情報に基づいてプログラム編集領域22に表示されたプログラム部品Aをコピーして、プログラム部品Aと全く同じ構成を有するコピープログラム部品を記憶部40に記憶させる。
つぎに、ユーザは、プログラム編集領域22で示されたラダープログラムにおいてコピープログラム部品の貼り付け場所を選択し、貼り付けを行う旨の貼り付け指示情報を入力部10から入力する。入力された貼り付け指示情報は、入力部10からプログラム部品回路要素編集部63に送られる。プログラム部品回路要素編集部63は、貼り付け指示情報に基づいてコピープログラム部品をプログラム編集領域22に表示されたラダープログラムにおける指定された部分にコピープログラム部品を貼り付ける。
これにより、コピープログラム部品もプログラム部品Aと同様に、プログラム編集領域22に表示される。コピーおよび貼り付けの処理は、ラダープログラム編集支援装置100の編集制御部33が有するラダーエディタ機能を用いて行われる。そして、コピープログラム部品が貼り付けられたラダープログラムが記憶部40に再度、記憶される。この処理は、ラダープログラムの各回路要素をコピーおよび貼り付けする処理と同様である。
コピープログラム部品の貼り付け処理がされると、プログラム部品回路要素編集部63は、プログラム部品名の入力を要求するコメントを表示部に表示させる処理を行う。コピープログラム部品の部品名は、ラダープログラム内で一意に定義されるものであれば、ユーザにより指定されても良く、プログラム編集部により自動で付加されてもよい。コピープログラム部品の部品名の付加は、上述したステップS110と同様にして行われる。これにより、記憶部40に記憶されているコピープログラム部品のプログラム部品名は、付加されたプログラム部品名に置き換わる。
図14は、本発明の実施の形態においてプログラム部品Bのラダープログラムへの配置が完了した状態のプログラム編集領域22の画面表示の一例を示す図である。ここでは、コピープログラム部品のプログラム部品名を部品Bとする。これにより、図14に示すように、1つの四角形のシンボルで表現されたプログラム部品Bがプログラム部品Aと同様にプログラム編集領域22に表示される。この場合も、プログラム編集領域22における表示においては、プログラム部品Bの表示は1つの四角形のシンボルにプログラム部品名である「部品B」が記されただけの表示となっている。
図15は、本発明の実施の形態においてプログラム部品Bが選択された状態のプログラム編集領域22の画面表示の一例を示す図である。プログラム編集領域22の画面表示においてプログラム部品Bを選択するプログラム部品選択情報が入力部10から入力されてプログラム部品回路要素編集部63に送られると、プログラム部品回路要素編集部63は、選択しているプログラム部品Bをプログラム編集領域22に表示されたラダープログラム上において選択線74により強調表示させる。また、プログラム部品回路要素編集部63の制御により、プログラム部品Aが選択された場合と同様に、プログラム部品B内の回路要素の情報がリスト形式で回路要素編集領域23に表示されると同時に、部品化前プログラム表示領域24にプログラム部品B内のラダープログラムが省略表示される。
そして、プログラム部品回路要素編集部63は、回路要素編集領域23にリスト形式で表示されているプログラム部品Bの回路要素の情報である、回路要素識別子、現在値、回路要素コメント、および命令種別を編集することが可能である。すなわち、プログラム部品回路要素編集部63は、上記の情報を回路要素編集領域23において変更し、記憶部40に記憶させることができる。上記の情報を変更することで、プログラム部品Aと構成要素の異なるプログラム部品Bを作成することができる。プログラム部品回路要素編集部63は、入力部10から入力される指令の内容に基づいて、回路要素編集領域23に表示されているプログラム部品Bの回路要素の情報を変更し、また記憶部40に記憶されているラダープログラムをプログラム部品Bを挿入した状態に更新することができる。
図16は、本発明の実施の形態においてプログラム部品Bの作成が完了した状態の回路要素編集領域23および部品化前プログラム表示領域24の画面表示の一例を示す図である。プログラム部品Bの回路要素の情報を変更した内容は、記憶部40に記憶されたプログラム部品のラダープログラムに反映され、ラダープログラムが更新される。すなわち、回路要素編集領域23で変更した内容で、記憶部40に記憶されたラダープログラム上の回路要素が変更されて、変更されたラダープログラムが記憶部40に再度、記憶される。
つぎに、ラダープログラムの一部が部品化された状態でラダープログラムの動作確認を行った場合について説明する。外部のPLCを使用する動作確認方法では、一部が部品化された状態のラダープログラムをPLCのメモリに記憶させた後、PLCの制御により制御対象機器を稼働させて、PLCから入力される情報に基づいて制御対象機器が設計どおりに正常に動作するか否かを編集制御部33における動作確認機能で確認する。
プログラム部品の動作状態の確認は、プログラム部品表示制御部62の情報を元に行われる。プログラム部品表示制御部62は、プログラム部品単位で選択状態情報と条件成立情報とを有する。プログラム部品表示制御部62は、条件成立情報の成立または非成立の情報をプログラム動作確認時にプログラム編集領域22に表示されたラダープログラム上で表示できる。このため、プログラム部品内の詳細な構成を表示部20に表示せずに隠した状態でラダープログラムの動作確認が可能である。
条件成立情報は、プログラム部品内に含まれる仮想回路要素条件の成立または非成立の状態を表す情報である。仮想回路要素条件は、プログラム部品リスト71の情報を用いてプログラム部品表示制御部62において自動的に生成され内部に保持される。仮想回路要素条件は、ラダープログラム上に表示されている回路要素ではなく、上述したように定義されたプログラム部品の中から、プログラム部品からの出力に最終的に影響する単一の回路要素または複数の回路要素に基づいて生成される。
ここで、仮想回路要素条件の決定方法について説明する。図17は、本発明の実施の形態にかかるラダープログラム編集支援装置100における仮想回路要素条件を決定する処理の流れを示すフローチャートである。
まず、ステップS210においてプログラム部品表示制御部62は、記憶部40に記憶されたプログラム部品リスト71に登録されたプログラム部品の情報に基づいて、プログラム部品内に含まれる回路要素が単一である否かの判定を行う。プログラム部品内に含まれる回路要素が単一であると判定された場合、すなわちステップS210においてYesの場合は、ステップS220においてプログラム部品表示制御部62は、プログラム部品内に含まれる単一の回路要素の成立の条件をそのまま仮想回路要素条件とする。
一方、プログラム部品内に含まれる回路要素が複数であると判定された場合、すなわちステップS210においてNoの場合は、ステップS230においてプログラム部品表示制御部62は、プログラム部品内に含まれる回路要素は入力となる回路要素のみであるか否かを判定する。すなわち、プログラム部品表示制御部62は、プログラム部品内に含まれる回路要素にコイルなどの出力となる出力回路要素があるかどうかを確認する。
プログラム部品内に含まれる回路要素が入力回路要素のみであると判定された場合、すなわちステップS230においてYesの場合は、プログラム部品表示制御部62は、ステップS240において論理演算により仮想回路要素条件を決定する。ここで、プログラム部品内に含まれる回路要素に複数の入力回路要素がある場合の一例として、プログラム部品内にαとβとの2つの入力回路要素が含まれる場合について説明する。
αとβとの2つの入力回路要素の関係について考えると、αかつβが成立してプログラム部品から出力がなされる場合と、αまたはβが成立してプログラム部品から出力がなされる場合との2つの場合が存在する。αかつβが成立してプログラム部品から出力がなされる場合を(α and β)と記す。αまたはβが成立してプログラム部品から出力がなされる場合を(α or β)と記す。また、プログラム部品の仮想回路要素条件をZとする。(α and β)の場合、Zはαとβの論理積となる。(α or β)の場合、Zはαとβの論理和となる。
プログラム部品内に3つ以上の入力回路要素が含まれる場合については、2つの入力回路要素の論理演算の結果を単体の入力回路要素Wと考えればよい。これにより、プログラム部品内に含まれる複数の入力回路要素の関係が、最終的に、上述したαかつβが成立してプログラム部品から出力がなされる(α and β)の場合と、αまたはβが成立してプログラム部品から出力がなされる(α or β)の場合と同様の2つの場合に帰着する。このため、上述したプログラム部品内にαとβとの2つの入力回路要素が含まれる場合と同様に考えることができる。
プログラム部品内に含まれる回路要素が入力回路要素のみでないと判定された場合、すなわちステップS230においてNoの場合は、ステップS250においてプログラム部品表示制御部62は、プログラム部品内に含まれる出力回路要素が単一である否かの判定を行う。
プログラム部品内に含まれる出力回路要素が単一であると判定された場合、すなわちステップS250においてYesの場合は、ステップS260においてプログラム部品表示制御部62は、プログラム部品内に含まれる単一の出力回路要素の成立の条件をそのまま仮想回路要素条件とする。
プログラム部品内に含まれる出力回路要素が複数であると判定された場合、すなわちステップS250においてNoの場合は、仮想回路要素条件を一意に定義ができない。このため、ステップS270においてプログラム部品表示制御部62は、仮想回路要素条件を不定とし、仮想回路要素条件を決定しない。この場合は、プログラムの動作確認時、部品単位の条件成立または非成立を確認することはできない。
上述した方法により、プログラム部品表示制御部62において仮想回路要素条件が決定され、仮想回路要素条件の成立または非成立をラダープログラムの動作確認時に表示することが可能である。そして、ラダープログラム編集支援装置100では、部品化した状態のまま、部品単位でラダープログラムの動作確認が可能になる。このため、ラダープログラムの可読性が向上し、動作確認時においても複製したプログラム部品のプログラム上の相対的な位置が一目で判別できる。これにより、プログラムの動作確認およびデバッグが容易になり、プログラム編集の作業効率が向上する。
図18は、本発明の実施の形態においてプログラム部品Aが部品化された状態でPLCに書き込まれたラダープログラムの動作確認においてプログラム部品Aの回路要素の条件が成立した状態のプログラム編集領域22の画面表示の一例を示す図である。図19は、本発明の実施の形態においてプログラム部品Aが部品化された状態でPLCに書き込まれたラダープログラムの動作確認においてプログラム部品Aの回路要素の条件が非成立の状態のプログラム編集領域22の画面表示の一例を示す図である。図18に示すように、プログラム部品Aの回路要素の条件が成立した状態では、プログラム編集領域22に表示されたラダープログラム上でプログラム部品Aおよび回路要素Y0が着色されて、プログラム部品Aの動作状態がONであることが表示されている。図19に示すように、プログラム部品Aの回路要素の条件が非成立である状態では、プログラム編集領域22に表示されたラダープログラム上でプログラム部品Aおよび回路要素Y0を着色しないことにより、プログラム部品Aの動作状態がOFFであることが表示されている。
図20は、本発明の実施の形態においてセキュリティ情報によりプログラム部品Aの情報が読み取り禁止となった状態のプログラム編集領域22の画面表示の一例を示す図である。図21は、本発明の実施の形態においてセキュリティ情報によりプログラム部品Aの情報が読み取り禁止となった状態の回路要素編集領域23および部品化前プログラム表示領域24の画面表示の一例を示す図である。図20においては、プログラム部品Aのシンボルに錠マークが表示されると共にシンボルが着色されて表示されている。図21においては、回路要素編集領域23および部品化前プログラム表示領域24に読み取り禁止のためプログラム部品内のプログラムの読み取りが不可である旨の表示がされている。
プログラム部品はプログラム部品リスト71にセキュリティ情報を保持しているため、このセキュリティ情報によりラダープログラム編集支援装置100上でプログラム部品内のプログラムの読み取りを不可にすること、および編集を禁止することができる。そして、プログラム部品Aの情報が読み取り禁止であることが、プログラム編集領域22、回路要素編集領域23および部品化前プログラム表示領域24の画面表示で表示される。
なお、表示制御部32の機能は、編集制御部33で行われてもよい。また、部品化不可条件は、ラダープログラム編集支援装置100におけるプログラム部品生成部61以外の部分で保持されてもよい。また、図8のステップS120のセキュリティ情報の付加は、プログラム部品生成時においては省略可能であり、後で定義することも可能である。そして、プログラム部品リスト71に記憶させて表示させる情報および回路要素編集領域23に表示させて編集する情報は上記の記載に限定されない。
以上、ラダープログラム編集支援装置100について説明したが、ラダープログラム編集支援装置100は、ラダープログラムを構成する各回路要素をラダープログラム編集支援装置の画面中の所望の座標に図形で表示させて、各回路要素の配置に基づいてラダープログラムでの論理構造に対応した論理式のデータを作成するとともに、該論理式のデータに基づいてラダープログラム中で互いに並列接続されるべき各回路要素を特定して当該回路要素の出力端同士を接続線で結ぶ機能を有していれば基本的によい。したがって、本実施の形態にかかるラダープログラム編集支援装置100については、上述した形態以外にも種々の変形、修飾、組合せ等が可能である。
本実施の形態にかかるラダープログラム編集支援装置100においては、制御対象に対する制御動作を示すラダープログラムを作成する過程で、同一の動作を記述した複合処理を複数の個所に記述する必要が生じた場合は、この同一の動作を記述した複合処理を選択し、一つのプログラム部品として一つの図形でプログラム編集領域22に示すことができる。
そして、ラダープログラム上で一つの図形としてされたプログラム部品をプログラム編集領域22において選択した場合は、プログラム部品内の回路要素をリスト形式で回路要素編集領域23に表示し、プログラム部品に対応する部品化前のラダープログラムを部品化前プログラム表示領域24に省略表示することができる。そして、回路要素編集領域23に表示された回路要素を選択すると、選択された回路要素の部品化前のラダープログラム上における位置を、部品化前プログラム表示領域24において表示することができる。これにより、プログラム部品内の構成を、部品化前のラダープログラムと表示部20において比較しながら容易に確認して理解できる。
また、ラダープログラム編集支援装置100は、プログラム編集領域22に表示されたラダープログラム上でプログラム部品を選択し、複製してラダープログラム上の別の場所に貼付することにより、プログラム部品内と同様の構成要素を持つラダープログラムを作成することができる。そして、複製したプログラム部品は、複製元のプログラム部品とは別のプログラム部品として区別される。
また、ラダープログラム編集支援装置100は、複製したプログラム部品をプログラム編集領域22において選択した場合は、プログラム部品内の回路要素の情報のリストをリスト形式で回路要素編集領域23に表示し、プログラム部品に対応する部品化前のラダープログラムを部品化前プログラム表示領域24に省略表示することができる。そして、回路要素編集領域23に表示された回路要素の情報のリスト上で、回路要素の情報を変更することにより、変更した内容がプログラム部品のラダープログラムに反映され、プログラムの回路要素が変更される。これにより、プログラム部品内の構成を、部品化前のラダープログラムと表示部20において比較して確認しながら、別のプログラム部品の条件を容易に設定できる。
ここで、回路要素編集領域23における回路要素の情報の表示形式について説明する。図22は、本発明の実施の形態において選択されたプログラム部品A内の回路要素の情報が回路要素編集領域23に他の表示パターンによりリスト形式で表示された状態の一例を示す図である。図22では、プログラム部品A内の回路要素の情報、すなわち選択範囲S1のラダープログラムに含まれる回路要素の識別情報が、ラダープログラムの行の順番、かつ1行のラダープログラムのプラス母線とマイナス母線との間の領域における配置の順番に従って、回路要素編集領域23においてリスト形式で表示されている。すなわち、図22では、回路要素の情報がラダープログラムの構成に従ってリスト形式で表示されている。
図23は、本発明の実施の形態において選択範囲S2の部品化を行う前の状態のラダープログラム75を示す図である。図24は、本発明の実施の形態において選択範囲S2の部品化が完了した状態のラダープログラム76を示す図である。図24に示すラダープログラム76においては、ラダープログラム編集支援装置100において図23に示す選択範囲S2の部品化が行われたプログラム部品Cが配置されている。ここでは、プログラム部品Cの部品名を部品Cとする。
図25は、本発明の実施の形態において選択されたプログラム部品C内の回路要素の情報が回路要素編集領域23に他の表示パターンによりリスト形式で表示された状態の一例を示す図である。図25では、プログラム部品C内の回路要素の情報、すなわち選択範囲S2のラダープログラムに含まれる回路要素の識別情報が、入力条件を示す回路要素と出力条件を示す回路要素とを回路要素編集領域23における左領域と右領域とに分けて、ラダープログラムの行の順番、かつ1行のラダープログラムのプラス母線とマイナス母線との間の領域における配置の順番に従って、回路要素編集領域23においてリスト形式で表示されている。
また、ラダープログラム編集支援装置100は、ラダープログラムの動作確認時には、プログラム部品を一つの回路要素と同様にみなした場合のプログラム部品が有効となる条件である仮想回路要素の状態をプログラム編集領域22においてラダープログラム上で示すことができ、プログラム部品の動作状態を容易に理解できる環境を提供することができる。
このような処理を行うラダープログラム編集支援装置100においては、同一の動作を記述した複合処理を複数の個所に記述する場合に、複製したプログラム部品をラダープログラムの任意の場所に貼付し、選択したプログラム部品のプログラムの構成要素の一部を容易に変更することが可能になる。これにより、ラダープログラムの変更を容易に実行できる環境を提供するとともに、ラダープログラムの誤編集を防止することができ、またプログラムの詳細を隠しながらラダープログラムの動作を確認することが可能である。
ファンクションブロックを用いる場合は、複数のシステムにおいて再利用できる汎用性のあるプログラム部品を作成するためには、あるシステムの実現には不要なラダー回路が部品中に含まれることになり、単一の部品では再利用は困難である場合が多い。このため、ある部品を元に様々なバリエーションを持たせた複数のファンクションブロックを別に作成するか、不要なラダー回路以外の部分をより小さい単位の部品として切り出し、別のファンクションブロックを作成する必要がある。この場合、ユーザによる手作業によるファンクションブロックの再作成およびプログラム編集作業が多量に発生し、誤編集が発生するおそれがある。
また、ファンクションブロックの作成は、部品化を行うプログラムを構成する回路要素を変数として定義し、その変数を使用してプログラムを作成しなければならない。ユーザは回路要素で記述されたラダープログラムを入力として手作業で変数を定義し、ラダープログラムを作成する必要がある。この作業は多くの手間がかかり、誤編集が発生するおそれがある。
また、ファンクションブロックを用いずに参照テーブルの情報からラダープログラムを生成する場合、ラダープログラムの修正および追加は、ラダープログラム上で手作業で行うことになり、作業が多量に発生し、誤編集が発生するおそれがある。
一方、本実施の形態にかかるラダープログラム編集支援装置100においては、ファンクションブロックを用いた方法と比べて、ファンクションブロックの作成に必要な変数の作成、変数と実際に使用する回路要素を結びつける操作が不要であり、容易に既存のラダープログラムにおける任意の範囲を部品化し、再利用することが可能になる。これにより、ラダープログラム編集支援装置100においては、プログラム編集における作業者の負荷が低減され作業効率が向上する。
また、ラダープログラム編集支援装置100においては、部品化した状態のまま、部品単位でプログラムの動作確認が可能になるため、ラダープログラムの可読性が向上し、プログラム編集の作業効率が向上する。
また、ラダープログラム編集支援装置100においては、プログラム部品に付加するセキュリティ情報によりプログラム部品内部のラダープログラムの編集および表示を制限することができる。これにより、プログラム部品の誤編集を防止することができ、またプログラムの詳細を隠しながらラダープログラムの動作を確認することが可能である。
上述したように、本実施の形態にかかるラダープログラム編集支援装置100は、ラダープログラムの任意の範囲を容易に部品化して再利用できるため、編集の自由度が大きく、ラダープログラムの編集効率を向上させることができるラダープログラム編集支援装置を得ることができる。
また、上述したラダープログラム編集支援装置100の機能が、グラフィック言語によるプログラムの作成を支援するプログラム編集支援装置に適用されてもよい。グラフィック言語は、プログラムをテキストで記述するのではなく、視覚的なオブジェクトでプログラミングするプログラミング言語である。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
10 入力部、20 表示部、21 プログラム部品リスト表示領域、22 プログラム編集領域、23 回路要素編集領域、24 部品化前プログラム表示領域、30 制御部、31 入力処理部、32 表示制御部、33 編集制御部、34 出力制御部、40 記憶部、50 出力部、61 プログラム部品生成部、62 プログラム部品表示制御部、63 プログラム部品回路要素編集部、71 プログラム部品リスト、72,76 部品化が完了した状態のラダープログラム、73,75 部品化を行う前の状態のラダープログラム、74 選択線、100 ラダープログラム編集支援装置、101 プロセッサ、102 メモリ、A,B,C プログラム部品、Bm マイナス母線、Bp プラス母線、H 補助線、W 入力回路要素、X0,X1,X2,X3,X4,X5,Y0,Y1 回路要素。

Claims (28)

  1. ラダープログラムにおける、プラス母線とマイナス母線との間の領域にシンボルで表示されて前記ラダープログラムを構成する複数の回路要素を表示部に表示させて前記ラダープログラムを編集するラダープログラム編集支援装置であって、
    前記ラダープログラムを表示する前記表示部と、
    前記表示部に表示された前記ラダープログラムのうち編集対象となる選択範囲を選択し、前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、予め設定された表示順序に従って前記表示部においてリスト形式で表示する編集制御部と、
    を備えることを特徴とするラダープログラム編集支援装置。
  2. 複数の行にわたって記述されたラダープログラムにおける、プラス母線およびマイナス母線と、前記プラス母線と前記マイナス母線との間の領域にシンボルで表示されて前記ラダープログラムを構成する複数の回路要素を表示部に表示させて前記ラダープログラムを編集するラダープログラム編集支援装置であって、
    前記ラダープログラムを表示する前記表示部と、
    前記表示部に表示された前記ラダープログラムのうち編集対象となる選択範囲を選択する編集制御部と、
    前記選択範囲の前記ラダープログラムを、前記選択範囲の前記ラダープログラムに含まれる前記回路要素の前記表示部における位置を特定する位置情報と共に記憶する記憶部と、
    を備えることを特徴とするラダープログラム編集支援装置。
  3. 前記編集制御部は、前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、予め設定された表示順序に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項2に記載のラダープログラム編集支援装置。
  4. 前記編集制御部は、前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、前記ラダープログラムの行の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  5. 前記編集制御部は、前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、1行の前記ラダープログラムの前記プラス母線とマイナス母線との間の領域における配置の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  6. 前記編集制御部は、前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、前記ラダープログラムの行の順番、かつ1行の前記ラダープログラムの前記プラス母線とマイナス母線との間の領域における配置の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  7. 前記編集制御部は、前記回路要素に関連するコメントを前記表示部に表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  8. 前記編集制御部は、前記表示部に表示させた前記回路要素の識別情報および前記コメントを編集可能であること、
    を特徴とする請求項7に記載のラダープログラム編集支援装置。
  9. 前記編集制御部は、前記回路要素の現在の状態を示す現在値を前記表示部に表示させて変更すること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  10. 前記編集制御部は、前記選択範囲の前記ラダープログラムに含まれる回路要素をシンボリックに前記表示部に表示させ、前記ラダープログラムにおける前記回路要素の位置を併せて前記表示部に表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  11. 前記編集制御部は、前記選択範囲に含まれる前記ラダープログラムを単一の図形で前記表示部において前記ラダープログラム上に表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  12. 前記編集制御部は、前記選択範囲の前記ラダープログラムの動作確認時に外部から入力される、前記選択範囲の前記ラダープログラムによって定義されたラダープログラムの動作状態の情報を前記表示部に表示させること、
    を特徴とする請求項1または3に記載のラダープログラム編集支援装置。
  13. 前記編集制御部は、前記選択範囲に含まれるラダープログラムの前記表示部への表示および前記選択範囲に含まれるラダープログラムの編集を制限するセキュリティ情報を前記選択範囲に含まれるラダープログラムに付加すること、
    を特徴とする請求項1,3から12のいずれか1つに記載のラダープログラム編集支援装置。
  14. 前記編集制御部は、前記選択範囲の前記ラダープログラムをコピーして前記ラダープログラムにおける任意の位置に1つのプログラム部品として配置すること、
    を特徴とする請求項1から13のいずれか1つに記載のラダープログラム編集支援装置。
  15. ラダープログラムにおける、プラス母線とマイナス母線との間の領域にシンボルで表示されて前記ラダープログラムを構成する複数の回路要素の識別情報を表示部に表示させて前記ラダープログラムを編集するラダープログラム編集支援装置における前記ラダープログラムの編集方法であって、
    前記ラダープログラムを前記表示部に表示する第1ステップと、
    前記表示部に表示された前記ラダープログラムのうち編集対象となる選択範囲を選択する第2ステップと、
    前記選択範囲の前記ラダープログラムに含まれる前記回路要素の識別情報を、予め設定された表示順序に従って前記表示部においてリスト形式で表示させる第3ステップと、
    を含むことを特徴とするラダープログラムの編集方法。
  16. 複数の行にわたって記述されたラダープログラムにおける、プラス母線およびマイナス母線と、前記プラス母線と前記マイナス母線との間の領域にシンボルで表示されて前記ラダープログラムを構成する複数の回路要素を表示部に表示させて前記ラダープログラムを編集するラダープログラム編集支援装置における前記ラダープログラムの編集方法であって、
    前記ラダープログラムを表示部に表示する第1ステップと、
    前記表示部に表示された前記ラダープログラムのうち編集対象となる選択範囲を選択する第2ステップと、
    前記選択範囲の前記ラダープログラムを、前記選択範囲の前記ラダープログラムに含まれる前記回路要素の前記表示部における座標位置を特定する位置情報と共に記憶部に記憶する第3ステップと、
    を含むことを特徴とするラダープログラムの編集方法。
  17. 前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、予め設定された表示順序に従って前記表示部においてリスト形式で表示させるステップを有すること、
    を特徴とする請求項16に記載のラダープログラムの編集方法。
  18. 前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、前記ラダープログラムの前記行の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  19. 前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、1行の前記ラダープログラムの前記プラス母線とマイナス母線との間の領域における配置の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  20. 前記選択範囲の前記ラダープログラムに含まれる回路要素の識別情報を、前記ラダープログラムの行の順番、かつ1行の前記ラダープログラムの前記プラス母線とマイナス母線との間の領域における配置の順番に従って前記表示部においてリスト形式で表示させること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  21. 前記回路要素に関連するコメントを記憶部に記憶させ、前記表示部に表示させるステップを有すること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  22. 前記表示部に表示させた前記回路要素の識別情報および前記コメントを変更して前記記憶部に記憶させるステップを有すること、
    を特徴とする請求項21に記載のラダープログラムの編集方法。
  23. 前記回路要素の現在の状態を示す現在値を前記表示部に表示させて変更するステップを有すること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  24. 前記選択範囲の前記ラダープログラムに含まれる回路要素をシンボリックに前記表示部に表示させ、前記ラダープログラムにおける前記回路要素の位置を併せて前記表示部に表示させるステップを有すること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  25. 前記選択範囲に含まれる前記ラダープログラムを1つの単一の図形で前記表示部において前記ラダープログラム上に表示させるステップを有すること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  26. 前記選択範囲の前記ラダープログラムの動作確認時に外部から入力される、前記選択範囲の前記ラダープログラムによって定義されたラダープログラムの動作状態の情報を前記表示部に表示させるステップを有すること、
    を特徴とする請求項15または17に記載のラダープログラムの編集方法。
  27. 前記選択範囲に含まれるラダープログラムの前記表示部への表示および前記選択範囲に含まれるラダープログラムの編集を制限するセキュリティ情報を前記選択範囲に含まれるラダープログラムに付加するステップを有すること、
    を特徴とする請求項15,17から26のいずれか1つに記載のラダープログラムの編集方法。
  28. 前記選択範囲の前記ラダープログラムをコピーして前記ラダープログラムにおける任意の位置に1つのプログラム部品として配置するステップを有すること、
    を特徴とする請求項15から27のいずれか1つに記載のラダープログラムの編集方法。
JP2018501386A 2016-09-14 2016-09-14 ラダープログラム編集支援装置およびラダープログラムの編集方法 Active JP6351899B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/077177 WO2018051441A1 (ja) 2016-09-14 2016-09-14 ラダープログラム編集支援装置およびラダープログラムの編集方法

Publications (2)

Publication Number Publication Date
JP6351899B1 JP6351899B1 (ja) 2018-07-04
JPWO2018051441A1 true JPWO2018051441A1 (ja) 2018-09-13

Family

ID=61619972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018501386A Active JP6351899B1 (ja) 2016-09-14 2016-09-14 ラダープログラム編集支援装置およびラダープログラムの編集方法

Country Status (5)

Country Link
US (1) US10719643B2 (ja)
JP (1) JP6351899B1 (ja)
CN (1) CN109690426B (ja)
DE (1) DE112016007220T5 (ja)
WO (1) WO2018051441A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3301569A1 (en) * 2016-09-30 2018-04-04 Omron Corporation Program development supporting apparatus, program development supporting method, and program development supporting program
JP2018190133A (ja) * 2017-05-01 2018-11-29 ファナック株式会社 ラダープログラム編集装置
JP6922431B2 (ja) * 2017-05-31 2021-08-18 オムロン株式会社 プログラム開発支援装置、プログラム開発支援方法、および、プログラム開発支援プログラム
JP7212496B2 (ja) * 2018-10-23 2023-01-25 株式会社キーエンス プログラマブルロジックコントローラシステム、プログラム作成支援装置およびコンピュータプログラム
JP6795568B2 (ja) * 2018-11-07 2020-12-02 ファナック株式会社 トレース装置及びプログラマブルコントローラ
JP7103214B2 (ja) * 2018-12-28 2022-07-20 オムロン株式会社 サポート装置および支援プログラム
WO2020174627A1 (ja) * 2019-02-27 2020-09-03 三菱電機株式会社 設計支援装置、設計支援方法および設計支援プログラム
JP7423895B2 (ja) 2019-03-12 2024-01-30 オムロン株式会社 ラダー図プログラム作成支援装置、ラダー図プログラム作成支援方法、およびラダー図プログラム作成支援プログラム
JP7067520B2 (ja) * 2019-03-28 2022-05-16 オムロン株式会社 開発支援装置、開発支援装置の制御方法、情報処理プログラム、および記録媒体
AT522186B1 (de) * 2019-05-20 2020-09-15 Dipl Ing Dipl Ing Fh Markus Gruber Computerimplementiertes Verfahren zur rechnergestützten Erzeugung eines ausführbaren Steuerungsprogramms zur Steuerung und/oder Regelung eines technischen Prozesses
JP7234810B2 (ja) * 2019-06-07 2023-03-08 オムロン株式会社 サポート装置およびサポートプログラム
JP7172864B2 (ja) * 2019-06-07 2022-11-16 オムロン株式会社 サポート装置およびサポートプログラム
JP6786014B1 (ja) * 2019-07-11 2020-11-18 三菱電機株式会社 通信システム、通信装置及びプログラム
JP2021149610A (ja) * 2020-03-19 2021-09-27 キヤノン株式会社 情報処理装置、情報処理方法、および物品の製造方法
US20230065428A1 (en) * 2020-03-26 2023-03-02 Mitsubishi Electric Corporation Programming support program storage medium, programming support device, and programming support method
DE102021003647A1 (de) * 2020-07-30 2022-02-03 Canon Kabushiki Kaisha Informationsverarbeitungsvorrichtung, Kontaktplanprogramm-Erzeugungsvorrichtung, Informationsverarbeitungsverfahren, Kontaktplanprogrammerzeugungsverfahren, Verfahren zum Herstellen eines Produkts, Programm und Aufzeichnungsmedium
CN113723614A (zh) * 2021-09-01 2021-11-30 北京百度网讯科技有限公司 用于辅助设计量子电路的方法、装置、设备和介质
CN117221146B (zh) * 2023-11-09 2024-01-23 成都科江科技有限公司 一种梯形图逻辑组态的界面布局系统及布局方法

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4038533A (en) * 1976-09-29 1977-07-26 Allen-Bradley Company Industrial control processor system
JP2526692B2 (ja) * 1990-03-02 1996-08-21 三菱電機株式会社 プログラマブルコントロ―ラのプログラミング方法
JPH05189012A (ja) 1992-01-10 1993-07-30 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置
JPH0830309A (ja) * 1994-07-14 1996-02-02 Fanuc Ltd シーケンス・プログラムの編集方式
US5781776A (en) * 1995-11-01 1998-07-14 Allen Bradley Company, Inc. Industrial controller permitting program editing during program execution
US5818711A (en) * 1996-09-30 1998-10-06 Allen Bradley Company, Llc Method for visually determining the status of program edits in an on-line programming environment
US5949674A (en) * 1997-11-04 1999-09-07 Allen-Bradley Company, Llc Reconstruction tool for editing distributed industrial controller programs
US6952811B1 (en) * 1998-07-30 2005-10-04 Mitsubishi Denki Kabushiki Kaisha Ladder circuit editing system
US6505341B1 (en) * 1998-11-10 2003-01-07 Scientronix, Inc. System and method for programming a logic control unit
JP2000163109A (ja) 1998-11-30 2000-06-16 Sharp Manufacturing System Kk ラダープログラミング装置及びラダープログラミング方法
JP3512658B2 (ja) 1998-12-28 2004-03-31 株式会社デジタル 産業用制御装置のプログラミング方法およびプログラミングシステム
CN1302375C (zh) * 1999-08-31 2007-02-28 迪吉多电子股份有限公司 编辑装置
JP3594035B2 (ja) * 2003-03-13 2004-11-24 オムロン株式会社 制御装置、cpuユニット、プログラマブルコントローラのユーザプログラム編集方法、及びオンラインエディットされる際のプログラマブルコントローラの処理方法
JP3910196B2 (ja) * 2004-10-21 2007-04-25 ファナック株式会社 シーケンスプログラムの編集装置
JP4766300B2 (ja) * 2005-01-24 2011-09-07 横河電機株式会社 プログラムの編集支援装置
US8296733B2 (en) * 2007-09-20 2012-10-23 Siemens Aktiengesellschaft Systems, devices, and/or methods for managing program logic units
CN102308263B (zh) * 2009-02-04 2014-05-07 三菱电机株式会社 梯形图程序编辑装置
JP2012079132A (ja) * 2010-10-01 2012-04-19 Fuji Electric Co Ltd ラダープログラム作成支援装置、そのプログラム
KR101477943B1 (ko) * 2010-12-09 2014-12-30 미쓰비시덴키 가부시키가이샤 산업용 자동 진단 장치
JP5785501B2 (ja) * 2012-01-12 2015-09-30 横河電機株式会社 ラダープログラム作成装置
KR20150127161A (ko) * 2013-03-07 2015-11-16 미쓰비시덴키 가부시키가이샤 래더 프로그램 표시 프로그램 및 래더 프로그램 표시 장치
SG11201601239PA (en) * 2013-08-21 2016-03-30 Mitsubishi Electric Corp Program for program editing
JP5987853B2 (ja) * 2014-02-19 2016-09-07 株式会社安川電機 ラダープログラム作成装置、コンピュータプログラム及びコンピュータ可読情報記録媒体
JP6212074B2 (ja) * 2015-06-29 2017-10-11 ファナック株式会社 最寄りのネットコメントを表示可能なラダープログラム編集装置

Also Published As

Publication number Publication date
US10719643B2 (en) 2020-07-21
JP6351899B1 (ja) 2018-07-04
CN109690426A (zh) 2019-04-26
WO2018051441A1 (ja) 2018-03-22
US20190236233A1 (en) 2019-08-01
DE112016007220T5 (de) 2019-06-06
CN109690426B (zh) 2021-08-20

Similar Documents

Publication Publication Date Title
JP6351899B1 (ja) ラダープログラム編集支援装置およびラダープログラムの編集方法
US6931288B1 (en) User interface and system for creating function block diagrams
KR101627488B1 (ko) 엔지니어링 툴, 프로그램 편집 장치 및 프로그램 편집 시스템
JPH0785137A (ja) Cadライブラリモデルの作成装置
JP5777837B2 (ja) プログラム開発支援装置およびその方法
KR101772785B1 (ko) 프로그램 그래프 표시 장치, 프로그램 그래프 표시 방법 및 프로그램 그래프 표시 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
Falkman et al. Automatic generation: A way of ensuring PLC and HMI standards
JP5785130B2 (ja) プログラム生成装置
JP2009116429A (ja) 制御プログラム作成装置および制御プログラム作成方法
CN108876309A (zh) 流程表单的启动方法、装置和存储介质以及电子设备
JP7067520B2 (ja) 開発支援装置、開発支援装置の制御方法、情報処理プログラム、および記録媒体
JP2015146117A (ja) エンジニアリング装置および制御ロジック検証方法
JP5253324B2 (ja) シーケンス制御装置、プログラム作成装置、及びインタープリター実行エンジン
JP2010033500A (ja) Guiデータ変換システムおよびguiデータ変換方法
JP2007310571A (ja) 制御プログラム作成装置、編集プログラム及びプログラム作成方法
JP6121706B2 (ja) プログラミング方法および装置
WO2020213129A1 (ja) デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム
JP2015148925A (ja) プログラム生成装置および方法
JP6566151B2 (ja) システム設計支援装置およびシステム設計支援方法
JP6407481B1 (ja) プログラム作成装置
JP2003223204A (ja) プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体
JP2008234379A (ja) ソフトウェア生成装置ならびにソフトウェア生成方法
JP2024004945A (ja) 設計装置および設計方法
JP2010134725A (ja) 制御モデル自動生成装置
US20230134007A1 (en) Support device, non-transitory computer-readable storage medium, and support method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180418

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180605

R150 Certificate of patent or registration of utility model

Ref document number: 6351899

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