JP5218421B2 - 制御システム - Google Patents

制御システム Download PDF

Info

Publication number
JP5218421B2
JP5218421B2 JP2009541007A JP2009541007A JP5218421B2 JP 5218421 B2 JP5218421 B2 JP 5218421B2 JP 2009541007 A JP2009541007 A JP 2009541007A JP 2009541007 A JP2009541007 A JP 2009541007A JP 5218421 B2 JP5218421 B2 JP 5218421B2
Authority
JP
Japan
Prior art keywords
command
control
standby
control command
unit
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
JP2009541007A
Other languages
English (en)
Other versions
JPWO2009063565A1 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2009063565A1 publication Critical patent/JPWO2009063565A1/ja
Application granted granted Critical
Publication of JP5218421B2 publication Critical patent/JP5218421B2/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/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/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
    • 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/33343Each slave stores communication program to be used by master, exchangeability
    • 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/33347Master sends servo address, speed, kind of interpolation to slave

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Selective Calling Equipment (AREA)
  • Programmable Controllers (AREA)
  • Control Of Multiple Motors (AREA)
  • Numerical Control (AREA)

Description

本発明は、複数の被制御装置の制御を同時に開始する制御システム、制御方法、マスター装置、制御装置に関するものである。
従来、装置間の通信を行うための方法として、シリアル通信とパラレル通信が知られている。複数の信号線によって同時に複数ビットのデータの送受信を行うパラレル通信に対して、シリアル通信は1本の信号線によって1ビットずつデータの送受信を行う。この違いによりシリアル通信はパラレル通信よりも単純な構造によって、より長い距離間で通信することができるという利点がある。
なお、本発明の関連ある従来技術として、各々が対応する機器を制御する複数の子局に各子局で用いるための制御データと起動信号を出力することにより、上記複数の子局を同時起動するようにした子局同時起動方法が知られている(例えば、特許文献1参照)。
特開平7−75357号公報
しかしながら、1:nのシリアル通信において、複数の装置を制御するためには、送信先を順に切替えながら動作させるため、1つの装置に対する通信に必要な時間の遅れの後に、次の装置に対して通信を行う必要がある。以下、図20及び図21を用いて、シリアル通信の問題点を説明する。
図20は従来のシリアル通信による制御システムを示す図であり、図21は従来のシリアル通信による制御システムにおけるマスター装置の動作を示すフローチャートである。
図20に示すように従来のシリアル通信による制御システムは、作業装置1と作業装置1に対して作業を指示するマスター装置2とこれらを接続するシリアルケーブル3とを備えるものである。作業装置1は何らかの機能を有する先端部1aと、先端部1aをXYZの矢印で示す三軸方向に移動させるためのモータ1x〜1zとを備えるものである。また、モータ1x〜1zには図示しない制御装置が接続され、マスター装置2はこれらスレーブ装置としての制御装置に対して動作命令(コマンド)を送信するものである。また、三軸をそれぞれ動かす場合、図示しないモータ1x〜1zを制御する装置に対して動作命令(制御コマンド)を送信するマスター装置2は図21に示すような処理を行う。
まず、マスター装置2はモータ1xの制御装置へのコマンドを送信し(S801)、モータ1xの制御装置からコマンドに対する応答を受信する(S802)。次に、マスター装置2はモータ1yの制御装置へのコマンドを送信し(S803)、モータ1yの制御装置からコマンドに対する応答を受信する(S804)。次に、マスター装置2はモータ1zの制御装置へのコマンドを送信し(S804)、モータ1zの制御装置からコマンドに対する応答を受信する(S805)。
上述のように作業装置1はそれぞれの軸が同時には動作せずに、動作させる軸が変わる度に通信に必要な時間を挟んで順番で動作する。また、モータ1x〜1zの制御装置には、予めそれぞれ固有のアドレスであるセレクションアドレス(Selection address)が割り当てられており、モータ1x〜1zそれぞれの制御装置は図17に示すそれぞれのコマンドに付加されたセレクションアドレスと自身に割り当てられたセレクションアドレスが一致するかどうかを判定し、両者が一致する場合にコマンドを実行する。
このようにモータ1x〜1y間で時間差が生じることにより、先端部1aに意図された曲線や直線の軌跡を描かせることができないという問題がある。また、モータに限らず制御される装置を緊急停止させたい場合、それぞれの装置の制御装置それぞれに対して繰り返し同じコマンドを送信しなくてはならないという問題がある。また、制御される装置の数に比例して、最後に起動される装置が起動される時間が増加するという問題がある。
また、特許文献1に記載の技術は、複数の子局(制御装置)に制御装置が制御する機器(被制御機器)を同報通信によって同時起動させる技術であるが、同報通信によって、制御装置が被制御機器を動作させるための制御コマンドと同時起動要求を複数の制御装置に対して送信しているために、安価な低速通信においては、起動を要求されてから実際に制御装置が被制御機器を動作させるまでに時間がかかってしまう。また、1つの子局のみを起動させる場合にも常に同報通信による起動信号が必要になるため、単局動作が比較的多い場合に不利になる。
本発明は上述した問題点を解決するためになされたものであり、被制御装置の同時起動と単独起動の切り替えを含むシステムの構成の変化に柔軟に対応でき、比較的低速な通信を用いた場合でも同時起動及び単独起動にかかる遅延時間を最小にできる制御システム、制御方法、マスター装置、制御装置を提供することを目的とする。
上述した課題を解決するため、制御システムは、ネットワークを介して接続された複数のスレーブ装置のそれぞれに対して、前記スレーブ装置に前記被制御装置を制御させる制御コマンドと少なくとも二値以上に設定されるフラグとを送信する第1送信部と、前記複数のスレーブ装置に対して、前記第1送信部により送信された制御コマンドに基づく制御を前記複数のスレーブ装置に同時に開始させる制御開始コマンドを送信する第2送信部とを備えるマスター装置と、前記マスター装置より送信された制御コマンドとフラグとを受信する受信部と、前記受信部により受信されたフラグが特定の値に設定されている場合に前記受信部により受信された制御コマンドを記憶部に保存する制御コマンド保存部と、前記マスター装置より送信された制御開始コマンドを受信し、該制御開始コマンドをトリガとして前記記憶部に保存された制御コマンドに基づく前記被制御装置の制御を開始する第1制御開始部とを備えるスレーブ装置とを備える。
また、制御方法は、ネットワークを介してマスター装置に接続された複数のスレーブ装置により被制御装置を制御することができる方法であって、前記複数のスレーブ装置のそれぞれに対して、前記スレーブ装置に前記被制御装置を制御させる制御コマンドと少なくとも二値以上に設定されるフラグとをマスター装置側から送信する第1送信ステップと、前記第1送信ステップにより送信された制御コマンドとフラグとを前記スレーブ装置側で受信する第1受信ステップと、前記第1受信ステップにより受信されたフラグが特定の値に設定されている場合に前記第1受信ステップにより受信された制御コマンドを前記スレーブ装置側の記憶部に保存する制御コマンド保存ステップと、前記複数のスレーブ装置に対して、前記第1送信ステップにより送信された制御コマンドに基づく制御を前記複数のスレーブ装置に同時に開始させる制御開始コマンドをマスター装置側から送信する第2送信ステップと、前記第2送信ステップにより送信された制御開始コマンドを受信し、該制御開始コマンドをトリガとして前記記憶部に保存された制御コマンドに基づく前記被制御装置の制御を前記スレーブ装置側で開始する第1制御開始ステップとを実行する。
また、マスター装置は、ネットワークを介して接続された複数のスレーブ装置のそれぞれに対して、前記スレーブ装置に被制御装置を制御させる制御コマンドと、少なくとも二値以上に設定され、該値が特定の値に設定されることにより前記スレーブ装置に前記制御コマンドに基づく前記被制御装置の制御の実行を待機させるフラグとを送信する第1送信部と、前記複数のスレーブ装置に対して、前記第1送信部により送信され、前記特定の値に設定されたフラグにより前記被制御装置の制御の実行を待機させられた複数のスレーブ装置に前記第1送信部により送信された制御コマンドに基づく前記被制御装置の制御を同時に開始させる制御開始コマンドを送信する第2送信部とを備える。
また、制御装置は、ネットワークを介して接続されたマスター装置より送信された被制御装置を制御する制御コマンドと少なくとも二値以上に設定されるフラグとを受信する受信部と、前記受信部により受信されたフラグが特定の値に設定されている場合に前記受信部により受信された制御コマンドを記憶部に保存する制御コマンド保存部と、前記マスター装置より送信された制御開始コマンドを受信し、該制御開始コマンドをトリガとして前記記憶部に保存された制御コマンドに基づく前記被制御装置の制御を開始する第1制御開始部とを備える。
実施の形態1に係る制御システムの構成を示す図である。 実施の形態1に係る制御システムの他の構成を示す図である。 実施の形態1に係るパーソナルコンピュータの構成を示すブロック図である。 実施の形態1に係るパーソナルコンピュータの動作を示すフローチャートである。 実施の形態1に係る制御装置の構成を示すブロック図である。 パーソナルコンピュータから制御装置へ送信される信号を示す図である。 制御装置からパーソナルコンピュータへ送信される信号を示す図である。 コマンド解析部の動作を示すフローチャートである。 実行判断結果応答処理の動作を示すフローチャートである。 実行判断処理の動作を示すフローチャートである。 ハードウェアトリガ受信部の動作を示すフローチャートである。 駆動制御部の動作を示すフローチャートである。 位置制御コマンドに基づいて制御されるモータによる移動速度と時間の関係を示すグラフである。 実施の形態2に係るパーソナルコンピュータの動作を示すフローチャートである。 実施の形態2に係るコマンド解析部の動作を示すフローチャートである。 実施の形態3に係る制御システムの構成を示す図である。 実施の形態3に係る制御装置の構成を示す図である。 実施の形態3に係る制御システムの動作例を示す図である。 本実施の形態3に係る制御装置の他の動作例を示す図である。 従来のシリアル通信による制御システムを示す図である。 従来のシリアル通信による制御システムにおけるマスター装置の動作を示すフローチャートである。
以下、本発明の実施の形態の例について図面を参照しつつ説明する。
実施の形態1.
まず、本実施の形態に係る制御システムの構成について説明する。図1は、本実施の形態に係る制御システムの構成を示す図であり、図2は、本実施の形態に係る制御システムの他の構成を示す図である。
本実施の形態に係る制御システムは、パーソナルコンピュータ10(マスター装置)、制御装置20a〜20n(スレーブ装置)、モータ30a〜30n(被制御装置)、ドライバ40、レシーバ50、ハードウェアスイッチ60(出力装置)により構成される。また、パーソナルコンピュータ10とそれぞれの制御装置20a〜20nはRS−485ケーブル70によってマルチポイント接続されている。
パーソナルコンピュータ10は、制御装置20a〜20nに対して、モータ30a〜30nを制御するためのコマンドを送信するものである。また、制御装置20a〜20nはパーソナルコンピュータ10より送信されたデータを解釈し、モータ30a〜30nを駆動させるものである。また、モータ30a〜30nは制御装置20a〜20nによって駆動されるものであり、制御装置20a〜20nにより制御されるものであれば、例えば、LEDなど他の装置であっても構わない。
なお、本実施の形態は、モータ30a〜30nを制御することによって、ネジを締める装置を所定の位置へ所定の速度で移動させるものとし、モータ30a〜30nはその動作により、それぞれ特定の軸移動またはネジ締めを行うものとする。
また、ハードウェアスイッチ60は、ONとOFFを切り替えることができるものであり、接続された制御装置20a〜20nに対してOFF時にはFALSE信号を送信し、ON時にはTRUE信号(二値以上に設定される信号)を送信するものである。なお、ハードウェアスイッチ60は、例えばそれぞれのモータ30a〜30nに備え付けられたセンサであっても構わない。また、本実施の形態においては全ての制御装置20a〜20nにハードウェアスイッチ60が接続されているが、例えば特定の制御装置20aに対してのみ接続されていても良い。
また、RS−485ケーブル70は、シリアル方式により通信を行うためのケーブルであり、パーソナルコンピュータ10とそれぞれの制御装置20a〜20nを接続するものである。なお、この接続において、パーソナルコンピュータ10と制御装置20a〜20nを接続できるものであれば他のケーブルであって良く、異なる種類のネットワークであっても構わない。
また、ドライバ40は、RS−485ケーブル70を駆動するドライバICであり、図示しないENABLE端子を備え、ENABLE端子がTRUEの場合は接続された機器のデータをRS−485ケーブルへ出力することができ、ENABLE端子がFALSEの場合は出力をハイインピーダンスとして、RS−485ケーブルを他局に開放するものである。また、レシーバ50はRS−485ケーブルの差動信号をTTL(Transistor Transistor Logic)レベルに変換して接続された機器に入力するICである。
また、制御装置20a〜20nのそれぞれに対して装置固有のアドレスであるセレクションアドレス(Selection address)が割り当てられていると共に、全ての制御装置に共通のアドレスであるオールリスンアドレス(All listen address)が割り当てられている。また、制御装置20a及び制御装置20bに対して特定の複数の制御装置に共通のアドレスであるグループリスンアドレス(Group listen address)が割り当てられている。
また、制御装置20a〜20nは、送信された制御コマンドに基づく制御を待機するかどうかを判断するためのフラグとしてソフトウェアトリガ待機フラグ(二値以上に設定されるフラグ)と、制御を待機させられた場合にどの信号をトリガとして起動するかを判断するためのフラグとしてトリガフラグを保持している。また、パーソナルコンピュータ10は、制御装置20a〜20nに対して、モータ30a〜30nを制御するための制御コマンドと共にソフトウェアトリガ待機フラグ値を制御装置20a〜20nに予め送信し、制御装置20a〜20bは後述する特定のソフトウェアトリガ待機フラグ値が送信された場合は動作を待機させる。そして、パーソナルコンピュータ10はオールリスンアドレスまたはグループリスンアドレスにより全ての制御装置20a〜20nに起動のトリガとなるコマンドを送信することによって、送信されたアドレスと自己のアドレスが一致する制御装置にモータを同時起動させることができる。また、ハードウェアスイッチ60からの信号をトリガとして複数の制御装置にそれぞれが制御するモータを同時起動させることができる。
なお、本実施の形態において、パーソナルコンピュータ10から送信される待機させられた制御を開始させるトリガとしてのコマンドをソフトウェアトリガコマンドとし、ハードウェアスイッチ60から送信されるトリガとしての信号をハードウェアトリガとする。また、ドライバ40及びレシーバ50は、パーソナルコンピュータ10及び制御装置20a〜20nのそれぞれに内蔵されているものとする。また、セレクションアドレスはアルファベット大文字A〜ZのASCIIコードとし、オールリスンアドレスはセレクションアドレスとは異なるASCIIコードとして*(アスタリスク)とし、グループリスンアドレスはセレクションアドレス及びオールリスンアドレスと異なるASCIIコードとしてそれぞれのグループに固有の数字とする。また、図1に示す制御システムにおいて、パーソナルコンピュータ10とそれぞれの制御装置20a〜20nはRS−485ケーブル70によってマルチポイント接続されているが、図2に示すようにパーソナルコンピュータ10とそれぞれの制御装置20a〜20nの接続形態はマルチドロップ接続であっても構わない。
次に、パーソナルコンピュータの構成について説明する。図3はパーソナルコンピュータの構成を示すブロック図である。なお、説明上、パーソナルコンピュータ10には制御装置20aのみが接続されているものとする。
図3に示すように、パーソナルコンピュータ10はドライバ40、レシーバ50、送受信部101(第1送信部、第2送信部、第3送信部)、制御部102(第1送信部、第2送信部、第3送信部)を備えている。送受信部101は、制御装置20aに対してドライバ40を介して各種コマンド及びソフトウェアトリガ待機フラグ値を送信し、また、レシーバ50を介して送信したコマンドに対する応答を受信するものである。また、制御部102は送受信部101を制御するものである。
次に、パーソナルコンピュータの動作について説明する。図4はパーソナルコンピュータの動作を示すフローチャートである。
まず、制御部102は、送受信部101にそれぞれの制御装置、例えば制御装置20aに対して制御コマンドを送信させ(S101、第1送信ステップ)、その制御コマンドに対する応答を受信させ(S102)、送信すべき全ての制御装置のそれぞれに制御コマンドが送信されたかどうかを判断する(S103)。
送信すべき全ての制御装置のそれぞれに制御コマンドが送信された場合(S103,YES)、制御部102は、オールリスンアドレスまたはグループリスンアドレスによって、接続された全ての制御装置20a〜20nまたは特定の複数の制御装置20a及び20bに対して、ソフトウェアトリガコマンドを送信する(S104、第2送信ステップ)。
また、送信すべき全ての制御装置のそれぞれに制御コマンドが送信されていない場合(S103,NO)、制御部102は、再度送受信部101にそれぞれの制御装置、例えば制御装置20bに対して制御コマンドを送信させる(S101)。
次に、本実施の形態に係る制御装置の構成について説明する。図5は本実施の形態に係る制御装置の構成を示すブロック図である。また、図6はパーソナルコンピュータから制御装置へ送信される信号を示す図であり、図7は制御装置からパーソナルコンピュータへ送信される信号を示す図である。なお、図1及び図2に示す複数の制御装置はそれぞれ同じ構成とし、図5は一例として制御装置20aの構成を示す。
本実施の形態に係る制御装置20aは、ドライバ40、レシーバ50、通信制御部201(受信部)、記憶部202、アドレス選択スイッチ203、増幅部204、コマンド解析部205(制御コマンド保存部、第1制御開始部)、ハードウェアトリガ受信部206(第2制御開始部)、駆動制御部207(第1制御開始部、第2制御開始部)を備える。
通信制御部201は、ハードウェア部分において調歩同期方式などの通信制御を行ない、パーソナルコンピュータ10からレシーバ50を介して送信された信号を受信し、受信した信号への応答としてドライバ40を介して信号をパーソナルコンピュータ10に送信するものである。また、通信制御部201は、割り込み処理ソフト部分において図6に示すような一連のコマンド電文に対してスタートコードを検出するとバッファリングを開始し、以降のアドレスコード(セレクションアドレス、オールリスンアドレスまたはグループリスンアドレス)、後述する各種コマンド、パラメータ1〜パラメータn、チェックサムコードなどを順次受信し、エンドコードを検出するとバッファリングを終了してコマンド解析部205へ通知する。また、コマンド解析部205によるコマンド解析の結果、実行可/不可の判定を行ない、図7に示すような応答コード(および必要に応じてステータス情報や位置情報などのデータやチェックサムコードが付加されることもある)が通信制御部201に渡されると、スタートコードとエンドコードを付加しドライバ40のENABLE端子をTRUEにしてパーソナルコンピュータ40へ一連の応答電文を返信する。なお、ENABLE端子は送信が完了するとFALSEに戻される。
受信するコマンドの種類の例として、ソフトウェアトリガコマンド、トリガ待機キャンセルコマンド、ハードウェアトリガ待機移行コマンド、トリガフラグ照会コマンド、動作状態照会コマンド、制御コマンドなどがあり、制御コマンドには、位置制御コマンド、速度制御コマンド、ねじ締め制御コマンドがある。また、制御コマンドにはONまたはOFFに設定されるソフトウェアトリガ待機フラグがパラメータとして付加されている。なお、各種コマンドと制御コマンドのパラメータについては後述する。
また、コマンド解析部205は上述したコマンド以外のコマンドを解析し、解析したコマンドが制御駆動部207により実行可能かを判断するものである。また、コマンド解析部205は制御コマンドとそのパラメータに基づく駆動制御の実行を駆動制御部207へ指示するものである。また、コマンド解析部205はソフトウェアトリガ待機フラグ及びトリガフラグを保持し、ソフトウェアトリガ待機フラグがONに設定されることにより、トリガフラグを特定の値に変更し、記憶部202に制御コマンドとそのパラメータを保存するものである。以下、トリガフラグについて説明する。
トリガフラグは、0〜3の整数に設定されるフラグであって、以下の4つの状態を条件として示すものである。本実施の形態において、0をトリガ待機無し状態とし、1をソフトウェアトリガ待機状態とし、2をハードウェアトリガ待機状態とし、3をトリガ発行済み状態とする。なお、それぞれの条件における動作については後述する。
また、ハードウェアトリガ受信部206は、ハードウェアスイッチ60からの信号であるハードウェアトリガを受信するものであり、トリガフラグがハードウェア待機状態の場合に、ハードウェアスイッチ60からハードウェアトリガを受信することにより、駆動制御部207へ記憶されていた制御コマンドとそのパラメータに基づく制御の開始を指示するものである。なお、ハードウェアトリガはハードウェアスイッチ60からのTRUE信号をきっかけとする。
また、駆動制御部207は、コマンド解析部205またはハードウェアトリガ受信部206より与えられたコマンドとそのパラメータに基づいて、モータ30aを駆動するものである。なお、パラメータは、例えばモータ30aを駆動することによって移動する装置であれば、目標位置、移動速度、加速度などを示す値である。また、駆動制御部207は、与えられたパラメータと実際のモータ30aの動作が一致するようにフィードバック制御を行っても良い。また、駆動制御部207は、モータ30aが動作中であることを示すTRUE、停止中であることを示すFALSEに設定される動作ステータスを出力するものである。
また、増幅部204はモータ30aを駆動するために電力を増幅するためのものであり、記憶部202はコマンドとそのパラメータを保存するためのものである。また、アドレス選択スイッチ203は、制御システムの管理者が制御装置20aのセレクションアドレス及びグループリスンアドレスを設定するためのスイッチである。
次に、制御装置のコマンド解析部の動作について説明する。図8はコマンド解析部の動作を示すフローチャートである。
まず、コマンド解析部205は、通信制御部201を介してパーソナルコンピュータ10より送信された受信データを取得し、受信データに含まれるアドレスが自己の保持するアドレス(オールリスンアドレス、グループリスンアドレスまたはセレクションアドレスのいずれか)と一致するかどうか、つまり、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
通知された受信データに含まれるアドレスが自己の保持するアドレスと一致する場合(S201,YES)、コマンド解析部205は、受信データに含まれるアドレスがセレクションアドレスかどうかを判断する(S202)。
アドレスがセレクションアドレスである場合(S202,YES)、コマンド解析部205は、コマンドがトリガフラグ照会コマンドかどうかを判断する(S203)。
コマンドがトリガフラグ照会コマンドではない場合(S203,NO)、コマンド解析部205は、コマンドが動作ステータス照会コマンドかどうかを判断する(S204)。
コマンドが動作ステータス照会コマンドではない場合(S204,NO)、コマンド解析部205は、コマンドが位置決め制御コマンドかどうかを判断する(S205)。
コマンドが制御コマンドである場合(S205,YES,受信ステップ)、コマンド解析部205は、制御コマンドにパラメータとして付加されたソフトウェアトリガ待機フラグがONかどうかを判断する(S206,制御コマンド保存ステップ)。
ソフトウェアトリガ待機フラグがONである場合(S206,YES)、コマンド解析部205は、トリガフラグを1、つまりソフトウェアトリガ待機状態に変更し(S207)、コマンドとそのパラメータを記憶部202に保存して、パーソナルコンピュータ10に通信制御部201を介して応答を送信し(S208,制御コマンド保存ステップ)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
一方、ソフトウェアトリガ待機フラグがONではない場合、つまりソフトウェアトリガ待機フラグがOFFである場合(S206,NO)、コマンド解析部205は、トリガフラグを0、つまりトリガ待機無し状態に変更し(S209)、駆動制御部207に対して、コマンドとそのパラメータに基づく駆動制御の実行を指示してパーソナルコンピュータ10に通信制御部201を介して応答を返信し(S210)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS205の判断において、コマンドが制御コマンドではない場合(S205,NO)、コマンド解析部205は、後述する実行判断結果応答処理を実行し(S213)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS204の判断において、コマンドが動作ステータス照会コマンドである場合(S204,YES)、コマンド解析部205は、駆動制御部207の動作ステータスを参照して返信し(S212)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS203の判断において、コマンドがトリガフラグ照会コマンドである場合(S203)、コマンド解析部205は、通信制御部201を介してトリガフラグの値をパーソナルコンピュータ10に返信し(S211)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS202の判断において、アドレスがセレクションアドレスではない場合(S202,NO)、コマンド解析部205は、コマンドがハードウェアトリガ待機移行コマンドかどうかを判断する(S214)。
コマンドがハードウェアトリガ待機移行コマンドではない場合(S214,NO)、コマンド解析部205は、コマンドがトリガ待機キャンセルコマンドかどうかを判断する(S215)。
コマンドがトリガ待機キャンセルコマンドではない場合(S215,NO)、コマンド解析部205は、コマンドがソウトウェアトリガ発行コマンドかどうかを判断する(S216)。
コマンドがソフトウェアトリガコマンドではない場合(S216,NO)、コマンド解析部205は、後述する実行判断処理を実行し(S217)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
一方、コマンドがソフトウェアトリガコマンドである場合(S216,YES,第1制御開始ステップ)、コマンド解析部205は、トリガフラグが1であるかどうか、つまりソフトウェアトリガ待機状態であるかどうかを判断する(S221)。
トリガフラグが1である場合(S221,YES)、コマンド解析部205は、トリガフラグを3、つまりトリガ発行済み状態に変更し(S222)、記憶部202に保存された制御コマンドとそのパラメータに基づくモータ30aの制御を駆動制御部207に開始させ(S223,第1制御開始ステップ)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
一方、トリガフラグが1ではない場合(S221,NO)、コマンド解析部205は、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS215の判断において、コマンドがトリガ待機キャンセルコマンドである場合(S215,YES)、コマンド解析部205は、トリガフラグを0、つまりトリガ待機無し状態に変更し(S220)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
また、ステップS214の判断において、コマンドがハードウェアトリガ移行コマンドである場合(S214,YES)、コマンド解析部205は、トリガフラグが1であるかどうか、つまりソフトウェアトリガ待機状態であるかどうかを判断する(S218)。
トリガフラグが1である場合(S218,YES)、コマンド解析部205は、トリガフラグを2、つまりハードウェアトリガ待機状態に変更し(S219)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
上述したように、パーソナルコンピュータ10は特定のセレクションアドレスを持つ駆動制御部207にモータ30aを制御させるための制御コマンドとそのパラメータとして付加されたソフトウェアトリガ待機フラグを予め送信する。そして、コマンド解析部205はONに設定されたソフトウェアトリガ待機フラグを受信すると、トリガフラグを1に変更し、制御コマンドとそのパラメータを記憶部202に保存する。その後、コマンド解析部205はソフトウェアトリガコマンドを受信すると、トリガフラグをトリガ発行済みに変更し、記憶部202に保存された制御コマンドとそのパラメータに基づいて駆動制御部207に対して実行指示を出す。
これらの動作によって、パーソナルコンピュータ10はソフトウェアトリガコマンドを制御装置20a〜20nに対して送信するだけで、それぞれの制御装置は予め受信したそれぞれ異なる制御コマンドとそのパラメータに基づいて同時に起動し、それぞれのモータを制御することができる。また、制御コマンドとそのパラメータは予め制御装置20a〜20nのそれぞれに送信されているため、同時起動を要求するコマンド、つまりソフトウェアトリガコマンドのデータ量は小さくなり、パーソナルコンピュータ10と制御装置20a〜20nが比較的低速な通信により接続されていたとしても、パーソナルコンピュータ10がソフトウェアトリガコマンドを送信してから短時間で制御装置20a〜20nを同時に起動させることができ、制御装置20a〜20nは、パーソナルコンピュータ10に受信した制御コマンドに対する応答を返すことができる。
また、特定のタイミングで制御を開始させる必要がある場合、ソフトウェトリガコマンドを送信してから制御装置20a〜20nが制御を開始させるまでの遅延時間は常に一定であるため、特定のタイミングよりも遅延時間分だけ早くソフトウェアトリガコマンドを送信することによって、正確なタイミングで制御を開始させることができる。
次に、実行判断結果応答処理について説明する。図9は実行判断結果応答処理の動作を示すフローチャートである。なお、この処理は図8におけるステップS213での処理である。
まず、コマンド解析部205は、トリガフラグ照会コマンド、動作ステータス照会コマンド、制御コマンド以外のコマンドを解析し(S301)、解析されたコマンドが実行可能かどうかを判断する(S302)。
コマンドが実行可能である場合(S302,YES)、コマンド解析部205は、通信制御部201を介して、正常応答をパーソナルコンピュータ10に対して返信し(S303)、コマンドを実行する(S304)。
一方、コマンドが実行不可能である場合(S302,NO)、コマンド解析部205は、通信制御部201を介して、拒絶応答をパーソナルコンピュータ10に対して返信する(S305)。
次に、実行判断処理について説明する。図10は実行判断処理の動作を示すフローチャートである。なお、この処理は図8におけるステップS217での処理である。
まず、コマンド解析部205は、ハードウェアトリガ待機移行コマンド、トリガ待機キャンセルコマンド、ソフトウェアトリガコマンド以外のコマンドを解析し(S401)、解析されたコマンドが実行可能かどうかを判断する(S402)。
コマンドが実行可能である場合(S402,YES)、コマンド解析部205は、コマンドを実行する(S403)。
一方、コマンドが実行不可能である場合(S403,NO)、コマンド解析部205は、コマンドを実行せずに実行判断処理を終了する。
上述のように、制御装置20aは、セレクションアドレスによって送信されたコマンドに関しては、そのコマンドがコマンド解析部205によって実行可能かどうかをパーソナルコンピュータ10に応答することができる。
次に、制御装置のハードウェアトリガ受信部の動作について説明する。図11はハードウェアトリガ受信部の動作を示すフローチャートである。
まず、ハードウェアトリガ受信部206は、コマンド解析部205のトリガフラグが2、つまりハードウェアトリガ待機状態かどうかを判断する(S501)。
ハードウェアトリガ待機状態である場合(S501,YES)、ハードウェアトリガ受信部206は、ハードウェアトリガが検知されたかどうか、つまりハードウェアスイッチ60からの信号がFALSEからTRUEに変更されたかを判断する(S502)。
ハードウェアトリガが検出された場合、つまり、ハードウェアスイッチ60からTRUE信号が入力された場合(S502,YES,第2制御開始ステップ)、ハードウェアトリガ受信部206は、コマンド解析部205のトリガフラグを3、つまりトリガ発行済み状態に変更し、記憶部202に記憶されている制御コマンドとそのパラメータに基づく制御を駆動制御部207に開始させ(S504,第2制御開始ステップ)、再度、コマンド解析部205のトリガフラグが2、つまりハードウェアトリガ待機状態かどうかを判断する(S501)。
一方、ハードウェアトリガが検出されなかった場合、つまり、ハードウェアスイッチ60からFALSE信号が入力された場合(S502,NO)、ハードウェアトリガ受信部206は、再度、コマンド解析部205のトリガフラグが2、つまりハードウェアトリガ待機状態かどうかを判断する(S501)。
また、ステップS501において、コマンド解析部205がハードウェアトリガ待機状態ではない場合(S501,NO)、ハードウェアトリガ受信部206は、再度、コマンド解析部205のトリガフラグが2、つまりハードウェアトリガ待機状態かどうかを判断する(S501)。
上述のように、コマンド解析部205のトリガフラグが予めハードウェアトリガ待機状態にされ、ハードウェアトリガ受信部がハードウェアスイッチ60よりハードウェアトリガ、つまりTRUE信号を受信することによって、ハードウェアスイッチ60に接続された制御装置20a〜20nは同時に駆動制御部207にモータ30a〜30nの制御を開始させることができる。これらの動作により、通信時間の遅れなどが入らないため、ハードウェアトリガ条件の発生と同時に起動を掛けることができる。また、パーソナルコンピュータ10以外からの指示、例えばセンサの情報などの外部の情報に基づいて起動を掛けることができる。また、各制御装置20a〜20nに異なるセンサを接続することで、それぞれ異なるタイミングでモータ30a〜30nを起動させることができる。また、ハードウェアトリガを入力する装置として、押しボタンスイッチを接続することによって、同時起動のタイミングを人が決定することができる。また、同時起動の条件が全て整った後に、ハードウェアトリガ待機移行コマンドが発行されることで、トリガ入力を有効状態に設定できる。
次に、制御装置の駆動制御部の動作について説明する。図12は駆動制御部の動作を示すフローチャートである。また、図13は位置制御コマンドに基づいて制御されるモータによる移動速度と時間の関係を示すグラフである。なお、この図12において、駆動制御部はコマンド解析部またはハードウェアトリガ受信部から制御コマンドとそのパラメータをすでに通知されているものとする。なお、説明上、異なるモータによってなされるべき制御コマンドであっても、全てモータ30aによって実行されるものとする。
まず、駆動制御部207は、通知された制御コマンドが位置制御コマンドであるかどうかを判断する(S601)。
通知された制御コマンドが位置制御コマンドである場合(S601,YES)、駆動制御部207は、動作ステータスを動作中であることを示すTRUEに設定し(S602)、目標位置、指示速度、指示加速度を示す位置制御コマンドのパラメータに基づいて図13に示すような台形速度曲線を生成し、モータ30aを駆動させ(S603)、モータ30aにより移動される所定の部位、例えばねじ締め部、が目標位置に到達したかどうかを判断する(S604)。
所定の部位が目標位置に到達した場合(S604,YES)、駆動制御部207は、コマンド解析部205のトリガフラグが3かどうか、つまり、トリガ発行済み状態かどうかを判断する(S605)。
トリガフラグがトリガ発行済み状態である場合(S605,YES)、駆動制御部207は、コマンド解析部205のトリガフラグを0、つまりトリガ待機無し状態に変更し(S606)、動作ステータスをFALSEに変更する(S607)。
一方、コマンド解析部205がトリガ発行済み状態ではない場合(S605,NO)駆動制御部207は、動作ステータスをFALSEに変更する(S607)。
また、ステップS604の判断において、所定の装置が目標位置に到達していない場合(S604,NO)、駆動制御部207は、モータ30aを駆動させ続ける(S603)。
また、ステップS601の判断において、通知された制御コマンドが位置制御コマンドではない場合(S601,NO)、駆動制御部207は、通知された制御コマンドが速度制御コマンドかどうかを判断する(S608)。
通知されたコマンドが速度制御コマンドである場合(S608,YES)、駆動制御部207は、動作ステータスを動作中であることを示すTRUEに設定し(S609)、指示速度、指示加速度を示す速度制御コマンドのパラメータに基づいて、すでに駆動されているモータ30aの速度を加減し(S610)、モータ30aにより移動される所定の部位の移動速度が指示速度に到達したかどうかを判断する(S611)。
所定の装置の移動速度が指示速度に到達した場合(S611,YES)、駆動制御部207は、コマンド解析部205のトリガフラグが3かどうか、つまり、トリガ発行済み状態かどうかを判断する(S612)。
コマンド解析部205がトリガ発行済み状態である場合(S612,YES)、駆動制御部207は、コマンド解析部205のトリガフラグを0、つまりトリガ待機無し状態に変更し(S613)、動作ステータスをFALSEに変更する(S614)。
一方、コマンド解析部205がトリガ発行済み状態ではない場合(S612,NO)駆動制御部207は、動作ステータスをFALSEに変更する(S614)。
また、ステップS611の判断において、所定の部位の移動速度が目標速度に到達していない場合(S611,NO)、駆動制御部207は、モータ30aの駆動速度の加減を継続する(S610)。
また、ステップS608の判断において、通知された制御コマンドが速度制御コマンドではない場合(S608,NO)、駆動制御部207は、通知された制御コマンドがねじ締め制御コマンドかどうかを判断する(S615)。
通知されたコマンドがねじ締め制御コマンドである場合(S615,YES)、駆動制御部207は、動作ステータスを動作中であることを示すTRUEに設定し(S616)、最終締め付けトルク、ビット回転速度を示すねじ締め制御コマンドのパラメータに基づいて、ねじを締めるためのドライバを回転させるモータ30aを駆動し(S617)、ねじ締めが完了したかどうかを判断する(S618)。
ねじ締めが完了した場合(S618,YES)、駆動制御部207は、コマンド解析部205のトリガフラグが3かどうか、つまり、トリガ発行済み状態かどうかを判断する(S619)。
コマンド解析部205がトリガ発行済み状態である場合(S619,YES)、駆動制御部207は、コマンド解析部205のトリガフラグを0、つまりトリガ待機無し状態に変更し(S620)、動作ステータスをFALSEに変更する(S621)。
一方、コマンド解析部205がトリガ発行済み状態ではない場合(S619,NO)駆動制御部207は、動作ステータスをFALSEに変更する(S621)。
また、ステップS618の判断において、ねじ締めが完了していない場合(S618,NO)、駆動制御部207は、ねじを締めるためのドライバを回転させるモータ30aを駆動し続ける(S617)。
また、ステップS615の判断において、通知された制御コマンドが速度制御コマンドではない場合(S615,NO)、駆動制御部207は、モータ30aの駆動制御を終了する。
以上の動作によって、パーソナルコンピュータ10は全ての制御装置20a〜20nにモータ30a〜30nを同時に起動させ、また、特定の複数の制御装置20a及び制御装置20bにモータ30a及び30bを同時に起動させることができる。
実施の形態2.
上述の実施の形態1において、セレクションアドレスに基づいて、それぞれの制御装置に対して別個に送信される制御コマンドにパラメータとしてソフトウェアトリガ待機フラグ値を付加し、制御装置に制御コマンドを保存させ、ソフトウェアトリガコマンドがパーソナルコンピュータから送信されるまで、制御装置に保存させた制御コマンドの実行を待機させた。本実施の形態においては、後述するように、オールリスンアドレスまたはグループリスンアドレスに基づいて、制御装置を待機させるコマンドを複数の制御装置に対して送信する。以下、実施の形態1と異なる構成及び動作について図を用いて説明する。
本実施の形態に係るパーソナルコンピュータの動作において、制御部が送受信部に後述するコマンド待機コマンドを制御装置に対して送信させる点が実施の形態1と異なる。なお、コマンド待機コマンドは、次に送信する制御コマンドを制御装置に待機させるコマンドである。図14は本実施の形態にかかるパーソナルコンピュータの動作を示すフローチャートである。なお、図14において、パーソナルコンピュータはオールリスンアドレスにより全ての制御装置にコマンド待機コマンドを送信するものとするが、グループリスンアドレスにより特定の制御装置にコマンド待機コマンドを送信しても良い。
まず、制御部102は、送受信部101にオールリスンアドレスにより全ての制御装置20a〜20nに対してコマンド待機コマンドを送信させ(S701,第3送信ステップ)、制御装置20a〜20nのいずれかの制御装置に対して制御コマンドを送信させ(S702、第1送信ステップ)、その制御コマンドに対する応答を受信させ(S703)、全ての制御装置20a〜20nのそれぞれに制御コマンドが送信されたかどうかを判断する(S704)。
全ての制御装置20a〜20nのそれぞれに制御コマンドが送信された場合(S704,YES)、制御部102は、送受信部101にソフトウェアトリガコマンドを送信させる(S705、第2送信ステップ)。
また、全ての制御装置20a〜20nのそれぞれに制御コマンドが送信されていない場合(S704,NO)、制御部102は、再度送受信部101に制御装置20a〜20nのいずれかの制御装置に対して制御コマンドを送信させる(S702)。
次に、実施の形態1と異なるコマンド解析部の構成及び動作について説明する。本実施の形態に係る制御装置の構成において、コマンド解析部がコマンド実行待機フラグを保持している点が実施の形態1とは異なる。図15は本実施の形態に係るコマンド解析部の動作を示すフローチャートである。なお、図15における図8と同じ符号であるステップにおいて、本実施の形態に係るコマンド解析部は実施の形態1に係るコマンド解析部と同じ処理を行うものとし、実施の形態1とは異なる処理とそれに直接関わる処理以外はその説明を省略する。また、本実施の形態において、パーソナルコンピュータはコマンド待機コマンドを制御装置に対して送信するものとする。また、後述するコマンド待機フラグはTRUEまたはFALSEに設定されるものとする。
ステップS215において、コマンド解析部205は、コマンドがトリガ待機キャンセルコマンドであるかどうかを判断し(S215)、コマンドがトリガ待機キャンセルコマンドである場合(S215,YES)、コマンド解析部205は、トリガフラグを0、つまりトリガ待機無し状態に変更し(S220)、コマンド実行待機フラグをFALSEに変更する(S220a)。
一方、コマンドがトリガ待機キャンセルコマンドではない場合(S215,NO)、コマンド解析部205は、コマンドがコマンド待機コマンドかどうかを判断する(S215a)。
コマンドがコマンド待機コマンドである場合(S215a,YES)、コマンド解析部205は、コマンド待機フラグをTRUEに変更する。また、コマンドがコマンド待機コマンドではない場合(S215a,NO)、コマンド解析部205はコマンドがソフトウェアトリガコマンドかどうかを判断する(S216)。
また、ステップS221において、コマンド解析部205はトリガフラグが1かどうかを判断し、トリガフラグが1である場合(S221,YES)、コマンド解析部205はコマンド待機フラグをFALSEに変更する(S221a)。
また、ステップS205において、コマンド解析部205はコマンドが位置制御コマンドかどうかを判断し、コマンドが位置制御コマンドである場合(S205,YES)、コマンド解析部205はコマンド実行待機フラグがTRUEかどうかを判断する(S206a)。
コマンド実行待機フラグがTRUEである場合(S206a,YES)、コマンド解析部205は、トリガフラグを1、つまりソフトウェアトリガ待機状態に変更し(S207)、コマンドとそのパラメータを記憶部202に保存し(S208)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
一方、コマンド実行待機フラグがTRUEではない場合(S206a,NO)、コマンド解析部205は、トリガフラグを0、つまりトリガ待機無し状態に変更し(S209)、駆動制御部207に対して、コマンドとそのパラメータに基づく駆動制御の実行を指示してパーソナルコンピュータ10に通信制御部201を介して応答を返信し(S210)、再度、自己に対するコマンドを含む送信データが通信制御部201より通知されたかどうかを判断する(S201)。
上述のように、本実施の形態では、制御コマンドのパラメータとしてソフトウェアトリガ待機フラグの値を付加する代わりに、コマンド実行待機コマンドによって、予めコマンド実行待機フラグをTRUEに変更し、コマンド実行待機フラグがTRUEの場合に制御コマンド及びそのパラメータを記憶部202に保存する。そして、ソフトウェアトリガコマンドがオールリスンアドレスまたはグループリスンアドレスによって制御装置に送信されることによってそれぞれ異なる制御コマンドをそれぞれの制御装置に実行させることができる。この動作により、制御コマンドのパラメータとしてソフトウェアトリガ待機フラグを付加する必要がなくなる。また、コマンド実行待機コマンドはオールリスンアドレスまたはグループリスンアドレスによって送信されるため、各制御装置を個別に待機させる必要がない。
実施の形態3.
上述の実施の形態1及び実施の形態2において、制御装置20a〜20nはハードウェアスイッチ60から送信されるトリガとしての信号をハードウェアトリガとしたが、本実施の形態における制御装置20a〜20nはワイヤードORラインによる信号をハードウェアトリガとする。図16は、本実施の形態に係る制御システムの構成を示す図である。また、図17は、本実施の形態に係る制御装置の構成を示す図である。
本実施の形態における制御システムは、制御装置20a〜20nにハードウェアスイッチ60の代わりにワイヤードORライン80(監視部)が接続されている点が実施の形態1及び実施の形態2と異なる。制御装置20a〜20nはワイヤードORライン80に対して動作中であることを示す信号として負論理信号を出力し、ワイヤードORライン80は全ての制御装置20a〜20nの動作が完了することにより全ての制御装置20a〜20nにハードウェアトリガとしての信号を出力する。
具体的には、図17に示すように、駆動制御部207はモータ30aを駆動させている間は負論理信号としてLOWを出力し、モータ30aを駆動させていない間は負論理信号としてHIGHを出力する。また、ワイヤードORライン80は、制御装置20a〜20nのいずれかからの信号がLOW(真)である場合、OR演算値はLOWとなるため、ハードウェア受信部206にLOWを入力し、また、全ての制御装置20a〜20nからの信号がHIGH(偽)である場合は、OR演算値はHIGHとなるため、ハードウェア受信部206にHIGHを入力する。また、ハードウェア受信部206はワイヤードORライン80により入力されたHIGHをハードウェアトリガとする
次に、本実施の形態に係る制御システムの動作について説明する。図18は、本実施の形態に係る制御システムの動作例を示す図である。また、図19は、本実施の形態に係る制御装置の他の動作例を示す図である。なお、図18及び図19において、説明上、パーソナルコンピュータ10には制御装置20a〜20cが接続されているものとし、モータ30aは所定の装置をX軸方向に移動させるものとし、モータ30bは所定の装置をY軸方向に移動させるものとし、モータ30cは所定の装置をZ軸方向に移動させるものとする。また、パーソナルコンピュータはハードウェアトリガ待機移行コマンドを送信する直前にはソフトウェア待機フラグをONとした位置決め制御コマンドを送信しているものとする。
図18に示すように、制御装置20a〜20cは、全ての制御装置20a〜20cがモータを駆動せず、HIGHを出力していること、つまり、ワイヤードORライン80がHIGHである場合、ハードウェアトリガ待機移行コマンドによるハードウェアトリガ待機状態をすぐに解除して予め送信された制御コマンドをすぐに実行する。また、制御装置20a〜20cは、制御装置20a〜20cのいずれかがモータを駆動し、LOWを出力していること、つまり、ワイヤードORライン80がLOWである場合、ワイヤードORライン80がHIGHになるまで、ハードウェアトリガ待機移行コマンドによるハードウェアトリガ待機状態を解除しない。また、ワイヤードORライン80がHIGHになると、パーソナルコンピュータ10は、ハードトリガ待機移行コマンド発行後はステータス照会コマンドを制御装置20a〜20cに定期的に(あるいは他の処理がある時は適切な間隔をおいて)送信し、トリガフラグを参照してハードウェアトリガ待機状態が解除されたことを確認して、次に実行させる制御コマンドを送信する。
また、図19に示すように、制御装置20a〜20cが、モータの駆動開始からモータの減速開始までの間にLOWを出力することで、全ての制御装置20a〜20cがモータの減速を開始することをハードウェアトリガとしてハードウェア待機状態にある次の制御コマンドの実行を開始することができる。
上述のように、全ての制御装置20a〜20cによるモータ駆動の終了、または減速開始のような所定のタイミングにおける信号の変化をハードウェアトリガとすることで、全軸の動作完了または減速開始で直ちに次の起動を掛けることができる。この方法によれば、最も高速処理が必要な部分ではハードウエアトリガにより動作を切り替えられるため、低速で安価な省配線のシリアル通信を用いた場合でも高速で無駄のない動作が実現できる。
更に、マスター装置を構成するコンピュータにおいて上述した各ステップを実行させるプログラムを、マスタープログラムとして提供することができる。上述したプログラムは、コンピュータにより読取り可能な記録媒体に記憶させることによって、判定装置を構成するコンピュータに実行させることが可能となる。ここで、上記コンピュータにより読取り可能な記録媒体としては、ROMやRAM等のコンピュータに内部実装される内部記憶装置、CD−ROMやフレキシブルディスク、DVDディスク、光磁気ディスク、ICカード等の可搬型記憶媒体や、コンピュータプログラムを保持するデータベース、或いは、他のコンピュータ並びにそのデータベースや、更に回線上の伝送媒体をも含むものである。
以上説明したように、本発明を適用する事で、比較的低速な通信によって接続される制御装置により複数の被制御装置を同時に起動させることができる。

Claims (9)

  1. マスター装置と複数のスレーブ装置がネットワークを介して接続され、固有のスレーブ装置を示す固有アドレスと制御コマンドとを含む制御コマンド電文を前記マスター装置から前記ネットワーク内に同報通信し、前記複数のスレーブ装置を制御する制御システムであって、
    前記マスター装置は、
    前記制御コマンド電文に含まれる制御コマンドの実行を待機させる待機情報を前記複数のスレーブ装置に送信する待機情報送信部と、
    前記複数のスレーブ装置のうち少なくとも2つ以上のスレーブ装置を示す共通アドレスと前記待機情報により待機させた制御コマンドを実行開始させる実行開始コマンドとを含む実行開始電文を前記複数のスレーブ装置に送信する実行開始電文送信部とを備え、
    前記複数のスレーブ装置のそれぞれは、
    前記待機情報を受信する待機情報受信部と、
    前記待機情報に基づいて、自身のトリガフラグを待機状態に変更するトリガフラグ変更部と、
    前記待機情報に基づいて、前記制御コマンドを記憶部に保存する制御コマンド保存部と、
    前記実行開始電文を受信する実行開始電文受信部と、
    前記実行開始電文に含まれる共通アドレスが自身に割り当てられた共通アドレスと一致し、且つ前記自身のトリガフラグが待機状態である場合、前記実行開始電文に含まれる実行開始コマンドに基づいて、前記記憶部に記憶された制御コマンドを実行する実行開始部とを備えることを特徴とする制御システム。
  2. マスター装置と複数のスレーブ装置がネットワークを介して接続され、固有のスレーブ装置を示す固有アドレスと制御コマンドとを含む制御コマンド電文を前記マスター装置から前記ネットワーク内に同報通信し、前記複数のスレーブ装置を制御する制御システムであって、
    前記マスター装置は、
    前記制御コマンド電文に含まれる制御コマンドの実行を待機させる待機情報を前記複数のスレーブ装置に送信する待機情報送信部と、
    前記複数のスレーブ装置のうち少なくとも2つ以上のスレーブ装置を示す共通アドレスと前記待機情報とは異なる信号待機情報とを含む信号待機電文を前記複数のスレーブ装置に送信する信号待機電文送信部とを備え、
    前記複数のスレーブ装置のそれぞれは、
    前記待機情報を受信する待機情報受信部と、
    前記待機情報に基づいて、自身のトリガフラグを待機状態に変更するトリガフラグ変更部と、
    前記待機情報に基づいて、前記制御コマンドを記憶部に保存する制御コマンド保存部と、
    前記信号待機電文を受信する信号待機電文受信部と、
    前記信号待機電文に含まれる共通アドレスが自身に割り当てられた共通アドレスと一致する場合、前記信号待機情報に基づいて、前記自身のトリガフラグ、前記マスター装置とは異なる、スレーブ装置に接続された機器により出力された所定の信号を待機する信号待機状態に変更する第2トリガフラグ変更部と、
    前記トリガフラグが信号待機状態であり、且つ前記複数のスレーブ装置に前記所定の信号が入力された場合、前記記憶部に記憶された制御コマンドを実行する実行開始部を備えることを特徴とする制御システム。
  3. マスター装置と複数のスレーブ装置がネットワークを介して接続され、固有のスレーブ装置を示す固有アドレスと制御コマンドとを含む制御コマンド電文を前記マスター装置から前記ネットワーク内に同報通信し、前記複数のスレーブ装置を制御する制御システムであって、
    前記マスター装置は、
    前記制御コマンド電文に含まれる制御コマンドの実行を待機させる待機情報を前記複数のスレーブ装置に送信する待機情報送信部と、
    前記複数のスレーブ装置のうち少なくとも2つ以上のスレーブ装置を示す共通アドレスと前記待機情報により待機させた制御コマンドの実行をキャンセルさせるトリガ待機キャンセルコマンドとを含むキャンセル電文を前記複数のスレーブ装置に送信するキャンセル電文送信部とを備え、
    前記複数のスレーブ装置のそれぞれは、
    前記待機情報を受信する待機情報受信部と、
    前記待機情報に基づいて、前記制御コマンドを記憶部に保存する制御コマンド保存部と、
    前記待機情報に基づいて、自身のトリガフラグを、前記マスター装置から実行開始コマンドを受信するまで前記記憶部に保存された制御コマンドの実行を待機する待機状態に変更するトリガフラグ変更部と、
    前記キャンセル電文を受信するキャンセル電文受信部と、
    前記キャンセル電文に含まれる共通アドレスが自身に割り当てられた共通アドレスと一致する場合、前記トリガ待機キャンセルコマンドに基づいて前記記憶部に保存された制御コマンドの実行をキャンセルするキャンセル部とを備えることを特徴とする制御システム。
  4. 請求項1乃至請求項3のいずれかに記載の制御システムにおいて、
    前記待機情報は、前記制御コマンド電文に付加されることを特徴とする制御システム。
  5. 請求項1乃至請求項3のいずれかに記載の制御システムにおいて、
    前記待機情報送信部は、前記待機情報を前記共通アドレスが付加された待機電文として前記制御コマンド電文に先立って送信し、
    前記トリガフラグ変更部は、前記待機電文に含まれる共通アドレスが自身の共通アドレスと一致する場合、前記待機情報に基づいて、前記自身のトリガフラグを待機状態に変更し、
    前記制御コマンド保存部は、前記待機電文に含まれる共通アドレスが自身の共通アドレスと一致する場合、前記待機電文以降に受信した制御コマンド電文に含まれる制御コマンドを前記記憶部に保存することを特徴とする制御システム。
  6. 請求項1乃至請求項5のいずれかに記載の制御システムにおいて、
    前記共通アドレスは、前記複数のスレーブ装置全てに共通したアドレスであることを特徴とする制御システム。
  7. 請求項1乃至請求項5のいずれかに記載の制御システムにおいて、
    前記共通アドレスは、グループ化された特定の複数のスレーブ装置に対して割り当てられたアドレスであることを特徴とする制御システム。
  8. 請求項2に記載の制御システムにおいて、
    前記所定の信号は、前記制御コマンドの実行による動作が前記複数のスレーブ装置において全て完了したことを示す信号であることを特徴とする制御システム。
  9. 請求項2に記載の制御システムにおいて、
    前記所定の信号は、前記制御コマンドの実行による各スレーブ装置が搭載するモータの加速減速動作に関し、前記複数のスレーブ装置においてすべて減速開始したことを示す信号であることを特徴とする制御システム。
JP2009541007A 2007-11-16 2007-11-16 制御システム Expired - Fee Related JP5218421B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/072258 WO2009063565A1 (ja) 2007-11-16 2007-11-16 制御システム、制御方法、マスター装置、制御装置

Publications (2)

Publication Number Publication Date
JPWO2009063565A1 JPWO2009063565A1 (ja) 2011-03-31
JP5218421B2 true JP5218421B2 (ja) 2013-06-26

Family

ID=40638421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009541007A Expired - Fee Related JP5218421B2 (ja) 2007-11-16 2007-11-16 制御システム

Country Status (3)

Country Link
US (1) US8295949B2 (ja)
JP (1) JP5218421B2 (ja)
WO (1) WO2009063565A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006256275A (ja) * 2005-03-18 2006-09-28 Canon Inc 装置および画像形成装置
US8122159B2 (en) 2009-01-16 2012-02-21 Allegro Microsystems, Inc. Determining addresses of electrical components arranged in a daisy chain
US8461782B2 (en) * 2009-08-27 2013-06-11 Allegro Microsystems, Llc Linear or rotational motor driver identification
EP2444864A1 (de) * 2010-10-22 2012-04-25 Siemens Aktiengesellschaft Einrichtung und Verfahren zur Reduzierung des Energieverbrauchs einer Maschine aus der Automatisierungstechnik
EP2761172B1 (en) * 2011-09-28 2017-01-11 Vestas Wind Systems A/S Multi bandwidth voltage controllers for a wind power plant
US9823628B2 (en) * 2013-01-11 2017-11-21 Tecan Trading Ag Laboratory system
JP6151072B2 (ja) * 2013-04-12 2017-06-21 京セラ株式会社 制御システム、制御装置、情報機器及び制御方法
EP3070565B1 (en) * 2013-11-14 2022-01-12 FUJI Corporation Servo controller
US9634715B2 (en) 2014-02-18 2017-04-25 Allegro Microsystems, Llc Signaling between master and slave components using a shared communication node of the master component
US9787495B2 (en) 2014-02-18 2017-10-10 Allegro Microsystems, Llc Signaling between master and slave components using a shared communication node of the master component
US9172565B2 (en) 2014-02-18 2015-10-27 Allegro Microsystems, Llc Signaling between master and slave components using a shared communication node of the master component
JP6901006B2 (ja) * 2017-11-17 2021-07-14 日本電気株式会社 制御装置、制御対象機器、制御システム、制御方法、制御対象機器の制御方法、制御装置のプログラム、および制御対象機器のプログラム
US10747708B2 (en) 2018-03-08 2020-08-18 Allegro Microsystems, Llc Communication system between electronic devices
CN111475432B (zh) * 2020-04-08 2022-06-07 北京中科银河芯科技有限公司 一种从机启动控制装置、单总线系统及其控制方法
JP2022109392A (ja) * 2021-01-15 2022-07-28 川崎重工業株式会社 ロボットシステム及びロボット制御方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08237769A (ja) * 1995-02-23 1996-09-13 Matsushita Electric Works Ltd 分散監視制御システム
JP2000330628A (ja) * 1999-05-19 2000-11-30 Toshiba Corp 分散型監視制御システム
JP2000358069A (ja) * 1999-06-15 2000-12-26 Mitsubishi Electric Corp 通信ネットワーク、および通信ネットワークを構成するスレーブ接続装置、マスタ接続装置、多重化装置ならびに中継装置
JP2001147706A (ja) * 1999-11-22 2001-05-29 Sony Corp アクチュエータ駆動制御方式、多軸機械装置、及びアクチュエータのための駆動制御装置
JP2001222308A (ja) * 2000-02-09 2001-08-17 Mitsubishi Electric Corp 数値制御システム
WO2002089419A1 (fr) * 2001-04-27 2002-11-07 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Appareil de communication multiplex destine a un vehicule

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727509B2 (ja) * 1985-04-06 1995-03-29 ソニー株式会社 機器内バスを利用した動作制御方法
JPS6272248A (ja) * 1985-09-25 1987-04-02 Hitachi Ltd デ−タ伝送システムの現用予備切替方法
US5032975A (en) * 1987-08-07 1991-07-16 Canon Kabushiki Kaisha Controller for automatic assembling apparatus
JP2829928B2 (ja) 1987-08-07 1998-12-02 キヤノン株式会社 自動機の制御装置
JPS6441902U (ja) * 1987-09-07 1989-03-13
JPH07110007B2 (ja) * 1990-05-28 1995-11-22 富士通株式会社 データ通信方式
JPH0493114A (ja) * 1990-08-07 1992-03-25 Brother Ind Ltd タッピング・マシン
JPH04300182A (ja) * 1991-03-26 1992-10-23 Toyoda Mach Works Ltd ロボット群制御装置
JPH04326834A (ja) * 1991-04-26 1992-11-16 Pioneer Electron Corp 車載用データ通信システム
JPH06245280A (ja) * 1993-02-15 1994-09-02 Mitsubishi Electric Corp 情報伝送装置
JP3346847B2 (ja) 1993-08-31 2002-11-18 株式会社日立製作所 子局同時起動方法
JP3282470B2 (ja) * 1995-11-08 2002-05-13 三菱電機株式会社 パソコンを用いた数値制御装置及びその制御方法
JP2000269988A (ja) * 1999-03-16 2000-09-29 Nec Saitama Ltd 同報通信データ転送システム
JP3577028B2 (ja) * 2001-11-07 2004-10-13 川崎重工業株式会社 ロボットの協調制御システム
JP3988559B2 (ja) * 2002-07-18 2007-10-10 オムロン株式会社 通信システム、通信装置及び通信制御方法
JP2004242031A (ja) * 2003-02-05 2004-08-26 Fuji Electric Fa Components & Systems Co Ltd 通信システム
JP2005014150A (ja) * 2003-06-26 2005-01-20 Yaskawa Electric Corp ロボットシステム
JP2005229322A (ja) * 2004-02-13 2005-08-25 Yaskawa Electric Corp マスタスレーブ同期通信システム
JP4300182B2 (ja) 2004-12-06 2009-07-22 株式会社日立製作所 プラズマ処理装置のメンテナンス方法
JP2007283593A (ja) * 2006-04-14 2007-11-01 Seiko Epson Corp 印刷媒体処理装置及びその搬送制御方法
KR100787220B1 (ko) * 2006-09-08 2007-12-21 삼성전자주식회사 읽기 동작 및 쓰기 동작이 동시에 가능한 디바이스를구비한 전자장치 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08237769A (ja) * 1995-02-23 1996-09-13 Matsushita Electric Works Ltd 分散監視制御システム
JP2000330628A (ja) * 1999-05-19 2000-11-30 Toshiba Corp 分散型監視制御システム
JP2000358069A (ja) * 1999-06-15 2000-12-26 Mitsubishi Electric Corp 通信ネットワーク、および通信ネットワークを構成するスレーブ接続装置、マスタ接続装置、多重化装置ならびに中継装置
JP2001147706A (ja) * 1999-11-22 2001-05-29 Sony Corp アクチュエータ駆動制御方式、多軸機械装置、及びアクチュエータのための駆動制御装置
JP2001222308A (ja) * 2000-02-09 2001-08-17 Mitsubishi Electric Corp 数値制御システム
WO2002089419A1 (fr) * 2001-04-27 2002-11-07 Mitsubishi Jidosha Kogyo Kabushiki Kaisha Appareil de communication multiplex destine a un vehicule

Also Published As

Publication number Publication date
US8295949B2 (en) 2012-10-23
US20100211190A1 (en) 2010-08-19
WO2009063565A1 (ja) 2009-05-22
JPWO2009063565A1 (ja) 2011-03-31

Similar Documents

Publication Publication Date Title
JP5218421B2 (ja) 制御システム
WO2012090291A1 (ja) モーションコントローラ
EP1564611A2 (en) Machine controller
JP4556220B2 (ja) データ伝送ブリッジ装置とそのコントロールチップ及びデータ伝送ブリッジ方法
CN101421082B (zh) 工业机器人系统的多输入控制
JP6915993B2 (ja) モータ作動制御システム、多軸機械装置、モータ作動制御方法
JP4980292B2 (ja) 異なる通信周期で複数のアンプと通信する数値制御システム
JP3203999B2 (ja) ロボットの制御装置
JP2009037387A (ja) ワイヤレスusbシステム、デバイスワイヤアダプタ及び有線usbデバイスの制御方法
JP4548613B2 (ja) サーボシステム
JP2005071086A (ja) モーションコントロールシステム
JP6629817B2 (ja) 制御システム、および、モータ制御方法
JP5102090B2 (ja) 制御装置及び制御装置の制御方法
JP2000324896A (ja) データ伝送システムおよび画像形成装置
EP1390856B2 (en) System and method for preloading a bus controller with command schedule
CN114362879B (zh) 编码器及编码器的通信控制方法
WO2023145362A1 (ja) ロボット制御システムおよびロボット制御システムを構成する方法
CN113400314B (zh) 一种机器人控制系统及机器人控制方法
US10635079B2 (en) Motor control device, control system, and motor control method
JP2010258811A (ja) 通信システム
WO2012151908A1 (zh) 驱动处理方法及装置
JP4654056B2 (ja) 通信装置、通信方法及び通信プログラム
JP2000112513A (ja) 位置決め制御装置
JP2016207169A (ja) モーションコントロールシステム
JP2023525457A (ja) 自律走行する車両、またはロボットの制御

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121029

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130218

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

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees