JP2008186395A - Control system, control method, controller, and control program - Google Patents
Control system, control method, controller, and control program Download PDFInfo
- Publication number
- JP2008186395A JP2008186395A JP2007021583A JP2007021583A JP2008186395A JP 2008186395 A JP2008186395 A JP 2008186395A JP 2007021583 A JP2007021583 A JP 2007021583A JP 2007021583 A JP2007021583 A JP 2007021583A JP 2008186395 A JP2008186395 A JP 2008186395A
- Authority
- JP
- Japan
- Prior art keywords
- controller
- control
- information
- control command
- command 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
Links
Images
Abstract
Description
本発明は、制御システム、制御方法、コントローラ、及び制御プログラムに関するものであり、特に、複数のコントローラが接続されてなる制御システムに関するものである。 The present invention relates to a control system, a control method, a controller, and a control program, and more particularly, to a control system in which a plurality of controllers are connected.
従来、プログラマブルコントローラを含む複数のコントローラがバスを介して接続された制御システムにおいては、制御指令の実行命令の指示元となるプログラマブルコントローラから他の各コントローラへの制御指令等の命令(専用命令)を実行する際、命令対象先となるコントローラで実行可能な命令であるか否かを判断するワークエリアを保有し、命令名称の理解を行ったうえで制御指令等の命令を実行していた。 Conventionally, in a control system in which a plurality of controllers including a programmable controller are connected via a bus, a command (dedicated command) such as a control command from the programmable controller that is an instruction source of the control command execution command to each other controller When executing the command, a work area for determining whether the command is a command that can be executed by the controller that is the command target is held, and the command such as a control command is executed after understanding the command name.
また、従来のプログラマブルコントローラは、各命令専用のフレームに制御指令データを格納して各コントローラに送信し、命令対象先のコントローラは各命令専用のフレームを受信して制御指令を処理していた。すなわち、従来の制御システムにおいては、命令対象先となるコントローラで実行可能な命令であるか否かを判断するための制御対象に応じたワークエリアが必要であった。 Further, the conventional programmable controller stores the control command data in a frame dedicated to each instruction and transmits it to each controller, and the controller that is the target of the instruction receives the frame dedicated to each command and processes the control command. That is, in the conventional control system, a work area corresponding to the control target for determining whether the command is an instruction that can be executed by the controller that is the command target is required.
これに対して、実行可能な命令であるか否かを判断するためのワークエリアを備えることなく、それぞれの機器の制御を可能とする制御システムが提案されている。たとえば、制御対象機器からコマンド対応表を取得し、操作指示と関連付けて制御機器へ制御命令を送信する制御システムなどが提案されている(たとえば、特許文献1参照)。 On the other hand, there has been proposed a control system that can control each device without providing a work area for determining whether or not the instruction is executable. For example, a control system that acquires a command correspondence table from a control target device and transmits a control command to the control device in association with an operation instruction has been proposed (for example, see Patent Document 1).
しかしながら、上述したような従来の制御システムにおいては、ファームウェアのバージョンアップが前提とされている。命令先のコントローラで実行可能な機能を追加する、すなわち新たな制御指令(専用命令)を処理する機能を追加するファームウェアのバージョンアップを命令先のコントローラに対して行う場合には、命令元であるプログラマブルコントローラに対してもファームウェアのバージョンアップが必要となる。したがって、このような制御システムにおいて新たな機能を追加するには、ファームウェアのバージョンアップという複雑な処理が必要となり、また、システムコストが高くなるという問題があった。 However, in the conventional control system as described above, it is assumed that the firmware is upgraded. Adds a function that can be executed by the command-destination controller, that is, adds a function for processing a new control command (dedicated command). Firmware upgrades are also required for programmable controllers. Therefore, in order to add a new function in such a control system, there is a problem that a complicated process of upgrading the firmware is required and the system cost is increased.
本発明は、上記に鑑みてなされたものであって、複数のコントローラが接続されてなる制御システムに関して、コントローラにおける機能の追加に容易に且つ安価に対応可能な制御システム、制御方法、コントローラおよび制御プログラムを得ることを目的とする。 The present invention has been made in view of the above, and relates to a control system in which a plurality of controllers are connected, a control system, a control method, a controller, and a control that can easily and inexpensively add functions in the controller The purpose is to obtain a program.
上述した課題を解決し、目的を達成するために、本発明にかかる制御システムは、外部機器の制御を行う第1のコントローラと、前記第1のコントローラに対して前記外部機器の制御の実行を指示する第2のコントローラと、が相互通信可能に接続され、前記第1のコントローラが、自コントローラで制御可能な制御指令に関する情報である制御指令情報を前記第2のコントローラに転送する制御指令情報転送部と、前記第2のコントローラから送信され制御指令の実行を指示する制御実行指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、前記第2のコントローラと相互通信を行う通信部と、を備え、前記第2のコントローラが、前記第1のコントローラから送信される制御指令情報を取得して保持する制御指令情報取得部と、所定の制御プログラムを実行するプログラム実行部と、前記制御プログラム中に前記制御指令情報に含まれる制御指令が存在することを条件として、前記制御指令の実行を指示する前記制御実行指示情報を前記制御指令情報を用いて作成し前記第1のコントローラに送信する制御実行指示部と、前記第1のコントローラと相互通信を行う通信部と、を備えること、を特徴とする。 In order to solve the above-described problems and achieve the object, a control system according to the present invention includes a first controller that controls an external device, and executes the control of the external device with respect to the first controller. Control command information that is connected to an instructing second controller so that they can communicate with each other, and the first controller transfers control command information that is information relating to a control command that can be controlled by the controller to the second controller. Intercommunication with a transfer unit, an external device control unit that executes control of the external device based on control execution instruction information that is transmitted from the second controller and instructs execution of a control command, and the second controller A communication unit, wherein the second controller acquires control command information transmitted from the first controller and holds the control command information. Control execution instruction information for instructing execution of the control command on condition that a control command included in the control command information is present in the control program A control execution instructing unit that generates and transmits the control command information to the first controller, and a communication unit that performs mutual communication with the first controller.
この発明によれば、複数のコントローラが接続されてなる制御システムにおいて、第2のコントローラが、第1のコントローラが実行可能な制御指令に関する制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指示情報を作成して第1のコントローラに対して送信する。これにより、指示先の第1のコントローラで実行可能な機能を追加する場合においても、第2のコントローラは、実行可能な命令であるか否かを判断するためのワークエリアを備えることなく、またファームウェアのバージョンアップをすることなく、指示先のコントローラにおける機能の追加に対して、容易に且つ安価に対応することができる、という効果を奏する。 According to this invention, in a control system in which a plurality of controllers are connected, the second controller acquires control command information related to a control command that can be executed by the first controller, and uses this control command information. Control execution instruction information for instructing execution of the control instruction is created and transmitted to the first controller. As a result, even when a function that can be executed by the designated first controller is added, the second controller does not have a work area for determining whether or not the instruction is an executable instruction. There is an effect that it is possible to easily and inexpensively respond to the addition of the function in the instructed controller without upgrading the firmware.
以下に、本発明にかかる制御システム、制御方法、コントローラ、および制御プログラムの実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。 Embodiments of a control system, a control method, a controller, and a control program according to the present invention will be described below in detail with reference to the drawings. In addition, this invention is not limited to the following description, In the range which does not deviate from the summary of this invention, it can change suitably.
まず、本発明にかかる制御システムの概要について図1を参照しながら説明する。図1は、本発明にかかる制御システムの概要を説明するためのブロック図である。本発明にかかる制御システムは、図1に示すように、外部機器の制御を行う第1のコントローラ1と、第1のコントローラ1に対して制御指令を行う第2のコントローラ11と、が相互通信可能に接続された制御システムである。 First, an outline of a control system according to the present invention will be described with reference to FIG. FIG. 1 is a block diagram for explaining an outline of a control system according to the present invention. As shown in FIG. 1, the control system according to the present invention includes a first controller 1 that controls an external device and a second controller 11 that issues a control command to the first controller 1. It is a control system that can be connected.
第1のコントローラ1は、制御指令情報転送部2と、外部機器制御部3と、通信部4と、記憶部と5、制御部6と、を備える。制御指令情報転送部2は、自コントローラで実行可能な制御指令に関する制御指令情報を第2のコントローラ11に転送する。この転送処理は、任意のタイミングで行うことが可能であるが、少なくとも制御システムの起動時には行われる。
The first controller 1 includes a control command information transfer unit 2, an external device control unit 3, a communication unit 4, a
外部機器制御部3は、記憶部5に記憶されている所定の制御プログラム(ユーザプログラム)および/または第2のコントローラ11から送信される制御指令の実行を指示する制御実行指示情報に基づいて外部機器の制御を行う。通信部4は、第2のコントローラ11と相互通信を行う。記憶部5は、第1のコントローラ1での制御プログラムおよび各種データを記憶する。制御部6は、第1のコントローラ1での処理全体を制御する。
The external device control unit 3 externally operates based on control execution instruction information for instructing execution of a predetermined control program (user program) stored in the
第2のコントローラ11は、制御指令情報取得部12と、プログラム実行部13と、制御実行指示部14と、通信部15と、記憶部16と、制御部17と、を備える。制御指令情報取得部12は、第1のコントローラ1から送信される制御指令情報を取得して保持する。プログラム実行部13は、所定の制御プログラム(ユーザプログラム)を実行する。
The second controller 11 includes a control command
制御実行指示部14は、プログラム実行部13における制御プログラム(ユーザプログラム)の実行中に、該制御プログラムに第1のコントローラ1において実行される制御指令が存在したとき、この制御指令の実行を第1のコントローラ1に指示する制御実行指示情報を作成して第1のコントローラ1に送信する。通信部15は、第1のコントローラ1と相互通信を行う。記憶部16は、第2のコントローラ11での制御における各種プログラムおよび各種データを記憶する。制御部17は、第2のコントローラ11での処理全体を制御する。
The control
本発明にかかる制御システムは、以上のような構成を有することにより、第2のコントローラ11が、第1のコントローラ1が制御可能な制御指令に関する情報である制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指示情報を作成して第1のコントローラ1に対して送信する。そして、第1のコントローラ1は、制御実行指示情報に基づいて制御指令を実行することで、外部機器の制御を行う。 Since the control system according to the present invention has the above-described configuration, the second controller 11 acquires control command information that is information related to a control command that can be controlled by the first controller 1, and the control command Using the information, control execution instruction information for instructing execution of the control command is created and transmitted to the first controller 1. Then, the first controller 1 controls the external device by executing a control command based on the control execution instruction information.
これにより、第1のコントローラ1が実行可能な制御指令の種類を追加する場合においても、第2のコントローラ11はファームウェアのバージョンアップをすることなく、第1のコントローラ1における機能の追加に対して、容易に且つ安価に対応することができる。 As a result, even when the types of control commands that can be executed by the first controller 1 are added, the second controller 11 does not upgrade the firmware and adds functions to the first controller 1. It can be easily and inexpensively handled.
以下の実施の形態において、上述した本発明を実現する具体的な実施の形態について説明する。 In the following embodiments, specific embodiments for realizing the present invention described above will be described.
実施の形態
図2は、本発明の実施の形態にかかる制御システムの構成を模式的に示す図であり、図3−1は、本実施の形態にかかる制御システムの構成を模式的に示すブロック図である。この制御システムは、ベースユニット25にコントローラA20、コントローラB21、コントローラC22、コントローラD23が装着されている。ここでコントローラA20は、プログラマブルコントローラ(PLC)であり、コントローラB21は、モーションコントローラ(MC)であり、コントローラC22は、数値制御コントローラ(NC)であり、コントローラD23は、ロボットコントローラ(RC)である。
Embodiment FIG. 2 is a diagram schematically illustrating a configuration of a control system according to an embodiment of the present invention, and FIG. 3A is a block diagram schematically illustrating a configuration of the control system according to the present embodiment. FIG. In this control system, a controller A20, a controller B21, a controller C22, and a controller D23 are mounted on a
プログラマブルコントローラ(PLC)20は、ベースユニット25上の所定の取り付け位置に装着されると、マスタコントローラとなり、他のコントローラの制御を行うことができる。ただし、実施の形態にかかる制御システムにおいては、他のコントローラ(21〜23)からもプログラマブルコントローラ(PLC)20の制御を行うことが可能であり、他のコントローラ(21〜23)からの指令によりプログラマブルコントローラ(PLC)20が制御されることもある。すなわち、この制御システムにおいては、ベースユニット25に装着されたコントローラ相互間で制御指令が行われる。
When the programmable controller (PLC) 20 is mounted at a predetermined mounting position on the
図3−1に示すように、ベースユニット25にはデータバス30が設けられており、データバス30を介してそれぞれのコントローラ間の相互通信が可能とされており、複数のコントローラ間で各種の情報を送受信することができる。また、本実施の形態にかかるデータバス30においては、全コントローラ間で共通化されたフレームを用いることにより、一のコントローラから他の複数のコントローラに対して同報通知を行うことが可能である。
As shown in FIG. 3A, the
図3−2は、各コントローラ(20〜23)とデータバス30との通信(データの流れ)を模式的に示す図である。図3−2に示すように、各コントローラ間ではデータバス30を介して相互に通信(データDの送受信)が行われる。
FIG. 3B is a diagram schematically illustrating communication (data flow) between the controllers (20 to 23) and the
図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などが送信される。
FIG. 3C is a diagram illustrating an example of data D transmitted on the
また、プログラマブルコントローラ(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を介して接続されている。
As shown in FIG. 3A, the programmable controller (PLC) 20 includes an MPU (Micro Processing Unit) 40 that controls processing in the programmable controller (PLC) 20 and a basic function in the programmable controller (PLC) 20. A system program ROM (Read-Only Memory) 41 for storing a system program for executing various processes, a
また、モーションコントローラ(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を介して接続されている。
As shown in FIG. 3A, the motion controller (MC) 21 includes an MPU (Micro Processing Unit) 50 that controls processing in the motion controller (MC) 21 and a basic function in the motion controller (MC) 21. A system program ROM (Read-Only Memory) 51 that stores a system program for executing various processes, a
また、数値制御コントローラ(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を介して接続されている。
As shown in FIG. 3A, the numerical controller (NC) 22 includes an MPU (Micro Processing Unit) 60 that controls processing in the numerical controller (NC) 22 and a numerical controller (NC) 22. A system program ROM (Read-Only Memory) 61 for storing a system program for executing basic processing in the system, a
また、ロボットコントローラ(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を介して接続されている。
Further, as shown in FIG. 3A, the robot controller (RC) 23 includes an MPU (Micro Processing Unit) 70 that controls processing in the robot controller (RC) 23 and a basic function in the robot controller (RC) 23. A system program ROM (Read-Only Memory) 71 that stores a system program for executing various processes, a
図4−1〜図4−4は、それぞれプログラマブルコントローラ(PLC)20、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23のデータバスI/F43、データバスI/F53、データバスI/F63、データバスI/F73におけるデータ構造を模式的に示す図である。
FIGS. 4-1 to 4-4 respectively show a data bus I /
図4−1に示すように、プログラマブルコントローラ(PLC)20のデータバスI/F43では、自コントローラ(コントローラA)からの送信情報であるコントローラA情報80と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報81と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報82と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報83と、を有する。
As shown in FIG. 4A, in the data bus I /
また、図4−2に示すように、モーションコントローラ(MC)21のデータバスI/F53では、他コントローラ(コントローラA)からの受信情報であるコントローラA情報90と、自コントローラ(コントローラB)からの送信情報であるコントローラB情報91と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報92と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報93と、を有する。
Also, as shown in FIG. 4B, in the data bus I /
また、図4−3に示すように、数値制御コントローラ(NC)22のデータバスI/F63では、他コントローラ(コントローラA)からの受信情報であるコントローラA情報100と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報101と、自コントローラ(コントローラC)からの送信情報であるコントローラC情報102と、他コントローラ(コントローラD)からの受信情報であるコントローラD情報103と、を有する。
Further, as shown in FIG. 4-3, in the data bus I /
また、図4−4に示すように、ロボットコントローラ(RC)23のデータバスI/Fで73は、他コントローラ(コントローラA)からの受信情報であるコントローラA情報110と、他コントローラ(コントローラB)からの受信情報であるコントローラB情報111と、他コントローラ(コントローラC)からの受信情報であるコントローラC情報112と、自コントローラ(コントローラD)からの送信情報であるコントローラD情報113と、を有する。
Further, as shown in FIG. 4-4, the data bus I /
図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から他のコントローラに対して転送する情報であり、基本的に各コントローラ間において共通のフレームとされている。
FIG. 5A to FIG. 5D are diagrams showing details of controller information transmission information (
図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のデータ長である。
FIG. 5A is a diagram illustrating details of the controller A information 80 (transmission information). Although there is a difference between transmission information and reception information, the detailed contents of the data are controller A information 90 (reception information), controller A information 100 (reception information), and controller A information 110 (reception information). It is the same. As shown in FIG. 5A, the controller A information 80 (transmission information) is a control command
また、図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のデータ長である。
FIG. 5B is a diagram illustrating details of the controller B information 91 (transmission information). Although there is a difference between transmission information and reception information, the detailed contents of the data are controller B information 81 (reception information), controller B information 101 (reception information), and controller B information 111 (reception information). It is the same. As shown in FIG. 5B, the controller B information 91 (transmission information) is a transfer control command
また、図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のデータ長である。
FIG. 5C is a diagram illustrating details of the controller C information 102 (transmission information). Although there is a difference between transmission information and reception information, the detailed contents of the data are controller C information 82 (reception information), controller C information 92 (reception information), and controller C information 112 (reception information). It is the same. As shown in FIG. 5C, the controller C information 102 (transmission information) is a transfer control command
また、図5−4は、コントローラD情報113(送信情報)の詳細を示す図である。なお、送信情報であるか受信情報であるかの違いがあるが、データの詳細内容は、コントローラD情報83(受信情報)、コントローラD情報93(受信情報)およびコントローラD情報103(受信情報)と同様である。図5−4に示すように、コントローラD情報113(送信情報)は、転送用制御指令情報データ長150、および命令情報の第1の形態でありRCに対して制御を命令するためのRC制御指令情報151を有する。なお、転送用制御指令情報データ長120は、RC制御指令情報151のデータ長である。
FIG. 5-4 is a diagram illustrating details of the controller D information 113 (transmission information). Although there is a difference between transmission information and reception information, the detailed contents of the data are controller D information 83 (reception information), controller D information 93 (reception information), and controller D information 103 (reception information). It is the same. As shown in FIG. 5-4, the controller D information 113 (transmission information) is a transfer control command
なお、上記においては図5−4に示すフレームのみが他のフレームと異なり、命令情報の第2の形態であり全てのコントローラに対して同報通知するための命令情報が含まれていないが、ロボットコントローラ(RC)23内における基本的な処理を実行するシステムプログラム(システムプログラムROM(Read-Only Memory)71に格納)をバーションアップすることにより、他のコントローラ情報と同様に全てのコントローラに対して同報通知するための命令情報を含ませることができる。 In the above, unlike the other frames, only the frame shown in FIG. 5-4 is the second form of command information, and does not include command information for broadcast notification to all controllers. By upgrading the system program (stored in the system program ROM (Read-Only Memory) 71) that executes basic processing in the robot controller (RC) 23, all the controllers are similar to other controller information. In addition, it is possible to include command information for broadcast notification.
図6−1〜図6−4は、図5−1〜図5−4に示した制御指令情報(PLC制御指令情報121、MC制御指令情報131、NC制御指令情報141、RC制御指令情報151)の詳細を示す図である。これらの制御指令情報は、基本的に各コントローラ間において共通のフレームとされている。
FIGS. 6-1 to 6-4 show the control command information (PLC
図6−1は、PLC制御指令情報121の詳細を示す図である。図6−1に示すように、PLC制御指令情報121は、PLCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)160と、該制御指令に必要なデータ個数(命令内容数)161と、該制御指令に必要なシステム情報162とを有する。ここで、たとえば「ステップ数100だけ戻れ」との内容のPLC制御指令情報121がある場合には、制御指令名称160は「戻れ」を意味する制御指令α、制御に必要なデータ個数(命令内容数)161は「1(ヶ)」、システム情報162は「(ステップ数)100」である。
FIG. 6A is a diagram illustrating details of the PLC
図6−2は、MC制御指令情報131の詳細を示す図である。図6−2に示すように、MC制御指令情報131は、MCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)170と、該制御指令に必要なデータ個数(命令内容数)171と、該制御指令に必要なシステム情報172とを有する。
FIG. 6B is a diagram illustrating details of the MC
図6−3は、NC制御指令情報141の詳細を示す図である。図6−3に示すように、NC制御指令情報141は、NCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)180と、該制御指令に必要なデータ個数(命令内容数)181と、該制御指令に必要なシステム情報182とを有する。
FIG. 6C is a diagram illustrating details of the NC
図6−4は、RC制御指令情報151の詳細を示す図である。図6−4に示すように、RC制御指令情報151は、RCに対して制御を命令する制御指令の名称である制御指令名称(命令名称)190と、該制御指令に必要なデータ個数(命令内容数)191と、該制御指令に必要なシステム情報192とを有する。
FIG. 6-4 is a diagram illustrating details of the RC
つぎに、このような本実施の形態にかかる制御システムにおける各コントローラのシステムプログラムの起動動作処理について説明する。ここでは、制御システム起動時のプログラマブルコントローラ(PLC)20のシステムプログラム起動動作処理を例に図7を参照しながら説明する。図7は、制御システム起動時におけるプログラマブルコントローラ(PLC)20のシステムプログラム起動動作処理を説明するためのフローチャートである。 Next, the startup operation process of the system program of each controller in the control system according to this embodiment will be described. Here, an example of a system program activation operation process of the programmable controller (PLC) 20 at the time of activation of the control system will be described with reference to FIG. FIG. 7 is a flowchart for explaining a system program activation operation process of the programmable controller (PLC) 20 when the control system is activated.
まず、制御システムが起動されると、プログラマブルコントローラ(PLC)20のMPU40はシステムプログラムROM41に格納されているシステムプログラムを実行し、自コントローラから他のコントローラへ転送する情報であり、且つ自コントローラで制御可能な制御指令であって他のコントローラ間で共通して認識可能な制御指令に関する情報である転送用の制御指令情報をシステムワークRAM42に作成する(ステップS110)。つぎに、MPU40は、システムワークRAM42に作成した転送用の制御指令情報をデータバスI/F43の自コントローラ用エリアにコントローラA情報80としてセットする(ステップS111)。
First, when the control system is activated, the
そして、データバス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として格納する)。
Then, the data bus I /
つぎに、MPU40は、データバスI/F43を介してデータバス30に接続されているコントローラの台数の情報を取得し(ステップS113)、データバス30に接続されているコントローラの台数が2台以上であるか否かを判断する(ステップS114)。
Next, the
ここでデータバス30に接続されているコントローラの台数が2台以上である場合には(ステップS114肯定)、MPU40はデータバスI/F43に各コントローラの転送用の制御指令情報がデータバス30上に存在するかを確認し(ステップS115)、さらにデータバスI/F43の所定のエリアに各コントローラの転送用の制御指令情報がセットされているか否かを判断する(ステップS116)。転送用の制御指令情報がセットされていないと判断した場合には(ステップS116否定)、ステップS115に戻る。
If the number of controllers connected to the
また、転送用の制御指令情報がセットされていると判断した場合には(ステップS116肯定)、MPU40はデータバスI/F43から転送用の制御指令情報をデータ長分、コントローラ毎に取得する(ステップS117)。MPU40は、取得した各コントローラ毎の転送用の制御指令情報をシステムワークRAM42に格納する(ステップS118)。
If it is determined that the transfer control command information is set (Yes at step S116), the
そして、MPU40は、データバス30に接続されているコントローラの台数分だけ、転送用の制御指令情報を取得、格納したか否かを判断する(ステップS119)。接続台数分だけの転送用の制御指令情報を取得、格納していないと判断した場合には(ステップS119否定)、ステップS115に戻る。また、接続台数分だけの転送用の制御指令情報を取得、格納したと判断した場合には(ステップS119肯定)、ユーザプログラム実行待機状態となり、制御システム起動時におけるプログラマブルコントローラ(PLC)20の一連の動作処理が終了する。
Then, the
また、ステップS114に戻って、ここでデータバス30に接続されているコントローラの台数が2台以上でない場合には(ステップS114否定)、ユーザプログラム実行待機状態となり、制御システム起動時におけるプログラマブルコントローラ(PLC)20の一連の動作処理が終了する。
Returning to step S114, if the number of controllers connected to the
上記においては、プログラマブルコントローラ(PLC)20を例に、制御システムを構成するコントローラの制御システム起動時のシステムプログラム起動動作処理を説明したが、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23においても、同様にシステムプログラムの起動動作処理が行われる。 In the above description, the system controller activation operation process at the time of activation of the control system of the controller constituting the control system has been described by taking the programmable controller (PLC) 20 as an example, but the motion controller (MC) 21 and the numerical controller (NC) 22 Similarly, the robot controller (RC) 23 performs a system program start-up operation process.
つぎに、図7のフローに従ってシステムプログラムの起動動作処理が終了し、ユーザプログラム実行待機状態からユーザプログラムの実行が開始された後の、制御指令の実行を指示する指示元のコントローラにおけるユーザプログラムの動作処理について説明する。ここでは、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を例に、指示元のコントローラ20から他の1つのコントローラに対して制御指令の実行指示を行う制御実行指示処理について図8を参照しながら説明する。
Next, after the start operation processing of the system program is completed according to the flow of FIG. 7 and the execution of the user program is started from the user program execution standby state, the user program in the instruction source controller instructing the execution of the control command is executed. The operation process will be described. Here, with reference to an example of operation processing of the programmable controller (PLC) 20 during execution of the user program, FIG. 8 illustrates control execution instruction processing for instructing execution of a control command from the
図8は、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を説明するためのフローチャートである。なお、プログラマブルコントローラ(PLC)20のシステムワークRAM42には、上記の図7のフローに従った処理がなされて各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用の制御指令情報(81、82、83)が格納されている。
FIG. 8 is a flowchart for explaining an operation process of the programmable controller (PLC) 20 when the user program is executed. The
まず、プログラマブルコントローラ(PLC)20が所定のユーザプログラムを実行し、MPU40がユーザプログラム上に他のコントローラへの制御指令があることを確認する(ステップS210)。つぎにMPU40は、他のコントローラへの制御指令実施の指示が外部(ユーザ)から入力されているか否かを判断する(ステップS211)。
First, the programmable controller (PLC) 20 executes a predetermined user program, and the
つぎに、MPU40は、ユーザプログラムで指定されている制御指令対象先コントローラ、データ個数、データを該ユーザプログラムから取得する(ステップS212)。ここで、制御指令対象先コントローラはモーションコントローラ(MC)21とする。続いて、MPU40は、システムワークRAM42に格納している対象先コントローラの転送用の制御指令情報を取得する(ステップS213)。すなわち、ここではMPU40は、システムワークRAM42に格納しているモーションコントローラ(MC)21の転送用の制御指令情報81を取得する。
Next, the
つぎに、MPU40は、取得したモーションコントローラ(MC)21の転送用の制御指令情報81を確認し、制御指令名称(命令名称)170、制御に必要なデータ個数171、データ実情報(制御に必要なシステム情報)172を確認する(ステップS214)。そして、MPU40は、ユーザプログラムで指定された制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在するか否かを判断する(ステップS215)。ここで、制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在しない場合は(ステップS215否定)、モーションコントローラ(MC)21の転送用の制御指令情報81が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS219)。
Next, the
また、制御指令名称(命令名称)がモーションコントローラ(MC)21の転送用の制御指令情報81に存在する場合は(ステップS215肯定)、MPU40は、ユーザプログラムで指定されたデータ個数と転送用制御指令情報81で指定されているデータ個数171とが一致するか否かを確認する(ステップS216)。ここで、データ個数が一致しない場合は(ステップS216否定)、モーションコントローラ(MC)21の転送用制御指令情報81が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS219)。
When the control command name (command name) is present in the transfer
また、データ個数が一致する場合は(ステップS216肯定)、MPU40は、制御指令に必要なデータからモーションコントローラ(MC)21に対する制御実行指示情報を作成し、自コントローラのデータバスI/F43にセットする(ステップS217)。図9に、MPU40が作成してデータバスI/F43にセットする制御実行指示情報200の詳細を示す。
If the number of data matches (Yes at step S216), the
図9に示すように、制御実行指示情報200は、制御実行指示情報データ長201と、対象先コントローラ番号202(モーションコントローラ(MC)21番号)と、モーションコントローラ(MC)21に対する制御指令の名称である制御指令名称203と、該制御実行指示情報200による制御に必要なデータ個数(命令内容数)204と、該制御実行指示情報200による制御に必要なユーザ指定情報205と、を有する。なお、制御実行指示情報データ長201は、制御実行指示情報200のデータ長である。
As shown in FIG. 9, the control
そして、データバスI/F43は、制御実行指示情報200をデータバス30経由でモーションコントローラ(MC)21のデータバスI/F53に送信し(ステップS218)、一連のユーザプログラム処理を終了する(ステップS219)。
Then, the data bus I /
上記においては、プログラマブルコントローラ(PLC)20からモーションコントローラ(MC)21への制御実行指令情報の送信を例にユーザプログラム実行時の制御実行指示処理を説明したが、プログラマブルコントローラ(PLC)20から数値制御コントローラ(NC)22およびロボットコントローラ(RC)23に対しても、同様にユーザプログラム実行時の制御実行指示処理が行われる。また、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23のそれぞれから他のコントローラに対しても、同様にユーザプログラム実行時の制御実行指示処理を行うことができる。すなわち、この制御システムにおいては、ベースユニット25に装着され、データバス30で接続されたコントローラ相互間で制御実行指示を行い、他のコントローラの制御を行うことができる。
In the above description, the control execution instruction process at the time of executing the user program has been described by taking the transmission of control execution command information from the programmable controller (PLC) 20 to the motion controller (MC) 21 as an example. Similarly, control execution instruction processing at the time of executing the user program is performed for the control controller (NC) 22 and the robot controller (RC) 23. Similarly, the control execution instruction process at the time of executing the user program can be performed from each of the motion controller (MC) 21, the numerical controller (NC) 22 and the robot controller (RC) 23 to the other controllers. . That is, in this control system, it is possible to perform control execution instructions between controllers attached to the
つぎに、図8のフローに従ってユーザプログラム実行時の制御実行指示処理が実行された後の、制御指令の実行指示がなされた各コントローラにおけるデータバスI/F情報の確認の動作処理について説明する。ここでは、モーションコントローラ(MC)21の動作処理を例に図10を参照しながら説明する。図10は、モーションコントローラ(MC)21におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。 Next, an operation process for confirming the data bus I / F information in each controller that has been instructed to execute a control command after the control execution instruction process at the time of executing the user program is executed according to the flow of FIG. 8 will be described. Here, the operation processing of the motion controller (MC) 21 will be described as an example with reference to FIG. FIG. 10 is a flowchart for explaining an operation process for confirming data bus I / F information in the motion controller (MC) 21.
まず、モーションコントローラ(MC)21のMPU50は、データバスI/F53上の情報を確認し(ステップS310)、制御実行指示情報の受信があるか否かを判断する(ステップS311)。制御実行指示情報の受信がないと判断した場合は(ステップS311否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
First, the
また、制御実行指示情報の受信があると判断した場合は(ステップS311肯定)、MPU50は制御実行指示情報の対象先が自コントローラであるか否かを判断する(ステップS312)。ここで、制御実行指示情報の対象先が自コントローラでないと判断した場合は(ステップS312否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
If it is determined that the control execution instruction information has been received (Yes at Step S311), the
一方、制御実行指示情報の対象先が自コントローラであると判断した場合は(ステップS312肯定)、MPU50は受信した制御実行指示情報をシステムワークRAM52に格納する(ステップS313)。つぎに、MPU50は、システムワークRAM52に格納した制御実行指示情報の制御指令名称(命令名称)を確認し(ステップS314)、制御指令名称(命令名称)が、自コントローラで制御可能な制御指令に関する情報(すなわち転送用の制御指令情報)に存在するか否かを判断する(ステップS315)。
On the other hand, if it is determined that the target of the control execution instruction information is its own controller (Yes at Step S312), the
ここで、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在しない場合は(ステップS315否定)、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。また、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在する場合は(ステップS315肯定)、MPU50は制御実行指示情報で指定された制御指令を実行し(ステップS316)、一連のデータバスI/F情報の確認処理を終了する(ステップS317)。
Here, when the control command name (command name) of the control execution instruction information does not exist in the transfer control command information of the own controller (No in step S315), the series of data bus I / F information confirmation processing ends (step S315). Step S317). Further, when the control command name (command name) of the control execution instruction information is present in the transfer control command information of the own controller (Yes at step S315), the
つぎに、図7のフローに従ってシステムプログラムの起動動作処理が終了し、ユーザプログラム実行待機状態からユーザプログラムの実行が開始された後の、制御実行命令の指示元のコントローラにおけるユーザプログラムの動作処理について説明する。ここでは、ユーザプログラム実行時のプログラマブルコントローラ(PLC)20の動作処理を例に、制御実行命令の指示元のコントローラから他の全コントローラに対して共通の制御実行指示を行う共通制御実行指示処理について図11を参照しながら説明する。 Next, the user program operation process in the controller that is the instruction source of the control execution instruction after the system program startup operation process is completed according to the flow of FIG. 7 and the execution of the user program is started from the user program execution standby state. explain. Here, the common control execution instruction process for giving a common control execution instruction to all other controllers from the controller that is the instruction source of the control execution instruction is taken as an example of the operation process of the programmable controller (PLC) 20 when executing the user program. This will be described with reference to FIG.
図11は、共通制御実行指示処理を実行する場合のプログラマブルコントローラ(PLC)20の動作処理を説明するためのフローチャートである。なお、プログラマブルコントローラ(PLC)20のシステムワークRAM42には、図7のフローに従った処理がなされて各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用制御指令情報が格納されている。
FIG. 11 is a flowchart for explaining an operation process of the programmable controller (PLC) 20 when the common control execution instruction process is executed. The
まず、プログラマブルコントローラ(PLC)20が所定のユーザプログラムを実行し、MPU40がユーザプログラム上に各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)への制御指令があることを確認する(ステップS410)。つぎにMPU40は、各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)への制御指令実施の指示が外部(ユーザ)から入力されているか否かを判断する(ステップS411)。
First, the programmable controller (PLC) 20 executes a predetermined user program, and the
つぎに、MPU40は、ユーザプログラムで指定されている制御指令対象先コントローラ、データ個数、データを該ユーザプログラムから取得する(ステップS412)。ここで、制御指令対象先コントローラは各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)である。
Next, the
続いて、MPU40は、システムワークRAM42に格納している対象先コントローラの転送用制御指令情報の情報を取得する(ステップS413)。すなわち、ここではMPU40は、システムワークRAM42に格納している各コントローラ(モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23)の転送用制御指令情報を取得する。
Subsequently, the
つぎに、MPU40は、取得した各コントローラの転送用制御指令情報を確認し、制御指令名称(命令名称)、制御に必要なデータ個数、データ実情報(制御に必要なシステム情報)を確認する(ステップS414)。そして、MPU40は、ユーザプログラムで指定された制御指令名称(命令名称)が各コントローラの転送用制御指令情報に存在するか否かを判断する(ステップS415)。ここで、制御指令名称(命令名称)が転送用制御指令情報に存在しない場合は(ステップS415否定)、転送用制御指令情報が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS419)。
Next, the
また、制御指令名称(命令名称)が転送用制御指令情報に存在する場合は(ステップS415肯定)、MPU40は、ユーザプログラムで指定されたデータ個数と転送用制御指令情報で指定されているデータ個数が一致するか否かを各コントローラの転送用制御指令情報について確認する(ステップS416)。ここで、データ個数が一致しない場合は(ステップS416否定)、転送用制御指令情報が不完全であるため、ここで、一連のユーザプログラム処理を終了する(ステップS419)。
If the control command name (command name) is present in the transfer control command information (Yes at step S415), the
また、データ個数が一致する場合は(ステップS416肯定)、MPU40は、制御指令に必要なデータから共通制御実行指示情報を作成し、自コントローラのデータバスI/F43の自コントローラ用エリアに共通制御実行指示情報300としてセットする(ステップS417)。図12に、MPU40が作成してデータバスI/F43にセットする共通制御実行指示情報300の詳細を示す。
If the number of data matches (Yes at step S416), the
図12に示すように、共通制御実行指示情報300は、共通制御実行指示情報データ長301と、対象先コントローラ番号302(全コントローラ番号)と、全コントローラに対して制御を命令する命令情報の名称である共通制御指令名称303と、該共通制御実行指示情報300による制御に必要なデータ個数(命令内容数)304と、該共通制御実行指示情報300による制御に必要なユーザ指定情報305と、を有する。なお、共通制御実行指示情報データ長301は、共通制御実行指示情報300のデータ長である。ここで、共通制御実行指示情報300のフレームは、全コントローラ間で共通化された共通フレームである。共通フレームを用いることにより、一のコントローラから他の複数のコントローラに対して同報通知を行うことが可能である。
As shown in FIG. 12, the common control
そして、データバスI/F43は、自コントローラ用エリアにセットされた共通制御実行指示情報300を同報通知する。すなわち、データバスI/F43は、共通制御実行指示情報300をデータバス30経由で各コントローラのデータバスI/F53、63、73に送信する(ステップS418)。そして、一連のユーザプログラム処理を終了する(ステップS419)。
Then, the data bus I /
上記においては、プログラマブルコントローラ(PLC)20から他の全コントローラへの共通制御実行指示処理(同報通知)を例にユーザプログラム実行時の共通制御実行指示処理(同報通知)を説明したが、プログラマブルコントローラ(PLC)20以外の他の各コントローラからその他の全コントローラに対しても同様にユーザプログラム実行時の共通制御実行指示処理(同報通知)を行うことができる。すなわち、この制御システムにおいては、ベースユニット25に装着され、データバス30で接続されたコントローラ相互間で共通制御実行指示を行い、他のコントローラの制御を一括して行うことができる。
In the above, the common control execution instruction process (broadcast notification) from the programmable controller (PLC) 20 to all other controllers has been described as an example. Similarly, a common control execution instruction process (broadcast notification) at the time of user program execution can be performed from each controller other than the programmable controller (PLC) 20 to all other controllers. That is, in this control system, a common control execution instruction can be issued between the controllers mounted on the
図11のフローに従ってユーザプログラム実行時の共通制御実行指示処理が実行された後の、制御の実行指示がなされた各コントローラにおけるデータバスI/F情報の確認の動作処理について説明する。ここでは、モーションコントローラ(MC)21の動作処理を例に図13を参照しながら説明する。図13は、モーションコントローラ(MC)21におけるデータバスI/F情報の確認の動作処理を説明するためのフローチャートである。 An operation process for confirming the data bus I / F information in each controller to which a control execution instruction is given after the common control execution instruction process at the time of executing the user program is executed according to the flow of FIG. 11 will be described. Here, the operation processing of the motion controller (MC) 21 will be described as an example with reference to FIG. FIG. 13 is a flowchart for explaining an operation process for checking the data bus I / F information in the motion controller (MC) 21.
まず、モーションコントローラ(MC)21のMPU50は、データバスI/F53上の情報を確認し(ステップS510)、共通制御実行指示情報の受信があるか否かを判断する(ステップS511)。共通制御実行指示情報の受信がないと判断した場合は(ステップS511否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
First, the
また、共通制御実行指示情報の受信があると判断した場合は(ステップS511肯定)、MPU50は共通制御実行指示情報の対象先が自コントローラであるか否かを判断する(ステップS512)。ここで、共通制御実行指示情報の対象先が自コントローラでないと判断した場合は(ステップS512否定)、ここで、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
If it is determined that the common control execution instruction information has been received (Yes at step S511), the
一方、共通制御実行指示情報の対象先が自コントローラであると判断した場合は(ステップS512肯定)、MPU50は受信した共通制御実行指示情報をシステムワークRAM52に格納する(ステップS513)。つぎに、MPU50は、システムワークRAM52に格納した共通制御実行指示情報の制御指令名称(命令名称)を確認し(ステップS514)、制御指令名称(命令名称)が、自コントローラで制御可能な制御指令に関する情報(すなわち、転送用制御指令情報)に存在するか否かを判断する(ステップS515)。
On the other hand, when it is determined that the target of the common control execution instruction information is the own controller (Yes at Step S512), the
ここで、共通制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在しないと判断した場合は(ステップS515否定)、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。また、制御実行指示情報の制御指令名称(命令名称)が自コントローラの転送用制御指令情報に存在すると判断した場合は(ステップS515肯定)、MPU50は共通制御実行指示情報で指定された制御指令を実行し(ステップS516)、一連のデータバスI/F情報の確認処理を終了する(ステップS517)。
If it is determined that the control command name (command name) of the common control execution instruction information does not exist in the transfer control command information of the own controller (No in step S515), a series of data bus I / F information confirmation processing Is finished (step S517). If it is determined that the control command name (command name) of the control execution instruction information is present in the transfer control command information of the own controller (Yes at step S515), the
上述したように、本実施の形態にかかる制御システムによれば、制御実行指示の指示元となるコントローラが、制御実行指示の指示先のコントローラ間で共通して認識可能な制御指令に関する情報である制御指令情報を取得し、この制御指令情報を用いて、制御指令の実行を指示する制御実行指情報を作成して指示先のコントローラに対して送信する。 As described above, according to the control system according to the present embodiment, the controller that is the instruction source of the control execution instruction is information related to the control instruction that can be commonly recognized among the controllers that are the instruction destinations of the control execution instruction. Control command information is acquired, and using this control command information, control execution finger information for instructing execution of the control command is created and transmitted to the instructed controller.
これにより、指示元となるコントローラは、指示先のコントローラで実行可能な機能を追加する場合においても、ファームウェアのバージョンアップなどをする必要がない。すなわち、指示元となるコントローラは、指示先のコントローラで実行可能な機能を追加する場合においても、制御実行命令の指示先のコントローラ間で共通して実行可能な制御指令に関する情報を有することで、指示先のコントローラにおける機能の追加に対して、容易に且つ安価に対応することができる。 As a result, the controller that is the instruction source does not need to upgrade the firmware or the like even when adding a function that can be executed by the controller that is the instruction destination. In other words, the controller that is the instruction source has information on the control command that can be executed in common between the controllers that are the instructions of the control execution instructions even when adding a function that can be executed by the controller that is the instruction destination. It is possible to easily and inexpensively respond to the addition of the function in the designated controller.
また、本実施の形態にかかる制御システムにおいては、ベースユニットに装着され、データバスで接続されたコントローラ相互間で制御指令を行い、他のコントローラの制御を相互に行うことができる。 In the control system according to the present embodiment, control commands can be issued between controllers mounted on the base unit and connected by a data bus, and the other controllers can be controlled mutually.
なお、本実施の形態においては、プログラマブルコントローラ(PLC)20、モーションコントローラ(MC)21、数値制御コントローラ(NC)22およびロボットコントローラ(RC)23が装着されている場合を例に挙げているが、本発明はこれに限定されるものではなく、さらに多くのコントローラがバス30により接続された形態に適用することができる。
In this embodiment, the case where the programmable controller (PLC) 20, the motion controller (MC) 21, the numerical controller (NC) 22 and the robot controller (RC) 23 are mounted is described as an example. The present invention is not limited to this, and can be applied to a form in which more controllers are connected by the
以上のように、本発明にかかる制御システムは、制御実行命令の指示先のコントローラに新たな機能を追加する場合に有用である。 As described above, the control system according to the present invention is useful when a new function is added to the controller to which the control execution instruction is directed.
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 ユーザ指定情報
DESCRIPTION OF SYMBOLS 1 1st controller 2 Control command information transfer part 3 External apparatus control part 4
21 Motion controller (MC)
22 Numerical controller (NC)
23 Robot controller (RC)
25
41 System program ROM
42 System work RAM
43
45 User data RAM
46
52 System Work RAM
53
55 User data RAM
56
62 System work RAM
63
65 User data RAM
66
72 System Work RAM
73
75 User data RAM
76
Claims (7)
前記第1のコントローラが、
自コントローラで制御可能な制御指令に関する情報である制御指令情報を前記第2のコントローラに転送する制御指令情報転送部と、
前記第2のコントローラから送信され制御指令の実行を指示する制御実行指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、
前記第2のコントローラと相互通信を行う通信部と、
を備え、
前記第2のコントローラが、
前記第1のコントローラから送信される制御指令情報を取得して保持する制御指令情報取得部と、
所定の制御プログラムを実行するプログラム実行部と、
前記制御プログラム中に前記制御指令情報に含まれる制御指令が存在することを条件として、前記制御指令の実行を指示する前記制御実行指示情報を前記制御指令情報を用いて作成し前記第1のコントローラに送信する制御実行指示部と、
前記第1のコントローラと相互通信を行う通信部と、
を備えること、
を特徴とする制御システム。 A first controller that controls an external device and a second controller that instructs the first controller to execute control of the external device are connected to be able to communicate with each other.
The first controller comprises:
A control command information transfer unit that transfers control command information, which is information related to a control command that can be controlled by the controller, to the second controller;
An external device control unit that executes control of the external device based on control execution instruction information transmitted from the second controller and instructing execution of a control command;
A communication unit for performing mutual communication with the second controller;
With
The second controller comprises:
A control command information acquisition unit that acquires and holds control command information transmitted from the first controller;
A program execution unit for executing a predetermined control program;
On the condition that the control command included in the control command information exists in the control program, the control execution instruction information for instructing execution of the control command is created using the control command information, and the first controller A control execution instruction unit to be transmitted to
A communication unit that performs mutual communication with the first controller;
Providing
Control system characterized by.
を特徴とする請求項1に記載の制御システム。 The second controller notifying the plurality of first controllers of the control execution instruction information;
The control system according to claim 1.
を特徴とする請求項2に記載の制御システム。 Broadcast notification of the control execution instruction information is performed using a frame common to the plurality of first controllers,
The control system according to claim 2.
自コントローラで制御可能な制御指令に関する情報である制御指令情報を前記第2のコントローラに転送する制御指令情報転送部と、
前記第2のコントローラから送信され制御指令の実行を指示する制御実行指令指示情報に基づいて前記外部機器の制御を実行する外部機器制御部と、
前記第2のコントローラと相互通信を行う通信部と、
を備えることを特徴とするコントローラ。 A first controller that controls an external device and a second controller that instructs the first controller to execute the control of the external device constitute a control system that is connected to be communicable with each other. 1 controller,
A control command information transfer unit that transfers control command information, which is information related to a control command that can be controlled by the controller, to the second controller;
An external device control unit for executing control of the external device based on control execution command instruction information transmitted from the second controller and instructing execution of a control command;
A communication unit for performing mutual communication with the second controller;
A controller comprising:
前記第1のコントローラから送信される前記第1のコントローラで制御可能な制御指令に関する情報である制御指令情報を取得して保持する制御指令情報取得部と、
所定の制御プログラムを実行するプログラム実行部と、
前記制御プログラム中に前記制御指令情報に含まれる制御指令が存在することを条件として、前記制御指令の実行を指示する制御実行指示情報を前記制御指令情報を用いて作成し前記第1のコントローラに送信する制御実行指示部と、
前記第1のコントローラと相互通信を行う通信部と、
を備えること、
を特徴とするコントローラ。 A first controller that controls an external device and a second controller that instructs the first controller to execute the control of the external device constitute a control system that is connected to be communicable with each other. 2 controllers,
A control command information acquisition unit that acquires and holds control command information, which is information related to a control command that can be controlled by the first controller, transmitted from the first controller;
A program execution unit for executing a predetermined control program;
On the condition that the control command included in the control command information exists in the control program, control execution instruction information for instructing execution of the control command is created using the control command information and is stored in the first controller. A control execution instruction section to transmit;
A communication unit that performs mutual communication with the first controller;
Providing
A controller characterized by.
前記第1のコントローラが、自コントローラで制御可能な制御指令に関する情報である制御指令情報を前記第2のコントローラに転送する制御指令情報転送工程と、
前記第2のコントローラが、前記第1のコントローラから送信される制御指令情報を取得して保持する制御指令情報取得工程と、
前記第2のコントローラが、所定の制御プログラムを実行するプログラム実行工程と、
前記第2のコントローラが、前記制御プログラム中に前記制御指令情報に含まれる制御指令が存在することを条件として、前記制御指令の実行を指示する制御実行指示情報を前記制御指令情報を用いて作成し前記第1のコントローラに送信する制御実行指示工程と、
前記第1のコントローラが、前記第2のコントローラから送信される前記制御実行指示情報に基づいて前記外部機器の制御を行う外部機器制御工程と、
を含むこと、
を特徴とする制御方法。 A control method for a control system in which a first controller for controlling an external device and a second controller for instructing the first controller to execute control of the external device are connected,
A control command information transfer step in which the first controller transfers control command information, which is information relating to a control command controllable by the controller, to the second controller;
A control command information acquisition step in which the second controller acquires and holds control command information transmitted from the first controller;
A program execution step in which the second controller executes a predetermined control program;
The second controller creates control execution instruction information for instructing execution of the control command using the control command information on condition that a control command included in the control command information exists in the control program. And a control execution instruction step for transmitting to the first controller;
An external device control step in which the first controller controls the external device based on the control execution instruction information transmitted from the second controller;
Including,
A control method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007021583A JP4795260B2 (en) | 2007-01-31 | 2007-01-31 | Control system, control method, controller, and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007021583A JP4795260B2 (en) | 2007-01-31 | 2007-01-31 | Control system, control method, controller, and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008186395A true JP2008186395A (en) | 2008-08-14 |
JP4795260B2 JP4795260B2 (en) | 2011-10-19 |
Family
ID=39729365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007021583A Active JP4795260B2 (en) | 2007-01-31 | 2007-01-31 | Control system, control method, controller, and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4795260B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768504A (en) * | 2011-05-02 | 2012-11-07 | 西门子公司 | Method for controlled intervention into the behaviour of a sub-module |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11231924A (en) * | 1998-02-10 | 1999-08-27 | Yaskawa Electric Corp | Command generating and monitoring device for different controllers |
JP2000284808A (en) * | 1999-03-31 | 2000-10-13 | Mitsubishi Electric Corp | Vehicle control communication system |
JP2003186507A (en) * | 2001-12-18 | 2003-07-04 | Hitachi Ltd | Distributed control system |
JP2004110613A (en) * | 2002-09-20 | 2004-04-08 | Toshiba Corp | Controller, control program, objective device, and control system |
JP2004151807A (en) * | 2002-10-29 | 2004-05-27 | Toshiba Corp | Supervision and control system |
-
2007
- 2007-01-31 JP JP2007021583A patent/JP4795260B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11231924A (en) * | 1998-02-10 | 1999-08-27 | Yaskawa Electric Corp | Command generating and monitoring device for different controllers |
JP2000284808A (en) * | 1999-03-31 | 2000-10-13 | Mitsubishi Electric Corp | Vehicle control communication system |
JP2003186507A (en) * | 2001-12-18 | 2003-07-04 | Hitachi Ltd | Distributed control system |
JP2004110613A (en) * | 2002-09-20 | 2004-04-08 | Toshiba Corp | Controller, control program, objective device, and control system |
JP2004151807A (en) * | 2002-10-29 | 2004-05-27 | Toshiba Corp | Supervision and control system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102768504A (en) * | 2011-05-02 | 2012-11-07 | 西门子公司 | Method for controlled intervention into the behaviour of a sub-module |
CN102768504B (en) * | 2011-05-02 | 2016-06-29 | 西门子公司 | For the method that the being controlled property of behavior of submodule is interfered |
Also Published As
Publication number | Publication date |
---|---|
JP4795260B2 (en) | 2011-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6626240B2 (en) | controller | |
JP5553910B2 (en) | Motion controller | |
US20140364989A1 (en) | Controller for controlling machine tool and robot | |
US20110238188A1 (en) | Engineering tool | |
JP2009099150A (en) | Automatic system and automatic modification method for program | |
JP6477555B2 (en) | RELAY DEVICE, RELAY DEVICE CONTROL METHOD, CONTROL PROGRAM, AND RECORDING MEDIUM | |
US11075807B2 (en) | Method for replacing and/or cloning at least some devices of a machine | |
EP3086230A1 (en) | Controller | |
EP1521149B1 (en) | Programmable logic controller with variable name resolving means | |
US20160098035A1 (en) | Numeric controller with notification of a cam system in the event of a change in the subroutine | |
JP2005050096A (en) | Numerical controller | |
JP4795260B2 (en) | Control system, control method, controller, and control program | |
US20210067483A1 (en) | Control System, Controller, and Control Method | |
JP5421894B2 (en) | Duplex process control apparatus and control data matching method | |
JP2007102632A (en) | Simulation device | |
JP2008077535A (en) | Field communication system, field server, field apparatus, and field communication method | |
US20190033834A1 (en) | Slave device, industrial network system, and method of controlling slave device | |
KR102129465B1 (en) | Plc system and method for increasing the unit of the same | |
JP4950617B2 (en) | Air conditioning management apparatus, air conditioning management method, and air conditioning management program | |
JP6766501B2 (en) | Information transfer systems, information processing devices, and programs | |
JP6409586B2 (en) | Machine tool system and rule setting method | |
CN109643089B (en) | Control unit, data updating method, and storage medium | |
JP2009104283A (en) | System for transmitting/receiving data by modbus and control equipment such as programmable controller | |
JP2019128668A (en) | Control unit, control method and control program | |
US11360462B2 (en) | Support device and support program |
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 |