JP6129444B1 - エンジニアリングツール - Google Patents

エンジニアリングツール Download PDF

Info

Publication number
JP6129444B1
JP6129444B1 JP2016567885A JP2016567885A JP6129444B1 JP 6129444 B1 JP6129444 B1 JP 6129444B1 JP 2016567885 A JP2016567885 A JP 2016567885A JP 2016567885 A JP2016567885 A JP 2016567885A JP 6129444 B1 JP6129444 B1 JP 6129444B1
Authority
JP
Japan
Prior art keywords
program
control
engineering tool
display area
time phase
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
JP2016567885A
Other languages
English (en)
Other versions
JPWO2017138156A1 (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 JP6129444B1 publication Critical patent/JP6129444B1/ja
Publication of JPWO2017138156A1 publication Critical patent/JPWO2017138156A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/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
    • G05B19/054Input/output
    • 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/13052Display of ladder diagram
    • 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/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24034Model checker, to verify and debug control software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)

Abstract

エンジニアリングツールは、表示装置(62)の表示画面(62a)に表示され、かつラダープログラム(RP)を表示する表示領域(62a1)と、時相演算子付与領域であるセル(C1)と、を備える。時相演算子付与領域であるセル(C1)は、表示領域(62a1)に表示され、かつラダープログラム(RP)のプログラムモジュール(RPM1)に時相演算子(TO1)を付与する領域である。エンジニアリングツールは、制御仕様編集部と、制御仕様記述式変換部とを備える。制御仕様編集部は、プログラムモジュール(RPM1)を作成する。制御仕様記述式変換部は、プログラムモジュール(RPM1)をモデル検査プログラムに入力可能な数式に変換する。

Description

本発明は、制御プログラムを作成するエンジニアリングツールに関する。
従来のエンジニアリングツールを使った制御プログラムの動作確認は、実際の制御対象機器あるいはシミュレータにエンジニアリングツールを接続して行われる。動作確認は、確認したい制御プログラムを実行し、ユーザがその状態をモニタし確認するという手法により一般的に行われる。また、動作確認は、ユーザが入力し設定することにより制御プログラムの初期値の設定及び実行時のパラメータの設定を行っていた。
上記従来方法は、制御プログラムの実行から確認まで、ユーザの操作が多く時間がかかる問題がある。また、上記方法は、網羅的な動作を確認するためには、ユーザが初期値の設定及び実行時のパラメータの設定をしておく必要があり、その初期値及びパラメータの作成に時間がかかっていた。
上記従来方法の問題に対して、モデル検査プログラムを用いて制御プログラムの動作確認を行う装置が提案されている(特許文献1参照)。
特開平7−72787号公報
しかしながら、特許文献1に示された装置は、制御対象機器が実行する動作及び実行しない動作を規定する制御仕様の入力方法が明らかではない。このため、特許文献1に示された装置は、モデル検査プログラムを用いた動作確認を行うためには制御仕様の入力に工夫が必要である。
本発明は、上記に鑑みてなされたものであって、制御対象機器の制御仕様を容易に入力することができるエンジニアリングツールを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、表示装置の表示画面に表示され、かつ制御仕様記述式を表示する表示領域と、時相演算子付与領域と、を備えるエンジニアリングツールである。時相演算子付与領域は、表示領域に表示され、かつ制御仕様記述式のプログラムモジュールに時相演算子を付与する領域である。
本発明に係るエンジニアリングツールは、制御対象機器の制御仕様を容易に入力することができるという効果を奏する。
実施の形態1に係るエンジニアリングツールが備えられる制御システムの構成を示す図 図1に示されたエンジニアリングツールの表示装置の表示画面の一例を示す図 図1に示されたエンジニアリングツールの表示装置の表示画面の第1の表示領域に表示されるラダープログラムの一例を示す図 図3に示されたラダープログラムの第1のプログラムモジュールを作成する過程を示す図 図3に示されたラダープログラムの第2のプログラムモジュールを作成する過程を示す図 実施の形態1に係るエンジニアリングツールのハードウェア構成を示す図 実施の形態1に係るエンジニアリングツールにより作成されたSFCプログラムの一例を示す図 図7に示されたSFCプログラムの出力プログラムソースコードを変換して得た状態遷移モデルを示す図 図7に示されたSFCプログラムの動作確認に用いられるラダープログラムの一例を示す図
以下に、本発明の実施の形態に係るエンジニアリングツールを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、実施の形態1に係るエンジニアリングツールが備えられる制御システムの構成を示す図である。図2は、図1に示されたエンジニアリングツールの表示装置の表示画面の一例を示す図である。制御システム1は、FA(Factory Automation)分野の設備を構成するものであり、図1に示すように、設備に設置される複数の制御対象機器2,3,4と、複数の制御対象機器2,3,4に接続した制御装置5と、制御装置5に接続したエンジニアリングツール6と、を備える。制御対象機器2,3,4は、設備に設置されるスイッチ、調整弁、電磁弁、モータ、又はポンプであり、動作を実施する駆動機器である。実施の形態1において、制御システム1は、制御対象機器2,3,4を三つ備えるが、制御対象機器2,3,4を三つ以外の数備えても良く、制御対象機器2,3,4を少なくとも一つ以上備えれば良い。
エンジニアリングツール6は、コンピュータプログラムを実行するコンピュータである。エンジニアリングツール6は、制御装置5を介して、制御対象機器2,3,4に接続している。エンジニアリングツール6は、制御装置5で実行される制御プログラムであるSFC(Sequential Function Chart)プログラムSPを生成して、制御装置5に送信する。制御装置5は、SFCプログラムSPを実行することにより、制御対象機器2,3,4を制御する。実施の形態1において、制御装置5は、プログラマブルコントローラ(JIS B 3502:2011、programmable controllers(PLC))であるが、PLCに限定されない。
エンジニアリングツール6は、作成したSFCプログラムSPの動作確認を実行する装置でもある。エンジニアリングツール6は、図1に示すように、ユーザからの操作入力を受け付ける入力装置61と、文字及び画像を表示する図2に示す表示画面62aを有する表示装置62と、を備える。エンジニアリングツール6は、SFCプログラムSPを作成するための制御作成プログラム、SFCプログラムSPの動作確認を実行するためのモデル検査プログラムMP及び作成したSFCプログラムSPを記憶する記憶装置63と、SFCプログラムSPの作成及び動作確認を実行する演算部10とを備える。
制御作成プログラム、SFCプログラムSP及びモデル検査プログラムMPは、コンピュータであるエンジニアリングツール6が実行可能なコンピュータプログラムであり、エンジニアリングツールプログラムである。表示装置62は、エンジニアリングツール6が制御作成プログラムを実行すると、図2に示すように、表示画面62aに第1の表示領域62a1と、第2の表示領域62a2とが表示される。即ち、エンジニアリングツール6は、制御作成プログラムを実行することにより、表示画面62aに表示された第1の表示領域62a1と、表示画面62aに表示された第2の表示領域62a2とを備えることとなる。第1の表示領域62a1は、制御仕様記述式であるラダープログラムRPを表示する表示領域である。ラダープログラムRPは、ラダー(Ladder:LD)言語で記述されたラダープログラムである。ラダー言語は、IEC(国際電機標準会議) 61131−3及びJIS(日本工業規格) B 3503:2012により規定された言語である。実施の形態1において、第1の表示領域62a1は、表示画面62aの下端部に表示されるが、これに限定されない。実施の形態1において、エンジニアリングツール6は、制御仕様記述式としてラダープログラムRPを表示するが、制御仕様記述式として表示するのはラダープログラムRPに限定されない。
実施の形態1において、ラダープログラムRPは、第1の表示領域62a1の図2中左端に上下方向に直線状に延びた母線BLと、母線BLに連なりかつ母線BLに交差する図2中の左右方向に延びた複数の複数のプログラムモジュールRPMとを備える。実施の形態1において、プログラムモジュールRPMは、制御対象機器2,3,4の制御仕様を規定するものである。制御仕様とは、制御対象機器2,3,4の動作を規定するものである。制御仕様は、制御対象機器2,3,4が常に実行する動作、制御対象機器2,3,4が将来実行する動作、又は制御対象機器2,3,4相互の動作が実行されるタイミングの関係を示すものである。
プログラムモジュールRPMは、制御対象機器2,3,4の動作を示しかつ図2中の左右方向又は上下方向に並べられる要素Eと、要素E同士又は要素Eと母線BLとを接続する接続線Lとを備える。プログラムモジュールRPMは、要素Eの配置及び接続線Lの接続関係により制御対象機器2,3,4の制御仕様を規定する。
第2の表示領域62a2は、制御対象機器2,3,4を制御するSFCプログラムSPを表示する表示領域である。実施の形態1において、第2の表示領域62a2は、表示画面62aの第1の表示領域62a1の上方に二つ表示されるが、これに限定されない。
実施の形態1において、SFCプログラムSPは、制御対象機器2,3,4の動作が付属するステップSと、複数のステップS間の遷移条件が付属するトランジションTJと、接続線LAとを備える。SFCプログラムSPは、ステップSと、トランジションTJとを上下方向に交互に配置し、接続線LAによりステップSとトランジションTJとを接続する。SFCプログラムSPは、複数のステップSのうち上方のステップSから順に、それぞれのステップSに付属した動作を実行し、動作を実行しているステップSに接続線LAにより接続したトランジションTJに付属した遷移条件を満たすと、動作実行中のステップSに付属した動作を停止する。SFCプログラムSPは、遷移条件を満たしたトランジションTJに接続線LAにより接続したステップSに付属した動作を実行する。
演算部10は、図1に示すように、第1の作成手段である制御仕様編集部11と、第2の作成手段であるプログラム編集部12とを備える。演算部10は、第1の変換手段である制御仕様記述式変換部13と、第2の変換手段である状態遷移モデル変換部14と、モデル検査部15とを備える。
プログラム編集部12は、制御作成プログラムを実行することにより、入力装置61が受け付けた操作入力に応じたSFCプログラムSPを作成する。実施の形態1において、プログラム編集部12は、SFCプログラムSPを作成するが、SFCプログラムSPに限定されることなく、ラダー言語又はST(Structured Text)言語によりプログラムを作成しても良い。ST言語は、IEC 61131−3により規定された言語である。プログラム編集部12は、表示装置62の表示画面62aの第2の表示領域62a2に、入力装置61が受け付けたステップS、トランジションTJ及び接続線LAを表示する。プログラム編集部12は、第2の表示領域62a2に表示されたSFCプログラムSPを決定する操作入力を入力装置61が受け付けると、作成したSFCプログラムSPを記憶装置63に記憶する。
状態遷移モデル変換部14は、SFCプログラムSPをモデル検査プログラムMPに入力可能なコードである状態遷移モデルJMに変換するものである。状態遷移モデル変換部14は、記憶装置63に記憶されかつ第2の表示領域62a2に表示されたSFCプログラムSPの出力ソースコードをモデル検査プログラムMPに入力することのできる状態遷移モデルJMに変換する。状態遷移モデル変換部14は、SFCプログラムSPを機械語又はSFCプログラムSPよりも低いレベルのコードに変換するプログラム、即ち、所謂コンパイラを実行する。
図3は、図1に示されたエンジニアリングツールの表示装置の表示画面の第1の表示領域に表示されるラダープログラムの一例を示す図である。図4は、図3に示されたラダープログラムの第1のプログラムモジュールを作成する過程を示す図である。図5は、図3に示されたラダープログラムの第2のプログラムモジュールを作成する過程を示す図である。
制御仕様編集部11は、制御作成プログラムを実行することにより、入力装置61が受け付けた操作入力に応じたラダープログラムRPの各プログラムモジュールRPMを作成する。制御仕様編集部11は、表示装置62の表示画面62aの第1の表示領域62a1に、入力装置61が受け付けた要素E及び接続線Lを表示する。
第1の表示領域62a1は、図3に示すように、ラダープログラムRPを構成する各プログラムモジュールRPMを表示するプログラム表示領域62bと、制御仕様を表示する制御仕様表示領域62cとを備える。制御仕様表示領域62cが表示する制御仕様は、プログラム表示領域62bが表示するプログラムモジュールRPMにより規定されたものである。プログラム表示領域62bと制御仕様表示領域62cとは、1対1で対応し、対応するもの同士が第1の表示領域62a1の上下方向に並べられる。実施の形態1において、第1の表示領域62a1の各プログラム表示領域62bは、図3中に格子状の太い点線で囲まれた複数のセルCにより構成される。各セルCは、入力装置61が受け付けた操作入力により要素E又は接続線Lを表示する。接続線Lは、セルC同士の境界にも表示される。以下、図3の上方に表示されたプログラムモジュールRPMを第1のプログラムモジュールRPM1と記し、図3の下方に表示されたプログラムモジュールRPMを第2のプログラムモジュールRPM2と記す。
第1のプログラムモジュールRPM1を表示するプログラム表示領域62bは、要素Eとして、左端のセルCから右側のセルCに順に互いに直列に接続した「Y1」、「Y2」及び「NOT」を表示している。また、第1のプログラムモジュールRPM1を表示するプログラム表示領域62bの要素Eとして「NOT」を表示したセルCの右側のセルCは、第1のプログラムモジュールRPM1に第1の時相演算子TOを付与する第1の時相演算子付与領域である。第1の時相演算子付与領域であるセルCを、以下、符号C1で示す。セルC1は、第1の表示領域62a1に表示され、第1の時相演算子TOを表示することで、第1のプログラムモジュールRPM1に第1の時相演算子TOを付与する。
第2のプログラムモジュールRPM2を表示するプログラム表示領域62bは、要素Eとして、左端のセルCから右側セルCに順に互いに直列に接続した「Y1」、接続線L及び「Y10」を表示している。第2のプログラムモジュールRPM2を表示するプログラム表示領域62bは、要素Eとして「Y1」を表示したセルCの下方のセルCに「Y2」を表示している。要素Eとしての「Y2」は、接続線Lにより要素Eとしての「Y1」と並列に接続している。
また、第2のプログラムモジュールRPM2を表示するプログラム表示領域62bの要素として「Y1」を表示したセルCと要素として「Y10」を表示したセルCとの間のセルCは、第2のプログラムモジュールRPM2に第1の時相演算子TOと異なる第2の時相演算子TOを付与する第2の時相演算子付与領域である。第2の時相演算子付与領域であるセルCを、以下、符号C2で示す。セルC2は、第1の表示領域62a1に表示され、第2の時相演算子TOを表示することで、第2のプログラムモジュールRPM2に第2の時相演算子TOを付与する。以下、第1の時相演算子TOと第2の時相演算子TOとのうち第1の時相演算子TOを区別して示す場合には、符号TO1を付し、第2の時相演算子TOを区別して示す場合には、符号TO2を付す。第1の時相演算子TOと第2の時相演算子TOとを区別しない場合には、符号TOを付す。このように、第1の表示領域62a1の各プログラム表示領域62bを構成するセルC,C1,C2は、入力装置61が受け付けた操作入力により要素E及び接続線Lに加え、時相演算子TOを表示する。
第1の時相演算子TO1及び第2の時相演算子TO2は、ラダープログラムRPの各要素Eの成立を時間経過とともに規定するものである。実施の形態1において、第1の時相演算子TO1は、接続された要素Eとしての「Y1」、要素Eとしての「Y2」及び要素Eとしての「NOT」が常に成立する「G」(Globallyを示す)である。即ち、第1の時相演算子TO1は、常時成立する制御対象機器2,3,4の動作、即ち、制御対象機器2,3,4が常に実行する動作を示している。
実施の形態1において、第1のプログラムモジュールRPM1は、常に、要素Eとしての「Y1」と要素Eとしての「Y2」とが同時に成立することがないことを示す。第2の時相演算子TO2は、第2の時相演算子TO2の右側に配置された要素Eとしての「Y10」が成立するまでは、第2の時相演算子TO2の左側に配置された要素Eとしての「Y1」又は要素Eとしての「Y2」が成立する「U」(Untilを示す)である。第2のプログラムモジュールRPM2は、要素Eとしての「Y10」が成立するまでは、要素Eとしての「Y1」又は要素Eとしての「Y2」が成立することを示す。即ち、第2の時相演算子TO2は、制御対象機器2,3,4相互の動作が実行されるタイミングの関係を示している。
実施の形態1において、エンジニアリングツール6は、時相演算子TOとして、「G」及び「U」を用いたが、これらに限定されない。エンジニアリングツール6は、時相演算子TOとして「G」及び「U」以外に、いつか要素が成立することを示す「F」(Finally)及び次の瞬間要素が成立することを示す「X」(Next)を用いても良い。時相演算子TOとしての「F」は、将来成立する制御対象機器2,3,4の動作、即ち、制御対象機器2,3,4が将来実行する動作を示す時相演算子である。時相演算子TOとしての「X」は、制御対象機器2,3,4の動作が実行されるタイミングの関係を示す時相演算子である。
制御仕様編集部11は、以下のように、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2を作成する。制御仕様編集部11は、第1の表示領域62a1を構成するセルCに入力装置61が受け付けた要素E及び接続線Lを表示する。制御仕様編集部11は、第1の表示領域62a1を構成するセルCのうち特定のセルC1,C2に時相演算子TO1,TO2を次のように入力する。入力装置61が、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2を構成するセルCのうち時相演算子TOを付与する一以上のセルCが選択されたことを受け付ける。図4及び図5は、時相演算子TOを付与する一以上のセルCを平行斜線で示す。そして、入力装置61が、時相演算子TOを付与する一以上のセルCのうち太い点線で囲む特定のセルC1,C2に時相演算子TOを入力することを受け付けると、図4及び図5に示すように、選択されたセルC1,C2の隣に入力可能な時相演算子TOを表示するメニューMを表示する。制御仕様編集部11は、入力装置61がメニューMに表示された時相演算子TOのうち任意の一つが選択されたことを受け付けると、選択されたセルC1,C2に選択された時相演算子TOを表示する。
実施の形態1において、図4に示された特定のセルC1に第1の時相演算子TO1である「G」が入力されて、第1のプログラムモジュールRPM1が作成される。図5に示された特定のセルC2に第2の時相演算子TO2である「U」が入力されて、第2のプログラムモジュールRPM2が作成される。
制御仕様編集部11は、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2を構成するセルCのうち予め設定されたセルCに結果表示用のアナンシエータFを生成する。結果表示用のアナンシエータFは、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2が規定した制御仕様をSFCプログラムSPが満たすか否かを示すものである。実施の形態1において、制御仕様編集部11は、図2に示すように、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2の右端のセルCに結果表示用のアナンシエータFを生成する。制御仕様編集部11は、第1の表示領域62a1に表示されたラダープログラムRPを決定する操作入力を入力装置61が受け付けると、作成したラダープログラムRPを記憶装置63に記憶する。なお、実施の形態1において、制御仕様編集部11は、第1の時相演算子TO1をセルC1に付与し、第2の時相演算子TO2をセルC2に付与したが、時相演算子TOを任意のセルCに付与しても良い。制御仕様編集部11は、各プログラムモジュールRPM1,RPM2を構成する複数のセルCのうちユーザが定めた任意のセルCに時相演算子TOを付与する。即ち、第1の時相演算子付与領域C1は、第1のプログラムモジュールRPM1を構成する複数のセルCのうちユーザが定めた任意のセルCであり、第2の時相演算子付与領域C2は、第2のプログラムモジュールRPM2を構成する複数のセルCのうちユーザが定めた任意のセルCである。
また、実施の形態1において、制御仕様編集部11は、第1の表示領域62a1に表示されたラダープログラムRPを決定する操作入力を入力装置61が受け付けると、ラダープログラムRPの各プログラムモジュールRPM1,RPM2に表示された各時相演算子TO1,TO2を、各プログラムモジュールRPM1,RPM2と対応させて第1の表示領域62a1に表示する。実施の形態1において、制御仕様編集部11は、第1の表示領域62a1の各プログラムモジュールRPM1,RPM2の左側に各プログラムモジュールRPM,RPM2に表示された各時相演算子TO1,TO2を表示する。
制御仕様記述式変換部13は、ラダープログラムRPの第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2をモデル検査プログラムMPに入力可能な数式NFに変換するものである。制御仕様記述式変換部13は、記憶装置63に記憶されかつ第1の表示領域62a1に表示されたラダープログラムRPの各プログラムモジュールRPM1,RPM2をモデル検査プログラムMPに入力することのできる数式NFに変換する。制御仕様記述式変換部13は、ラダープログラムRPの第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2を機械語又はラダープログラムRPよりも低いレベルのコードに変換するプログラム、即ち、所謂コンパイラを実行する。
実施の形態1において、制御仕様記述式変換部13は、第1のプログラムモジュールRPM1を以下の式1で示す数式NFに変換し、第2のプログラムモジュールRPM2を以下の式2で示す数式NFに変換する。
G(NOT(Y1 AND Y2)・・・式1
(Y1 OR Y2)U(Y10)・・・式2
モデル検査部15は、記憶装置63に記憶されたモデル検査プログラムMPを実行して、ユーザが作成したSFCプログラムSPがラダープログラムRPの制御仕様を規定する各プログラムモジュールRPM1,RPM2を満たしているか否かを判定する。モデル検査部15は、第1の表示領域62a1の各プログラムモジュールRPM1,RPM2のアナンシエータFに満たしているか否かを示す判定結果を表示する。エンジニアリングツール6は、モデル検査プログラムMPとして、NuSMV: a new symbolic model checker、又はSPIN model checkerを用いるが、これらに限定されない。
実施の形態1に係るエンジニアリングツール6は、入力装置61から制御作成プログラムを実行する操作入力を受け付けると、表示装置62の表示画面62aに第1の表示領域62a1及び第2の表示領域62a2を表示する。エンジニアリングツール6は、プログラム編集部12が第2の表示領域62a2に入力装置61から受け付けた操作入力に応じたSFCプログラムSPを表示する。エンジニアリングツール6は、第2の表示領域62a2に表示したSFCプログラムSPを決定する操作入力を入力装置61が受け付けると、プログラム編集部12が決定したSFCプログラムSPを記憶装置63に記憶するとともに、状態遷移モデル変換部14がSFCプログラムSPを状態遷移モデルJMに変換する。
エンジニアリングツール6は、制御仕様編集部11が第1の表示領域62a1に入力装置61から受け付けた操作入力に応じたラダープログラムRPを表示する。エンジニアリングツール6は、第1の表示領域62a1に表示したラダープログラムRPを決定する操作入力を入力装置61が受け付けると、制御仕様編集部11が決定したラダープログラムRPを記憶装置63に記憶するとともに、制御仕様記述式変換部13がラダープログラムRPの各プログラムモジュールRPM1,RPM2を数式NFに変換する。
エンジニアリングツール6は、図2に示すSFCプログラムSPの動作確認を実行する検査実行領域100の操作入力を入力装置61が受け付けると、モデル検査部15が、ユーザが作成したSFCプログラムSPがラダープログラムRPの各プログラムモジュールRPM1,RPM2を満たしているか否かを判定する。エンジニアリングツール6は、モデル検査部15がプログラムモジュールRPM1,RPM2のアナンシエータFに判定結果を表示する。
図6は、実施の形態1に係るエンジニアリングツールのハードウェア構成を示す図である。実施の形態1に係るエンジニアリングツール6は、OS(Operating System)60上でコンピュータプログラムを実行するコンピュータであって、図6に示すように、入力装置61と、表示装置62と、記憶装置63とに加え、CPU(Central Processing Unit)64と、RAM(Random Access Memory)65と、ROM(Read Only Memory)66と、通信インタフェース67と、を備える。CPU64、RAM65、ROM66、記憶装置63、入力装置61、表示装置62及び通信インタフェース67は、バスBを介して接続されている。
演算部10の制御仕様編集部11、プログラム編集部12、制御仕様記述式変換部13、状態遷移モデル変換部14及びモデル検査部15の機能は、CPU64がRAM65を作業領域として使用しながら、ROM66及び記憶装置63に記憶されているプログラムを実行することにより実現される。プログラムは、ソフトウェア、ファームウェア、又はソフトウェアとファームウェアとの組み合わせにより実現される。ROM66に記憶されているプログラムは、BIOS(Basic Input Output System)又はUEFI(Unified Extensible Firmware Interface)であるが、ROM66に記憶されているプログラムは、BIOS又はUEFIに限定されない。実施の形態1において、記憶装置63に記憶されているプログラムは、オペレーティングシステムプログラム、制御作成プログラム、SFCプログラムSP及びモデル検査プログラムMPであるが、記憶装置63に記憶されているプログラムは、オペレーティングシステムプログラム、制御作成プログラム、SFCプログラムSP及びモデル検査プログラムMPに限定されない。実施の形態1において、記憶装置63は、SSD(Solid State Drive)又はHDD(Hard Disk Drive)であるが、記憶装置63は、SSD又はHDDに限定されない。
入力装置61は、ユーザからの操作入力を受け付ける。実施の形態1において、入力装置61は、キーボード又はマウスであるが、入力装置61は、キーボード又はマウスに限定されない。表示装置62は、文字及び画像を表示する。実施の形態1において、表示装置62は、液晶表示装置が例示される。通信インタフェース67は、制御装置5と通信を行う。エンジニアリングツール6は、通信インタフェース67が制御装置5に接続されることで、複数の制御対象機器2,3,4に接続している。
次に、実施の形態1に係るエンジニアリングツール6の動作の一例を、エンジニアリングツール6によって作成されたSFCプログラムSPの一例を用いて説明する。図7は、実施の形態1に係るエンジニアリングツールにより作成されたSFCプログラムの一例を示す図である。図8は、図7に示されたSFCプログラムの出力プログラムソースコードを変換して得た状態遷移モデルを示す図である。図9は、図7に示されたSFCプログラムの動作確認に用いられるラダープログラムの一例を示す図である。
エンジニアリングツール6は、プログラム編集部12が入力装置61からの操作入力を受け付け及び制御作成プログラムを実行することにより図7に示されたSFCプログラムSPが作成される。図7に示されたSFCプログラムSPは、数「000」から数を「1」ずつ増加させ、数「999」になると終了するプログラムであり、初期値として「1」の位の数を示すD0=0とし、「10」の位の数を示すD1=0とし、「100」の位の数を示すD2=0とするステップS1と、ステップS1から常にステップS2に遷移するトランジションTJ1とを備える。SFCプログラムSPは、ステップS2では、D0=9を規定するトランジションTJ2が成立するまで、D0を1つ増加させ、D0=9を規定するトランジションTJ2が成立すると、ステップS3に遷移する。
SFCプログラムSPは、ステップS3では、D1=9を規定するトランジションTJ3が成立するまで、D0=0とし、D1を1つ増加させてステップS2に戻り、トランジションTJ3が成立するまで、ステップS2及びステップS3を繰り返す。SFCプログラムSPは、D1=9を規定するトランジションTJ3が成立すると、ステップS4に遷移する。SFCプログラムSPは、ステップS4では、D2=9を規定するトランジションTJ4が成立するまで、D2を1つ増加させてステップS2に戻り、トランジションTJ4が成立するまで、ステップS2、ステップS3及びステップS4を繰り返す。SFCプログラムSPは、D2=9を規定するトランジションTJ4が成立すると、プログラムを終了する。また、図7に示すSFCプログラムSPは、トランジションTJ3が成立するまでステップS3からステップS2に常時戻るトランジションTJ5と、トランジションTJ4が成立するまでステップS4からステップS2に常時戻るトランジションTJ6とを備える。
エンジニアリングツール6は、図7に示されたSFCプログラムSPが決定されると、状態遷移モデル変換部14が、SFCプログラムSPの出力プログラムソースコードを図8に示す状態遷移モデルJMに変換する。
エンジニアリングツール6は、制御仕様編集部11が入力装置61からの操作入力及び制御作成プログラムを実行することにより、図9に示されたラダープログラムRPが作成される。図9に示されたラダープログラムRPは、いずれ数「555」となることを規定する、即ち、D0=5、D1=5及びD2=5が成立することを規定するプログラムモジュールのみを備える。
エンジニアリングツール6は、図9に示されたラダープログラムRPが決定されると、制御仕様記述式変換部13が、ラダープログラムRPを以下の式3に示す数式NFに変換する。
F(D0=5&D1=5&D2=5)・・・式3
エンジニアリングツール6は、検査実行の操作入力を受け付けると、図9に示されたラダープログラムのアナンシエータFにSFCプログラムSPがラダープログラムRPを満たすことを表示する。
実施の形態1に係るエンジニアリングツール6は、制御仕様記述式であるラダープログラムRPを表示する第1の表示領域62a1にラダープログラムRPの第1のプログラムモジュールRPM1に第1の時相演算子TO1を付与する第1の時相演算子付与領域であるセルC1を備える。また、エンジニアリングツール6は、第2のプログラムモジュールRPM2に第1の時相演算子TO1と異なる第2の時相演算子TO2を付与する第2の時相演算子付与領域であるセルC2とを備える。このため、エンジニアリングツール6は、制御仕様記述式であるラダープログラムRPに種々の時相演算子TOを付与することができる。
また、エンジニアリングツール6は、制御仕様記述式であるラダープログラムRPが制御対象機器2,3,4の制御仕様を規定する。その結果、エンジニアリングツール6は、時相演算子TOを付与することができる制御仕様記述式であるラダープログラムRPを用いて制御対象機器2,3,4の制御仕様を容易に入力することができる。よって、エンジニアリングツール6は、SFCプログラムSPの動作確認を容易に行うことができる。
また、実施の形態1に係るエンジニアリングツール6は、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2を作成する制御仕様編集部11と、第1のプログラムモジュールRPM1及び第2のプログラムモジュールRPM2をモデル検査プログラムMPに入力可能な数式NFに変換する制御仕様記述式変換部13とを備える。このため、エンジニアリングツール6は、制御仕様編集部11を用いて作成したラダープログラムRPを、ユーザが特別な操作を行うことなく、モデル検査プログラムMPに入力することができる。その結果、エンジニアリングツール6は、ラダープログラムRPを用いて制御対象機器2,3,4の制御仕様を容易に入力することができる。
実施の形態1に係るエンジニアリングツール6は、制御対象機器2,3,4を制御する制御プログラムであるSFCプログラムSPを作成するプログラム編集部12と、SFCプログラムSPをモデル検査プログラムMPに入力可能なコードである状態遷移モデルJMに変換する状態遷移モデル変換部14とを備える。その結果、エンジニアリングツール6は、プログラム編集部12を用いて作成したSFCプログラムSPを、ユーザが特別な操作を行うことなく、モデル検査プログラムMPに入力することができる。
また、実施の形態1に係るエンジニアリングツール6は、制御対象機器2,3,4を制御する制御プログラムであるSFCプログラムSPを作成するプログラム編集部12と、表示装置62の表示画面62aに表示されたSFCプログラムSPを表示する第2の表示領域62a2とを備える。その結果、エンジニアリングツール6は、第2の表示領域62a2を確認しながらSFCプログラムSPを作成することができる。
また、実施の形態1に係るエンジニアリングツール6は、制御仕様記述式としてラダープログラムRPを用いている。ラダープログラムRPは、条件部を論理式即ち時相演算子に1対1で変換することができる。その結果、エンジニアリングツール6は、制御仕様記述式であるラダープログラムRPのプログラムモジュールRPMの任意の位置に任意の時相演算子TOを付与することができ、制御仕様記述式であるラダープログラムRPに種々の時相演算子TOを付与することができる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
2,3,4 制御対象機器、6 エンジニアリングツール、11 制御仕様編集部(第1の作成手段)、12 プログラム編集部(第2の作成手段)、13 制御仕様記述式変換部(第1の変換手段)、14 状態遷移モデル変換部(第2の変換手段)、62 表示装置、62a 表示画面、62a1 第1の表示領域、62a2 第2の表示領域、RP ラダープログラム(制御仕様記述式)、RPM1 第1のプログラムモジュール、RPM2 第2のプログラムモジュール、TO1 第1の時相演算子、TO2 第2の時相演算子、C1 セル(第1の時相演算子付与領域)、C2 セル(第2の時相演算子付与領域)、SP SFCプログラム(制御プログラム)、NF 数式、JM 状態遷移モデル(コード)、MP モデル検査プログラム。

Claims (4)

  1. 表示装置の表示画面に表示され、かつ制御仕様記述式を表示する表示領域と、
    前記表示領域に表示され、かつ前記制御仕様記述式のプログラムモジュールに時相演算子を付与する時相演算子付与領域と、
    を備えることを特徴とするエンジニアリングツール。
  2. 前記プログラムモジュールを作成する第1の作成手段と、
    前記プログラムモジュールをモデル検査プログラムに入力可能な数式に変換する第1の変換手段と、
    を備えることを特徴とする請求項1に記載のエンジニアリングツール。
  3. 制御対象機器を制御する制御プログラムを作成する第2の作成手段と、
    前記表示装置の前記表示画面に表示され、かつ前記制御プログラムを表示する第2の表示領域と、
    前記制御プログラムを前記モデル検査プログラムに入力可能なコードに変換する第2の変換手段と、
    を備えることを特徴とする請求項2に記載のエンジニアリングツール。
  4. 前記プログラムモジュールは、前記制御対象機器の制御仕様を規定する
    ことを特徴とする請求項3に記載のエンジアリングツール。
JP2016567885A 2016-02-12 2016-02-12 エンジニアリングツール Active JP6129444B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/054190 WO2017138156A1 (ja) 2016-02-12 2016-02-12 エンジニアリングツール

Publications (2)

Publication Number Publication Date
JP6129444B1 true JP6129444B1 (ja) 2017-05-17
JPWO2017138156A1 JPWO2017138156A1 (ja) 2018-02-15

Family

ID=58714675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016567885A Active JP6129444B1 (ja) 2016-02-12 2016-02-12 エンジニアリングツール

Country Status (4)

Country Link
US (1) US10295981B2 (ja)
JP (1) JP6129444B1 (ja)
CN (1) CN107295810B (ja)
WO (1) WO2017138156A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10248099B2 (en) * 2015-05-19 2019-04-02 Mitsubishi Electric Corporation Programmable logic controller, engineering tool, and engineering tool program
JP6356726B2 (ja) * 2016-05-19 2018-07-11 ファナック株式会社 ラダープログラム解析装置
JP7119714B2 (ja) * 2018-07-27 2022-08-17 オムロン株式会社 情報処理装置、表示プログラム、および方法
EP3715975B1 (en) * 2019-03-28 2023-03-01 Mitsubishi Electric R&D Centre Europe B.V. Method and apparatus for analysing a ladder program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0772787A (ja) * 1993-09-01 1995-03-17 Toshiba Corp 制御手順自動生成装置
JP2002182709A (ja) * 2000-12-14 2002-06-26 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置
JP2005063425A (ja) * 2003-07-25 2005-03-10 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品およびテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法
US20090182442A1 (en) * 2008-01-14 2009-07-16 Gm Global Technology Operations, Inc. Framework for results interpretation and guided refinement of specifications for plc logic verification
JP2009277135A (ja) * 2008-05-16 2009-11-26 Toshiba Corp 検証装置、検証方法および検証プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1063537A (ja) 1996-08-21 1998-03-06 Fujitsu Ltd プロパティ検証方法および装置
US6301508B1 (en) * 1997-01-22 2001-10-09 Ando Electric Co., Ltd. Automatic instrumentation system
US20050033457A1 (en) 2003-07-25 2005-02-10 Hitoshi Yamane Simulation aid tools and ladder program verification systems
JP5091283B2 (ja) * 2010-06-25 2012-12-05 株式会社日立製作所 制御装置の保守ツール
EP2477085B1 (de) * 2011-01-13 2013-07-17 Siemens Aktiengesellschaft Verfahren und System zur Analyse eines zeitlichen Ablaufverhaltens eines Steuerungsprogramms einer Industriesteuerung
JP5785501B2 (ja) * 2012-01-12 2015-09-30 横河電機株式会社 ラダープログラム作成装置
US10295976B2 (en) * 2013-02-22 2019-05-21 Mitsubishi Electric Corporation System development device, system development method, and system development program
KR20150127161A (ko) * 2013-03-07 2015-11-16 미쓰비시덴키 가부시키가이샤 래더 프로그램 표시 프로그램 및 래더 프로그램 표시 장치
KR101689099B1 (ko) 2013-04-04 2016-12-22 미쓰비시덴키 가부시키가이샤 엔지니어링 툴 및 프로그래머블 로직 컨트롤러
JP5702833B2 (ja) * 2013-06-20 2015-04-15 ファナック株式会社 Ncプログラムに追従した画面表示切替機能を有する数値制御装置
WO2015186178A1 (ja) 2014-06-02 2015-12-10 三菱電機株式会社 プログラマブルコントローラシステム、プログラマブルコントローラ、プログラム表示装置、プログラムの表示方法
JP6319200B2 (ja) * 2015-06-18 2018-05-09 株式会社安川電機 プログラマブルコントローラ

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0772787A (ja) * 1993-09-01 1995-03-17 Toshiba Corp 制御手順自動生成装置
JP2002182709A (ja) * 2000-12-14 2002-06-26 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置
JP2005063425A (ja) * 2003-07-25 2005-03-10 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品およびテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法
US20090182442A1 (en) * 2008-01-14 2009-07-16 Gm Global Technology Operations, Inc. Framework for results interpretation and guided refinement of specifications for plc logic verification
JP2009277135A (ja) * 2008-05-16 2009-11-26 Toshiba Corp 検証装置、検証方法および検証プログラム

Also Published As

Publication number Publication date
US10295981B2 (en) 2019-05-21
WO2017138156A1 (ja) 2017-08-17
CN107295810B (zh) 2019-07-26
CN107295810A (zh) 2017-10-24
JPWO2017138156A1 (ja) 2018-02-15
US20180059634A1 (en) 2018-03-01

Similar Documents

Publication Publication Date Title
JP6129444B1 (ja) エンジニアリングツール
EP2241949B1 (en) Method for executing sequential function charts as function blocks in a control system
US9122269B2 (en) Method and system for operating a machine from the field of automation engineering
JP4952401B2 (ja) Plc
JP2004362561A (ja) ブール論理機能ブロック
WO2021205776A1 (ja) シミュレーションのためのプログラムおよび装置
JP6201574B2 (ja) Plc用のプログラミングツール
JP5496429B1 (ja) エンジニアリングツールおよびプログラマブルロジックコントローラ
JP5153437B2 (ja) 制御プログラム作成装置
KR101456812B1 (ko) 시스템 설계 장치
JP2018152032A (ja) 情報処理装置、情報処理方法、および、情報処理プログラム
JP2001243341A (ja) ファンクションブロックモデル作成方法及び装置
JP4562141B2 (ja) プログラマブルロジックコントローラ、情報処理装置、制御プログラム、およびテーブル作成プログラム
JP4743869B2 (ja) 画面データ生成方法
JP2018036945A (ja) シミュレータ連携装置、シミュレータ連携装置の制御方法、情報処理プログラム、および記録媒体
JP4301976B2 (ja) プログラミングツール
KR102305901B1 (ko) 휴먼 머신 인터페이스 시스템에서의 화면 표시 방법
WO2021145147A1 (ja) 表示装置、表示方法および表示プログラム
WO2023203604A1 (ja) シミュレーション用プログラム、シミュレーション装置及び制御方法
JP4628967B2 (ja) プログラマブル表示器、そのプログラムおよび記録媒体
JP2008299763A (ja) 分散オブジェクト開発ツール
JP2003067007A (ja) エンジニアリングツール及びエンジニアリングシステム
JP2009080738A (ja) シーケンスプログラムのシミュレーション方法
JP2011138291A (ja) ネットリストを用いるシーケンス処理方法、それに用いるプログラム及びそのプログラムがインストールされたコンピュータ
JP2007200160A5 (ja)

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170306

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170411

R150 Certificate of patent or registration of utility model

Ref document number: 6129444

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250