JP2015201132A - プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 - Google Patents

プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 Download PDF

Info

Publication number
JP2015201132A
JP2015201132A JP2014081034A JP2014081034A JP2015201132A JP 2015201132 A JP2015201132 A JP 2015201132A JP 2014081034 A JP2014081034 A JP 2014081034A JP 2014081034 A JP2014081034 A JP 2014081034A JP 2015201132 A JP2015201132 A JP 2015201132A
Authority
JP
Japan
Prior art keywords
intermediate code
converter
program
executable file
reconverted
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
JP2014081034A
Other languages
English (en)
Other versions
JP6340886B2 (ja
Inventor
健一 池上
Kenichi Ikegami
健一 池上
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.)
JTEKT Corp
Original Assignee
JTEKT 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 JTEKT Corp filed Critical JTEKT Corp
Priority to JP2014081034A priority Critical patent/JP6340886B2/ja
Priority to US14/679,362 priority patent/US9921565B2/en
Priority to CN201510165723.1A priority patent/CN104977892B/zh
Priority to EP15162951.6A priority patent/EP2930574B1/en
Publication of JP2015201132A publication Critical patent/JP2015201132A/ja
Application granted granted Critical
Publication of JP6340886B2 publication Critical patent/JP6340886B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G05B19/052Linking several PLC's
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • 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
    • G05B2219/13004Programming the plc

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】2重化されたCPUを有するPLCに対して、それぞれのCPUを動作せるための別々の実行ファイルを、手間なく作成可能であり、コンバータソフトウェアの不具合によるPLCの緊急停止をより確実に防止可能であり、プログラムの保守のための記憶容量をより低減可能な、PLC用プログラムの作成支援装置及びPLC用プログラムの作成支援方法を提供する。
【解決手段】オリジナルプログラムから第1、第2中間コードを生成し、第1中間コードから逆変換プログラムを生成し、逆変換プログラムから再変換第1、再変換第2中間コードを生成し、第1(第2)中間コードと再変換第1(第2)中間コードの比較結果が一致した場合、再変換第1中間コードから第1実行ファイルを生成し、再変換第2中間コードから第2実行ファイルを生成し、PLCの第1制御手段に第1実行ファイルを転送して第2制御手段に第2実行ファイルを転送する。
【選択図】図4

Description

本発明は、プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法に関する。
プログラマブルロジックコントローラ(Programmable Logic Controller、以下、PLCと記載する)は、工場の自動機械の制御等に使用されている。PLCは、小型のコンピュータであり、プログラムで動作する中央処理装置(以下、CPUと記載する)を備え、プログラムの設計にはラダー回路(ラダー言語)が利用され、用途に合わせたシーケンスプログラムに適宜書き換えられて利用されている。そしてPLCには種々の入力機器(スイッチ、センサ等)からの導通状態に関する信号(ONまたはOFFの情報)が入力され、PLCは、種々の入力機器を所望する形態に組み合わせた(直列または並列に組み合わせた)シーケンスプログラムを用いて、出力機器(リレー、モータ等)を制御(ONまたはOFF信号を出力等)している。
PLCの中でも安全PLCと呼ばれるPLCは、CPU及びROMが2重化されており、2個のROMのそれぞれに、同一のラダー言語プログラムから作成された別々の実行ファイル(PLCにて実行可能な機械語コード)が搭載されている。そして、2重化されたCPUの出力が一致した場合に、その出力を用いてモータやリレー等の出力機器を制御している。すなわち、同一のラダー言語プラグラムから作成された異なる2つの実行ファイルを別々のCPUで実行してそれぞれの出力を照合することで、ラダー言語プログラムから実行ファイルまでの変換ソフトウェア等に予期せぬ不具合があった場合の緊急停止を未然に防止している。
従来では、別々の実行ファイルを作成する際、中間コードコンバータ(コンバータソフトウェア)を用いて、ラダー言語プログラムから機械的に中間コード(例えばSTA言語のプログラム)に変換し、この変換された中間コードを、設計者が一文ずつ確認して変換の不具合の有無を確認している。そして、この中間コードを、第1実行ファイルコンバータにて機械的に第1実行ファイルに変換し、第2実行ファイルコンバータにて機械的に第2実行ファイルに変換し、一方のCPUに第1実行ファイルを搭載し、他方のCPUに第2実行ファイルを搭載している。
また特許文献1には、PLCに実行ファイルでなく数値データプログラムを転送し、PLCは、数値データプログラムをコマンド毎に解釈して実行するインタプリタプログラムを備えている制御システムが開示されている。この構成では、PLCは、数値データプログラムを直接実行するのでなく、インタプリタプログラムにて解釈(機械語に翻訳)した内容を実行する。
また特許文献2には、例えば設備1の標準ラダーシーケンス1と設備2の標準ラダーシーケンス2とを合成したラダーシーケンス3を作成した場合、ラダーシーケンス3からシーケンスAとシーケンスBを取り出し、ブロック毎にニーモニックに展開し、展開したシーケンスを論理化してアドレス順に並び替えて比較することで、論理の矛盾や論理の重複を認識することが可能なシーケンス回路の照合方法が開示されている。
特開2006−235660号公報 特開平9−212212号公報
ラダー言語プログラムから機械的に中間コードに変換し、この変換された中間コードから第1実行ファイルと第2実行ファイルを作成する従来の方法では、機械的に変換された中間コード(例えばSTA言語プログラム)を設計者が一文ずつ確認する作業に、非常に手間と時間がかかってしまうので、あまり好ましくない。また、2種類の実行ファイルコンバータを用意して、1つの中間コードから別々の実行ファイルを作成しているが、ラダー言語プログラムから中間コードへの変換は1通りである。従って、このラダー言語プログラムから中間コードへ機械的に変換する中間コードコンバータ(コンバータソフトウェア)に不具合があった場合、設計者の一文ずつの確認を行っても発見できない可能性があり、PLCの緊急停止が発生する可能性が考えられるので、あまり好ましくない。
また、上記の方法に対して、中間コードコンバータ(コンバータソフトウェア)を2種類用意して、1つのラダー言語プログラムから別々の中間コードを作成し、この2種類の中間コードから、2種類の実行ファイルコンバータ(コンバータソフトウェア)を用いて、別々の実行ファイルを作成する方法も考えられるが、一連のプログラムの保守(メンテナンス)のためには、ラダー言語プログラムを保存する必要があり、多大な記憶容量を必要とする点で、あまり好ましくない(ラダー言語プログラムは中間コードや実行ファイルと比較して非常にサイズが大きい)。また、ラダー言語プログラムを保存する代わりに2種類の中間コードを保存してもよいが、2種類の中間コードを保存する分、(1種類の中間コードを保存する場合よりも)記憶容量を余分に必要とする点で、あまり好ましくない。
また特許文献1に記載の制御システムでは、インタプリタプログラムを搭載した特殊なPLCを対象としており、機械語の実行ファイルが搭載されて機械語で直接動作するPLCに対して動作が遅い。また、2重化された安全PLCのそれぞれのCPUにインタプリタプログラム、及び異なる数値データプログラムを搭載した場合、それぞれの数値データプログラムの解釈から実行されるまでの動作時間の差が大きくなる可能性が考えられる点で、好ましくない。
また特許文献2に記載のシーケンス回路の照合方法は、2重化された安全PLCのそれぞれのCPUに、それぞれ別々の実行ファイルを搭載する方法として適用できるものではない。
本発明は、このような点に鑑みて創案されたものであり、2重化されたCPUを有するPLCに対して、それぞれのCPUを動作させるための別々の実行ファイルを、手間なく作成可能であり、コンバータソフトウェアの不具合によるPLCの緊急停止をより確実に防止可能であり、プログラムの保守のための記憶容量をより低減可能な、プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法を提供することを課題とする。
上記課題を解決するため、本発明に係るプログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法は、次の手段をとる。本発明の第1の発明は、第1所定言語で記述されたプログラムから第2所定言語で記述された中間コードを生成する互いに異なる第1中間コードコンバータ及び第2中間コードコンバータと、前記第2所定言語で記述された中間コードから逆変換された前記第1所定言語で記述されたプログラムを生成する逆コンバータと、前記第2所定言語で記述された中間コードからプログラマブルロジックコントローラにて実行可能な実行ファイルを生成する互いに異なる第1実行ファイルコンバータ及び第2実行ファイルコンバータと、を有する。また、前記第1中間コードコンバータにて、前記第1所定言語で記述されたオリジナルプログラムから第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記第1中間コードの生成に用いた前記オリジナルプログラムから前記第1中間コードとは異なる第2中間コードを生成する、中間コード生成手段と、前記逆コンバータにて、前記第1中間コードから逆変換された逆変換プログラムを生成する、逆変換プログラム生成手段と、前記第1中間コードコンバータにて、前記逆変換プログラムから再変換第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記逆変換プログラムから前記再変換第1中間コードとは異なる再変換第2中間コードを生成する、再変換中間コード生成手段と、前記第1中間コードと前記再変換第1中間コードとを比較、あるいは前記第2中間コードと前記再変換第2中間コードとを比較する、中間コード照合手段と、前記中間コード照合手段による比較結果が一致した場合、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる第2実行ファイルを生成する、実行ファイル生成手段と、第1制御手段及び第1記憶手段と、第2制御手段及び第2記憶手段と、にて2重化された制御手段及び記憶手段を有するプログラマブルロジックコントローラにおける前記第1制御手段に前記第1実行ファイルを転送して前記第1記憶手段に前記第1実行ファイルを記憶させ、前記第2制御手段に前記第2実行ファイルを転送して前記第2記憶手段に前記第2実行ファイルを記憶させる、ファイル転送手段と、を有する、プログラマブルロジックコントローラ用プログラムの作成支援装置である。
次に、本発明の第2の発明は、上記第1の発明に係るプログラマブルロジックコントローラ用プログラムの作成支援装置であって、前記中間コード照合手段にて、前記第1中間コードと前記再変換第1中間コードとを比較するとともに、前記第2中間コードと前記再変換第2中間コードとを比較し、前記実行ファイル生成手段にて、前記中間コード照合手段による双方の比較結果がそれぞれ一致した場合に、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから前記第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる前記第2実行ファイルを生成する、プログラマブルロジックコントローラ用プログラムの作成支援装置である。
次に、本発明の第3の発明は、上記第1の発明または第2の発明に係るプログラマブルロジックコントローラ用プログラムの作成支援装置であって、前記ファイル転送手段にて、さらに、前記第1制御手段に前記第1中間コードを転送して前記第1記憶手段に前記第1中間コードを記憶させる、プログラマブルロジックコントローラ用プログラムの作成支援装置である。
次に、本発明の第4の発明は、上記第1の発明〜第3の発明のいずれか1つに係るプログラマブルロジックコントローラ用プログラムの作成支援装置であって、前記第1所定言語はラダー言語であり、前記第2所定言語はSTA言語である、プログラマブルロジックコントローラ用プログラムの作成支援装置である。
次に、本発明の第5の発明は、第1所定言語で記述されたプログラムから第2所定言語で記述された中間コードを生成する互いに異なる第1中間コードコンバータ及び第2中間コードコンバータと、前記第2所定言語で記述された中間コードから逆変換された前記第1所定言語で記述されたプログラムを生成する逆コンバータと、前記第2所定言語で記述された中間コードからプログラマブルロジックコントローラにて実行可能な実行ファイルを生成する互いに異なる第1実行ファイルコンバータ及び第2実行ファイルコンバータと、を備えたコンピュータを用いた、プログラマブルロジックコントローラ用プログラムの作成支援方法である。そして、前記第1中間コードコンバータにて、前記第1所定言語で記述されたオリジナルプログラムから第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記第1中間コードの生成に用いた前記オリジナルプログラムから前記第1中間コードとは異なる第2中間コードを生成する、中間コード生成ステップと、前記逆コンバータにて、前記第1中間コードから逆変換された逆変換プログラムを生成する逆変換プログラム生成ステップと、前記第1中間コードコンバータにて、前記逆変換プログラムから再変換第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記逆変換プログラムから前記再変換第1中間コードとは異なる再変換第2中間コードを生成する、再変換中間コード生成ステップと、前記第1中間コードと前記再変換第1中間コードとを比較、あるいは前記第2中間コードと前記再変換第2中間コードとを比較する、中間コード照合ステップと、前記中間コード照合ステップによる比較結果が一致した場合、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる第2実行ファイルを生成する、実行ファイル生成ステップと、第1制御手段及び第1記憶手段と、第2制御手段及び第2記憶手段と、にて2重化された制御手段及び記憶手段を有するプログラマブルロジックコントローラにおける前記第1制御手段に前記第1実行ファイルを転送して前記第1記憶手段に前記第1実行ファイルを記憶させ、前記第2制御手段に前記第2実行ファイルを転送して前記第2記憶手段に前記第2実行ファイルを記憶させる、ファイル転送ステップと、を有する、プログラマブルロジックコントローラ用プログラムの作成支援方法である。
第1の発明によれば、逆コンバータを用いて機械的に生成した第1所定言語で記述された逆変換プログラムから、2通りの中間コードコンバータ(コンバータソフトウェア)にて2通りの中間コードを機械的に生成した後、2通りの実行ファイルコンバータ(コンバータソフトウェア)にて2通りの実行ファイルを機械的に生成する。これにより、いずれかのコンバータソフトウェアに不具合があった場合、適切にPLCの出力を停止させることができるので、PLCの緊急停止をより確実に防止することが可能である。また、中間コード照合ステップにて、逆コンバータ(コンバータソフトウェア)に不具合があった場合であっても、不具合を発見することができる。また、中間コードを設計者が一文ずつ確認する作業を排除し、手間と時間を大幅に短縮することができる。
第2の発明によれば、第1中間コードと再変換第1中間コードとの照合に加えて、第2中間コードと再変換第2中間コードとの照合も行うことで、逆コンバータ(コンバータソフトウェア)の不具合を、より確実に発見することができる。
第3の発明によれば、逆変換プログラムの生成に用いた第1中間コードのみを保守用に保存しておくことで、逆変換プログラム、再変換第1中間コード、再変換第2中間コード、第1実行ファイル、第2実行ファイルを機械的に生成することができる。従って、容量の大きなオリジナルプログラムを保存しておく必要が無く、2通りの中間コードプログラムを保存しておく必要も無い。このため、保守のためのプログラムを保存する際の記憶容量をより低減することが可能である。
第4の発明によれば、設計者は、ラダー言語にてオリジナルプログラムを作成すればよいので、比較的容易にPLC用プログラムを設計することができる。また中間コードを(汎用性の高い)STA言語とすることで、仮に設計者が中間コードを確認する必要が発生した場合であっても適切に確認することが可能であるとともに、実行ファイル形式の異なる種々のCPUへの転用が容易となるので、非常に便利である。
第5の発明によれば、第1の発明のプログラマブルロジックコントローラ用プログラムの作成支援装置を適切に実現することができる。
PLCを構成する制御ユニットと、入力ユニットと、出力ユニットの外観の例を説明する斜視図である。 制御ユニットと、入力ユニットと、出力ユニットにて構成されたPLCのブロック構成及びPLC用プログラムの作成支援装置との接続の例を説明する図である。 PLC用プログラムの作成支援装置の処理手順を説明するフローチャートである。 PLC用プログラムの作成支援装置による図3に示した各処理にて各プログラム等が機械的に生成される様子を説明する図である。
以下に本発明を実施するための形態を図面を用いて説明する。
●[PLC1の外観(図1)]
図1に示すように、PLC1は、制御ユニット10、入力ユニット20、出力ユニット30にて構成されている。また入力ユニット20及び出力ユニット30は、入出力の数に応じて適宜増設される。入力ユニット20内には制御ユニット10と接続するためのコネクタ20Bを備えた入力ボード20Aが収容されており、複数の入力機器(スイッチ、センサ等)からの配線が接続される入力端子20Fが設けられている。出力ユニット30内には制御ユニット10と接続するためのコネクタ30Cを備えた出力ボード30Aが収容されており、複数の出力機器(リレー、モータ等)への配線が接続される出力端子30Gが設けられている。制御ユニット10内には入力ユニット20と接続するためのコネクタ10B、出力ユニット30と接続するためのコネクタ10C、を備えた制御ボード10Aが収容されており、パソコン等のPLC用プログラムの作成支援装置を接続可能なコネクタ11G、12G等が設けられている。また例えば、制御ユニット10には、異常が発生したことを報知する報知手段14が設けられている。
●[PLC1のブロック構成及び接続例(図2)]
次に図2を用いてPLC1のブロック構成及び接続の例について説明する。入力ユニット20の入力端子20Fには、複数の入力機器(スイッチ40A、センサ40B・・入力手段40N等)からの配線が接続され、複数の入力機器の導通状態に関する信号(ONまたはOFFの情報等)が入力される。入力された導通状態に関する信号は、インターフェース21A(以下、インターフェースをI/Fと記載する)及びコネクタ20Bを介して制御ユニット10に伝送される。
本実施の形態にて説明するPLC1(例えば安全PLC)は、制御手段及び記憶手段が2重化されている。制御ユニット10は、第1CPU11A(第1制御手段に相当)と第1RAM11Bと第1ROM11C(第1記憶手段に相当)にて構成された2重化された一方である第1制御手段及び第1記憶手段と、第2CPU12A(第2制御手段に相当)と第2RAM12Bと第2ROM12C(第2記憶手段に相当)にて構成された2重化された他方である第2制御手段及び第2記憶手段と、を備えている。また、第1ROM11C、第2ROM12Cには、EEPROM、FlashROM等の書替え可能なROMが用いられ、任意の入力機器を直列または並列に組み合わせて構成したシーケンスプログラム等である実行ファイルが記憶されている。
ユーザは、パーソナルコンピュータ等であるPLC用プログラムの作成支援装置50(以下、PLC用プログラムの作成支援装置50をPC50と記載する)を用いて、ラダー言語等を用いてオリジナルプログラム(ソースコード等)を作成可能である。そして、ユーザはPC50を用いて、同一のラダー言語プログラムから異なる2通りの実行ファイル(ネイティブコード)を生成し、一方の実行ファイルを第1ROM11Cに記憶させ、他方の実行ファイルを第2ROM12Cに記憶させる。なお、第1ROM11Cには、I/F11E及びコネクタ11Gを介してPC50と通信を行うプログラム等も格納されており、第2ROM12Cには、I/F12E及びコネクタ12Gを介してPC50と通信を行うプログラム等も格納されている。
第1CPU11Aは、第1ROM11Cに記憶されている第1実行ファイルと、コネクタ10B及びI/F11Dを介して入力ユニット20から入力される各入力機器からの導通状態に関する信号とに基づいた演算結果を、照合手段10Sに出力する。また、第2CPU12Aは、第2ROM12Cに記憶されている第2実行ファイルと、コネクタ10B及びI/F12Dを介して入力ユニット20から入力される各入力機器からの導通状態に関する信号とに基づいた演算結果を、照合手段10Sに出力する。例えば、照合手段10Sは、照合用回路であり、第1CPU11Aからの出力と第2CPU12Aからの出力が一致した場合に、一致した出力をI/F10T及びコネクタ10Cを介して出力ユニット30に出力する。また例えば、照合手段10Sは、第1CPU11Aからの出力と第2CPU12Aからの出力が一致しない場合は、I/F10Tへの出力を行わず、報知手段14(例えばLEDやブザー等)を作動させ、異常が発生したことを報知する。
出力ユニット30の出力端子30Gには、複数の出力機器(モータ42A、リレー42B・・出力手段42N等)への配線が接続される。そして出力ユニット30は、制御ユニット10にて求めた演算結果を、コネクタ30C及びI/F31Aを介して出力端子30Gに接続された出力機器に出力する。
●[PC50(PLC用プログラムの作成支援装置)の処理手順(図3、図4)]
次に図3及び図4を用いて、PC50(PLC用プログラムの作成支援装置)にて実施されるPLC用プログラムの作成支援の処理手順(図3参照)、及び各処理にて生成されるプログラム等(図4参照)について説明する。ユーザは、PC50あるいは他のパーソナルコンピュータ等を用いて、PLC1に搭載するためのシーケンスプログラムである実行ファイルのベースとなるオリジナルプログラムを作成し、作成したオリジナルプログラムをPC50に記憶させる。なお、本実施の形態の説明では、オリジナルプログラムはラダー言語で記述されているものとして説明する。
またPC50には、ラダー言語(第1所定言語に相当)で記述されたプログラム(いわゆるソースコード)からSTA言語(第2所定言語に相当)で記述された中間コードを生成する、互いに異なる第1中間コードコンバータ(コンバータソフトウェア)と第2中間コードコンバータ(コンバータソフトウェア)が記憶されている(インストールされている)。またPC50には、STA言語で記述された中間コードから逆変換されたプログラム(ラダー言語で記述されたプログラム)を生成する逆コンバータ(コンバータソフトウェア)が記憶されている(インストールされている)。またPC50には、STA言語にて記述された中間コードプログラムから、PLCにて実行可能な実行ファイル(機械語等のネイティブコード)を生成する、互いに異なる第1実行ファイルコンバータ(コンバータソフトウェア)と第2実行ファイルコンバータ(コンバータソフトウェア)が記憶されている(インストールされている)。以下、図3を用いて、上記の各コンバータソフトウェアがインストールされているPC50を用いた、PLC用プログラムの作成支援の処理手順について説明するとともに、図4を用いて、各処理にて生成されるプログラム等について説明する。
ステップS10にてPC50は、オリジナルプログラム(ラダー言語で記述されたソースコード)が選択されて実行開始の指示が入力されたか否かを判定し、オリジナルプログラムが選択されて実行開始の指示がされた場合(Yes)はステップS20に進み、そうでない場合(No)はステップS10に戻る。
ステップS20に進んだ場合、PC50は、第1中間コードコンバータを起動して、オリジナルプログラムから第1中間コードを生成(図4参照)してステップS25Aに進む。そしてステップS25AにてPC50は、第1中間コードコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS30に進み、エラーが有る場合(No)はステップS25Bに進んでエラーメッセージを表示して処理を終了する。ステップS30に進んだ場合、PC50は、第2中間コードコンバータを起動して、オリジナルプログラムから第2中間コードを生成(図4参照)してステップS35Aに進む。そしてステップS35AにてPC50は、第2中間コードコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS40に進み、エラーが有る場合(No)はステップS45Bに進んでエラーメッセージを表示して処理を終了する。このステップS20、S30の処理が、中間コード生成ステップに相当し、ステップS20、S30の処理を実行するPC50が、中間コード生成手段に相当する。
ステップS40に進んだ場合、PC50は、逆コンバータを起動して、ステップS20にて生成した第1中間コード(STA言語)から逆変換プログラム(ラダー言語)を生成(図4参照)してステップS45Aに進む。そしてステップS45AにてPC50は、逆コンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS50に進み、エラーが有る場合(No)はステップS45Bに進んでエラーメッセージを表示して処理を終了する。このステップS40の処理が、逆変換プログラム生成ステップに相当し、ステップS40の処理を実行するPC50が、逆変換プログラム生成手段に相当する。
ステップS50に進んだ場合、PC50は、第1中間コードコンバータを起動して、ステップS40にて生成した逆変換プログラム(ラダー言語)から再変換第1中間コード(STA言語)を生成(図4参照)してステップS55Aに進む。そしてステップS55AにてPC50は、第1中間コードコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS60に進み、エラーが有る場合(No)はステップS55Bに進んでエラーメッセージを表示して処理を終了する。ステップS60に進んだ場合、PC50は、第2中間コードコンバータを起動して、ステップS40にて生成した逆変換プログラム(ラダー言語)から再変換第2中間コード(STA言語)を生成(図4参照)してステップS65Aに進む。そしてステップS65AにてPC50は、第2中間コードコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS70に進み、エラーが有る場合(No)はステップS65Bに進んでエラーメッセージを表示して処理を終了する。このステップS50、S60の処理が、再変換中間コード生成ステップに相当し、ステップS50、S60の処理を実行するPC50が、再変換中間コード生成手段に相当する。
ステップS70に進んだ場合、PC50は、ステップS20にて生成した第1中間コードと、ステップS50にて生成した再変換第1中間コードとを比較(図4参照)して、一致する場合(Yes)はステップS80に進み、一致しない場合(No)はステップS75Bに進んでエラーメッセージを表示して処理を終了する。ステップS80に進んだ場合、PC50は、ステップS30にて生成した第2中間コードと、ステップS60にて生成した再変換第2中間コードとを比較(図4参照)して、一致する場合(Yes)はステップS110に進み、一致しない場合(No)はステップS85Bに進んでエラーメッセージを表示して処理を終了する。このステップS70、S80の処理が、中間コード照合ステップに相当し、ステップS70、S80の処理を実行するPC50が、中間コード照合手段に相当する。なお、図3に示す処理では、第1中間コードと再変換第1中間コードとが一致、且つ第2中間コードと再変換第2中間コードとが一致した場合に、後述する実行ファイル生成ステップを実行しているが、第1中間コードと再変換第1中間コードとが一致、あるいは第2中間コードと再変換第2中間コードとが一致、のいずれかが成立した場合に後述する実行ファイル生成ステップを実行するようにしてもよい。つまり、ステップS70とステップS80のいずれか一方を省略してもよい。
ステップS110に進んだ場合、PC50は、第1実行ファイルコンバータを起動して、ステップS50にて生成した再変換第1中間コード(STA言語)から第1実行ファイル(機械語)を生成(図4参照)してステップS115Aに進む。そしてステップS115AにてPC50は、第1実行ファイルコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS120に進み、エラーが有る場合(No)はステップS115Bに進んでエラーメッセージを表示して処理を終了する。ステップS120に進んだ場合、PC50は、第2実行ファイルコンバータを起動して、ステップS60にて生成した再変換第2中間コード(STA言語)から第2実行ファイル(機械語)を生成(図4参照)してステップS125Aに進む。そしてステップS125AにてPC50は、第2実行ファイルコンバータによる生成時のエラーの有無を判定し、エラーが無い場合(Yes)はステップS130に進み、エラーが有る場合(No)はステップS125Bに進んでエラーメッセージを表示して処理を終了する。このステップS110、S120の処理が、実行ファイル生成ステップに相当し、ステップS110、S120の処理を実行するPC50が、実行ファイル生成手段に相当する。
ステップS130に進んだ場合、PC50は、ステップS110にて生成した第1実行ファイルを、コネクタ11G及びI/F11Eを介して第1CPU11Aに転送(図4参照)して第1ROM11Cに第1実行ファイルを記憶させ(図2参照)、ステップS135Aに進む。そしてステップS135AにてPC50は、第1実行ファイルの転送等によるエラーの有無を判定し、エラーが無い場合(Yes)はステップS140に進み、エラーが有る場合(No)はステップS135Bに進んでエラーメッセージを表示して処理を終了する。ステップS140に進んだ場合、PC50は、ステップS120にて生成した第2実行ファイルを、コネクタ12G及びI/F12Eを介して第2CPU12Aに転送(図4参照)して第2ROM12Cに第2実行ファイルを記憶させ(図2参照)、ステップS145Aに進む。そしてステップS145AにてPC50は、第2実行ファイルの転送等によるエラーの有無を判定し、エラーが無い場合(Yes)はステップS150に進み、エラーが有る場合(No)はステップS145Bに進んでエラーメッセージを表示して処理を終了する。このステップS130、S140の処理が、ファイル転送ステップに相当し、ステップS130、S140の処理を実行するPC50が、ファイル転送手段に相当する。
ステップS150に進んだ場合、PC50は、ステップS20にて生成した第1中間コードを、コネクタ11G及びI/F11Eを介して第1CPU11Aに転送(図4参照)して第1ROM11Cに第1中間コードを記憶させ(図2参照)、ステップS155Aに進む。そしてステップS155AにてPC50は、第1中間コードの転送等によるエラーの有無を判定し、エラーが無い場合(Yes)は処理を終了し、エラーが有る場合(No)はステップS155Bに進んでエラーメッセージを表示して処理を終了する。またファイル転送ステップに、このステップS150を含めてもよい。また、ステップS150〜S155Bの処理は、省略してもよい。
この第1中間コードを第1ROM11Cに記憶するステップは、保守のためのプログラムの保存であり、当該第1中間コードを残しておけば、逆変換プログラム、再変換第1中間コード、再変換第2中間コード、第1実行ファイル、第2実行ファイルを、各コンバータソフトウェアにて機械的に生成することができる。従って、ラダー言語で記述されたオリジナルプログラムや逆変換プログラムを記憶しておく必要がない。この場合、STA言語の中間コードのサイズは、ラダー言語のプログラムの約1/16のサイズであるので、記憶容量を大きく削減することができる。また、第1中間コードと第2中間コードの2通りの中間コードを記憶しておく必要も無く、第1中間コードのみを記憶しておけばよい。
また、本実施の形態にて説明したPLC用プログラムの作成支援方法は、第1所定言語のオリジナルプログラムから、2通りの中間コードコンバータ(コンバータソフトウェア)を用いて、2通りの中間コードを生成し、2通りの実行ファイルコンバータ(コンバータソフトウェア)を用いて、2通りの中間コードから2通りの実行ファイルを生成している。これにより、いずれかのコンバータソフトウェアに不具合があった場合、適切にPLCの出力を停止させることができるので、PLCの緊急停止をより確実に防止することが可能である。また、ステップS70にて第1中間コードと再変換第1中間コードとを機械的に比較し、ステップS80にて第2中間コードと再変換第2中間コードとを機械的に比較することで、中間コードを設計者が一文ずつ確認していた従来の作業を排除し、手間と時間を短縮することができる。また、中間コード照合ステップにて、逆コンバータ(コンバータソフトウェア)に不具合があった場合であっても、適切に不具合を発見することができる。
また、第1中間コードコンバータと、第2中間コードコンバータと、逆コンバータと、第1実行ファイルコンバータと、第2実行ファイルコンバータと、が記憶された記憶手段と、第1中間コードコンバータと、第2中間コードコンバータと、逆コンバータと、第1実行ファイルコンバータと、第2実行ファイルコンバータと、を適宜実行して、中間コード生成ステップと、逆変換プログラム生成ステップと、再変換中間コード生成ステップと、中間コード照合ステップと、実行ファイル生成ステップと、ファイル転送ステップと、を実行する制御手段と、を有するPLC用プログラムの作成支援装置(PC50)は、比較的容易に実現することができる。
本発明のプログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法は、本実施の形態にて説明した処理手順、構成、外観等に限定されず、本発明の要旨を変更しない範囲で種々の変更、追加、削除が可能である。また本実施の形態にて説明したプログラマブルロジックコントローラは、本実施の形態にて説明した構成、構造、外観、形状等に限定されず、本発明の要旨を変更しない範囲で種々の変更、追加、削除が可能である。
また、本実施の形態の説明では、第1所定言語としてラダー言語、第2所定言語としてSTA言語、を用いた例を説明したが、第1所定言語はラダー言語に限定されず、第2所定言語はSTA言語に限定されるものではない。また、本実施の形態の説明に用いた数値は一例であり、この数値に限定されるものではない。また本実施の形態の説明では、第1中間コードから逆変換プログラムを生成して第1中間コードを第1ROMに記憶したが、第2中間コードから逆変換プログラムを生成して第2中間コードを第2ROMに記憶するようにしてもよい。
1 PLC(プログラマブルロジックコントローラ)
10 制御ユニット
10S 照合手段
11A 第1CPU(第1制御手段)
11B 第1RAM
11C 第1ROM(第1記憶手段)
12A 第2CPU(第2制御手段)
12B 第2RAM
12C 第2ROM(第2記憶手段)
14 報知手段
20 入力ユニット
30 出力ユニット
50 PC(PLC用プログラムの作成支援装置)

Claims (5)

  1. 第1所定言語で記述されたプログラムから第2所定言語で記述された中間コードを生成する互いに異なる第1中間コードコンバータ及び第2中間コードコンバータと、
    前記第2所定言語で記述された中間コードから逆変換された前記第1所定言語で記述されたプログラムを生成する逆コンバータと、
    前記第2所定言語で記述された中間コードからプログラマブルロジックコントローラにて実行可能な実行ファイルを生成する互いに異なる第1実行ファイルコンバータ及び第2実行ファイルコンバータと、
    前記第1中間コードコンバータにて、前記第1所定言語で記述されたオリジナルプログラムから第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記第1中間コードの生成に用いた前記オリジナルプログラムから前記第1中間コードとは異なる第2中間コードを生成する、中間コード生成手段と、
    前記逆コンバータにて、前記第1中間コードから逆変換された逆変換プログラムを生成する、逆変換プログラム生成手段と、
    前記第1中間コードコンバータにて、前記逆変換プログラムから再変換第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記逆変換プログラムから前記再変換第1中間コードとは異なる再変換第2中間コードを生成する、再変換中間コード生成手段と、
    前記第1中間コードと前記再変換第1中間コードとを比較、あるいは前記第2中間コードと前記再変換第2中間コードとを比較する、中間コード照合手段と、
    前記中間コード照合手段による比較結果が一致した場合、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる第2実行ファイルを生成する、実行ファイル生成手段と、
    第1制御手段及び第1記憶手段と、第2制御手段及び第2記憶手段と、にて2重化された制御手段及び記憶手段を有するプログラマブルロジックコントローラにおける前記第1制御手段に前記第1実行ファイルを転送して前記第1記憶手段に前記第1実行ファイルを記憶させ、前記第2制御手段に前記第2実行ファイルを転送して前記第2記憶手段に前記第2実行ファイルを記憶させる、ファイル転送手段と、を有する、
    プログラマブルロジックコントローラ用プログラムの作成支援装置。
  2. 請求項1に記載のプログラマブルロジックコントローラ用プログラムの作成支援装置であって、
    前記中間コード照合手段にて、前記第1中間コードと前記再変換第1中間コードとを比較するとともに、前記第2中間コードと前記再変換第2中間コードとを比較し、
    前記実行ファイル生成手段にて、前記中間コード照合手段による双方の比較結果がそれぞれ一致した場合に、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから前記第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる前記第2実行ファイルを生成する、
    プログラマブルロジックコントローラ用プログラムの作成支援装置。
  3. 請求項1または2に記載のプログラマブルロジックコントローラ用プログラムの作成支援装置であって、
    前記ファイル転送手段にて、さらに、前記第1制御手段に前記第1中間コードを転送して前記第1記憶手段に前記第1中間コードを記憶させる、
    プログラマブルロジックコントローラ用プログラムの作成支援装置。
  4. 請求項1〜3のいずれか一項に記載のプログラマブルロジックコントローラ用プログラムの作成支援装置であって、
    前記第1所定言語はラダー言語であり、前記第2所定言語はSTA言語である、
    プログラマブルロジックコントローラ用プログラムの作成支援装置。
  5. 第1所定言語で記述されたプログラムから第2所定言語で記述された中間コードを生成する互いに異なる第1中間コードコンバータ及び第2中間コードコンバータと、
    前記第2所定言語で記述された中間コードから逆変換された前記第1所定言語で記述されたプログラムを生成する逆コンバータと、
    前記第2所定言語で記述された中間コードからプログラマブルロジックコントローラにて実行可能な実行ファイルを生成する互いに異なる第1実行ファイルコンバータ及び第2実行ファイルコンバータと、を備えたコンピュータを用いて、
    前記第1中間コードコンバータにて、前記第1所定言語で記述されたオリジナルプログラムから第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記第1中間コードの生成に用いた前記オリジナルプログラムから前記第1中間コードとは異なる第2中間コードを生成する、中間コード生成ステップと、
    前記逆コンバータにて、前記第1中間コードから逆変換された逆変換プログラムを生成する逆変換プログラム生成ステップと、
    前記第1中間コードコンバータにて、前記逆変換プログラムから再変換第1中間コードを生成するとともに、前記第2中間コードコンバータにて、前記逆変換プログラムから前記再変換第1中間コードとは異なる再変換第2中間コードを生成する、再変換中間コード生成ステップと、
    前記第1中間コードと前記再変換第1中間コードとを比較、あるいは前記第2中間コードと前記再変換第2中間コードとを比較する、中間コード照合ステップと、
    前記中間コード照合ステップによる比較結果が一致した場合、前記第1実行ファイルコンバータにて、前記再変換第1中間コードから第1実行ファイルを生成し、前記第2実行ファイルコンバータにて、前記再変換第2中間コードから前記第1実行ファイルとは異なる第2実行ファイルを生成する、実行ファイル生成ステップと、
    第1制御手段及び第1記憶手段と、第2制御手段及び第2記憶手段と、にて2重化された制御手段及び記憶手段を有するプログラマブルロジックコントローラにおける前記第1制御手段に前記第1実行ファイルを転送して前記第1記憶手段に前記第1実行ファイルを記憶させ、前記第2制御手段に前記第2実行ファイルを転送して前記第2記憶手段に前記第2実行ファイルを記憶させる、ファイル転送ステップと、を有する、
    プログラマブルロジックコントローラ用プログラムの作成支援方法。

JP2014081034A 2014-04-10 2014-04-10 プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 Expired - Fee Related JP6340886B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014081034A JP6340886B2 (ja) 2014-04-10 2014-04-10 プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法
US14/679,362 US9921565B2 (en) 2014-04-10 2015-04-06 Programming assist device for programmable logic controller program and programming assist method for the program
CN201510165723.1A CN104977892B (zh) 2014-04-10 2015-04-09 可编程逻辑控制器用程序的创建支持装置和创建支持方法
EP15162951.6A EP2930574B1 (en) 2014-04-10 2015-04-09 Programming assist device for programmable logic controller program and programming assist method for the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014081034A JP6340886B2 (ja) 2014-04-10 2014-04-10 プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法

Publications (2)

Publication Number Publication Date
JP2015201132A true JP2015201132A (ja) 2015-11-12
JP6340886B2 JP6340886B2 (ja) 2018-06-13

Family

ID=52823514

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014081034A Expired - Fee Related JP6340886B2 (ja) 2014-04-10 2014-04-10 プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法

Country Status (4)

Country Link
US (1) US9921565B2 (ja)
EP (1) EP2930574B1 (ja)
JP (1) JP6340886B2 (ja)
CN (1) CN104977892B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021049727A1 (ko) * 2019-09-11 2021-03-18 엘에스일렉트릭 주식회사 피엘씨 시스템의 오류 상태 제어방법
CN115066676A (zh) * 2020-02-14 2022-09-16 三菱电机株式会社 控制系统、程序创建辅助装置、程序创建辅助方法及程序创建辅助程序

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3413147B1 (en) * 2017-06-07 2022-03-23 Brooks Automation (Germany) GmbH Method for controlling a plc using a pc program
CN109032056B (zh) * 2018-06-13 2020-01-10 华东师范大学 可编程逻辑控制器编程语言转换方法
JP6950665B2 (ja) * 2018-11-02 2021-10-13 横河電機株式会社 エンジニアリング装置、エンジニアリング装置の制御方法及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134880A (ja) * 1991-06-05 1993-06-01 Fujitsu Ltd デイジタル計算機
JPH09230915A (ja) * 1996-02-26 1997-09-05 Matsushita Electric Works Ltd プログラミング装置
JP2001022412A (ja) * 1999-07-09 2001-01-26 Toshiba Corp プログラミング装置及びプログラマブルコントローラ並びにプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2010244213A (ja) * 2009-04-02 2010-10-28 Fuji Electric Systems Co Ltd プログラマブルコントローラ、プログラム実行監視方法及びプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2927484B2 (ja) * 1989-01-25 1999-07-28 株式会社日立製作所 プログラムの自動生成方法及び装置
JP3449095B2 (ja) 1996-02-01 2003-09-22 日産自動車株式会社 シーケンス回路の照合方法
US6654953B1 (en) * 1998-10-09 2003-11-25 Microsoft Corporation Extending program languages with source-program attribute tags
US7543015B2 (en) * 2002-01-16 2009-06-02 Xerox Corporation Symmetrical structural pattern matching
JP3606281B2 (ja) * 2002-06-07 2005-01-05 オムロン株式会社 プログラマブルコントローラ及びcpuユニット並びに特殊機能モジュール及び二重化処理方法
US20050193378A1 (en) * 2004-03-01 2005-09-01 Breault Richard E. System and method for building an executable program with a low probability of failure on demand
JP4349231B2 (ja) * 2004-07-30 2009-10-21 株式会社ジェイテクト プログラマブルコントローラ
US7389499B2 (en) * 2004-10-21 2008-06-17 International Business Machines Corporation Method and apparatus for automatically converting numeric data to a processor efficient format for performing arithmetic operations
US7418676B2 (en) * 2005-01-19 2008-08-26 Seiko Epson Corporation Asynchronous circuit design tool and computer program product
JP4443436B2 (ja) 2005-02-21 2010-03-31 セイコーインスツル株式会社 制御システムおよび制御方法
US7844958B2 (en) * 2005-03-11 2010-11-30 Aptana, Inc. System and method for creating target byte code
DE202006000135U1 (de) * 2006-01-05 2006-04-20 Framework Systems Gmbh Vorrichtung zum Erzeugen von Programmcode eines Nutzerprogrammes
JP5168012B2 (ja) 2008-07-28 2013-03-21 株式会社ジェイテクト プログラマブルコントローラのプログラム編集装置
US8327316B2 (en) * 2008-09-30 2012-12-04 Ics Triplex Isagraf Inc. Compilation model
JP5576605B2 (ja) * 2008-12-25 2014-08-20 パナソニック株式会社 プログラム変換装置およびプログラム変換方法
CN101776877A (zh) * 2009-01-12 2010-07-14 鸿富锦精密工业(深圳)有限公司 可编程逻辑控制器程序编辑系统及方法
EP2729855A1 (de) * 2011-07-06 2014-05-14 Abb Ag Verfahren und vorrichtung zur programmierung und konfigurierung einer speicherprogrammierbaren steuereinrichtung
CN102929214A (zh) * 2011-08-11 2013-02-13 西门子公司 一种嵌入式多处理单元并行处理系统及其运行方法
US20140282369A1 (en) * 2013-03-14 2014-09-18 Adminovate, Inc. Software application generator
TWI622931B (zh) * 2013-03-19 2018-05-01 動態微型系統公司 工具模型及方法
EP2799981A1 (en) * 2013-04-29 2014-11-05 Siemens Aktiengesellschaft Method for providing code, code generator and software development environment
US9411920B2 (en) * 2013-05-14 2016-08-09 National Instruments Corporation Specifying and implementing relative hardware clocking in a high level programming language

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134880A (ja) * 1991-06-05 1993-06-01 Fujitsu Ltd デイジタル計算機
JPH09230915A (ja) * 1996-02-26 1997-09-05 Matsushita Electric Works Ltd プログラミング装置
JP2001022412A (ja) * 1999-07-09 2001-01-26 Toshiba Corp プログラミング装置及びプログラマブルコントローラ並びにプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2010244213A (ja) * 2009-04-02 2010-10-28 Fuji Electric Systems Co Ltd プログラマブルコントローラ、プログラム実行監視方法及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021049727A1 (ko) * 2019-09-11 2021-03-18 엘에스일렉트릭 주식회사 피엘씨 시스템의 오류 상태 제어방법
CN114375426A (zh) * 2019-09-11 2022-04-19 Ls电气株式会社 Plc系统的错误状态控制方法
CN115066676A (zh) * 2020-02-14 2022-09-16 三菱电机株式会社 控制系统、程序创建辅助装置、程序创建辅助方法及程序创建辅助程序
CN115066676B (zh) * 2020-02-14 2023-06-09 三菱电机株式会社 控制系统、程序创建辅助装置、程序创建辅助方法及计算机可读取的记录介质

Also Published As

Publication number Publication date
CN104977892A (zh) 2015-10-14
JP6340886B2 (ja) 2018-06-13
EP2930574A3 (en) 2015-11-25
EP2930574A2 (en) 2015-10-14
CN104977892B (zh) 2019-03-26
EP2930574B1 (en) 2018-08-01
US9921565B2 (en) 2018-03-20
US20150293515A1 (en) 2015-10-15

Similar Documents

Publication Publication Date Title
JP6340886B2 (ja) プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法
JP4442524B2 (ja) 安全plc
JP4893931B2 (ja) セーフティ・コントローラ
JP6127755B2 (ja) 情報処理装置、情報処理装置の制御方法および制御プログラム
US9696692B2 (en) Industrial automation control system
JP5830952B2 (ja) インバータ装置
JP4820265B2 (ja) エンジニアリング装置
JP2009009505A (ja) Plc
JP6139386B2 (ja) プログラマブルコントローラ
US9176734B2 (en) Ladder program creation apparatus
US20130116804A1 (en) Method for automatically transferring a configuration of an automation device during replacement of an automation device
JP2019160079A (ja) 開発支援装置、開発支援方法、および開発支援プログラム
JP2009223398A (ja) 産業用コントローラ
JP5921781B2 (ja) プログラマブルコントローラおよびプログラマブルコントローラの制御方法
JP2019016037A (ja) プログラム作成装置
JP2008269553A (ja) サーボモータ制御装置およびその方法
JP2009187373A (ja) プログラマブルコントローラ
JP5725974B2 (ja) 受配電監視制御システム
JP2007304939A (ja) プログラマブルコントローラおよびモニタ
JP2008165324A (ja) プログラム作成支援装置
JP2007039206A (ja) エレベーター制御システム
CN105320030A (zh) 工程装置、工程系统以及下载处理方法
KR20120102240A (ko) 이중화 plc 시스템 및 이의 데이터 동기화 방법
JP2011238079A (ja) 制御プログラム開発支援装置
JP2014098985A (ja) 安全スレーブユニット、その制御方法、その制御プログラム、および安全制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180430

R150 Certificate of patent or registration of utility model

Ref document number: 6340886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees