JP2009009505A - Plc - Google Patents

Plc Download PDF

Info

Publication number
JP2009009505A
JP2009009505A JP2007172465A JP2007172465A JP2009009505A JP 2009009505 A JP2009009505 A JP 2009009505A JP 2007172465 A JP2007172465 A JP 2007172465A JP 2007172465 A JP2007172465 A JP 2007172465A JP 2009009505 A JP2009009505 A JP 2009009505A
Authority
JP
Japan
Prior art keywords
program
storage unit
plc
input
output information
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
JP2007172465A
Other languages
English (en)
Other versions
JP4952401B2 (ja
Inventor
Kenichi Ikegami
健一 池上
Tsutomu Araki
力 荒木
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 JP2007172465A priority Critical patent/JP4952401B2/ja
Priority to EP08159189.3A priority patent/EP2009529B1/en
Priority to US12/147,970 priority patent/US7941239B2/en
Publication of JP2009009505A publication Critical patent/JP2009009505A/ja
Application granted granted Critical
Publication of JP4952401B2 publication Critical patent/JP4952401B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • 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/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13053Edit by use of a ladder mask, raster, enter a symbol and select place in mask
    • 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/13099Function block, OOP, various functions grouped, called by name as servo
    • 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/13152Modification of program
    • 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/14Plc safety
    • G05B2219/14012Safety integrity level, safety integrated systems, SIL, SIS

Landscapes

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

Abstract

【課題】自動生成された実行プログラムを見ることができるPLCを提供する。
【解決手段】本発明のPLCは、I/Oモジュール11、12と、CPUモジュール2と、入出力バス3と、ディスプレイ41を有するPC4とを備える。このCPUモジュール2は、演算処理と入出力情報とをパッケージ化した固有の制御プログラムを予め記憶した制御プログラム記憶部211と、その演算処理を表すファンクションブロックを予め記憶したライブラリ212と、入出力情報をグラフィカル言語で等価的に表した等価入出力情報を予め記憶したヘッダーファイル213とを有する。そして、PC4が、生成されメイン記憶部241に記憶された実行プログラムを、ライブラリ212およびヘッダーファイル213を参照し、ファンクションブロックと等価入出力情報とでディスプレイ41に表示させる。
【選択図】図1

Description

本発明は、PLC(プログラマブルロジックコントローラ)に関するものである。
PLCは、外部機器が接続されたI/Oモジュールと、I/Oモジュールを介して外部機器を制御する実行プログラムを実行するCPUモジュール等とを備えている。PLCにおいて、ユーザーは、実行プログラムを自由にプログラミングすることができる。ただし、実行プログラムをプログラミングするには、PLCに関する相当の知識が必要となる。つまり、ユーザーによる実行プログラムの作成には、相当の知識と労力が必要となる。
ここで、PLCの一例として安全PLCを挙げると、安全PLCでは、PLCの知識に加え、安全制御に関する高度な知識も要求される。この安全PLCとは、緊急停止スイッチやライトカーテンなどの安全機器が接続されたI/Oモジュールと、I/Oモジュールを介して安全機器を制御する安全プログラム(上記「実行プログラム」に相当する)を実行するCPUモジュール等とを備えたものである。
安全PLCは、例えば、製造ラインに用いられた場合、その製造ラインが危険状態となったとき、所定のフェイルセーフ動作に基づいて、製造ラインの一部またはすべてを安全に停止させる。ここで、危険状態とは、例えば、緊急停止スイッチが押されたときの状態や、ライトカーテン等のセンサが人の進入を検出したときの状態等である。つまり、安全PLCは、製造ライン等における作業者がより安全に作業できるよう製造ライン等に用いられる。
また、安全PLCは、欧州安全規格や国際安全規格等の安全規格に適合していなければならず、認証機関で審査され、認証を受ける必要がある。
ここで、安全PLCは、安全機器が接続されるI/Oモジュールと、CPUモジュールとを備えている。そして、一つのI/Oモジュールには、一つのパッケージ化された固有の制御プログラムが対応している。制御プログラムは、I/OモジュールまたはCPUモジュールに内蔵され、安全PLCとして実行される安全プログラムを構成している。
このような安全PLCにおいて、安全プログラムをプログラミングするには、上記のように、安全規格および安全制御に関する高度な専門知識や豊富な経験等が必要であり、一般の実行プログラムの作成以上に、多大な時間と高い製造コストを要していた。
そこで、本願出願人が以前出願した特開2007−25736号公報(特許文献1)では、I/OモジュールをCPUモジュールに連結するだけで自動的に安全プログラムが生成される安全PLCが提案されている。詳細には、安全規格に適合した固定のファンクションブロックが予め準備されており、I/Oモジュールの接続順序に基づいて、ファンクションブロックが連結される。これにより、高度な専門知識なしに安全PLCを使用できるに至った。
このように、PLCにおいて、実行プログラム(安全プログラム)が自動生成されることにより、専門知識の乏しいユーザーであっても、時間やコストをかけることなくPLCを使用可能となった。
特開2007−25736号公報
しかしながら、上記PLCにおいて、自動生成された実行プログラムは、ブラックボックス化されており、編集はおろか見ることもできなかった。実行プログラムを構成する固有の制御プログラム(特許文献1におけるファンクションブロック)も、パッケージ化した固定のプログラムとされ、ブラックボックス化されていた。
つまり、自動生成された実行プログラムの一部を編集したいという要請に対して、編集はおろか実行プログラムを見ることもできなかった。従って、例えば、製造ライン等に多少の変更があった場合でも、I/Oモジュールを組み替えたり、外部機器を変更したりとハードウエア的な変更が必要であった。つまり、自動生成された実行プログラムが編集できないことにより、配線の煩雑化、機器設置スペースの増大、および、コスト増大等の問題が発生する虞もある。
本発明は、このような事情に鑑みてなされたものであり、自動生成された実行プログラムを見ることができるPLCを提供することを目的とする。さらに、本発明は、自動生成された実行プログラムを編集できるPLCを提供することを目的とする。
本発明のPLCは、外部機器が接続されるI/Oモジュールと、I/Oモジュールを管理する実行プログラムを実行するCPUモジュールと、各モジュール間を互いに接続する連絡手段と、表示画面を有する表示装置とを備えるPLCにおいて、CPUモジュールは、I/Oモジュールに対応する演算処理を示す演算プログラムと演算処理の入出力を示す入出力情報とをパッケージ化した固有の制御プログラムを予め記憶した第一記憶部と、演算処理を1つのシンボルで表したファンクションブロックを予め記憶した第二記憶部と、入出力情報をグラフィカル言語で等価的に表した等価入出力情報を予め記憶した第三記憶部と、連絡手段に接続されたI/OモジュールのID番号を読み出すID番号取得部と、読み出されたID番号に対応する制御プログラムを第一記憶部から引き当て、引き当てられた制御プログラムから実行プログラムを自動的に生成するプログラム生成部と、プログラム生成部で生成された実行プログラムを記憶するメイン記憶部と、を有し、表示装置は、メイン記憶部に記憶された実行プログラムを、第二記憶部および第三記憶部を参照し、ファンクションブロックと等価入出力情報とで表示画面に表示させる表示手段を備えることを特徴とする。
本発明のPLCでは、I/Oモジュールに対応する固有の制御プログラムが予めCPUモジュールに記憶されており(第一記憶部)、それを用いて実行プログラムが生成される。そして、CPUモジュールは、制御プログラム内の演算処理に関する部分(演算プログラム)をシンボル化したファンクションブロックを記憶した第二記憶部と、制御プログラム内の入出力に関する部分(入出力情報)をグラフィカル言語で等価的に表した等価入出力情報を記憶する第三記憶部とを有する。
つまり、本発明のCPUモジュールには、予め、ブラックボックス化された第一記憶部内の制御プログラムと同一の意味を表すファンクションブロックおよび等価入出力情報が記憶されている。そして、接続されたI/OモジュールのID番号に対応する制御プログラムから、CPUモジュールが実行する実行プログラムが生成される。つまり、実行プログラムは、固有の制御プログラムで構成されている。そして、生成された実行プログラムは、メイン記憶部に記憶される。
表示装置は、CPUモジュールが第二記憶部および第三記憶部を有するため、生成された実行プログラムに基づいて、ファンクションブロックおよび等価入出力情報で等価的に変換された実行プログラムを表示画面に表示することができる。つまり、本発明のPLCによれば、ユーザーは、ブラックボックス化された制御プログラムを、対応するファンクションブロックおよび等価入出力情報で見ることができる。
なお、入出力情報とは、I/Oモジュールに割り当てられている入出力端子数や、演算処理間の接続に関する設定事項等である。また、グラフィカル言語とは、例えば、IEC61131−3に規程されたプログラム記述言語や、視覚的に表現された図形シンボルを用いたもの等である。また、外部機器とは、I/Oモジュールと電気的に接続可能な各種装置(電気機器等)である。
ここで、本発明のPLCは、I/Oモジュールを複数備えるものであってもよい。この場合、本発明のPLCにおいて、第一記憶部は、各I/Oモジュールに対応するよう複数の制御プログラムを予め記憶し、第二記憶部は、各制御プログラムの演算処理に対応するよう複数のファンクションブロックを予め記憶し、第三記憶部は、各制御プログラムの入出力情報に対応するよう複数の等価入出力情報を予め記憶する。そして、プログラム生成部は、連絡手段に順次接続された複数のI/Oモジュールの接続順序およびID番号に基づいて、複数の制御プログラムを連結することにより実行プログラムを自動的に生成する。
プログラム生成部は、接続されたI/OモジュールのID番号から対応する制御プログラムを特定し、I/Oモジュールの接続順序に基づいて制御プログラムを順に連結する。例えば、CPUモジュールに近い側から遠い側に向けて番号が大きくなるスロット(連絡手段)にI/Oモジュールが順次接続された場合、スロット番号の大きい順がI/Oモジュールの接続順序に相当する。なお、実行プログラムの自動生成に関しては、特許文献1に詳細に記載されている。このように、実行プログラムは、自動的に生成され、メイン記憶部に記憶される。
すなわち、本発明のPLCは、I/Oモジュールが複数接続される場合であっても、メイン記憶部に記憶された実行プログラムを、ファンクションブロックおよび等価入出力情報で表示画面に表示することができる。
ここで、本発明のPLCにおいて、CPUモジュールは、さらに、制御プログラムの演算プログラムをグラフィカル言語で等価的に表した等価演算プログラムを予め記憶した第四記憶部を有し、表示手段は、表示画面に表示されたファンクションブロックを、第四記憶部を参照し、等価演算プログラムに表示変換することが好ましい。
これにより、本発明のPLCは、ブラックボックス化された制御プログラムのうち、さらに、演算処理に関する部分についても等価演算プログラムとして表示させることができる。
表示手段は、実行プログラムをファンクションブロックおよび等価入出力情報で表示させることができる上、例えばユーザーがファンクションブロックを選択等することにより、そのファンクションブロックの中身である演算プログラムを、等価演算プログラムとして表示させることができる。
ここで、本発明のPLCにおいて、表示装置は、表示画面に表示された、メイン記憶部に記憶された実行プログラムに沿ったファンクションブロックの並び順序を変更可能とする編集手段を有することが好ましい。
これにより、ユーザーは、表示されたファンクションブロックの並び順序、すなわち、実行プログラムにおけるファンクションブロックの連結順序を編集することができる。編集は、従来の一般のPLCで行われていたように、表示画面上でソフト的に実行することができる。編集手段は、例えば、表示装置にインストールされた編集ツールと、キーボードやマウス等とを含んでいる。
さらに、表示装置は、表示画面に表示された等価入出力情報をグラフィカル言語で編集可能とする編集手段を有することが好ましい。つまり、編集手段は、ファンクションブロックの並び順序の変更に加え、等価入出力情報の編集機能を有することが好ましい。
ブラックボックス化されている入出力情報を、等価入出力情報として表示できるため、等価的な表示のために用いられたグラフィカル言語によって編集することが可能となる。従って、従来、見ることができなかったため編集できなかった入出力情報を、自在に編集することができる。
さらに、表示装置は、表示画面に表示された等価演算プログラムをグラフィカル言語で編集可能とする編集手段を有することが好ましい。つまり、編集手段は、上記機能に加え、等価演算プログラムの編集機能を有することが好ましい。
これにより、上記同様、ブラックボックス化されている演算プログラムを編集可能となる。ユーザーは、表示された等価演算プログラムを、グラフィカル言語で編集することができる。つまり、実行プログラムにおいて、より高度な編集が可能となる。これら編集手段を有するPLCでは、ハードウエア的な追加変更をすることなく、自動生成された実行プログラムを修正変更(modify)できる。
ここで、本発明のPLCにおいて、CPUモジュールは、メイン記憶部とは別領域であり、編集手段により編集された実行プログラムを記憶するユーザー記憶部をさらに備えることが好ましい。つまり、編集後の実行プログラムはユーザー記憶部に記憶され、プログラム生成部により生成された実行プログラムは、編集により上書きされずそのままメイン記憶部に記憶されている。
これにより、ユーザーは、自動的に生成された実行プログラム(ディフォルトプログラム)を実行させることもでき、編集した実行プログラム(ユーザープログラム)を実行させることもできる。なお、ユーザー記憶部は、編集した実行プログラム全体を記憶してもよいし、編集部分を記憶するようにしてもよい。編集部分のみを記憶させるようにすると、その分メモリは小さくてもよくなるが、プログラム設計は全体を記憶するのに比べて困難となる。
ところで、本発明のPLCにおいて、グラフィカル言語は、ラダーダイアグラム、ファンクションブロックダイヤグラム、ストラクチャードテキスト、または、インストラクションリストであることが好ましい。これらの言語は、PLCにおいて、多く用いられており、ユーザーの理解および編集を容易とすることができる。
また、本発明のPLCは、安全PLCとして用いてもよい。この場合、本発明のPLCにおいて、外部機器は、安全制御に関する安全機器であり、実行プログラムは、安全プログラムである。PLCにおいて、特に安全PLCでは、安全プログラムの自動生成が実際に行われているため(特許文献1)、生成された安全プログラムを表示・編集したいという要請が非常に高い。従って、本発明のPLCを安全PLCに適用することにより、上記要請に応えることができ、本発明のPLCの上記効果を顕著に発揮させることができる。
なお、安全機器としては、例えば、二重化された緊急停止ボタン、ライトカーテン、ドアロックセンサ、マットスイッチ、レーザースキャナー等の検出装置や、安全制御に関するモーター等の駆動装置が挙げられる。安全制御に関する駆動装置とは、例えば、上述した検出装置により危険状態が検出されたとき停止させなければならないような製造ライン上の各種装置(工作ロボット等)や、安全制御において必要な動作を実行させる駆動装置等である。安全プログラムは、上記安全機器が接続されるI/Oモジュールを管理しCPUモジュールにより実行されるプログラムであり、安全規格に適合する。
次に、実施形態を挙げ、本発明をより詳しく説明する。本実施形態では、本発明のPLCを安全PLCに適用したものについて説明する。まず、本実施形態の安全PLCの構成について、図1および図2を参照して説明する。図1は、本実施形態の安全PLCの模式図である。図2は、システム記憶部21の模式図である。
本実施形態の安全PLCは、図1に示すように、I/Oモジュール11、12と、CPUモジュール2と、入出力バス3と、パーソナルコンピュータ(以下、「PC」と略称する)4とを備えている。なお、入出力バス3のI/Oモジュールとの接続を、CPUモジュール側から順に接続点(300、301、・・・)と称する。
I/Oモジュール11は、入出力バス3の接続点300に接続されている。I/Oモジュール11は、S−STPモジュールであり、ライトカーテン51が接続されている。I/Oモジュール11は、ライトカーテン51からの入力が遮断されると、出力を遮断する。つまり、このI/Oモジュール11に接続されている安全機器は、危険状態が発生したか否かを検出するための検出装置である。そして、I/Oモジュール11には、固有のID番号が記憶されている。
I/Oモジュール12は、入出力バス3の接続点301に接続されている。I/Oモジュール12は、リレー(Relay)モジュールであり、安全制御される駆動装置52が接続されている。I/Oモジュール12は、入力信号をそのまま出力する。このI/Oモジュール12に接続されている安全機器は、例えば、ライトカーテン51などの検出装置により危険状態が検出された場合などに、動作を停止させる機器などである。そして、I/Oモジュール12には、I/Oモジュール11に記憶されているID番号とは異なる固有のID番号が記憶されている。
CPUモジュール2は、システム記憶部21と、ID番号取得部22と、プログラム生成部23と、安全プログラム記憶部24とを有している。システム記憶部21は、制御プログラム記憶部211(本発明の「第一記憶部」に相当する)と、ライブラリ212(本発明の「第二記憶部」に相当する)と、ヘッダーファイル213(本発明の「第三記憶部」に相当する)と、等価演算記憶部214(本発明の「第四記憶部」に相当する)とを有している。
図2に示すように、制御プログラム記憶部211には、入出力バス3によりCPUモジュール2に接続され得るI/Oモジュールのパッケージ化された制御プログラム(P1、P2、・・・)が予め記憶されている。これら制御プログラムは、C言語で生成されており、接続され得るI/Oモジュールに対応するようそれぞれパッケージ化されている。具体的には、各制御プログラム(P1、P2、・・・)は、I/Oモジュールに対応する演算処理を示す演算プログラムと、演算処理の入出力情報とをパッケージ化している。なお、本実施形態において、制御プログラムP1はI/Oモジュール12に対応するプログラムであって、制御プログラムP2はI/Oモジュール11に対応するプログラムである。
ライブラリ212には、制御プログラム記憶部211に記憶された各制御プログラム(P1、P2、・・・)の演算プログラムを1つのシンボルで示したファンクションブロック(FB1、FB2、・・・)が予め記憶されている。ここでは、ファンクションブロックFB1は制御プログラムP1の演算処理に対応し、同様に、FB2はP2に、FB3はP3に、それぞれ対応する。
ヘッダーファイル213には、制御プログラム記憶部211に記憶された各制御プログラム(P1、P2、・・・)の入出力情報を、ラダーダイアグラムで等価的に表した等価入出力情報(X1、X2、・・・)が予め記憶されている。
等価演算記憶部214には、制御プログラム記憶部211に記憶された各制御プログラム(P1、P2、・・・)の演算プログラムを、ラダーダイアグラムで等価的に表した等価演算プログラム(Y1、Y2、・・・)が予め記憶されている。等価演算プログラムは、それぞれ対応するファンクションブロック(FB1、FB2、・・・)の中身に相当する。
システム記憶部21において、1つの制御プログラムにファンクションブロックと等価入出力情報とが関連付けされている。また、制御プログラムの演算プログラムおよびファンクションブロックに等価演算プログラムが関連付けされている。本実施形態では、制御プログラムP1に、ファンクションブロックFB1および等価入出力情報X1が対応し、ファンクションブロックFB1に等価演算プログラムY1が対応する。なお、各記憶については、ROM等の記憶手段が用いられる。
ID番号取得部22は、入出力バス3に接続されたI/Oモジュール11、12のID番号を読み出す。CPUモジュール2は、ID番号取得部22により、接続点300にI/Oモジュール11が接続され、接続点301にI/Oモジュール12が接続されていることを認識する。つまり、CPUモジュール2は、ID番号と接続順序を認識する。
プログラム生成部23は、I/Oモジュール11、12の接続順序およびID番号に基づいて、複数の制御プログラムを連結することにより安全プログラムを自動的に生成する。詳細には、まず、読み出されたID番号に対応する制御プログラムが、制御プログラム記憶部211から一意的に決定される。つまり、ここでは、I/Oモジュール12と制御プログラムP1、I/Oモジュール11と制御プログラムP2とがそれぞれ対応する。
そして、決定された制御プログラムを、接続順序に基づいて連結する。本実施形態では、接続点300に向かって(301→300)、対応する制御プログラムを順に連結し、安全プログラムが生成される。この安全プログラムは、後述する安全プログラム記憶部24のメイン記憶部241に記憶される。
安全プログラム記憶部24は、メイン記憶部241と、ユーザー記憶部242とを有している。メイン記憶部241は、プログラム生成部23で生成された安全プログラムを記憶する。ユーザー記憶部242は、メイン記憶部241とは別領域に設けられ、編集後の安全プログラムを記憶する。編集については、後述する。ユーザーは、実行する安全プログラムを、メイン記憶部241の安全プログラムとユーザー記憶部242の安全プログラムとから選択することができる。
PC4は、ディスプレイ41と、図示しない入力手段(キーボード、マウス等)とを有し、CPUモジュール2に接続されている。PC4には、ラダー編集ツール42(本発明の「表示手段」および「編集手段」に相当する)がインストールされている。ラダー編集ツール42は、メイン記憶部241に記憶された安全プログラムを、ファンクションブロック(FB1、FB2、・・・)および等価入出力情報(X1、X2、・・・)、または、等価演算プログラム(Y1、Y2、・・・)でディスプレイ41に表示させる。
メイン記憶部241に記憶された安全プログラムは、制御プログラム(P1、P2、・・・)が連結されて生成されたものである。従って、PC4は、ラダー編集ツール42により、ライブラリ212およびヘッダーファイル213を参照して対応するファンクションブロック(FB1、FB2、・・・)および等価入出力情報(X1、X2、・・・)を決定し、安全プログラムを等価的に表示することができる。
ここで、メイン記憶部241に記憶された安全プログラムの表示および編集について、図3〜5を参照して詳細に説明する。図3は、安全プログラムをファンクションブロックおよび等価入出力情報で表示したディスプレイ41の表示を示す図である。図4は、ファンクションブロックFB1(Relay)に対応する等価演算プログラムを表示したディスプレイ41の表示を示す図である。図5は、図3を編集した後の安全プログラムを表示したディスプレイ41の表示を示す図である。
図3に示すように、ラダー編集ツール42により、メイン記憶部241に記憶された安全プログラムが、ファンクションブロックFB1、FB2および等価入出力情報X1、X2で表示される。ファンクションブロックFB1および等価入出力情報X1は、I/Oモジュール12(Relay)に対応している。また、ファンクションブロックFB2および等価入出力情報X2は、I/Oモジュール11(S−STP)に対応している。
つまり、本実施形態では、自動生成された安全プログラムがディスプレイ41にラダーダイアグラムとして表示される。例えば、等価入出力情報X1のQ1は、I/Oモジュール12に接続された駆動装置52の第一モーター521への出力接点であり、同様に、Q2は第二モーター522への出力接点である。この場合、Q1とQ2は同じ出力となる。つまり、Q1がONならばQ2もONである。
さらに、ここで、ユーザーによりファンクションブロックFB1が選択されると、図4に示すように、ファンクションブロックFB1の中身に相当する等価演算プログラムY1が表示される。つまり、ラダー編集ツール42は、選択された制御プログラムの演算プログラムをラダーダイアグラムとしてディスプレイ41に表示させる。また、図4の右上に表示された表には、ラダーダイアグラム中のタグ名(in1、out1等)と内部レジスタ(図示せず)におけるアドレスとの関係が示される。
図3に示すラダーダイアグラムは、メイン記憶部241に記憶された安全プログラムと等価であり、CPUモジュール2がライブラリ212およびヘッダーファイル213を有することにより表示可能となる。また、図4に示すラダーダイアグラムは、制御プログラムP1の演算プログラムと等価であり、CPUモジュール2が等価演算記憶部214を有することにより表示可能となる。
ここで、図3に示すラダーダイアグラムを編集する場合について説明する。編集は、ユーザーがキーボードやマウスを用いて、ラダー編集ツール42で行われる。編集後のラダーダイアグラムとして、図5に示すラダーダイアグラムを例に説明する。図5に示すように、この編集は、図3の出力接点Q2を編集したもの(編集後のQ2をQ21およびQ22と称する)である。
具体的には、まず、Q2の出力情報において、ファンクションブロックFB1とQ2の出力先との間に、CPUモジュール2の内部レジスタ(図示せず)を挿入する(Q21)。そして、さらに、その内部レジスタとQ2の出力先との間にB接点を挿入する(Q22)。この編集により、Q2の出力信号は、一旦内部レジスタに記憶され、その内部レジスタに記憶させた信号がB接点を介して反転し出力されるようになる。
図5に示すように編集された後、当該編集後の安全プログラムは、CPUモジュール2のユーザー記憶部242に記憶することができる。そして、ユーザーは、メイン記憶部241の安全プログラム(ディフォルトプログラム)か、ユーザー記憶部242の安全プログラム(ユーザープログラム)かを選択し、実行させることができる。
上記編集によって、編集前ではQ1とQ2が同じ出力であったのが、編集後ではQ2がQ1を反転させた出力、すなわち、Q1がONで出力するときQ2はOFFで出力するようになる。この場合、編集後の安全プログラムが実行されると、例えば、編集前では第一モーター521と第二モーター522とが同じ動作をしていたのに対し、第一モーター521が動作しているとき第二モーター522が動作しないようになる。
つまり、第二モーター522が駆動力を供給する対象が変更された場合であっても、ラダー編集ツール42により等価入出力情報X1を編集することで、当該変更に合うような安全プログラムに編集することができる。
従来、上記のように制御プログラムを編集したい場合であっても、各制御プログラムや安全プログラムはブラックボックス化されていて見ることすらできなかった。このため、当然、プログラムを編集することはできず、上記のようなちょっとした変更であっても、新たなI/Oモジュールの追加や、複雑な配線変更作業等が必要であった。
しかし、本実施形態の安全PLCによれば、制御プログラムを含む安全プログラムをディスプレイ41に表示させることができ、それを編集し実行させることが可能となる。これに伴い、本実施形態の安全PLCでは、さらに、ハードワイヤ回路のシンプル化、省配線・省スペース化、配線ミス発生の抑制、設計作業の効率化、および、コスト削減等の効果も得ることができる。
また、図4に示すように、選択されたファンクションブロックの中身(制御プログラムの演算処理)が表示可能であるため、上記同様、表示されたラダーダイアグラムをラダー編集ツール42により編集することができる。
また、ファンクションブロックの配置を並び替えることも可能である。つまり、安全プログラムに沿って表示されたファンクションブロックの並び順序(FB1→FB2)を変更することができる(FB2→FB1)。
以上、本実施形態の安全PLCによれば、安全プログラム、および、安全プログラムを構成する固有の制御プログラムを見ることができ、さらに、それらを編集することができる。
なお、本実施形態における等価入出力情報および等価演算プログラムは、ラダーダイアグラムに限らず、ラダーダイアグラム以外のグラフィカル言語を用いたものであってもよい。グラフィカル言語とは、ラダーダイアグラム、ファンクションブロックダイヤグラム、ストラクチャードテキスト、インストラクションリストなどのIEC61131−3に規程されたプログラム記述言語や、視覚的に表現された独自の図形シンボルを用いたもの等である。また、シンボル(ファンクションブロック)の形状および絵柄等も、本実施形態に限られるものではない。これら何れの場合であっても、上記同様の効果を得ることができる。
また、本実施形態の安全PLCは、安全PLCに限らず、一般のPLCにも適用できる。本実施形態の安全PLCによれば、一般のPLCに適用した場合であっても、上記同様、自動生成された実行プログラムを表示編集することが可能となる。
本実施形態の安全PLCの模式図である。 システム記憶部21の模式図である。 安全プログラムをファンクションブロックおよび等価入出力情報で表示したディスプレイ41の表示を示す図である。 ファンクションブロックFB1(Relay)に対応する等価演算プログラムを表示したディスプレイ41の表示を示す図である。 図3を編集した後の安全プログラムを表示したディスプレイ41の表示を示す図である。
符号の説明
11、12:I/Oモジュール、 2:CPUモジュール、
21:システム記憶部、 211:制御プログラム記憶部、 212:ライブラリ、
213:ヘッダーファイル、 214:等価演算記憶部、
22:ID番号取得部、 23:プログラム生成部、
24:安全プログラム記憶部、 241:メイン記憶部、 242:ユーザー記憶部、
3:入出力バス、 4:パーソナルコンピュータ、 41:ディスプレイ、
42:ラダー編集ツール

Claims (9)

  1. 外部機器が接続されるI/Oモジュールと、前記I/Oモジュールを管理する実行プログラムを実行するCPUモジュールと、前記各モジュール間を互いに接続する連絡手段と、表示画面を有する表示装置とを備えるPLCにおいて、
    前記CPUモジュールは、
    前記I/Oモジュールに対応する演算処理を示す演算プログラムと前記演算処理の入出力を示す入出力情報とをパッケージ化した固有の制御プログラムを予め記憶した第一記憶部と、
    前記演算処理を1つのシンボルで表したファンクションブロックを予め記憶した第二記憶部と、
    前記入出力情報をグラフィカル言語で等価的に表した等価入出力情報を予め記憶した第三記憶部と、
    前記連絡手段に接続された前記I/OモジュールのID番号を読み出すID番号取得部と、
    読み出された前記ID番号に対応する前記制御プログラムを前記第一記憶部から引き当て、引き当てられた前記制御プログラムから前記実行プログラムを自動的に生成するプログラム生成部と、
    前記プログラム生成部で生成された前記実行プログラムを記憶するメイン記憶部と、
    を有し、
    前記表示装置は、
    前記メイン記憶部に記憶された前記実行プログラムを、前記第二記憶部および前記第三記憶部を参照し、前記ファンクションブロックと前記等価入出力情報とで前記表示画面に表示させる表示手段を備えることを特徴とするPLC。
  2. 前記PLCは、前記I/Oモジュールを複数備え、
    前記第一記憶部は、各前記I/Oモジュールに対応するよう複数の前記制御プログラムを予め記憶し、
    前記第二記憶部は、各前記制御プログラムの前記演算処理に対応するよう複数の前記ファンクションブロックを予め記憶し、
    前記第三記憶部は、各前記制御プログラムの前記入出力情報に対応するよう複数の前記等価入出力情報を予め記憶し、
    前記プログラム生成部は、前記連絡手段に順次接続された前記複数のI/Oモジュールの接続順序および前記ID番号に基づいて、複数の前記制御プログラムを連結することにより前記実行プログラムを自動的に生成する請求項1に記載のPLC。
  3. 前記CPUモジュールは、さらに、
    前記制御プログラムの前記演算プログラムをグラフィカル言語で等価的に表した等価演算プログラムを予め記憶した第四記憶部を有し、
    前記表示手段は、前記表示画面に表示された前記ファンクションブロックを、前記第四記憶部を参照し、前記等価演算プログラムに表示変換する請求項1または2に記載のPLC。
  4. 前記表示装置は、前記表示画面に表示された、前記メイン記憶部に記憶された前記実行プログラムに沿った前記ファンクションブロックの並び順序を変更可能とする編集手段を有する請求項2または3に記載のPLC。
  5. 前記表示装置は、前記表示画面に表示された前記等価入出力情報を前記グラフィカル言語で編集可能とする編集手段を有する請求項1〜4の何れか一項に記載のPLC。
  6. 前記表示装置は、前記表示画面に表示された前記等価演算プログラムを前記グラフィカル言語で編集可能とする編集手段を有する請求項3〜5の何れか一項に記載のPLC。
  7. 前記CPUモジュールは、前記メイン記憶部とは別領域であり、前記編集手段により編集された前記実行プログラムを記憶するユーザー記憶部をさらに備える請求項4〜6の何れか一項に記載のPLC。
  8. 前記グラフィカル言語は、ラダーダイアグラム、ファンクションブロックダイヤグラム、ストラクチャードテキスト、または、インストラクションリストである請求項1〜7の何れか一項に記載のPLC。
  9. 前記外部機器は、安全制御に関する安全機器であり、
    前記実行プログラムは、安全プログラムである請求項1〜8の何れか一項に記載のPLC。
JP2007172465A 2007-06-29 2007-06-29 Plc Expired - Fee Related JP4952401B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007172465A JP4952401B2 (ja) 2007-06-29 2007-06-29 Plc
EP08159189.3A EP2009529B1 (en) 2007-06-29 2008-06-27 Safety-oriented programmable logic controller with automatic program generation and monitoring
US12/147,970 US7941239B2 (en) 2007-06-29 2008-06-27 Plc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007172465A JP4952401B2 (ja) 2007-06-29 2007-06-29 Plc

Publications (2)

Publication Number Publication Date
JP2009009505A true JP2009009505A (ja) 2009-01-15
JP4952401B2 JP4952401B2 (ja) 2012-06-13

Family

ID=39869991

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007172465A Expired - Fee Related JP4952401B2 (ja) 2007-06-29 2007-06-29 Plc

Country Status (3)

Country Link
US (1) US7941239B2 (ja)
EP (1) EP2009529B1 (ja)
JP (1) JP4952401B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100063608A1 (en) * 2008-09-11 2010-03-11 Miller John W Method and System for Programmable Numerical Control
KR101074966B1 (ko) 2010-03-31 2011-10-18 성균관대학교산학협력단 Iec 61131―3 기반의 제어 프로그램 개발을 위한 프레임워크 시스템 및 제공 방법
JP2020523689A (ja) * 2017-06-07 2020-08-06 ブルックス・オートメーション・(ジャーマニー)・ゲーエムベーハーBrooks Automation (Germany) GmbH Pcプログラムを用いてplcを制御する方法
US10935935B2 (en) 2016-09-30 2021-03-02 Omron Corporation Safety control unit, safety control method, and safety control program
JP7241982B1 (ja) * 2022-02-15 2023-03-17 三菱電機株式会社 画像生成プログラム、画像生成装置、プログラマブルコントローラシステム及び画像生成方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100392587C (zh) * 2002-06-03 2008-06-04 西门子能量及自动化公司 用于编程智能模块的向导
US8255065B2 (en) * 2008-05-05 2012-08-28 Siemens Aktiengesellschaft Mobile function block for a PLC based distributed control system
JP5168012B2 (ja) * 2008-07-28 2013-03-21 株式会社ジェイテクト プログラマブルコントローラのプログラム編集装置
US7993003B2 (en) * 2009-01-23 2011-08-09 Eye Care And Cure Pte. Ltd Computerized method for colorblindness testing
US8903520B2 (en) * 2009-04-14 2014-12-02 General Electric Company Method for executing sequential function charts as function blocks in a control system
US9109577B2 (en) 2011-03-02 2015-08-18 General Electric Company Method and system for operating a wind turbine
US20130104101A1 (en) * 2011-09-16 2013-04-25 Mitsubishi Electric Corporation Sequence program creating apparatus
US20160085226A1 (en) * 2013-04-04 2016-03-24 Mitsubishi Electric Corporation Engineering tool and programmable logic controller
JP6139386B2 (ja) * 2013-11-27 2017-05-31 株式会社東芝 プログラマブルコントローラ
BR112016028380A2 (pt) * 2014-06-03 2017-08-22 Pb Innovate Pty Ltd sistema e método de recuperação de informação
US9690894B1 (en) * 2015-11-02 2017-06-27 Altera Corporation Safety features for high level design
JP6988597B2 (ja) * 2018-03-14 2022-01-05 オムロン株式会社 ラダー図プログラム作成支援装置、ラダー図プログラム作成支援方法、およびラダー図プログラム作成支援プログラム
JP7234810B2 (ja) * 2019-06-07 2023-03-08 オムロン株式会社 サポート装置およびサポートプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003263205A (ja) * 2002-03-12 2003-09-19 Fuji Electric Co Ltd 制御システムの設計支援装置及び設計支援用プログラム
JP2004295872A (ja) * 2003-03-13 2004-10-21 Omron Corp 制御装置、cpuユニット、プログラマブルコントローラのユーザプログラム編集方法、及びオンラインエディットされる際のプログラマブルコントローラの処理方法
JP2004303217A (ja) * 2003-03-14 2004-10-28 Omron Corp 表示・編集装置及び表示方法並びにプログラム製品
JP2007025736A (ja) * 2005-07-12 2007-02-01 Jtekt Corp 安全plc

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0259905A (ja) 1988-08-26 1990-02-28 Fanuc Ltd シーケンス・プログラム編集方式
US6868538B1 (en) * 1996-04-12 2005-03-15 Fisher-Rosemount Systems, Inc. Object-oriented programmable controller
JP2003140715A (ja) * 2001-10-30 2003-05-16 Toshiba Mach Co Ltd 数値制御装置
US7076311B2 (en) 2002-07-09 2006-07-11 Rockwell Automation Technologies, Inc. Configurable safety system for implementation on industrial system and method of implementing same
JP2006040122A (ja) * 2004-07-29 2006-02-09 Toyoda Mach Works Ltd プログラマブルコントローラ
JP4438552B2 (ja) * 2004-07-29 2010-03-24 株式会社ジェイテクト 安全plc、シーケンスプログラム作成支援ソフトウェア及びシーケンスプログラムの判定方法
US7840285B2 (en) * 2005-10-28 2010-11-23 Invensys Systems, Inc. Sequence of events recorder facility for an industrial process control environment
RU2417391C2 (ru) * 2006-08-24 2011-04-27 Сименс Энерджи Энд Отомейшн, Инк. Устройства, системы и способы конфигурирования программируемого логического контроллера

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003263205A (ja) * 2002-03-12 2003-09-19 Fuji Electric Co Ltd 制御システムの設計支援装置及び設計支援用プログラム
JP2004295872A (ja) * 2003-03-13 2004-10-21 Omron Corp 制御装置、cpuユニット、プログラマブルコントローラのユーザプログラム編集方法、及びオンラインエディットされる際のプログラマブルコントローラの処理方法
JP2004303217A (ja) * 2003-03-14 2004-10-28 Omron Corp 表示・編集装置及び表示方法並びにプログラム製品
JP2007025736A (ja) * 2005-07-12 2007-02-01 Jtekt Corp 安全plc

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100063608A1 (en) * 2008-09-11 2010-03-11 Miller John W Method and System for Programmable Numerical Control
US8688258B2 (en) * 2008-09-11 2014-04-01 Rockwell Automation Technologies, Inc. Method of controlling a machine tool
US9483043B2 (en) 2008-09-11 2016-11-01 Rockwell Automation Technologies, Inc. Method and system for programmable numerical control
KR101074966B1 (ko) 2010-03-31 2011-10-18 성균관대학교산학협력단 Iec 61131―3 기반의 제어 프로그램 개발을 위한 프레임워크 시스템 및 제공 방법
US10935935B2 (en) 2016-09-30 2021-03-02 Omron Corporation Safety control unit, safety control method, and safety control program
JP2020523689A (ja) * 2017-06-07 2020-08-06 ブルックス・オートメーション・(ジャーマニー)・ゲーエムベーハーBrooks Automation (Germany) GmbH Pcプログラムを用いてplcを制御する方法
US11726445B2 (en) 2017-06-07 2023-08-15 Brooks Automation Gmbh Method for controlling a PLC using a PC program
JP7241982B1 (ja) * 2022-02-15 2023-03-17 三菱電機株式会社 画像生成プログラム、画像生成装置、プログラマブルコントローラシステム及び画像生成方法
WO2023157091A1 (ja) * 2022-02-15 2023-08-24 三菱電機株式会社 画像生成プログラム、画像生成装置、プログラマブルコントローラシステム及び画像生成方法

Also Published As

Publication number Publication date
US20090005884A1 (en) 2009-01-01
EP2009529A3 (en) 2010-12-01
EP2009529B1 (en) 2013-09-11
JP4952401B2 (ja) 2012-06-13
US7941239B2 (en) 2011-05-10
EP2009529A2 (en) 2008-12-31

Similar Documents

Publication Publication Date Title
JP4952401B2 (ja) Plc
US8843885B2 (en) Program creation support device
JP4442524B2 (ja) 安全plc
US20100313128A1 (en) System and method for free form comments for a programmable logic controller
JP2004524620A (ja) フェイルセーフ制御システムのプログラミング方法及び装置
KR101889631B1 (ko) 시퀀스 프로그램 작성 지원 장치
JP2013143096A (ja) ラダープログラム作成装置
JP5295061B2 (ja) プログラマブルコントローラ
JP6129444B1 (ja) エンジニアリングツール
JP2005267267A (ja) 制御用表示装置、画面データ生成装置、並びに、それらのプログラムおよび記録媒体
US6711448B2 (en) Setting display apparatus for a programmable controller
JP2006209381A (ja) 制御用表示装置、そのプログラムおよび記録媒体
JP2006190202A (ja) データ処理装置、設定データ生成装置、並びに、それらのプログラムおよび記録媒体
JP2006330865A (ja) ユーザプログラム表示装置及びこれに適用されるプログラム
JP2007011713A (ja) プログラマブルコントローラの編集装置
JP2012159868A (ja) プログラマブルロジックコントローラのプログラミング装置
CN106155519B (zh) 画面信息生成装置
JP2007304939A (ja) プログラマブルコントローラおよびモニタ
CN117136342A (zh) 开发支持装置、开发支持装置的控制方法、信息处理程序以及记录介质
KR100642182B1 (ko) 단일씨피유를 이용한 씨앤씨시스템
JP2016110219A (ja) プログラマブル・ロジック・コントローラ、その制御方法およびプログラム作成支援装置
JP2005122597A (ja) Nc工作機械の表示装置
WO2023223957A1 (ja) 命令リスト作成装置、情報作成装置、画面作成装置、図面作成装置、命令リスト作成方法、情報作成方法、命令リスト作成プログラム、画面作成プログラム、図面作成プログラムおよび記録媒体
JP2003223204A (ja) プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体
JP2008059488A (ja) シーケンス処理のモニタ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110810

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111007

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120227

R150 Certificate of patent or registration of utility model

Ref document number: 4952401

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees