JP5553910B2 - モーションコントローラ - Google Patents

モーションコントローラ Download PDF

Info

Publication number
JP5553910B2
JP5553910B2 JP2012550618A JP2012550618A JP5553910B2 JP 5553910 B2 JP5553910 B2 JP 5553910B2 JP 2012550618 A JP2012550618 A JP 2012550618A JP 2012550618 A JP2012550618 A JP 2012550618A JP 5553910 B2 JP5553910 B2 JP 5553910B2
Authority
JP
Japan
Prior art keywords
slave
program
controller
master
communication setting
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.)
Expired - Fee Related
Application number
JP2012550618A
Other languages
English (en)
Other versions
JPWO2012090291A1 (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPWO2012090291A1 publication Critical patent/JPWO2012090291A1/ja
Application granted granted Critical
Publication of JP5553910B2 publication Critical patent/JP5553910B2/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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2231Master slave
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2236Master determines critical time when each of slaves must be controlled
    • 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/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33154Data exchange between processors of different axis of same or different cnc
    • 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/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33333Network multiprocessing
    • 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/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33342Master slave, supervisor, front end and slave processor, hierarchical structure
    • 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/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34406Effect of computer, communication delay in real time control
    • 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/30Nc systems
    • G05B2219/43Speed, acceleration, deceleration control ADC
    • G05B2219/43167Distributed motion control
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、産業機械などに組み込まれる制御対象機器をネットワークによって接続し、これらを制御するモーションコントローラに関する。
近年、FA(ファクトリ・オートメーション)システムにおける省配線化を目的とし、ネットワークにより各種制御機器を接続する制御システムが採用されている。特に、産業機械においては、その駆動系を構成する各軸のモータを駆動するドライバや、周辺機器に含まれる入出力デバイスをネットワークにより接続し、これらの制御対象機器を制御するモーションコントローラが用いられている。
図15は、このようなネットワーク型モーションコントローラの一般的な構成を示す図である。図15では、全体を制御するマスタコントローラ(以下、マスタ)201と、制御対象機器を直接駆動するスレーブコントローラ(以下、スレーブ)202が、ネットワーク203により接続されている。マスタ201は、制御プログラムをプログラム実行部により実行し、マスタ用通信部によりネットワーク203を経由してスレーブ202との間の通信を行い、スレーブ203のセンサなどの信号の状態204を入力するとともに、モータなどの制御対象機器を動作させるためのコマンド205を出力する。
ここで、マスタのプログラム実行部では、一定の周期(以下、制御周期)で、例えば、メモリ等に格納された制御プログラムが実行されるが、制御対象機器の数(スレーブ数)の増大や、制御処理の複雑化に伴い、マスタの制御周期は増大する。また、マスタとスレーブとの間の通信も一定の周期(以下、通信周期)で行われるが、スレーブ数の増大に伴い、ネットワークの通信周期は増大する。
一般に、マスタの制御周期は通信周期の整数倍に設定され、制御システムとしての応答性、すなわち、センサなどの入力信号の状態変化に対応して機器動作を変更する際、状態変化の発生を捉えてから実際に機器動作が変更されるまでの遅延時間(レイテンシ)は、マスタの制御周期によって決定される。
このため、従来は、制御システムとしての応答性を向上するために、ネットワークの通信周期の短縮と、マスタの制御周期の短縮、すなわち、ネットワークの通信速度の向上と、マスタの演算能力の向上が必要であった。しかしながら、このような方法によると、制御システムのコストが増大してしまうという問題がある。
このような従来のネットワーク型モーションコントローラにおいて、例えば、以下の特許文献1に記載されるように、サーボコマンドの発行処理の高速化を目的として、サーボコマンド発行処理部と分離されたサーボレスポンス管理部により、モーションプログラム内の軸移動命令の実行とは無関係に、任意に設定された終了条件を判定し、この条件が一致すれば、サーボコマンド発行処理部に通知して別の命令を実行する方法が既に知られている。
特開2002−6912号公報
上述の特許文献1に記載の方法では、モーションコントローラ(マスタ)の応答性は、サーボレスポンス管理部の実行周期により決定されるが、最速の場合でネットワークの通信周期での応答が可能である。しかしながら、この方法では、更なる応答性向上を実現するためには、ネットワーク通信周期の短縮、すなわち、通信速度の向上を図る必要があり、更には、それに合わせてマスタの演算性能の向上を図ることも必要となる。
また、従来のように、マスタで制御プログラムを集中処理する場合、制御対象の規模の増大や制御処理の複雑化に伴って、マスタのプログラム実行に要する演算負荷も増大し、このことが上述の応答性向上を阻害する要因となる可能性もある。
そこで、本発明では、ネットワーク型のモーションコントローラであって、マスタの演算能力やネットワークの通信速度を増大させることなく、システムの高速な応答を実現することが可能なモーションコントローラを提供することを目的とする。
上述した目的を達成するために、本発明によれば、マスタコントローラと少なくとも一つのスレーブコントローラとを、ネットワークを用いて接続して構成され、複数の制御対象機器に対する入出力操作又は制御処理を実行するモーションコントローラであって、前記マスタコントローラは:前記制御対象機器の動作を行うに当たって許容される遅延時間が指定された制御プログラムを入力し、前記許容される遅延時間を超過しないように前記制御プログラムから前記スレーブコントローラが実行すべきスレーブ用プログラムを分離すると共に、前記分離されたスレーブ用プログラムを前記スレーブコントローラが実行するに当たって必要なスレーブ間通信設定情報を生成するプログラム解析手段と;前記制御プログラムから前記スレーブ用プログラムを分離した後に残るマスタ用プログラムを実行するマスタ用プログラム実行手段と;前記スレーブ用プログラムを前記スレーブコントローラに対して前記ネットワークを経由して転送するスレーブ用プログラム転送手段と;マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を前記スレーブコントローラに対して前記ネットワークを経由して転送するスレーブ間通信設定手段と;そして、前記ネットワークを経由した前記スレーブコントローラとの間の通信制御を実行するマスタ用通信手段とを備えており、前記スレーブコントローラは:前記マスタコントローラから転送された前記スレーブ用プログラムを実行するスレーブ用プログラム実行手段と;前記マスタコントローラから前記ネットワークを経由して送信され、前記スレーブコントローラで受信されるスレーブ用コマンドおよび前記スレーブ用プログラム実行手段から発行されるスレーブ用コマンドを実行するスレーブ用コマンド実行手段と;前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を記憶するスレーブ用通信設定手段と;そして、前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報に基づいて前記ネットワークを経由した前記マスタコントローラとの間及び他の前記スレーブコントローラとの間の通信制御を実行するスレーブ用通信手段とを備えているモーションコントローラが提供される。
また、本発明によれば、前記に記載したモーションコントローラにおいて、前記制御プログラムは、状態遷移図の形式を用いて記述されており、各状態を示すステップにおいて実行すべきコマンドを記述すると共に、前記ステップの終了条件および前記終了条件が成立してから次のステップが実行されるまでの許容される遅延時間を明示的に記述していることが好ましく、又は、前記マスタコントローラのプログラム解析手段は、前記制御プログラムに記述された前記制御対象機器の動作を行うにあたり許容される遅延時間の情報を取得し、前記許容される遅延時間が前記マスタコントローラの制御周期よりも大きい場合には、前記制御対象機器の動作を前記マスタ用プログラムの中で実行し、前記許容される遅延時間が前記マスタコントローラの制御周期よりも小さい場合には、前記制御対象機器を直接駆動する前記スレーブコントローラの中の前記スレーブ用プログラムの中で実行するように、前記制御プログラムから前記マスタ用プログラムと前記スレーブ用プログラムを生成し、更に、前記スレーブ用プログラムで他の前記スレーブコントローラの入出力情報を参照する場合は、前記スレーブコントローラ間の通信を行うことにより前記入出力情報を取得するための前記スレーブ間通信設定情報を生成することが好ましい。
更に、本発明によれば、前記に記載したモーションコントローラにおいて、前記プログラム解析手段は、前記制御プログラムに記述された前記制御対象機器の動作を行うにあたり許容される遅延時間の情報を取得し、前記許容される遅延時間が前記スレーブコントローラ間の通信を行っても実現不可能な場合には、前記許容される遅延時間の指定が不正であることを示すエラーメッセージを出力することが好ましく、又は、前記モーションコントローラの初期設定時には、前記スレーブ用通信設定手段により、前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を、前記ネットワークを経由して前記スレーブコントローラに転送し、さらに、前記スレーブ用プログラム転送手段により、前記スレーブ用プログラムを前記スレーブコントローラに転送することが好ましい。
そして、本発明では、前記に記載したモーションコントローラにおいて、前記モーションコントローラのプログラム実行時には、前記マスタコントローラでは、前記マスタ用プログラム実行手段により、前記マスタ用プログラムを実行し、前記スレーブコントローラに対してコマンドを送信するとともに、前記スレーブコントローラからのステータス情報を受信し、前記スレーブコントローラでは、前記スレーブ間通信設定情報に基づいて他の前記スレーブコントローラの入出力情報を取得し、前記スレーブ用プログラム実行手段により、前記スレーブ用プログラムを実行して、この実行状況を示すステータス情報を前記マスタコントローラに対して送信することが好ましく、又は、前記モーションコントローラに接続される表示・入力手段において、前記マスタコントローラに関しては、前記マスタ・スレーブ間通信設定情報の入力と、前記制御プログラムの編集と、前記プログラム解析手段の実行と、前記マスタ用プログラムの確認とを可能とし、前記スレーブコントローラに関しては、前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報の確認と、前記スレーブ用プログラムの確認とを可能とすることが好ましい。
上述した本発明によれば、マスタコントローラの演算能力やネットワークの通信速度を増大させることなく、システムの応答性を向上することが可能であると共に、制御プログラムで指定された許容遅延時間を超過しないようにスレーブが実行すべきプログラムを自動的に分離することにより、高速な応答を実現する制御プログラムの作成を容易に行うことが可能なモーションコントローラが提供される。
本発明の一実施形態に係るモーションコントローラの構成を示す図である。 上記モーションコントローラにおける制御プログラムの記述の一例を示す図である。 上記図2に示した制御プログラム中に記述された軸動作の速度パターンの一例を示す図である。 上記モーションコントローラを構成するマスタコントローラにおけるプログラム解析部におけるプログラム解析処理の詳細を示すフローチャート図である。 上記図2に示した制御プログラムを解析して生成されたマスタ用プログラムの一例を示す図である。 上記図2に示した制御プログラムを解析して生成されたスレーブ用プログラムの一例を示す図である。 上記モーションコントローラの入出力ポートのマッピングテーブルの一例を示す図である。 上記モーションコントローラにおける軸のマッピングテーブルの一例を示す図である。 上記モーションコントローラにおける初期設定時の動作の一例を示す図である。 上記モーションコントローラにおけるプログラム実行時の動作の一例を示す図である。 上記モーションコントローラにおけるマスタ用プログラム実行部でのプログラム実行処理の詳細を示すフローチャート図である。 上記モーションコントローラにおけるスレーブ用プログラム実行部でのプログラム実行処理の詳細を示すフローチャート図である。 上記モーションコントローラにおいて、マスタの通信設定部、プログラム編集部、プログラム解析部を操作するための画面表示の一例を示す図である。 上記モーションコントローラにおいて、各スレーブの通信設定情報、スレーブ用プログラムを確認するための画面表示の一例を示す図である。 従来のネットワーク型モーションコントローラの構成を示す図である。
以下、本発明の実施形態について、添付の図面を用いて詳細に説明する。
図1は、本発明の一実施形態になるモーションコントローラの構成を示す図である。
本発明の一実施形態になるモーションコントローラは、図からも明らかなように、マスタコントローラ1と少なくとも一つのスレーブコントローラ2とをネットワーク3により接続した制御システムであり、スレーブコントローラ2には各種の制御対象機器が接続されている。この各種の制御対象機器は、マスタコントローラ1及び/またはスレーブコントローラ2により、制御される。
まず、マスタコントローラ1の構成について説明すると、プログラム編集部1eは、ユーザが、ディスプレイやキーボードなどの表示・入力部1aを用いて、制御対象機器の動作を記述した制御プログラムを作成する手段を構成している。ここでは、制御プログラムを記述する際に、制御対象機器の動作を行うにあたって許容される遅延時間が指定できるように構成されている。制御プログラム記憶部1fは、作成された制御プログラムを記憶する手段であり、具体的には、メモリ等によって構成される。
プログラム解析部1eは、作成された制御プログラムを入力して、上述の許容される遅延時間を超過しないように、制御プログラムからスレーブコントローラ2が実行すべきスレーブ用プログラムを分離すると共に、このスレーブ用プログラムをスレーブコントローラ2が実行するにあたって必要なスレーブ間通信設定情報を生成する手段を構成している。スレーブ用プログラム記憶部1jは、ここで生成されたスレーブ用プログラムを記憶する手段であり、また、スレーブ間通信設定情報記憶部1hは、同じく生成されたスレーブ間通信設定情報を記憶する手段であり、これらは、例えば、メモリ等により構成されている。
制御プログラムからスレーブ用プログラムを分離した後で残った部分は、マスタコントローラ1で実行するマスタ用プログラムとなり、マスタ用プログラム記憶部1mは、マスタ用プログラムを記憶する手段を構成し、また、マスタ用プログラム実行手段1nは、マスタ用プログラムを実行する手段を構成し、これらも上記と同様に、例えば、メモリ等により構成されている。
通信設定部1bは、ユーザが上記表示・入力部1aを用いて、ネットワーク3を経由したマスタコントローラ1とスレーブコントローラ2との間の通信設定を行うための手段であり、これにより、マスタ・スレーブ間通信設定情報が生成される。また、この通信設定部1bにより、上述のスレーブ間通信設定情報をも確認することができる。マスタ・スレーブ間通信設定情報記憶部1cは、このマスタ・スレーブ間通信設定情報を記憶するための手段を構成している。マスタ用通信部1dは、マスタコントローラ1のネットワーク3を経由した通信を制御するための手段を構成している。
スレーブ用通信設定部1iは、上述したマスタ・スレーブ間通信設定情報とスレーブ間通信設定情報を、それぞれのスレーブコントローラ2に対して、ネットワーク3を経由して転送するための手段を構成している。また、スレーブ用プログラム転送部1kは、上述したスレーブ用プログラムを該当するスレーブコントローラ2に転送するための手段を構成している。
なお、上記の図1に示した構成では、マスタコントローラ1にプログラム編集部1eやプログラム解析部1gを備えているものとして説明したが、本発明はこれに限定されることなく、例えば、これらの手段をマスタコントローラ1とは別の計算機(パーソナルコンピュータなど)に備える構成とすることも可能である。
次に、スレーブコントローラ2の構成について説明する。まず、通信設定部2aは、上述したマスタ・スレーブ間通信設定情報とスレーブ間通信設定情報に基づいて、スレーブコントローラ2の通信設定を行う手段を構成しており、通信設定情報記憶部2bは、これらの通信設定情報を記憶する手段を構成している。また、スレーブ用通信部2cは、スレーブコントローラ2のネットワーク3を経由した通信を制御する手段を構成している。
プログラム転送部2dは、上述したスレーブ用プログラムをマスタコントローラ1からネットワーク3を経由して転送するための手段を構成しており、また、スレーブ用プログラム記憶部2eは、転送されたスレーブ用プログラムを記憶するための手段を構成している。また、スレーブ用プログラム実行部2gは、スレーブ用プログラムを実行するための手段である。
スレーブ用コマンド実行部2fは、マスタコントローラ1からスレーブコントローラ2に対して送信されるコマンドと、スレーブ用プログラム実行部2gがスレーブ用プログラムを実行する際に発行されるコマンドを実行するための手段を構成している。また、デバイス制御手段2hは、スレーブコントローラ2に接続される制御対象機器2iの入出力操作や各種制御処理(サーボ制御処理など)を行う手段を構成している。
次に、図2は、上記のその構造を説明した、本実施形態になるモーションコントローラにおける制御プログラムの記述例を示す図である。
図において、制御プログラムは、状態遷移図の形式を用いて記述される。ここで、各状態に相当するステップ301では、これを識別するためのステップ番号301a(「S100」)と、このステップ301で実行する制御処理をコマンド301bとして記述する。さらに、このステップにおけるコマンドの処理が終了したと見なす条件(以下、「終了条件」と言う)と、この終了条件が成立してから次のステップに遷移するまでに許容される遅延時間(以下、「レイテンシ」と言う)を、明示的に、遷移条件301cとして記述する。
例えば、最初のステップ301(ステップ番号301a、「S100」)では、1番目のモータ軸(AXIS1)を目標位置X0まで速度V0で移動させるコマンド301b(即ち、「MoveAxis(AXIS1, X0, V0)」)と、AXIS1が目標位置に位置決めされるという終了条件が成立(即ち、「AxisStatus[AXIS1]==C_IN_POS」)したあと、10ミリ秒の許容レイテンシで次のステップへ遷移する(即ち、「with Latency<=C_10_MILLISEC」)という遷移条件301cが記述されている。
同様に、次のステップ302(ステップ番号302a、「S101」)では、AXIS1を目標位置X1まで速度V1で移動させるコマンド302b(即ち、「MoveAxis(AXIS1, X1, V1)」)と、0番目の入力ポート(PORT0)の信号(センサAの信号)がONになるという終了条件(即ち、「In[PORT0]==ON」)が成立したあと、50マイクロ秒の許容レイテンシで次のステップへ遷移するという遷移条件302c(即ち、「with Latency<=C_50_MILLISEC」)が記述されている。
なお、モーショコントローラにおいては、複数の制御プログラムを並行して実行すること(所謂、「マルチタスク」)が可能であり、それぞれの制御プログラムにおいては固有のステップ番号が用いられるものとする。また、制御プログラムの各ステップには、この制御プログラムの最初のステップから連続したステップ番号が自動的に割り振られるものとする。
そして、上記の図2に示した制御プログラムでは、以下のような軸動作が記述されている。まず、ステップ301(ステップ番号301a、「S100」)では、AXIS1を位置X0に速度V0で移動する(即ち、コメント「/* Move to X0 at V0 */」の通り)。次に、ステップ302(ステップ番号302a、「S101」)では、位置X1に向かって速度V1で移動する(即ち、コメント「/* Move to X1 at V1 */」の通り)。そして、この移動中に、PORT0に接続されたセンサAがONになったら(即ち、「In[PORT0]==ON」)、ステップ番号S102に遷移し、そのときの位置にDXを加算した位置に向かって速度V2で移動する(即ち、コメント「/* Move +DX at V2 */」の通り)。更に、この移動中にPORT1に接続されたセンサBがONになったら(即ち、「In[PORT1]==ON」)、ステップ番号S103に遷移し、位置X0に速度V3で移動する(即ち、コメント「/* Move to X0 at V3 */」の通り)。そして、各ステップへの遷移条件では、許容レイテンシが指定されている。
次に、図3は、上記の図2に示した制御プログラムに記述された軸動作の速度パターンの例を示す図である。
この図3では、各ステップ(ステップ番号S100〜S104)における速度パターン401が示されており、ステップS101からS102に遷移する際の終了条件402(「センサAがON」)と、ステップS102からS103に遷移する際の終了条件403(「センサBがON」)が成立するタイミングの例が示されている。実際の軸動作では、終了条件402(「In[PORT0]==ON」)、終了条件403(「In[PORT1]==ON」)が成立した後に次のステップに遷移する際、すなわち、移動速度を変更するまでに遅延時間が発生し、そこで、上記図2に示した制御プログラムでは、許容レイテンシを指定することにより、この遅延時間を管理している。
更に、図4は、本実施形態になるモーションコントローラのプログラム解析部(図1の符号1g)におけるプログラム解析処理の一例を示すフローチャート図である。このプログラム解析部では、上記図2に示したような制御プログラムの最初のステップ(初期ステップ)から始まり、ステップ番号nの順に従って、順次、解析処理を行う。
まず、初期ステップ(処理501)では、初期ステップであるか否かの判定を行い、その結果、初期ステップである(「Yes」)と判定された場合には、ステップSnのコマンドを制御プログラムから入力し(処理502)、更に、マスタ用プログラムにSnのコマンド処理を追加して(処理503)、処理504に移る。
他方、処理501で、初期ステップでない(「No」)と判定された場合には、次のステップSn+1への遷移条件を入力し(処理504)、ステップSn+1のコマンドを入力し(処理505)、さらに、ステップSn+1への遷移条件から許容レイテンシの指定情報を取得する(処理506)。
ここで、マスタコントローラの制御周期が、予め指定された許容レイテンシより小さいか否かを判定し(処理507)、その結果、小さい(「Yes」)と判定された場合には、マスタコントローラによる許容レイテンシでの応答が可能と判断して、マスタ用プログラムにステップSnの終了条件判定処理を追加し(処理508)、さらに、マスタ用プログラムにステップSn+1のコマンド処理を追加して(処理509)、その後、処理516に移る。
他方、上記の判定処理507において、マスタコントローラの制御周期が指定された許容レイテンシより小さくない(「No」)と判定された場合には、スレーブコントローラでのプログラム実行が必要と判断して、ステップSnの終了条件に含まれる入力信号が接続されているスレーブコントローラ(ここでは、スレーブ(1)とする)と、ステップSn+1のコマンドで動作させる制御対象機器が接続されているスレーブコントローラ(スレーブ(2)とする)との間の通信遅延時間を取得する(処理510)。
そして、スレーブ(1)とスレーブ(2)との間の通信遅延時間が指定された許容レイテンシより小さいか否かを判定し(処理511)、通信遅延時間が許容レイテンシより小さい(「Yes」)場合には、スレーブ(1)とスレーブ(2)の間のスレーブ間通信設定情報を生成し(処理512)、スレーブ(2)のスレーブ用プログラムにステップSnの終了条件判定処理を追加し(処理513)、さらにスレーブ(2)のスレーブ用プログラムにステップSn+1のコマンド処理を追加(処理514)した後、処理516へ移る。
他方、上記判定処理511の結果、スレーブ(1)とスレーブ(2)との間の通信遅延時間が許容レイテンシより小さくない(「No」)場合、指定された許容レイテンシの値が実現不可能であることを示すエラーメッセージを出力し(処理515)、その後、プログラム解析処理を終了する。
また、プログラム解析処理に入力された制御プログラムの最後のステップに到達、すなわち、プログラム終了の判定(処理516)の結果、「Yes」の場合にも、プログラム解析処理を終了する。
これに対し、プログラム終了でない場合(判定処理516の結果が「No」)、ステップ番号nに1を加算し(処理517)、再び、上記の処理514へ戻り、以上の解析処理を、プログラム終了となるまで、順次、繰り返す。
続いて、図5と図6には、それぞれ、上記図3に示した制御プログラムを解析処理した結果、生成された、マスタ用プログラムと、そして、スレーブ用プログラムを示す。
まず、図5に示すように、上記図2に示した制御プログラムからスレーブ用プログラムを分離したあとに残るマスタ用プログラムでは、スレーブ用プログラムに移った処理が省略され、その結果、ステップ番号のみが付与された空ステップ(S102、S103)が生成される。
一方、図6に示すように、ステップS101の終了条件判定処理からステップS103のコマンド処理までが、スレーブ用プログラムとして分離されている(この時点で、許容レイテンシを指定する条件式は省略される)。この例では、マスタコントローラの制御周期が1ミリ秒であるとし、許容レイテンシをこれよりも小さく設定されているステップの処理がスレーブ用プログラムとして分離されている。
なお、図6に示したスレーブ用プログラムをスレーブコントローラで実行するためには、上述したように、各ステップの終了条件に含まれる入力信号が接続されているスレーブコントローラと、コマンドで動作させる制御対象機器が接続されているスレーブコントローラを特定する必要がある。そこで、ここでは、以下に述べる入出力ポートのマッピングテーブル及び軸のマッピングテーブルを利用する。
図7は、入出力ポートのマッピングテーブルの例を示す図であり、図8は、軸のマッピングテーブルの例を示す図である。
まず、図7に示した入出力ポートのマッピングテーブルでは、モーションコントローラの論理的な「入力ポート番号」801と、当該入力ポートに割り当てられる入力信号が接続されているスレーブコントローラの「スレーブ番号」802と、当該入力信号の「デバイス名称」とが記述されている。例えば、上記図6に示したスレーブ用プログラムの場合、入力ポート0と1に接続される「センサA」と「センサB」が終了条件として参照されており、その結果、これらはスレーブ番号1のスレーブコントローラに接続されていることが分かる。
他方、図8に示した軸のマッピングテーブルでは、モーションコントローラの論理的な「軸番号」901と、当該軸に割り当てられる軸が接続されているスレーブコントローラの「スレーブ番号」902と、そして、その「軸名称」903が記述されている。例えば、上記図6に示したスレーブ用プログラムの場合、軸番号1(AXIS1)に割り当てられる「モータ1」を移動するコマンドが記述されており、その結果、この軸はスレーブ番号1のスレーブコントローラに接続されていることが分かる。
このように、本発明によれば、入出力ポートのマッピングテーブル及び軸のマッピングテーブルを用いることにより、スレーブ用プログラムを実行するスレーブコントローラと、当該スレーブコントローラとスレーブ間通信を行う必要のある他のスレーブコントローラが特定されることから、これらに対するスレーブ間通信設定と、そして、スレーブ用プログラムの転送を行う。
続いて、図9は、モーションコントローラの初期設定時における動作の例を示す図である。なお、この図9は、上記図6に示したスレーブ用プログラムを実行する際の初期設定を示している。
スレーブ番号1のスレーブコントローラ(図中、「スレーブ1」と表記)に対して、スレーブ間通信設定情報を含む通信設定情報を、マスタコントローラ1からネットワーク3を経由して転送し(矢印1001で表記)、スレーブ番号2のスレーブコントローラ(図中、「スレーブ2」と表記)に対して、スレーブ間通信設定情報を含む通信設定情報及び図6に示したスレーブ用プログラムを、マスタコントローラ1からネットワーク3を経由して転送する(矢印1002で表記)。
一方、図10は、モーションコントローラのプログラム実行時の動作の例を示す図であり、この図は、上記図6に示したスレーブ用プログラムを実行する際の通信処理を示している。
スレーブ1からスレーブ2に対しては、「センサA」と「センサB」の入力信号状態がスレーブ間通信により送信され(矢印1101で表記)、また、マスタコントローラ1からスレーブ2に対しては、マスタコントローラ1で現在実行中のステップ番号が送信される(矢印1102で表記)。このコマンド(ステップ番号)がスレーブ用プログラムの最初のステップ番号(上記図6では、S101)に一致すれば、スレーブ用プログラムの実行を開始し、その後、その実行状態を「ステータス(情報)」としてマスタコントローラ1へ送信する(矢印1103で表記)。なお、マスタコントローラ1は、マスタ用プログラムを実行する際に、各スレーブコントローラに対してコマンドを送信し、各スレーブコントローラは、コマンドの実行状態をステータス(情報)として、マスタコントローラ1へ送信する。
図11は、モーションコントローラ1のマスタ用プログラム実行部(図1の符号1n)におけるプログラム実行処理の詳細を示すフローチャート図である。このマスタ用プログラム実行部1nは、マスタ用プログラム(図1の符号1m)の各ステップに記述された処理を、初期ステップから順に実行する。
処理が開始すると、まず、現在実行中の処理をステップ番号nとして、ステップSnが初期ステップであるか否かを判定し(処理1201)、その結果、ステップSnが初期ステップである(「Yes」)の場合、ステップSnのコマンド処理を実行し(処理1202)、その後、処理1203に移る。
他方、上記の判定処理1201の結果、ステップSnが初期ステップでない(「No」)場合、更に、ステップSnの終了条件が成立しているかどうかを判定する(処理1203)。その結果、これが成立している(「Yes」)場合には、次のステップSn+1のコマンド処理を実行する(処理1204)。その後、更に、ステップSn+1でプログラムが終了か否かを判定し(処理1205)、その結果、ステップSn+1でプログラム終了(「Yes」)の場合には、当該プログラムの終了を示す終了フラグフラグをセットし(処理1206)し、その後、処理1207に移る。
これに対して、上記の判定処理1205でステップSn+1でプログラム終了でない(「No」)と判定された場合には、ステップ番号nに1を加算し(処理1207)、プログラム実行処理を終了する。また、上記の判定処理1203において、ステップSnの終了条件が成立していない(「No」)と判定された場合にも、同様に、プログラム実行処理を終了する。
なお、以上のプログラム実行処理は、マスタコントローラ1において、一定の周期(制御周期)で実行されており、マスタコントローラ1で実行されるマスタ用プログラム毎に、現在実行中のステップ番号が管理されている。また、上述の終了フラグも、同様に、マスタ用プログラム毎に設けられており、その結果、終了フラグがセットされると、プログラム実行処理は行われない。
図12は、本発明の一実施の形態になるモーションコントローラを構成するスレーブ用プログラム実行部(図1の符号2g)におけるプログラム実行処理の詳細を示すフローチャート図である。このスレーブ用プログラム実行部2gは、スレーブ用プログラム(図1の符号2e)の各ステップに記述された処理を、ステップ番号の順に、実行する。
処理が開始すると、まず、現在実行中のステップ番号nとして、ステップSnの終了条件が成立しているか否かを判定し(処理1301)、その結果、ステップSnの終了条件が成立している(「Yes」)の場合、次のステップSn+1のコマンド処理を実行する(処理1302)。その後、ステップSn+1でプログラム終了するか否かを判定し、その結果、ステップSn+1でプログラム終了する(「Yes」)の場合には、終了フラグフラグをセットし(処理1304)し、処理1305に移る。
他方、上記判定処理1303において、ステップSn+1でプログラム終了しない(「No」)の場合には、ステップ番号nに1を加算し(処理1305)、その後、プログラム実行処理を終了する。また、上記判定処理1301においてステップSnの終了条件が成立していない場合(「No」)にも、同様に、プログラム実行処理を終了する。
なお、以上のプログラム実行処理は、スレーブコントローラ2において一定の周期で実行されている。また、上述の終了フラグがセットされるとプログラム実行処理は行われない。また、一つのスレーブコントローラが制御するデバイスが限られているため、スレーブコントローラのプログラム実行処理の負荷は小さく、そのため、スレーブコントローラとして演算能力高いプロセッサなどを用意する必要はない。
更に、図13は、上述した図1に示したモーションコントローラのマスタコントローラ1を構成する通信設定部1b、プログラム編集部1e、プログラム解析部1gを操作するための画面表示の一例を示す。
この図13に示した画面表示では、ネットワークの接続構成を示す部分1401において、マスタコントローラ(図中、「Master」と表記)を選択すると、マスタコントローラ1に記憶されているプログラムに関する情報を示す部分1402が表示される。ここにはプログラムの一覧を示すテーブル1402aが表示され、この中から一つのプログラムを選択し、編集ボタン(図中、「Edit」と表記)1402bをクリックすると、別のプログラム編集画面(図示せず)が表示され、プログラムの編集を行うことが可能となる。また、コンパイルボタン(図中、「Compile」と表記)1402cをクリックすると、プログラムの解析処理が実行され、そして、解析処理中に何らかエラーが発生すれば、エラーメッセージ1402dが表示される。
図14は、上記モーションコントローラの各スレーブを構成する通信設定情報2b、スレーブ用プログラム2eを確認するための画面表示の一例を示す。
この図14に示した画面表示では、ネットワークの接続構成を示す部分1501において、スレーブコントローラ(図中、「Slave」と表記)のいずれかを選択すると、そのスレーブコントローラの通信設定情報を示す部分1502が表示される。ここには、マスタとスレーブとの間の送受信データの定義と通信遅延時間、スレーブ間通信データの定義と通信遅延時間が表示される。また、選択されたスレーブコントローラのスレーブ用プログラムを示す部分1503には、スレーブ用プログラムの一覧を示すテーブル1503aが表示され、この中から一つのプログラムを選択し、表示ボタン(図中、「View」と表記)1503bをクリックすると、別のプログラム表示画面(図示せず)が表示され、プログラムの内容が確認することが出来る。
以上に詳細に述べたように、本発明の実施形態によれば、制御対象機器の動作を行うに当って許容される遅延時間を指定した制御プログラムから、この許容される遅延時間を超過しないように、スレーブコントローラが実行すべきスレーブ用プログラムを分離すると共に、スレーブ用プログラムをスレーブコントローラが実行するに当たって必要なスレーブ間通信設定情報を生成するプログラム解析手段と、スレーブコントローラのスレーブ用プログラム実行手段を設けたことで、マスタコントローラの演算能力やネットワークの通信速度を増大させることなく、システムの応答性を向上するモーションコントローラが提供されることとなる。
1…マスタコントローラ、1a…表示・入力部、1b…通信設定部、1c…マスタ・スレーブ間通信設定情報記憶部、1d…マスタ用通信部、1e…プログラム編集部、1f…制御プログラム記憶部、1g…プログラム解析部、1h…スレーブ間通信設定情報記憶部、1i…スレーブ用通信設定部、1j…スレーブ用プログラム記憶部、1k…スレーブ用プログラム転送部、1m…マスタ用プログラム記憶部、1n…マスタ用プログラム実行部、2…スレーブコントローラ、2a…通信設定部、2b…通信設定情報記憶部、2c…スレーブ用通信部、2d…プログラム転送部、2e…スレーブ用プログラム記憶部、2f…スレーブ用コマンド実行部、2g…スレーブ用プログラム実行部、2h…デバイス制御部、2i…制御対象機器、3…ネットワーク

Claims (7)

  1. マスタコントローラと少なくとも一つのスレーブコントローラとを、ネットワークを用いて接続して構成され、複数の制御対象機器に対する入出力操作又は制御処理を実行するモーションコントローラであって、
    前記マスタコントローラは:
    前記制御対象機器の動作を行うに当たって許容される遅延時間が指定された制御プログラムを入力し、前記許容される遅延時間を超過しないように前記制御プログラムから前記スレーブコントローラが実行すべきスレーブ用プログラムを分離すると共に、前記分離されたスレーブ用プログラムを前記スレーブコントローラが実行するに当たって必要なスレーブ間通信設定情報を生成するプログラム解析手段と;
    前記制御プログラムから前記スレーブ用プログラムを分離した後に残るマスタ用プログラムを実行するマスタ用プログラム実行手段と;
    前記スレーブ用プログラムを前記スレーブコントローラに対して前記ネットワークを経由して転送するスレーブ用プログラム転送手段と;
    マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を前記スレーブコントローラに対して前記ネットワークを経由して転送するスレーブ間通信設定手段と;そして、
    前記ネットワークを経由した前記スレーブコントローラとの間の通信制御を実行するマスタ用通信手段とを備えており、
    前記スレーブコントローラは:
    前記マスタコントローラから転送された前記スレーブ用プログラムを実行するスレーブ用プログラム実行手段と;
    前記マスタコントローラから前記ネットワークを経由して送信され、前記スレーブコントローラで受信されるスレーブ用コマンドおよび前記スレーブ用プログラム実行手段から発行されるスレーブ用コマンドを実行するスレーブ用コマンド実行手段と;
    前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を記憶するスレーブ用通信設定手段と;そして、
    前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報に基づいて前記ネットワークを経由した前記マスタコントローラとの間及び他の前記スレーブコントローラとの間の通信制御を実行するスレーブ用通信手段とを備えていることを特徴とするモーションコントローラ。
  2. 前記請求項1に記載したモーションコントローラにおいて、前記制御プログラムは、状態遷移図の形式を用いて記述されており、各状態を示すステップにおいて実行すべきコマンドを記述すると共に、前記ステップの終了条件および前記終了条件が成立してから次のステップが実行されるまでの許容される遅延時間を明示的に記述していることを特徴とするモーションコントローラ。
  3. 前記請求項1に記載したモーションコントローラにおいて、前記マスタコントローラのプログラム解析手段は、前記制御プログラムに記述された前記制御対象機器の動作を行うにあたり許容される遅延時間の情報を取得し、前記許容される遅延時間が前記マスタコントローラの制御周期よりも大きい場合には、前記制御対象機器の動作を前記マスタ用プログラムの中で実行し、前記許容される遅延時間が前記マスタコントローラの制御周期よりも小さい場合には、前記制御対象機器を直接駆動する前記スレーブコントローラの中の前記スレーブ用プログラムの中で実行するように、前記制御プログラムから前記マスタ用プログラムと前記スレーブ用プログラムを生成し、更に、前記スレーブ用プログラムで他の前記スレーブコントローラの入出力情報を参照する場合は、前記スレーブコントローラ間の通信を行うことにより前記入出力情報を取得するための前記スレーブ間通信設定情報を生成することを特徴とするモーションコントローラ。
  4. 前記請求項1に記載したモーションコントローラにおいて、前記プログラム解析手段は、前記制御プログラムに記述された前記制御対象機器の動作を行うにあたり許容される遅延時間の情報を取得し、前記許容される遅延時間が前記スレーブコントローラ間の通信を行っても実現不可能な場合には、前記許容される遅延時間の指定が不正であることを示すエラーメッセージを出力することを特徴とするモーションコントローラ。
  5. 前記請求項1に記載したモーションコントローラにおいて、前記モーションコントローラの初期設定時には、前記スレーブ用通信設定手段により、前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報を、前記ネットワークを経由して前記スレーブコントローラに転送し、さらに、前記スレーブ用プログラム転送手段により、前記スレーブ用プログラムを前記スレーブコントローラに転送することを特徴とするモーションコントローラ。
  6. 前記請求項1に記載したモーションコントローラにおいて、前記モーションコントローラのプログラム実行時には、前記マスタコントローラでは、前記マスタ用プログラム実行手段により、前記マスタ用プログラムを実行し、前記スレーブコントローラに対してコマンドを送信するとともに、前記スレーブコントローラからのステータス情報を受信し、前記スレーブコントローラでは、前記スレーブ間通信設定情報に基づいて他の前記スレーブコントローラの入出力情報を取得し、前記スレーブ用プログラム実行手段により、前記スレーブ用プログラムを実行して、この実行状況を示すステータス情報を前記マスタコントローラに対して送信することを特徴とするモーションコントローラ。
  7. 前記請求項1に記載したモーションコントローラにおいて、前記モーションコントローラに接続される表示・入力手段において、前記マスタコントローラに関しては、前記マスタ・スレーブ間通信設定情報の入力と、前記制御プログラムの編集と、前記プログラム解析手段の実行と、前記マスタ用プログラムの確認とを可能とし、前記スレーブコントローラに関しては、前記マスタ・スレーブ間通信設定情報および前記スレーブ間通信設定情報の確認と、前記スレーブ用プログラムの確認とを可能とすることを特徴とするモーションコントローラ。
JP2012550618A 2010-12-28 2010-12-28 モーションコントローラ Expired - Fee Related JP5553910B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/073680 WO2012090291A1 (ja) 2010-12-28 2010-12-28 モーションコントローラ

Publications (2)

Publication Number Publication Date
JPWO2012090291A1 JPWO2012090291A1 (ja) 2014-06-05
JP5553910B2 true JP5553910B2 (ja) 2014-07-23

Family

ID=46382441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012550618A Expired - Fee Related JP5553910B2 (ja) 2010-12-28 2010-12-28 モーションコントローラ

Country Status (4)

Country Link
US (1) US9459617B2 (ja)
EP (1) EP2660670A4 (ja)
JP (1) JP5553910B2 (ja)
WO (1) WO2012090291A1 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6358088B2 (ja) * 2012-03-15 2018-07-18 オムロン株式会社 制御装置、情報処理装置、制御方法、コンピュータ読取可能な記録媒体、およびプログラム
JP6167532B2 (ja) * 2013-01-25 2017-07-26 オムロン株式会社 制御装置および制御装置の動作方法
CN103425106B (zh) * 2013-08-08 2015-12-23 华南理工大学 一种基于Linux的EtherCAT主/从站控制系统及方法
JP5619330B1 (ja) * 2014-03-06 2014-11-05 三菱電機株式会社 安全制御システム及び安全制御機器
JP2015210751A (ja) * 2014-04-30 2015-11-24 パナソニック デバイスSunx株式会社 プログラマブルコントローラ、制御方法及び制御プログラム
JP6284043B2 (ja) * 2015-12-25 2018-02-28 横河電機株式会社 プロセス制御システム
JP6717026B2 (ja) 2016-04-19 2020-07-01 オムロン株式会社 制御装置、中継装置、制御装置の制御方法、中継装置の制御方法、制御プログラム、および記録媒体
JP6356736B2 (ja) * 2016-06-29 2018-07-11 ファナック株式会社 コントローラシステムおよび制御方法
JP6977265B2 (ja) 2017-01-27 2021-12-08 オムロン株式会社 マスタースレーブ制御システム、およびマスタースレーブ制御システムの制御方法
WO2018158917A1 (ja) * 2017-03-02 2018-09-07 三菱電機株式会社 制御装置、表示装置、制御システム、および処理負荷表示方法
US20190056710A1 (en) * 2017-08-16 2019-02-21 Aerotech, Inc. Positioning System, Method, And Stage Serial Interface Board
JP6965785B2 (ja) * 2018-02-15 2021-11-10 オムロン株式会社 制御システム、スレーブ装置制御部、制御方法およびプログラム
JP6962229B2 (ja) 2018-02-15 2021-11-05 オムロン株式会社 中央制御装置、制御方法およびプログラム
JP6473917B1 (ja) 2018-06-22 2019-02-27 ソフトサーボシステムズ株式会社 モーション制御プログラム、モーション制御方法及びモーション制御装置
KR102371662B1 (ko) 2018-06-22 2022-03-08 모벤시스 주식회사 모션 제어 프로그램, 모션 제어 방법 및 모션 제어 장치
US11392103B2 (en) 2018-06-22 2022-07-19 Soft Servo Systems, Inc. Motion control program, motion control method, and motion control device
JP7172853B2 (ja) * 2019-05-22 2022-11-16 オムロン株式会社 制御装置、ネットワークシステム、ネットワークシステムの制御方法及び制御プログラム
JP7423920B2 (ja) * 2019-07-03 2024-01-30 オムロン株式会社 制御システム、設定装置およびコンピュータプログラム
TW202224383A (zh) * 2020-12-08 2022-06-16 日商發那科股份有限公司 機器人控制裝置、機器人控制系統及機器人控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06175859A (ja) * 1992-12-09 1994-06-24 Toshiba Corp プロセッサ応用装置
US6009454A (en) * 1994-09-30 1999-12-28 Allen-Bradley Company, Llc Multi-tasking operation system for industrial controller
JP2004078895A (ja) * 2002-06-17 2004-03-11 Sanyo Electric Co Ltd 分散制御システムおよび分散制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3444146B2 (ja) * 1997-06-25 2003-09-08 三菱電機株式会社 通信制御装置
DE19928517C2 (de) * 1999-06-22 2001-09-06 Pilz Gmbh & Co Steuerungssystem zum Steuern von sicherheitskritischen Prozessen
JP2002006912A (ja) 2000-06-27 2002-01-11 Yaskawa Electric Corp モーションコントローラ
JP4338354B2 (ja) * 2001-05-21 2009-10-07 オムロン株式会社 スレーブ
US20030230998A1 (en) * 2002-06-17 2003-12-18 Sanyo Electric Co., Ltd., Moriguchi-Shi, Japan Distributed control system and distributed control method
ATE360233T1 (de) * 2002-09-16 2007-05-15 Bosch Gmbh Robert Verfahren und rechnersystem zum betreiben von mindestens zwei miteinander verbundenen steuergeräten
JP4178552B2 (ja) * 2003-07-24 2008-11-12 株式会社安川電機 マスター・スレーブ同期通信方式
US7532637B2 (en) * 2004-03-11 2009-05-12 Omron Corporation Synchronous controller
JP5434230B2 (ja) * 2009-04-22 2014-03-05 ソニー株式会社 無線通信装置、無線通信システム、無線通信方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06175859A (ja) * 1992-12-09 1994-06-24 Toshiba Corp プロセッサ応用装置
US6009454A (en) * 1994-09-30 1999-12-28 Allen-Bradley Company, Llc Multi-tasking operation system for industrial controller
JP2004078895A (ja) * 2002-06-17 2004-03-11 Sanyo Electric Co Ltd 分散制御システムおよび分散制御方法

Also Published As

Publication number Publication date
JPWO2012090291A1 (ja) 2014-06-05
US9459617B2 (en) 2016-10-04
US20130282148A1 (en) 2013-10-24
EP2660670A1 (en) 2013-11-06
WO2012090291A1 (ja) 2012-07-05
EP2660670A4 (en) 2018-03-07

Similar Documents

Publication Publication Date Title
JP5553910B2 (ja) モーションコントローラ
JP4807475B1 (ja) 演算ユニット、出力制御方法、およびプログラム
JP4752984B1 (ja) Plcのcpuユニット、plc用のシステムプログラムおよびplc用のシステムプログラムを格納した記録媒体
US10496079B2 (en) Control device and control method
JP6626240B2 (ja) コントローラ
CN110456707B (zh) 控制装置
EP2672384A1 (en) Cpu of plc, system program for plc, and recording medium storing system program for plc
JP6299064B2 (ja) 制御装置、制御方法、およびプログラム
JP6729746B2 (ja) 制御装置
JP6741924B1 (ja) 分散モータ制御システム、モータ制御装置、及び分散モータ制御方法
JP2016194830A (ja) 制御装置
JPH04290102A (ja) サーボ機構への情報伝送装置
US9568905B2 (en) CPU of PLC, system program for PLC, and recording medium storing system program for PLC
US11855907B2 (en) Robot control system and control method
WO2019171845A1 (ja) 制御装置および制御システム
US20190033834A1 (en) Slave device, industrial network system, and method of controlling slave device
JP2019077011A (ja) スレーブ装置、マスター装置、および産業用ネットワークシステム
JP2005173849A (ja) 自動機械制御システム
WO2012124145A1 (ja) 演算ユニット、支援装置、支援プログラム、支援プログラムを格納した記憶媒体、および、支援装置における動作方法
JP2006313559A (ja) 数値制御工作機械設備の運転方法
CN114365048B (zh) 数控装置
JP2007241744A (ja) モーションコントローラとその指令方法
JP2012194955A (ja) 支援装置、表示制御方法、およびプログラム
JP2009251782A (ja) プログラマブルコントローラの高速化方法等
JP2005196427A (ja) コンポーネント化制御システム

Legal Events

Date Code Title Description
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: 20140507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140527

R150 Certificate of patent or registration of utility model

Ref document number: 5553910

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees