JP4795260B2 - 制御システム、制御方法、コントローラ、及び制御プログラム - Google Patents

制御システム、制御方法、コントローラ、及び制御プログラム Download PDF

Info

Publication number
JP4795260B2
JP4795260B2 JP2007021583A JP2007021583A JP4795260B2 JP 4795260 B2 JP4795260 B2 JP 4795260B2 JP 2007021583 A JP2007021583 A JP 2007021583A JP 2007021583 A JP2007021583 A JP 2007021583A JP 4795260 B2 JP4795260 B2 JP 4795260B2
Authority
JP
Japan
Prior art keywords
controller
control
information
control command
execution
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
JP2007021583A
Other languages
English (en)
Other versions
JP2008186395A (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
Priority to JP2007021583A priority Critical patent/JP4795260B2/ja
Publication of JP2008186395A publication Critical patent/JP2008186395A/ja
Application granted granted Critical
Publication of JP4795260B2 publication Critical patent/JP4795260B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、制御システム、制御方法、コントローラ、及び制御プログラムに関するものであり、特に、複数のコントローラが接続されてなる制御システムに関するものである。
従来、プログラマブルコントローラを含む複数のコントローラがバスを介して接続された制御システムにおいては、制御指令の実行命令の指示元となるプログラマブルコントローラから他の各コントローラへの制御指令等の命令(専用命令)を実行する際、命令対象先となるコントローラで実行可能な命令であるか否かを判断するワークエリアを保有し、命令名称の理解を行ったうえで制御指令等の命令を実行していた。
また、従来のプログラマブルコントローラは、各命令専用のフレームに制御指令データを格納して各コントローラに送信し、命令対象先のコントローラは各命令専用のフレームを受信して制御指令を処理していた。すなわち、従来の制御システムにおいては、命令対象先となるコントローラで実行可能な命令であるか否かを判断するための制御対象に応じたワークエリアが必要であった。
これに対して、実行可能な命令であるか否かを判断するためのワークエリアを備えることなく、それぞれの機器の制御を可能とする制御システムが提案されている。たとえば、制御対象機器からコマンド対応表を取得し、操作指示と関連付けて制御機器へ制御命令を送信する制御システムなどが提案されている(たとえば、特許文献1参照)。
特開2004−110613号公報
しかしながら、上述したような従来の制御システムにおいては、ファームウェアのバージョンアップが前提とされている。命令先のコントローラで実行可能な機能を追加する、すなわち新たな制御指令(専用命令)を処理する機能を追加するファームウェアのバージョンアップを命令先のコントローラに対して行う場合には、命令元であるプログラマブルコントローラに対してもファームウェアのバージョンアップが必要となる。したがって、このような制御システムにおいて新たな機能を追加するには、ファームウェアのバージョンアップという複雑な処理が必要となり、また、システムコストが高くなるという問題があった。
本発明は、上記に鑑みてなされたものであって、複数のコントローラが接続されてなる制御システムに関して、コントローラにおける機能の追加に容易に且つ安価に対応可能な制御システム、制御方法、コントローラおよび制御プログラムを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかる制御システムは、それぞれ外部機器の制御を実行可能な複数のコントローラが相互通信可能に接続されてそれぞれの前記コントローラが前記複数のコントローラのうち他方のコントローラに対して前記外部機器の制御の実行を相互に指示可能であり、前記複数のコントローラは、自コントローラで制御可能な第1制御指令に関する情報である第1制御指令情報を前記他方のコントローラに転送する制御指令情報転送部と、前記他方のコントローラから送信され前記第1制御指令の実行を指示する第1制御実行指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、前記他方のコントローラから送信され前記他方のコントローラで制御可能な第2制御指令に関する情報である第2制御指令情報を取得して保持する制御指令情報取得部と、自コントローラ内における基本的な処理を実行するシステムプログラムおよび自コントローラ内で動作するユーザプログラムを実行するプログラム実行部と、前記ユーザプログラム中に前記第2制御指令情報に含まれる第2制御指令が存在することを条件として、前記第2制御指令の実行を指示する第2制御実行指示情報を前記第2制御指令情報を用いて作成し前記他方のコントローラに送信する制御実行指示部と、前記他方のコントローラと相互通信を行う通信部と、を備えること、を特徴とする。
この発明によれば、複数のコントローラが接続されてなる制御システムにおいて、第2のコントローラが、第1のコントローラが実行可能な制御指令に関する制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指示情報を作成して第1のコントローラに対して送信する。これにより、指示先の第1のコントローラで実行可能な機能を追加する場合においても、第2のコントローラは、実行可能な命令であるか否かを判断するためのワークエリアを備えることなく、またファームウェアのバージョンアップをすることなく、指示先のコントローラにおける機能の追加に対して、容易に且つ安価に対応することができる、という効果を奏する。
以下に、本発明にかかる制御システム、制御方法、コントローラ、および制御プログラムの実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
まず、本発明にかかる制御システムの概要について図1を参照しながら説明する。図1は、本発明にかかる制御システムの概要を説明するためのブロック図である。本発明にかかる制御システムは、図1に示すように、外部機器の制御を行う第1のコントローラ1と、第1のコントローラ1に対して制御指令を行う第2のコントローラ11と、が相互通信可能に接続された制御システムである。
第1のコントローラ1は、制御指令情報転送部2と、外部機器制御部3と、通信部4と、記憶部と5、制御部6と、を備える。制御指令情報転送部2は、自コントローラで実行可能な制御指令に関する制御指令情報を第2のコントローラ11に転送する。この転送処理は、任意のタイミングで行うことが可能であるが、少なくとも制御システムの起動時には行われる。
外部機器制御部3は、記憶部5に記憶されている所定の制御プログラム(ユーザプログラム)および/または第2のコントローラ11から送信される制御指令の実行を指示する制御実行指示情報に基づいて外部機器の制御を行う。通信部4は、第2のコントローラ11と相互通信を行う。記憶部5は、第1のコントローラ1での制御プログラムおよび各種データを記憶する。制御部6は、第1のコントローラ1での処理全体を制御する。
第2のコントローラ11は、制御指令情報取得部12と、プログラム実行部13と、制御実行指示部14と、通信部15と、記憶部16と、制御部17と、を備える。制御指令情報取得部12は、第1のコントローラ1から送信される制御指令情報を取得して保持する。プログラム実行部13は、所定の制御プログラム(ユーザプログラム)を実行する。
制御実行指示部14は、プログラム実行部13における制御プログラム(ユーザプログラム)の実行中に、該制御プログラムに第1のコントローラ1において実行される制御指令が存在したとき、この制御指令の実行を第1のコントローラ1に指示する制御実行指示情報を作成して第1のコントローラ1に送信する。通信部15は、第1のコントローラ1と相互通信を行う。記憶部16は、第2のコントローラ11での制御における各種プログラムおよび各種データを記憶する。制御部17は、第2のコントローラ11での処理全体を制御する。
本発明にかかる制御システムは、以上のような構成を有することにより、第2のコントローラ11が、第1のコントローラ1が制御可能な制御指令に関する情報である制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指示情報を作成して第1のコントローラ1に対して送信する。そして、第1のコントローラ1は、制御実行指示情報に基づいて制御指令を実行することで、外部機器の制御を行う。
これにより、第1のコントローラ1が実行可能な制御指令の種類を追加する場合においても、第2のコントローラ11はファームウェアのバージョンアップをすることなく、第1のコントローラ1における機能の追加に対して、容易に且つ安価に対応することができる。
以下の実施の形態において、上述した本発明を実現する具体的な実施の形態について説明する。
実施の形態
図2は、本発明の実施の形態にかかる制御システムの構成を模式的に示す図であり、図3−1は、本実施の形態にかかる制御システムの構成を模式的に示すブロック図である。この制御システムは、ベースユニット25にコントローラA20、コントローラB21、コントローラC22、コントローラD23が装着されている。ここでコントローラA20は、プログラマブルコントローラ(PLC)であり、コントローラB21は、モーションコントローラ(MC)であり、コントローラC22は、数値制御コントローラ(NC)であり、コントローラD23は、ロボットコントローラ(RC)である。
プログラマブルコントローラ(PLC)20は、ベースユニット25上の所定の取り付け位置に装着されると、マスタコントローラとなり、他のコントローラの制御を行うことができる。ただし、実施の形態にかかる制御システムにおいては、他のコントローラ(21〜23)からもプログラマブルコントローラ(PLC)20の制御を行うことが可能であり、他のコントローラ(21〜23)からの指令によりプログラマブルコントローラ(PLC)20が制御されることもある。すなわち、この制御システムにおいては、ベースユニット25に装着されたコントローラ相互間で制御指令が行われる。
図3−1に示すように、ベースユニット25にはデータバス30が設けられており、データバス30を介してそれぞれのコントローラ間の相互通信が可能とされており、複数のコントローラ間で各種の情報を送受信することができる。また、本実施の形態にかかるデータバス30においては、全コントローラ間で共通化されたフレームを用いることにより、一のコントローラから他の複数のコントローラに対して同報通知を行うことが可能である。
図3−2は、各コントローラ(20〜23)とデータバス30との通信(データの流れ)を模式的に示す図である。図3−2に示すように、各コントローラ間ではデータバス30を介して相互に通信(データDの送受信)が行われる。
図3−3は、データバス30上に送信されるデータDの一例を示す図である。データバス30上には、たとえば図3−3に示すようにプログラマブルコントローラ(PLC)20からモーションコントローラ(MC)21への制御指令に関するデータD1、プログラマブルコントローラ(PLC)20から数値制御コントローラ(NC)22への制御指令に関するデータD2、プログラマブルコントローラ(PLC)20からロボットコントローラ(RC)23への制御指令に関するデータD3、プログラマブルコントローラ(PLC)20から全コントローラへの共通制御指令に関するデータD4、モーションコントローラ(MC)21からプログラマブルコントローラ(PLC)20への制御指令に関するデータD5などが送信される。
また、プログラマブルコントローラ(PLC)20は、図3−1に示すように、プログラマブルコントローラ(PLC)20内の処理を制御するMPU(Micro Processing Unit)40と、プログラマブルコントローラ(PLC)20内における基本的な処理を実行するシステムプログラムを格納するシステムプログラムROM(Read-Only Memory)41と、システムプログラムが使用するメモリ領域であるシステムワークRAM42と、データバス30に接続され各種データをフレーム化して所定の宛て先へと送信するとともに、自プログラマブルコントローラ(PLC)20宛のフレームの受信処理を行うデータバスインタフェース(図中、データバスI/Fと表記)43と、自プログラマブルコントローラ(PLC)20で動作するユーザプログラムを格納するユーザプログラムRAM(Random Access Memory)44と、ユーザプログラムが使用するデータを格納するユーザデータRAM45と、を備える。これらは、バス46を介して接続されている。
また、モーションコントローラ(MC)21は、図3−1に示すように、モーションコントローラ(MC)21内の処理を制御するMPU(Micro Processing Unit)50と、モーションコントローラ(MC)21内における基本的な処理を実行するシステムプログラムを格納するシステムプログラムROM(Read-Only Memory)51と、システムプログラムが使用するメモリ領域であるシステムワークRAM52と、データバス30に接続され各種データをフレーム化して所定の宛て先へと送信するとともに、自モーションコントローラ(MC)21宛のフレームの受信処理を行うデータバスインタフェース(図中、データバスI/Fと表記)53と、自モーションコントローラ(MC)21で動作するユーザプログラムを格納するユーザプログラムRAM(Random Access Memory)54と、ユーザプログラムが使用するデータを格納するユーザデータRAM55と、を備える。これらは、バス56を介して接続されている。
また、数値制御コントローラ(NC)22は、図3−1に示すように、数値制御コントローラ(NC)22内の処理を制御するMPU(Micro Processing Unit)60と、数値制御コントローラ(NC)22内における基本的な処理を実行するシステムプログラムを格納するシステムプログラムROM(Read-Only Memory)61と、システムプログラムが使用するメモリ領域であるシステムワークRAM62と、データバス30に接続され各種データをフレーム化して所定の宛て先へと送信するとともに、自数値制御コントローラ(NC)22宛のフレームの受信処理を行うデータバスインタフェース(図中、データバスI/Fと表記)63と、自数値制御コントローラ(NC)22で動作するユーザプログラムを格納するユーザプログラムRAM(Random Access Memory)64と、ユーザプログラムが使用するデータを格納するユーザデータRAM65と、を備える。これらは、バス66を介して接続されている。
また、ロボットコントローラ(RC)23は、図3−1に示すように、ロボットコントローラ(RC)23内の処理を制御するMPU(Micro Processing Unit)70と、ロボットコントローラ(RC)23内における基本的な処理を実行するシステムプログラムを格納するシステムプログラムROM(Read-Only Memory)71と、システムプログラムが使用するメモリ領域であるシステムワークRAM72と、データバス30に接続され各種データをフレーム化して所定の宛て先へと送信するとともに、自ロボットコントローラ(RC)23宛のフレームの受信処理を行うデータバスインタフェース(図中、データバスI/Fと表記)73と、自ロボットコントローラ(RC)23で動作するユーザプログラムを格納するユーザプログラムRAM(Random Access Memory)74と、ユーザプログラムが使用するデータを格納するユーザデータRAM75と、を備える。これらは、バス76を介して接続されている。
図4−1〜図4−4は、それぞれプログラマブルコントローラ(PLC)20、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23のデータバスI/F43、データバスI/F53、データバスI/F63、データバスI/F73におけるデータ構造を模式的に示す図である。
図4−1に示すように、プログラマブルコントローラ(PLC)20のデータバスI/F43では、自コントローラ(コントローラA)からの送信情報であるコントローラA情報80と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報81と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報82と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報83と、を有する。
また、図4−2に示すように、モーションコントローラ(MC)21のデータバスI/F53では、他コントローラ(コントローラA)からの受信情報であるコントローラA情報90と、自コントローラ(コントローラB)からの送信情報であるコントローラB情報91と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報92と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報93と、を有する。
また、図4−3に示すように、数値制御コントローラ(NC)22のデータバスI/F63では、他コントローラ(コントローラA)からの受信情報であるコントローラA情報100と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報101と、自コントローラ(コントローラC)からの送信情報であるコントローラC情報102と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報103と、を有する。
また、図4−4に示すように、ロボットコントローラ(RC)23のデータバスI/Fで73は、他コントローラ(コントローラA)からの受信情報であるコントローラA情報110と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報111と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報112と、自コントローラ(コントローラD)からの送信情報であるコントローラD情報113と、を有する。
図5−1〜図5−4は、コントローラ情報の送信情報(コントローラA情報80、コントローラB情報91、コントローラC情報102、コントローラD情報113)の詳細を示す図である。この送信情報は、プログラマブルコントローラ(PLC)20、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23が、それぞれデータバスI/F43、データバスI/F53、データバスI/F63、データバスI/F73から他のコントローラに対して転送する情報であり、基本的に各コントローラ間において共通のフレームとされている。
図5−1は、コントローラA情報80(送信情報)の詳細を示す図である。なお、送信情報であるか受信情報であるかの違いがあるが、データの詳細内容は、コントローラA情報90(受信情報)、コントローラA情報100(受信情報)およびコントローラA情報110(受信情報)と同様である。図5−1に示すように、コントローラA情報80(送信情報)は、転送用制御指令情報データ長120、命令情報の第1の形態でありPLCに対して制御を命令するためのPLC制御指令情報121、および命令情報の第2の形態であり全てのコントローラに対する制御命令を同報通知するための共通制御指令情報122を有する。なお、転送用制御指令情報データ長120は、PLC制御指令情報121または共通制御指令情報122のデータ長である。
また、図5−2は、コントローラB情報91(送信情報)の詳細を示す図である。なお、送信情報であるか受信情報であるかの違いがあるが、データの詳細内容は、コントローラB情報81(受信情報)、コントローラB情報101(受信情報)およびコントローラB情報111(受信情報)と同様である。図5−2に示すように、コントローラB情報91(送信情報)は、転送用制御指令情報データ長130、命令情報の第1の形態でありMCに対して制御を命令するためのMC制御指令情報131、および命令情報の第2の形態であり全てのコントローラに対する制御命令を同報通知するための共通制御指令情報132を有する。なお、転送用制御指令情報データ長130は、MC制御指令情報131または共通制御指令情報132のデータ長である。
また、図5−3は、コントローラC情報102(送信情報)の詳細を示す図である。なお、送信情報であるか受信情報であるかの違いがあるが、データの詳細内容は、コントローラC情報82(受信情報)、コントローラC情報92(受信情報)およびコントローラC情報112(受信情報)と同様である。図5−3に示すように、コントローラC情報102(送信情報)は、転送用制御指令情報データ長140、命令情報の第1の形態でありNCに対して制御を命令するためのNC制御指令情報141、および命令情報の第2の形態であり全てのコントローラに対する制御命令を同報通知するための共通制御指令情報142を有する。なお、転送用制御指令情報データ長140は、NC制御指令情報141または共通制御指令情報142のデータ長である。
また、図5−4は、コントローラD情報113(送信情報)の詳細を示す図である。なお、送信情報であるか受信情報であるかの違いがあるが、データの詳細内容は、コントローラD情報83(受信情報)、コントローラD情報93(受信情報)およびコントローラD情報103(受信情報)と同様である。図5−4に示すように、コントローラD情報113(送信情報)は、転送用制御指令情報データ長150、および命令情報の第1の形態でありRCに対して制御を命令するためのRC制御指令情報151を有する。なお、転送用制御指令情報データ長120は、RC制御指令情報151のデータ長である。
なお、上記においては図5−4に示すフレームのみが他のフレームと異なり、命令情報の第2の形態であり全てのコントローラに対して同報通知するための命令情報が含まれていないが、ロボットコントローラ(RC)23内における基本的な処理を実行するシステムプログラム(システムプログラムROM(Read-Only Memory)71に格納)をバーションアップすることにより、他のコントローラ情報と同様に全てのコントローラに対して同報通知するための命令情報を含ませることができる。
図6−1〜図6−4は、図5−1〜図5−4に示した制御指令情報(PLC制御指令情報121、MC制御指令情報131、NC制御指令情報141、RC制御指令情報151)の詳細を示す図である。これらの制御指令情報は、基本的に各コントローラ間において共通のフレームとされている。
図6−1は、PLC制御指令情報121の詳細を示す図である。図6−1に示すように、PLC制御指令情報121は、PLCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)160と、該制御指令に必要なデータ個数(命令内容数)161と、該制御指令に必要なシステム情報162とを有する。ここで、たとえば「ステップ数100だけ戻れ」との内容のPLC制御指令情報121がある場合には、制御指令名称160は「戻れ」を意味する制御指令α、制御に必要なデータ個数(命令内容数)161は「1(ヶ)」、システム情報162は「(ステップ数)100」である。
図6−2は、MC制御指令情報131の詳細を示す図である。図6−2に示すように、MC制御指令情報131は、MCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)170と、該制御指令に必要なデータ個数(命令内容数)171と、該制御指令に必要なシステム情報172とを有する。
図6−3は、NC制御指令情報141の詳細を示す図である。図6−3に示すように、NC制御指令情報141は、NCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)180と、該制御指令に必要なデータ個数(命令内容数)181と、該制御指令に必要なシステム情報182とを有する。
図6−4は、RC制御指令情報151の詳細を示す図である。図6−4に示すように、RC制御指令情報151は、RCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)190と、該制御指令に必要なデータ個数(命令内容数)191と、該制御指令に必要なシステム情報192とを有する。
つぎに、このような本実施の形態にかかる制御システムにおける各コントローラのシステムプログラムの起動動作処理について説明する。ここでは、制御システム起動時のプログラマブルコントローラ(PLC)20のシステムプログラム起動動作処理を例に図7を参照しながら説明する。図7は、制御システム起動時におけるプログラマブルコントローラ(PLC)20のシステムプログラム起動動作処理を説明するためのフローチャートである。
まず、制御システムが起動されると、プログラマブルコントローラ(PLC)20のMPU40はシステムプログラムROM41に格納されているシステムプログラムを実行し、自コントローラから他のコントローラへ転送する情報であり、且つ自コントローラで制御可能な制御指令であって他のコントローラ間で共通して認識可能な制御指令に関する情報である転送用の制御指令情報をシステムワークRAM42に作成する(ステップS110)。つぎに、MPU40は、システムワークRAM42に作成した転送用の制御指令情報をデータバスI/F43の自コントローラ用エリアにコントローラA情報80としてセットする(ステップS111)。
そして、データバスI/F43は、自コントローラ用エリアにコントローラA情報80としてセットされた転送用の制御指令情報をデータバス30経由で他のコントローラのデータバスI/F(53、63、73)に送信する(ステップS112)。このとき、他のコントローラからも同様に転送用の制御指令情報がデータバス30に送信され、データバス30上には各コントローラの転送用の制御指令情報(91、102、113)が流れ、宛先のコントローラへ送信される。また、データバスI/F43は、データバス30を介して各コントローラの転送用の制御指令情報(81、82、83)を受信し、他コントローラ情報用のエリアに格納する(たとえば、コントローラBからの受信情報である転送用の制御指令情報をコントローラB情報81として格納する)。
つぎに、MPU40は、データバスI/F43を介してデータバス30に接続されているコントローラの台数の情報を取得し(ステップS113)、データバス30に接続されているコントローラの台数が2台以上であるか否かを判断する(ステップS114)。
ここでデータバス30に接続されているコントローラの台数が2台以上である場合には(ステップS114肯定)、MPU40はデータバスI/F43に各コントローラの転送用の制御指令情報がデータバス30上に存在するかを確認し(ステップS115)、さらにデータバスI/F43の所定のエリアに各コントローラの転送用の制御指令情報がセットされているか否かを判断する(ステップS116)。転送用の制御指令情報がセットされていないと判断した場合には(ステップS116否定)、ステップS115に戻る。
また、転送用の制御指令情報がセットされていると判断した場合には(ステップS116肯定)、MPU40はデータバスI/F43から転送用の制御指令情報をデータ長分、コントローラ毎に取得する(ステップS117)。MPU40は、取得した各コントローラ毎の転送用の制御指令情報をシステムワークRAM42に格納する(ステップS118)。
そして、MPU40は、データバス30に接続されているコントローラの台数分だけ、転送用の制御指令情報を取得、格納したか否かを判断する(ステップS119)。接続台数分だけの転送用の制御指令情報を取得、格納していないと判断した場合には(ステップS119否定)、ステップS115に戻る。また、接続台数分だけの転送用の制御指令情報を取得、格納したと判断した場合には(ステップS119肯定)、ユーザプログラム実行待機状態となり、制御システム起動時におけるプログラマブルコントローラ(PLC)20の一連の動作処理が終了する。
また、ステップS114に戻って、ここでデータバス30に接続されているコントローラの台数が2台以上でない場合には(ステップS114否定)、ユーザプログラム実行待機状態となり、制御システム起動時におけるプログラマブルコントローラ(PLC)20の一連の動作処理が終了する。
上記においては、プログラマブルコントローラ(PLC)20を例に、制御システムを構成するコントローラの制御システム起動時のシステムプログラム起動動作処理を説明したが、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23においても、同様にシステムプログラムの起動動作処理が行われる。
つぎに、図7のフローに従ってシステムプログラムの起動動作処理が終了し、ユーザプログラム実行待機状態からユーザプログラムの実行が開始された後の、制御指令の実行を指示する指示元のコントローラにおけるユーザプログラムの動作処理について説明する。ここでは、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を例に、指示元のコントローラ20から他の1つのコントローラに対して制御指令の実行指示を行う制御実行指示処理について図8を参照しながら説明する。
図8は、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を説明するためのフローチャートである。なお、プログラマブルコントローラ(PLC)20のシステムワークRAM42には、上記の図7のフローに従った処理がなされて各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用の制御指令情報(81、82、83)が格納されている。
まず、プログラマブルコントローラ(PLC)20が所定のユーザプログラムを実行し、MPU40がユーザプログラム上に他のコントローラへの制御指令があることを確認する(ステップS210)。つぎにMPU40は、他のコントローラへの制御指令実施の指示が外部(ユーザ)から入力されているか否かを判断する(ステップS211)。
つぎに、MPU40は、ユーザプログラムで指定されている制御指令対象先コントローラ、データ個数、データを該ユーザプログラムから取得する(ステップS212)。ここで、制御指令対象先コントローラはモーションコントローラ(MC)21とする。続いて、MPU40は、システムワークRAM42に格納している対象先コントローラの転送用の制御指令情報を取得する(ステップS213)。すなわち、ここではMPU40は、システムワークRAM42に格納しているモーションコントローラ(MC)21の転送用の制御指令情報81を取得する。
つぎに、MPU40は、取得したモーションコントローラ(MC)21の転送用の制御指令情報81を確認し、制御指令名称(命令名称)170、制御に必要なデータ個数171、データ実情報(制御に必要なシステム情報)172を確認する(ステップS214)。そして、MPU40は、ユーザプログラムで指定された制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在するか否かを判断する(ステップS215)。ここで、制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在しない場合は(ステップS215否定)、モーションコントローラ(MC)21の転送用の制御指令情報81が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS219)。
また、制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在する場合は(ステップS215肯定)、MPU40は、ユーザプログラムで指定されたデータ個数と転送用制御指令情報81で指定されているデータ個数171とが一致するか否かを確認する(ステップS216)。ここで、データ個数が一致しない場合は(ステップS216否定)、モーションコントローラ(MC)21の転送用制御指令情報81が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS219)。
また、データ個数が一致する場合は(ステップS216肯定)、MPU40は、制御指令に必要なデータからモーションコントローラ(MC)21に対する制御実行指示情報を作成し、自コントローラのデータバスI/F43にセットする(ステップS217)。図9に、MPU40が作成してデータバスI/F43にセットする制御実行指示情報200の詳細を示す。
図9に示すように、制御実行指示情報200は、制御実行指示情報データ長201と、対象先コントローラ番号202(モーションコントローラ(MC)21番号)と、モーションコントローラ(MC)21に対する制御指令の名称である制御指令名称203と、該制御実行指示情報200による制御に必要なデータ個数(命令内容数)204と、該制御実行指示情報200による制御に必要なユーザ指定情報205と、を有する。なお、制御実行指示情報データ長201は、制御実行指示情報200のデータ長である。
そして、データバスI/F43は、制御実行指示情報200をデータバス30経由でモーションコントローラ(MC)21のデータバスI/F53に送信し(ステップS218)、一連のユーザプログラム処理を終了する(ステップS219)。
上記においては、プログラマブルコントローラ(PLC)20からモーションコントローラ(MC)21への制御実行指令情報の送信を例にユーザプログラム実行時の制御実行指示処理を説明したが、プログラマブルコントローラ(PLC)20から数値制御コントローラ(NC)22およびロボットコントローラ(RC)23に対しても、同様にユーザプログラム実行時の制御実行指示処理が行われる。また、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23のそれぞれから他のコントローラに対しても、同様にユーザプログラム実行時の制御実行指示処理を行うことができる。すなわち、この制御システムにおいては、ベースユニット25に装着され、データバス30で接続されたコントローラ相互間で制御実行指示を行い、他のコントローラの制御を行うことができる。
つぎに、図8のフローに従ってユーザプログラム実行時の制御実行指示処理が実行された後の、制御指令の実行指示がなされた各コントローラにおけるデータバスI/F情報の確認の動作処理について説明する。ここでは、モーションコントローラ(MC)21の動作処理を例に図10を参照しながら説明する。図10は、モーションコントローラ(MC)21におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。
まず、モーションコントローラ(MC)21のMPU50は、データバスI/F53上の情報を確認し(ステップS310)、制御実行指示情報の受信があるか否かを判断する(ステップS311)。制御実行指示情報の受信がないと判断した場合は(ステップS311否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
また、制御実行指示情報の受信があると判断した場合は(ステップS311肯定)、MPU50は制御実行指示情報の対象先が自コントローラであるか否かを判断する(ステップS312)。ここで、制御実行指示情報の対象先が自コントローラでないと判断した場合は(ステップS312否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
一方、制御実行指示情報の対象先が自コントローラであると判断した場合は(ステップS312肯定)、MPU50は受信した制御実行指示情報をシステムワークRAM52に格納する(ステップS313)。つぎに、MPU50は、システムワークRAM52に格納した制御実行指示情報の制御指令名称(命令名称)を確認し(ステップS314)、制御指令名称(命令名称)が、自コントローラで制御可能な制御指令に関する情報(すなわち転送用の制御指令情報)に存在するか否かを判断する(ステップS315)。
ここで、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在しない場合は(ステップS315否定)、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。また、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在する場合は(ステップS315肯定)、MPU50は制御実行指示情報で指定された制御指令を実行し(ステップS316)、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
つぎに、図7のフローに従ってシステムプログラムの起動動作処理が終了し、ユーザプログラム実行待機状態からユーザプログラムの実行が開始された後の、制御実行命令の指示元のコントローラにおけるユーザプログラムの動作処理について説明する。ここでは、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を例に、制御実行命令の指示元のコントローラから他の全コントローラに対して共通の制御実行指示を行う共通制御実行指示処理について図11を参照しながら説明する。
図11は、共通制御実行指示処理を実行する場合のプログラマブルコントローラ(PLC)20の動作処理を説明するためのフローチャートである。なお、プログラマブルコントローラ(PLC)20のシステムワークRAM42には、図7のフローに従った処理がなされて各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用制御指令情報が格納されている。
まず、プログラマブルコントローラ(PLC)20が所定のユーザプログラムを実行し、MPU40がユーザプログラム上に各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)への制御指令があることを確認する(ステップS410)。つぎにMPU40は、各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)への制御指令実施の指示が外部(ユーザ)から入力されているか否かを判断する(ステップS411)。
つぎに、MPU40は、ユーザプログラムで指定されている制御指令対象先コントローラ、データ個数、データを該ユーザプログラムから取得する(ステップS412)。ここで、制御指令対象先コントローラは各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)である。
続いて、MPU40は、システムワークRAM42に格納している対象先コントローラの転送用制御指令情報の情報を取得する(ステップS413)。すなわち、ここではMPU40は、システムワークRAM42に格納している各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用制御指令情報を取得する。
つぎに、MPU40は、取得した各コントローラの転送用制御指令情報を確認し、制御指令名称(命令名称)、制御に必要なデータ個数、データ実情報(制御に必要なシステム情報)を確認する(ステップS414)。そして、MPU40は、ユーザプログラムで指定された制御指令名称(命令名称)が各コントローラの転送用制御指令情報に存在するか否かを判断する(ステップS415)。ここで、制御指令名称(命令名称)が転送用制御指令情報に存在しない場合は(ステップS415否定)、転送用制御指令情報が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS419)。
また、制御指令名称(命令名称)が転送用制御指令情報に存在する場合は(ステップS415肯定)、MPU40は、ユーザプログラムで指定されたデータ個数と転送用制御指令情報で指定されているデータ個数が一致するか否かを各コントローラの転送用制御指令情報について確認する(ステップS416)。ここで、データ個数が一致しない場合は(ステップS416否定)、転送用制御指令情報が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS419)。
また、データ個数が一致する場合は(ステップS416肯定)、MPU40は、制御指令に必要なデータから共通制御実行指示情報を作成し、自コントローラのデータバスI/F43の自コントローラ用エリアに共通制御実行指示情報300としてセットする(ステップS417)。図12に、MPU40が作成してデータバスI/F43にセットする共通制御実行指示情報300の詳細を示す。
図12に示すように、共通制御実行指示情報300は、共通制御実行指示情報データ長301と、対象先コントローラ番号302(全コントローラ番号)と、全コントローラに対して制御を命令する命令情報の名称である共通制御指令名称303と、該共通制御実行指示情報300による制御に必要なデータ個数(命令内容数)304と、該共通制御実行指示情報300による制御に必要なユーザ指定情報305と、を有する。なお、共通制御実行指示情報データ長301は、共通制御実行指示情報300のデータ長である。ここで、共通制御実行指示情報300のフレームは、全コントローラ間で共通化された共通フレームである。共通フレームを用いることにより、一のコントローラから他の複数のコントローラに対して同報通知を行うことが可能である。
そして、データバスI/F43は、自コントローラ用エリアにセットされた共通制御実行指示情報300を同報通知する。すなわち、データバスI/F43は、共通制御実行指示情報300をデータバス30経由で各コントローラのデータバスI/F53、63、73に送信する(ステップS418)。そして、一連のユーザプログラム処理を終了する(ステップS419)。
上記においては、プログラマブルコントローラ(PLC)20から他の全コントローラへの共通制御実行指示処理(同報通知)を例にユーザプログラム実行時の共通制御実行指示処理(同報通知)を説明したが、プログラマブルコントローラ(PLC)20以外の他の各コントローラからその他の全コントローラに対しても同様にユーザプログラム実行時の共通制御実行指示処理(同報通知)を行うことができる。すなわち、この制御システムにおいては、ベースユニット25に装着され、データバス30で接続されたコントローラ相互間で共通制御実行指示を行い、他のコントローラの制御を一括して行うことができる。
図11のフローに従ってユーザプログラム実行時の共通制御実行指示処理が実行された後の、制御の実行指示がなされた各コントローラにおけるデータバスI/F情報の確認の動作処理について説明する。ここでは、モーションコントローラ(MC)21の動作処理を例に図13を参照しながら説明する。図13は、モーションコントローラ(MC)21におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。
まず、モーションコントローラ(MC)21のMPU50は、データバスI/F53上の情報を確認し(ステップS510)、共通制御実行指示情報の受信があるか否かを判断する(ステップS511)。共通制御実行指示情報の受信がないと判断した場合は(ステップS511否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
また、共通制御実行指示情報の受信があると判断した場合は(ステップS511肯定)、MPU50は共通制御実行指示情報の対象先が自コントローラであるか否かを判断する(ステップS512)。ここで、共通制御実行指示情報の対象先が自コントローラでないと判断した場合は(ステップS512否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
一方、共通制御実行指示情報の対象先が自コントローラであると判断した場合は(ステップS512肯定)、MPU50は受信した共通制御実行指示情報をシステムワークRAM52に格納する(ステップS513)。つぎに、MPU50は、システムワークRAM52に格納した共通制御実行指示情報の制御指令名称(命令名称)を確認し(ステップS514)、制御指令名称(命令名称)が、自コントローラで制御可能な制御指令に関する情報(すなわち、転送用制御指令情報)に存在するか否かを判断する(ステップS515)。
ここで、共通制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在しないと判断した場合は(ステップS515否定)、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。また、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在すると判断した場合は(ステップS515肯定)、MPU50は共通制御実行指示情報で指定された制御指令を実行し(ステップS516)、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
上述したように、本実施の形態にかかる制御システムによれば、制御実行指示の指示元となるコントローラが、制御実行指示の指示先のコントローラ間で共通して認識可能な制御指令に関する情報である制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指情報を作成して指示先のコントローラに対して送信する。
これにより、指示元となるコントローラは、指示先のコントローラで実行可能な機能を追加する場合においても、ファームウェアのバージョンアップなどをする必要がない。すなわち、指示元となるコントローラは、指示先のコントローラで実行可能な機能を追加する場合においても、制御実行命令の指示先のコントローラ間で共通して実行可能な制御指令に関する情報を有することで、指示先のコントローラにおける機能の追加に対して、容易に且つ安価に対応することができる。
また、本実施の形態にかかる制御システムにおいては、ベースユニットに装着され、データバスで接続されたコントローラ相互間で制御指令を行い、他のコントローラの制御を相互に行うことができる。
なお、本実施の形態においては、プログラマブルコントローラ(PLC)20、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23が装着されている場合を例に挙げているが、本発明はこれに限定されるものではなく、さらに多くのコントローラがバス30により接続された形態に適用することができる。
以上のように、本発明にかかる制御システムは、制御実行命令の指示先のコントローラに新たな機能を追加する場合に有用である。
本発明にかかる制御システムの概要を説明するためのブロック図である。 本発明の実施の形態にかかる制御システムの構成を模式的に示す図である。 本発明の実施の形態にかかる制御システムの構成を模式的に示すブロック図である。 本発明の実施の形態にかかるコントローラとデータバスとの通信(データの流れ)を模式的に示す図である。 本発明の実施の形態にかかるデータバス上に送信されるデータDの一例を示す図である。 本発明の実施の形態にかかるプログラマブルコントローラ(PLC)のデータバスI/Fの有するデータ構造を模式的に示す図である。 本発明の実施の形態にかかるモーションコントローラ(MC)のデータバスI/Fの有するデータ構造を模式的に示す図である。 本発明の実施の形態にかかる数値制御コントローラ(NC)のデータバスI/Fの有するデータ構造を模式的に示す図である。 本発明の実施の形態にかかるロボットコントローラ(RC)のデータバスI/Fの有するデータ構造を模式的に示す図である。 本発明の実施の形態におけるコントローラ情報の送信情報(コントローラA情報)の詳細を示す図である。 本発明の実施の形態におけるコントローラ情報の送信情報(コントローラB情報)の詳細を示す図である。 本発明の実施の形態におけるコントローラ情報の送信情報(コントローラC情報)の詳細を示す図である。 本発明の実施の形態におけるコントローラ情報の送信情報(コントローラD情報)の詳細を示す図である。 図5−1に示した制御指令情報(PLC制御指令情報)の詳細を示す図である。 図5−2に示した制御指令情報(MC制御指令情報)の詳細を示す図である。 図5−3に示した制御指令情報(NC制御指令情報)の詳細を示す図である。 図5−4に示した制御指令情報(RC制御指令情報)の詳細を示す図である。 制御システム起動時におけるプログラマブルコントローラ(PLC)のシステムプログラム起動動作処理を説明するためのフローチャートである。 ユーザプログラム実行時のプログラマブルコントローラ(PLC)の動作処理を説明するためのフローチャートである。 本発明の実施の形態におけるMPUが作成してデータバスI/Fにセットする制御実行指令情報の詳細を示す図である。 モーションコントローラ(MC)におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。 共通制御実行指示処理を実行する場合のプログラマブルコントローラ(PLC)の動作処理を説明するためのフローチャートである。 本発明の実施の形態におけるMPUが作成してデータバスI/Fにセットする共通制御実行指示情報の詳細を示す図である。 モーションコントローラ(MC)におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。
符号の説明
1 第1のコントローラ
2 制御指令情報転送部
3 外部機器制御部
4 通信部
5 記憶部
6 制御部
11 第2のコントローラ
12 制御指令情報取得部
13 プログラム実行部
14 制御実行指示部
15 通信部
16 記憶部
17 制御部
20 プログラマブルコントローラ(PLC)
21 モーションコントローラ(MC)
22 数値制御コントローラ(NC)
23 ロボットコントローラ(RC)
25 ベースユニット
30 データバス
40 MPU
41 システムプログラムROM
42 システムワークRAM
43 データバスインタフェース
44 ユーザプログラムRAM
45 ユーザデータRAM
46 バス
51 システムプログラムROM
52 システムワークRAM
53 データバスインタフェース
54 ユーザプログラムRAM
55 ユーザデータRAM
56 バス
61 システムプログラムROM
62 システムワークRAM
63 データバスインタフェース
64 ユーザプログラムRAM
65 ユーザデータRAM
66 バス
71 システムプログラムROM
72 システムワークRAM
73 データバスインタフェース
74 ユーザプログラムRAM
75 ユーザデータRAM
76 バス
80 コントローラA情報
81 コントローラB情報
82 コントローラC情報
83 コントローラD情報
90 コントローラA情報
91 コントローラB情報
92 コントローラC情報
93 コントローラD情報
100 コントローラA情報
101 コントローラB情報
102 コントローラC情報
103 コントローラD情報
110 コントローラA情報
111 コントローラB情報
112 コントローラC情報
113 コントローラD情報
120 転送用制御指令情報データ長
121 PLC制御指令情報
122 共通制御指令情報
130 転送用制御指令情報データ長
131 MC制御指令情報
132 共通制御指令情報
140 転送用制御指令情報データ長
141 NC制御指令情報
142 共通制御指令情報
150 転送用制御指令情報データ長
151 RC制御指令情報
160 制御指令名称
161 制御に必要なデータ個数
162 制御に必要なシステム情報
170 制御指令名称
171 制御に必要なデータ個数
172 制御に必要なシステム情報
180 制御指令名称
181 制御に必要なデータ個数
182 制御に必要なシステム情報
190 制御指令名称
191 制御に必要なデータ個数
192 制御に必要なシステム情報
200 制御実行指示情報
201 制御実行指示情報データ長
202 対象先コントローラ番号
203 制御指令名称
205 ユーザ指定情報
300 共通制御実行指示情報
301 共通制御実行指示情報データ長
302 対象先コントローラ番号
303 共通制御指令名称
305 ユーザ指定情報

Claims (6)

  1. それぞれ外部機器の制御を実行可能な複数のコントローラが相互通信可能に接続されてそれぞれの前記コントローラが前記複数のコントローラのうち他方のコントローラに対して前記外部機器の制御の実行を相互に指示可能であり、
    前記複数のコントローラは、
    自コントローラで制御可能な第1制御指令に関する情報である第1制御指令情報を前記他方のコントローラに転送する制御指令情報転送部と、
    前記他方のコントローラから送信され前記第1制御指令の実行を指示する第1制御実行指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、
    前記他方のコントローラから送信され前記他方のコントローラで制御可能な第2制御指令に関する情報である第2制御指令情報を取得して保持する制御指令情報取得部と、
    自コントローラ内における基本的な処理を実行するシステムプログラムおよび自コントローラ内で動作するユーザプログラムを実行するプログラム実行部と、
    前記ユーザプログラム中に前記第2制御指令情報に含まれる第2制御指令が存在することを条件として、前記第2制御指令の実行を指示する第2制御実行指示情報を前記第2制御指令情報を用いて作成し前記他方のコントローラに送信する制御実行指示部と、
    前記他方のコントローラと相互通信を行う通信部と、
    を備えること、
    を特徴とする制御システム。
  2. 記コントローラが、複数の前記他方のコントローラに対して、前記第2制御実行指示情報を同報通知すること、
    を特徴とする請求項1に記載の制御システム。
  3. 前記第2制御実行指示情報の同報通知は、複数の前記他方のコントローラに共通なフレームを用いて行うこと、
    を特徴とする請求項2に記載の制御システム。
  4. それぞれ外部機器の制御を実行可能な複数のコントローラが相互通信可能に接続されてそれぞれの前記コントローラが前記複数のコントローラのうち他方のコントローラに対して前記外部機器の制御の実行を相互に指示可能な制御システムを構成するコントローラであって、
    自コントローラで制御可能な第1制御指令に関する情報である第1制御指令情報を前記他方のコントローラに転送する制御指令情報転送部と、
    前記他方のコントローラから送信され前記第1制御指令の実行を指示する第1制御実行指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、
    前記他方のコントローラから送信され前記他方のコントローラで制御可能な第2制御指令に関する情報である第2制御指令情報を取得して保持する制御指令情報取得部と、
    自コントローラ内における基本的な処理を実行するシステムプログラムおよび自コントローラ内で動作するユーザプログラムを実行するプログラム実行部と、
    前記ユーザプログラム中に前記第2制御指令情報に含まれる第2制御指令が存在することを条件として、前記第2制御指令の実行を指示する第2制御実行指示情報を前記第2制御指令情報を用いて作成し前記他方のコントローラに送信する制御実行指示部と、
    他方のコントローラと相互通信を行う通信部と、
    を備えることを特徴とするコントローラ。
  5. それぞれ外部機器の制御を実行可能な複数のコントローラが相互通信可能に接続されてそれぞれの前記コントローラが前記複数のコントローラのうち他方のコントローラに対して前記外部機器の制御の実行を相互に指示可能な制御システムの制御方法であって、
    前記複数のコントローラのうち第1のコントローラが、自コントローラで制御可能な制御指令に関する情報である制御指令情報を前記複数のコントローラのうち第2のコントローラに転送する制御指令情報転送工程と、
    前記第2のコントローラが、前記第1のコントローラから送信される前記制御指令情報を取得して保持する制御指令情報取得工程と、
    前記第2のコントローラが、自コントローラ内における基本的な処理を実行するシステムプログラムおよび自コントローラ内で動作するユーザプログラムを実行するプログラム実行工程と、
    前記第2のコントローラが、前記ユーザプログラム中に前記制御指令情報に含まれる制御指令が存在することを条件として、前記制御指令の実行を指示する制御実行指示情報を前記制御指令情報を用いて作成し前記第1のコントローラに送信する制御実行指示工程と、
    前記第1のコントローラが、前記第2のコントローラから送信される前記制御実行指示情報に基づいて前記外部機器の制御を行う外部機器制御工程と、
    を含むこと、
    を特徴とする制御方法。
  6. 請求項に記載の制御方法を制御システムに実行させる制御プログラム。
JP2007021583A 2007-01-31 2007-01-31 制御システム、制御方法、コントローラ、及び制御プログラム Active JP4795260B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007021583A JP4795260B2 (ja) 2007-01-31 2007-01-31 制御システム、制御方法、コントローラ、及び制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007021583A JP4795260B2 (ja) 2007-01-31 2007-01-31 制御システム、制御方法、コントローラ、及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2008186395A JP2008186395A (ja) 2008-08-14
JP4795260B2 true JP4795260B2 (ja) 2011-10-19

Family

ID=39729365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007021583A Active JP4795260B2 (ja) 2007-01-31 2007-01-31 制御システム、制御方法、コントローラ、及び制御プログラム

Country Status (1)

Country Link
JP (1) JP4795260B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2520991B1 (de) * 2011-05-02 2014-03-19 Siemens Aktiengesellschaft Verfahren zum steuernden Eingriff in das Verhalten eines Submoduls

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11231924A (ja) * 1998-02-10 1999-08-27 Yaskawa Electric Corp 異種コントローラの指令生成・監視装置
JP3844904B2 (ja) * 1999-03-31 2006-11-15 三菱電機株式会社 車両制御通信システム
JP2003186507A (ja) * 2001-12-18 2003-07-04 Hitachi Ltd 分散制御システム
JP2004110613A (ja) * 2002-09-20 2004-04-08 Toshiba Corp 制御装置、制御プログラム、対象装置及び制御システム
JP2004151807A (ja) * 2002-10-29 2004-05-27 Toshiba Corp 監視制御システム

Also Published As

Publication number Publication date
JP2008186395A (ja) 2008-08-14

Similar Documents

Publication Publication Date Title
JP5553910B2 (ja) モーションコントローラ
JP6626240B2 (ja) コントローラ
US20140364989A1 (en) Controller for controlling machine tool and robot
JP2009099150A (ja) プログラムの自動修正方法及び自動化システム
WO2002054158A3 (en) Programmable timer module system
JP2009015401A (ja) 分散型制御システム
JP5653568B1 (ja) ネットワークシステム
EP3086230A1 (en) Controller
US20160098035A1 (en) Numeric controller with notification of a cam system in the event of a change in the subroutine
US10901387B2 (en) Control system for an industrial automation facility and method for programming and operating such a control system
JP4795260B2 (ja) 制御システム、制御方法、コントローラ、及び制御プログラム
CN111095138B (zh) 控制装置、控制装置的控制方法、信息处理程序及记录介质
US20210067483A1 (en) Control System, Controller, and Control Method
JP5421894B2 (ja) 2重化プロセス制御装置および制御データ一致化方法
JP2007102632A (ja) シミュレーション装置
CA2593072C (en) A system for the exchange of information between a machining apparatus and a transfer device
KR102129465B1 (ko) Plc시스템의 유닛 증설방법
US20190033834A1 (en) Slave device, industrial network system, and method of controlling slave device
CN111052010A (zh) 控制系统、开发辅助装置和开发辅助程序
JP6766501B2 (ja) 情報移行システム、情報処理装置、および、プログラム
JP7036064B2 (ja) 制御装置およびソフトウェアのデプロイ方法
CN109643089B (zh) 控制单元、数据更新方法、存储介质
JP2009104283A (ja) Modbusでデータを送受処理する方式およびプログラマブルコントローラ等の制御機器
JP2006004067A (ja) 制御装置及びコンピュータプログラム
JP4499233B2 (ja) 分散制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110210

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4795260

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

Year of fee payment: 3

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

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