JP2005269879A - 制御システム - Google Patents
制御システム Download PDFInfo
- Publication number
- JP2005269879A JP2005269879A JP2004155065A JP2004155065A JP2005269879A JP 2005269879 A JP2005269879 A JP 2005269879A JP 2004155065 A JP2004155065 A JP 2004155065A JP 2004155065 A JP2004155065 A JP 2004155065A JP 2005269879 A JP2005269879 A JP 2005269879A
- Authority
- JP
- Japan
- Prior art keywords
- control
- time
- command
- timer
- detection
- 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.)
- Pending
Links
Images
Landscapes
- Programmable Controllers (AREA)
- Control Of Stepping Motors (AREA)
Abstract
【課題】上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間を補償しリアルタイム制御が可能な制御システムを提供すること。
【解決手段】この発明の制御システムは、第1のタイマによりカウントされる送信時刻を含むコマンドを送信する第1の制御手段(101)と、前記第1の制御手段から送信される前記コマンドを受信し、このコマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記コマンドの受信時刻とを比較して送受信の遅延時間を検出し、この遅延時間に基づき前記コマンドにより指定される制御を補正し、前記受信時刻に対応した補正制御を実行する第2の制御ユニット(104)とを備えている。
【選択図】 図6
【解決手段】この発明の制御システムは、第1のタイマによりカウントされる送信時刻を含むコマンドを送信する第1の制御手段(101)と、前記第1の制御手段から送信される前記コマンドを受信し、このコマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記コマンドの受信時刻とを比較して送受信の遅延時間を検出し、この遅延時間に基づき前記コマンドにより指定される制御を補正し、前記受信時刻に対応した補正制御を実行する第2の制御ユニット(104)とを備えている。
【選択図】 図6
Description
本発明は、例えば、多数のモータやセンサを含むユニット部、及びこのユニット部内のこれらモータやセンサを制御する制御コマンドを送信する主制御部により構成される制御システムに関する。
制御システムの一例として、紙葉類などの媒体を搬送する媒体搬送装置が知られている。媒体搬送装置は、媒体の分離や移動のための多数のパルスモータやアクチュエータを備えた複数のユニット部(搬送部、取込部、集積部)、及びこれらユニット部内のパスルモータやアクチュエータの動作を制御する制御コマンドを発行する主制御部により構成されている(特許文献1参照)。
特開2001−145392
例えば、上位CPUから制御コマンドの設定要求を受けた主制御部(上位制御装置)は、ユニット部に対して制御コマンドを送信する。これにより、ユニット部(下位制御装置)で制御コマンドに対応した動作が実行される。
ところが、主制御部とユニット部の間の通信では、遅延時間が発生することが知られており、この遅延時間は通信負荷に依存して変動する。このため、適当な遅延時間を規定することができず、リアルタイム制御を行なうことができないという問題があった。
また、主制御部が、複数台のユニット部に対して制御コマンドを送信し、これら複数台のユニット部を制御する場合には、遅延時間の影響からこれら複数台のユニット部の同期制御が難しいという問題があった。
本発明の目的は、上記課題を解決するためになされたものであり、上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間を補償し、リアルタイム制御が可能な制御システムを提供することにある。また、本発明の目的は、上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間の影響を受けることなく、複数台の下位制御装置の同期制御が可能な制御システムを提供することにある。
この発明の制御システムは、以下のように構成されている。
(1)この発明の制御システムは、第1のタイマによりカウントされる送信時刻を含むコマンドを送信する制御手段と、前記制御手段から送信される前記コマンドを受信し、このコマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記コマンドの受信時刻とを比較して送受信の遅延時間を検出し、この遅延時間に基づいて前記コマンドにより指定される制御内容を補正し、補正された制御内容を実行する制御ユニットとを備えている。
(2)この発明の制御システムは、第1のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出された検出データを含む送信データを送信する制御ユニットと、前記制御ユニットから送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出し、この遅延時間に基づいて前記送信データに含まれる前記検出データを補正する制御手段とを備えている。
(3)この発明の制御システムは、アクチュエータ制御コマンドを送信する第1の制御部と、前記第1の制御部とシリアル通信接続され、前記第1の制御部から送信される前記アクチュエータ制御コマンドに基づきアクチュエータを制御する第2の制御部とを備え、前記第1の制御部は、第1のタイマを有し、この第1のタイマによりカウントされる送信時刻を含み且つ初速度、加速度、等速時間、減速度、及び終速度を制御する複数の制御パラメータを含む前記アクチュエータ制御コマンドを前記第2の制御部へ送信し、前記第2の制御部は、前記第1のタイマに同期した第2のタイマを有し、前記第1の制御部から送信される前記アクチュエータ制御コマンドを受信し、このアクチュエータ制御コマンドに含まれる前記送信時刻と前記第2のタイマによりカウントされる前記アクチュエータ制御コマンドの受信時刻とを比較して送受信の遅延時間を検出し、この遅延時間に基づき前記アクチュエータ制御コマンドに含まれる加速度及び等速時間の制御パラメータを補正し、補正後の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積と補正前の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積とを一致させ、補正された加速度及び等速時間の制御パラメータを含む全ての制御パラメータに基づき前記受信時刻に対応した補正制御により前記アクチュエータを制御し、さらに前記第2のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出された前記アクチュエータの変位量を示す検出データを含む送信データを前記第1の制御部へ送信し、前記第1の制御部は、前記第2の制御部から送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出し、この遅延時間及び時間あたりの前記アクチュエータの変位量を示すデータに基づき前記送信データに含まれる前記検出データの前記受信時刻における変位量を推定し、推定された変位量を前記送信データに含まれる前記検出データへ加えて、前記受信時刻に対応した検出データへ補正する。
(4)この発明の制御システムは、動作開始時刻を含むコマンドを送信する制御手段と、前記制御手段から送信される前記コマンドを受信し、このコマンドに基づく動作を実行する複数の制御ユニットとを備え、前記制御ユニットの各々は、前記コマンドに含まれる前記動作開始時刻に到達したタイミングで前記コマンドにより指定される制御内容を実行する。
本発明によれば、上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間を補償し、リアルタイム制御が可能な制御システムを提供できる。また、本発明によれば、上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間の影響を受けることなく、複数台の下位制御装置の同期制御が可能な制御システムを提供できる。
以下、図面を参照し、本発明の実施形態について説明する。
図1は、この発明の一例の制御システムの概略構成を示す図である。図1に示すように、制御システムは、主制御部100A及びユニット部100Bを備えている。主制御部100Aは、コントロール用上位CPU101、及び通信マスタ側CPU102を備えており、コントロール用上位CPU101は、通信マスタ側CPU102に対して各種指示を出す。一方のユニット部100Bは、複数のスレーブ側CPU104(CPU#1、CPU#2、…、CPU#n)、及び各スレーブ側CPU104により制御されるモータユニット105M並びにセンサ105Sを備えている。
図1は、この発明の一例の制御システムの概略構成を示す図である。図1に示すように、制御システムは、主制御部100A及びユニット部100Bを備えている。主制御部100Aは、コントロール用上位CPU101、及び通信マスタ側CPU102を備えており、コントロール用上位CPU101は、通信マスタ側CPU102に対して各種指示を出す。一方のユニット部100Bは、複数のスレーブ側CPU104(CPU#1、CPU#2、…、CPU#n)、及び各スレーブ側CPU104により制御されるモータユニット105M並びにセンサ105Sを備えている。
上記した主制御部100Aとユニット部100Bはシリアルケーブル103で接続されており、通信マスタ側CPU102とスレーブ側CPU104によりシリアル通信が制御される。コントロール用上位CPUは、モータユニット105M並びにセンサ105Sに対する駆動を統括的に指令する。この指令値に従い、スレーブ側CPU104がモータユニット105M並びにセンサ105Sの駆動等の細かい制御を行なう。
第1に、制御コマンドの補正について説明する。本制御システムに適用されているモータユニット105Mは例えばパルスモータPMを含み、このパルスモータPMの制御には、例えば台形制御が採用される。また、この台形制御には、通常の台形制御及びリアルタイム台形制御の二つがある。図2は、通常の台形制御のコマンドフォーマットの一例、及びリアルタイム台形制御のコマンドのコマンドフォーマットの一例を示すとともに、これら台形制御結果の一例を示す図である。
通常の台形制御に適用される制御コマンドは、例えば初速度V0、終速度V1、等速回転時間T、加速度α、減速度βの5つの制御項目を含み、これら5つの制御項目に対応する5つの制御パラメータを含む。これに対して、リアルタイム台形制御では等速回転時間Tを与えず、加速コマンド及び減速コマンドにより実行される。つまり、リアルタイム台形制御に適用される制御コマンドには加速コマンド及び減速コマンドがあり、加速コマンドは初速度V0、加速度α、及び目標速度V1を含み、減速コマンドは減速度β及び終速度V0を含む。
以上をまとめると、通常の台形制御とリアルタイム台形制御は以下の通りである。
通常の台形制御:予め5つの制御パラメータ全てを与える制御方法
リアルタイム台形制御:任意のタイミングで加速コマンド及び減速コマンドを発行する制御方法
図3は、上位制御装置と下位制御装置の間で実行される通常の台形制御時に発生するディレイの影響を説明するための図である。図4は、上位制御装置と下位制御装置の間で実行されるリアルタイム台形制御時に発生するディレイの影響を説明するための図である。図3及び図4において、コントロール用上位CPU101からスレーブ側CPU104へ(通信マスタ側CPU102を介して)コマンドを発行した時刻をT0、スレーブ側CPU104がコマンド受信した時刻をT1と定義する。図3に示すように、通常の台形制御時にはディレイにより、タイミング誤差E1が発生する。また、図4に示すように、リアルタイム台形制御時にはディレイにより、位置誤差E2が発生する。
リアルタイム台形制御:任意のタイミングで加速コマンド及び減速コマンドを発行する制御方法
図3は、上位制御装置と下位制御装置の間で実行される通常の台形制御時に発生するディレイの影響を説明するための図である。図4は、上位制御装置と下位制御装置の間で実行されるリアルタイム台形制御時に発生するディレイの影響を説明するための図である。図3及び図4において、コントロール用上位CPU101からスレーブ側CPU104へ(通信マスタ側CPU102を介して)コマンドを発行した時刻をT0、スレーブ側CPU104がコマンド受信した時刻をT1と定義する。図3に示すように、通常の台形制御時にはディレイにより、タイミング誤差E1が発生する。また、図4に示すように、リアルタイム台形制御時にはディレイにより、位置誤差E2が発生する。
図3に示すタイミング誤差E1、及び図4に示す位置誤差E2の問題を解消するために、制御コマンド発行時にタイムスタンプを付加する。
まず、図5に示すように、初期化時に全てのユニットのタイマを同期させる。即ちコントロール用上位CPU101のタイマ101T、通信マスタ側CPU102のタイマ102T、及びスレーブ側CPU104のタイマ104Tを同期させる。各タイマ101T、102T、104Tの同期をとるときは、例えば本制御システムが無負荷状態のとき、コントロール用上位CPU101−スレーブ側CPU104の間のターンアラウンドタイムより無負荷時の回線の遅延時間を規定し、規定された遅延時間をもとに各タイマ101T、102T、104Tを同期させる。
上記した初期化シーケンス終了後、図6に示すように、コントロール用上位CPU101からのコマンド送信時に、コマンドのヘッダにタイムスタンプ(T0)を付加してコマンドを送信する。即ちコントロール用上位CPU101は、タイマ101Tによりカウントされる送信時刻(T0)を含み且つ複数の制御パラメータを含むコマンドを送信する。スレーブ側CPU104でコマンドが受信されたとき、スレーブ側CPU104のタイマ104Tによりカウントされるこのコマンドの受信時刻(T1)と、受信されたコマンドに含まれるタイムスタンプ、つまりコントロール用上位CPU101によりカウントされた送信時刻(T0)とを比較する。これにより、コントロール用上位CPU101−スレーブ側CPU104の送受信の遅延時間を検出することができる。つまり、送受信の遅延時間Tdは、Td=T1−T0と規定できる。
図4を参照して説明したように、遅延で発生する位置誤差により台形面積は小さくなる。そこで、図7に示すように、例えば、スレーブ側CPU104は、遅延時間に基づきコマンドに含まれる複数の制御パラメータのうちの加速度α及び等速時間Tを補正し、補正された制御パラメータを含む全ての制御パラメータにより定義される速度と時間の関係を示す台形面積と、補正前の全ての制御パラメータにより定義される速度と時間の関係を示す台形面積とを一致させる。スレーブ側CPU104は、このように補正された制御パラメータを含む全ての制御パラメータをモータドライバに設定し、コマンドの受信時刻に対応した補正制御を実行する。
コマンドの補正パターンは複数存在するが、上記説明した等速回転時間および加速度を補正する場合の補正式は、以下の通りである。
t1=t0+Td
α1=V1/(V1/α0−2Td)
t0[605]:等速回転時間(補正前)
t1[606]:等速回転時間(補正後)
α0[603]:加速度(補正前)
α1[604]:加速度(補正後)
図12は、上記説明した制御コマンドの補正を説明するためのコントロール用上位CPU101における処理及びスレーブ側CPU104における処理を示すフローチャートである。
α1=V1/(V1/α0−2Td)
t0[605]:等速回転時間(補正前)
t1[606]:等速回転時間(補正後)
α0[603]:加速度(補正前)
α1[604]:加速度(補正後)
図12は、上記説明した制御コマンドの補正を説明するためのコントロール用上位CPU101における処理及びスレーブ側CPU104における処理を示すフローチャートである。
図12に示すように、コントロール用上位CPU101は、コマンドを受信すると(ST11、YES)、受信したコマンドに送信時刻を付加し(ST12)、タイマ101Tによりカウントされる送信時刻(T0)を付加したコマンドをスレーブ側CPU104(ユニットCPU)へ送信する(ST13)。つまり、スレーブ側CPU104(ユニットCPU)へ送信されるコマンドには、複数の制御パラメータに加えて送信時刻が含まれている。
スレーブ側CPU104は、コントロール用上位CPU101から送信されるコマンドを受信し(ST21、YES)、コマンドに付加された送信時刻とタイマ104Tによりカウントされるコマンドの受信時刻(T1)との差を演算し、送受信の遅延時間を求める(ST22)。さらに、スレーブ側CPU104は、この遅延時間に基づいてコマンドに含まれる複数の制御パラメータのうちの加速度αと等速時間Tを補正し(ST23)、補正した制御パラメータを含む全ての制御パラメータでモータを起動する(ST24)。
第2に、センサデータの補正について説明する。図8に示すように、スレーブ側CPU104はモータユニット105Mを備え、モータユニット105MはパルスモータPM及びエンコーダECを備える。スレーブ側CPU104は、コントロール用上位CPU101から送信されるコマンドに基づき制御パラメータをモータドライバに設定し、パルスモータPMの駆動を制御する。このパルスモータPMの駆動は、エンコーダECにより検出される。つまり、エンコーダECは、パルスモータPMの回転軸RSの変位(変化)を検出する。例えば、回転軸RSは、120[rad/s]で回転する。スレーブ側CPU104は、エンコーダECにより検出された検出データ(センサデータ)をコントロール用上位CPU101へ送信する。
このとき、この検出データの送信の際にも、通信遅延時間が発生する。経時変化の影響が殆ど無いデータであれば問題はないが、パルスモータPMなどのアクチュエータのエンコーダは、ミリ秒(ms)のオーダーで反応させなくてはならない場合がある。
図9は、パルスモータPSの回転軸RSの変位(変化)を示す図である。上記したように、例えば、回転軸RSは120[rad/s]で回転しており、この回転軸RSの変位はエンコーダECにより検出されている。通信遅延時間の影響により、スレーブ側CPU104のタイマ104Tによりカウントされる検出時刻T2における回転軸RSの変位が3.5[rad]であっても、コントロール用上位CPU101のタイマ101Tによりカウントされる検出データの受信時刻T3における回転軸RSの変位は4.7[rad]となる。つまり、スレーブ側CPU104による検出データの検出時とコントロール用上位CPU101による検出データの受信時とでは、回転軸RSの変位量に1.2[rad]の誤差が生じている。
そこで、図10に示すように、パルスモータPM(アクチュエータ)の回転軸RSの変位量の検出データ(センサデータ)を送信する際に、スレーブ側CPU104はヘッダ情報としてタイマ104Tでカウントされた検出時刻のタイムスタンプを付加する。つまり、スレーブ側CPU104からコントロール用上位CPU101へ送信する送信データは、タイマ104Tによりカウントされた検出時刻(T2)を含み且つこの検出時刻にエンコーダECにより検出された検出データ(SE)を含む。
スレーブ側CPU104から送信された送信データを受信したコントロール用上位CPU101は、送信データに含まれるヘッダに付加されている検出時刻T2とコントロール用上位CPU101のタイマ101Tによりカウントされる受信時刻T3とを比較し、スレーブ側CPU104のコマンド履歴CMD(時間あたりの検出データの変位量を示すデータ)を用いて距離を積分し、積分値を検出データに加える。
例えば、図11に示すように、コマンド履歴が120[rad/s]、遅延時間T3=47[ms]、検出時刻T2=37[ms]であるとすると、受信時刻T3−検出時刻T2=遅延時間10[ms]となり、検出データ(センサデータ)が3.5[rad]のとき、現在の検出データ(補正検出データ)は、120[rad/s]×10[ms]+3.5[rad]=4.7[rad]となる。
図13は、上記説明したセンサデータの補正を説明するためのスレーブ側CPU104における処理及びコントロール用上位CPU101における処理を示すフローチャートである。
図13に示すように、スレーブ側CPU104は、エンコーダECにより読み取られたパルスモータPMの回転軸RSの変位量データを取得し(ST31)、タイマ104Tによりカウントされた検出時刻(T2)をこの変位量データに付加し(ST32)、これらを送信データとして上位装置へ送信する(ST33)。
これに対応して、コントロール用上位CPU101は、スレーブ側CPU104から送信された送信データ(センサデータ)を受信し(ST41、YES)、受信した送信データに含まれる検出時刻とタイマ101Tによりカウントされる受信時刻T3との差を演算し、遅延時間を求める(ST42)。コントロール用上位CPU101は、遅延時間に基づいて変位量データを補正する(ST43)。
上記説明したように、この発明によれば、以下の作用効果を得ることができる。
上位制御装置から下位制御装置へ送信する制御コマンドにタイムスタンプ(コマンド送信時刻)を付加することで、通信負荷に依存して変動する遅延による時間誤差及び位置誤差の補正が可能となり、下位制御装置に接続されたモータなどのアクチュエータのリアルタイム制御(コマンド受信時刻に対応した制御)が可能となる。
また、下位制御装置から上位制御装置へ送信する送信データにタイムスタンプ(アクチュエータの変位量の検出時刻)を付加することで、通信遅延の影響を受けているセンサデータの補正が可能となり、実時間でセンシングを行った場合と同等なデータをコントロール用上位CPU101は取得することが出来、クローズドループの制御系を組むことが出来る。
次に、他の実施形態について説明する。ここでは、上位制御装置及び下位制御装置などの複数制御部間の通信時に発生する通信遅延時間の影響を受けることなく、複数台の下位制御装置の同期制御が可能な制御システムについて説明する。
この実施形態で説明する制御システムの基本構成は、図5に示す通りである。つまり、主制御部100Aとユニット部100Bはシリアルケーブル103で接続されており、通信マスタ側CPU102とスレーブ側CPU104によりシリアル通信が制御される。コントロール用上位CPUは、モータユニット105M並びにセンサ105Sに対する駆動を統括的に指令する。この指令値に従い、スレーブ側CPU104がモータユニット105M並びにセンサ105Sの駆動等の細かい制御を行なう。また、コントロール用上位CPU101、通信マスタ側CPU102、スレーブ側CPU104は、夫々が、同期したタイマ101T、102T、104Tを保持している。
本制御システムでは、イベントが発生したときにモータユニット105Mなどのアクチュエータを動作させるイベントドリブン方式を採用している。イベントドリブン方式でリアルタイムにシステムを制御する場合、通信負荷の影響でディレイが変動すると、末端のスレーブ側ユニットにおいては、モータユニット105Mなどのアクチュエータの始動タイミングを同期制御できない。この問題を解決するために、本制御システムでは、以下のような制御を行なう。
例えば、図14に示すように、スレーブ側ユニット(スレーブ側CPU104(CPU#1))にセンサ105S(フォトインタラプタ)が接続され、別のスレーブ側ユニット(スレーブ側CPU104(CPU#2))にモータ105M(#2)が接続され、さらに別のスレーブ側ユニット(スレーブ側CPU104(CPU#3))にモータ105M(#3)が接続されているとする。
フォトインタラプタ(センサ105S)が物体の通過(物理特性の変化)を検知し、この物体の通過検知に対応して、スレーブ側ユニット(スレーブ側CPU104(CPU#2))に接続されたモータ105M(#2)、及びスレーブ側ユニット(スレーブ側CPU104(CPU#3))に接続されたモータ105M(#3)を同期駆動させる制御について説明する。
フォトインタラプタ(センサ105S)は、物体の通過を検知すると、この検知結果をマスタ側CPU102を介してコントロール用上位CPU101へ通知する。コントロール用上位CPU101は、この検知結果を受けて、各モータ105M(#2、#3)の同期制御を開始する。
ここで、図15を参照して通信負荷の影響によるディレイを考慮しない制御について説明すると、コントロール用上位CPUが、検知結果を受信し、例えば二つのモータに対してコマンドを送信する。このとき、通信ディレイの影響で、一方のモータにコマンドがセットされる時間T0と、他方のモータにコマンドがセットされる時間T1に誤差が生じる。このように、各アクチュエータの駆動タイミングを一意に決定できず、複数のモータで同期を取ることが難しい。
そこで、本制御システムでは、各ユニットが保持している同期タイマ101T、102T、104Tを使用する。また、図16に示すコマンドフォーマットを採用する。つまり、コマンドの種別(モータの同期駆動)、動作開始時刻(目標動作時刻)、制御コマンド部により構成されるコマンドフォーマットを採用する。つまり、同期駆動コマンドは、これらコマンドの種別及び動作開始時刻によりコマンドのヘッダ部が構成されており、このヘッダ部に制御コマンド部を加えた構成となっている。さらに、図17に示すように、スレーブ側ユニット(スレーブ側CPU104(CPU#2)はFIFOバッファ(#2)を備え、同様にスレーブ側CPU104(CPU#3)はFIFOバッファ(#3)を備える。
以下、図18に示すように、同期制御が実行される。つまり、イベントが発生する度に(ST51)、コントロール用上位CPU101は、同期駆動コマンドを発行する(ST52)。つまり、コントロール用上位CPU101は、フォトインタラプタ(センサ105S)からの検知結果を受信し、図16に示すコマンドフォーマットの同期駆動コマンド(例えばモータM105(#2)に対する第1の同期駆動コマンド、及びモータM105(#2)に対する第2の同期駆動コマンド)を発行する。ここで発行される同期駆動コマンドは、同期タイマ101Tのカウント時刻に基づき設定される動作開始時刻(現在時刻から所定時間後の時刻)を含む。例えば、第1の同期駆動コマンドに含まれる動作開始時刻と第2の同期駆動コマンドに含まれる動作開始時刻を同一時刻にしておく。
各スレーブ側ユニットは、任意の時刻t0〜t2、t0’〜t2’に同期駆動コマンドを受信し(ST53)、受信した同期駆動コマンドをFIFOバッファ(#2)及びFIFOバッファ(#3)にバッファリングする。例えば、スレーブ側CPU104(CPU#2)が第1の同期駆動コマンドを受信し、この受信した第1の同期駆動コマンドをFIFOバッファ(#2)にバッファリングし、スレーブ側CPU104(CPU#3)が第2の同期駆動コマンドを受信し、この受信した第2の同期駆動コマンドをFIFOバッファ(#3)にバッファリングする。
スレーブ側ユニット(スレーブ側CPU104(CPU#2))は、同期タイマT104によりカウントされる現在時刻と第1の同期駆動コマンドに含まれる動作開始時刻とを比較し(ST54)、現在時刻が動作開始時刻に到達したタイミングで(目標動作時刻になると)(ST54、YES)、バッファ(#2)から第1の同期駆動コマンドを取出し、第1の同期駆動コマンドをモータ105M(#2)のモータドライバにセットし、第1の同期駆動コマンドにより指定される第1の制御内容を実行させる(ST55)。同様に、スレーブ側ユニット(スレーブ側CPU104(CPU#3))も、同期タイマT104によりカウントされる現在時刻と第2の同期駆動コマンドに含まれる動作開始時刻とを比較し、現在時刻が動作開始時刻に到達したタイミングで(目標動作時刻になると)(ST54、YES)、バッファ(#3)から第2の同期駆動コマンドを取出し、第2の同期駆動コマンドをモータ105M(#3)のモータドライバにセットし、第2の同期駆動コマンドにより指定される第2の制御内容を実行させる(ST55)。
このように同期タイマの保持する時刻を用いることで、図19に示すように始動タイミングのバラツキを抑えることができ、高い精度で同期制御を行うことができる。
以上により、本制御システムでは、通信負荷に依存して変動する遅延による時間誤差の影響を受けずに、下位制御装置に接続した複数のアクチュエータの同期制御を行なうことができる。
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
100A…主制御部、100B…ユニット部、101…コントロール用上位CPU、101T…タイマ、102…通信マスタ側CPU、102T…タイマ、103…シリアルケーブル、104…スレーブ側CPU、104T…タイマ、105M…モータユニット、105S…センサ、PM…パルスモータ、EC…エンコーダ
Claims (10)
- 第1のタイマによりカウントされる送信時刻を含むコマンドを送信する制御手段と、
前記制御手段から送信される前記コマンドを受信し、このコマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記コマンドの受信時刻とを比較して送受信の遅延時間を検出する遅延時間検出手段と、この遅延時間検出手段により検出された遅延時間に基づき前記コマンドにより指定される制御内容を補正する補正手段と、この補正手段により補正された制御内容を実行する実行手段とを有する制御ユニットと、
を備えたことを特徴とする制御システム。 - 第1のタイマによりカウントされる送信時刻を含み且つ複数の制御パラメータを含むコマンドを送信する制御手段と、
前記制御手段から送信される前記コマンドを受信し、このコマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記コマンドの受信時刻とを比較して送受信の遅延時間を検出する遅延時間検出手段と、この遅延時間検出手段により検出された遅延時間に基づき前記コマンドに含まれる複数の制御パラメータのうちのいくつかの制御パラメータを補正する補正手段と、この補正手段により補正された制御パラメータを含む全ての制御パラメータに基づいて制御を実行する実行手段とを有する制御ユニットと、
を備えたことを特徴とする制御システム。 - 第1のタイマによりカウントされる送信時刻を含み且つ初速度、加速度、等速時間、減速度、及び終速度を制御する複数の制御パラメータを含むモータ制御コマンドを送信する制御手段と、
前記制御手段から送信される前記モータ制御コマンドを受信し、このモータ制御コマンドに含まれる前記送信時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記モータ制御コマンドの受信時刻とを比較して送受信の遅延時間を検出する遅延時間検出手段と、この遅延時間検出手段により検出された遅延時間に基づき前記モータ制御コマンドに含まれる加速度及び等速時間の制御パラメータを補正する補正手段と、この補正手段により補正された補正後の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積と補正前の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積とを一致させ、補正された加速度及び等速時間の制御パラメータを含む全ての制御パラメータに基づいて制御を実行する実行手段とを有する制御ユニットと、
を備えたことを特徴とする制御システム。 - 第1のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出された検出データを含む送信データを送信する制御ユニットと、
前記制御ユニットから送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマに同期した第2のタイマのタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出する遅延時間検出手段と、この遅延時間検出手段により検出された遅延時間に基づいて前記送信データに含まれる前記検出データを補正する補正手段とを有する制御手段と、
を備えたことを特徴とする制御システム。 - 第1のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出された検出データを含む送信データを送信する制御ユニットと、
前記制御ユニットから送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出する遅延時間検出手段と、この遅延時間検出手段により検出された遅延時間及び時間あたりの前記検出データの変化量を示すデータに基づいて前記送信データに含まれる前記検出データの前記受信時刻における変化量を推定し、推定された変化量を前記送信データに含まれる前記検出データへ反映して検出データを補正する補正手段とを有する制御手段と、
を備えたことを特徴とする制御システム。 - 第1のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出されたアクチュエータの変位量を示す検出データを含む送信データを送信する第1の制御手段と、
前記第1の制御手段から送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマに同期した第2のタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出し、この遅延時間及び時間あたりの前記アクチュエータの変位量を示すデータに基づき前記送信データに含まれる前記検出データの前記受信時刻における変位量を推定し、推定された変位量を前記送信データに含まれる前記検出データへ加えて、前記受信時刻に対応した検出データへ補正する第2の制御手段と、
を備えたことを特徴とする制御システム。 - アクチュエータ制御コマンドを送信する第1の制御部と、
前記第1の制御部とシリアル通信接続され、前記第1の制御部から送信される前記アクチュエータ制御コマンドに基づきアクチュエータを制御する第2の制御部と、
を備え、
前記第1の制御部は、第1のタイマを有し、この第1のタイマによりカウントされる送信時刻を含み且つ初速度、加速度、等速時間、減速度、及び終速度を制御する複数の制御パラメータを含む前記アクチュエータ制御コマンドを前記第2の制御部へ送信し、
前記第2の制御部は、前記第1のタイマに同期した第2のタイマを有し、前記第1の制御部から送信される前記アクチュエータ制御コマンドを受信し、このアクチュエータ制御コマンドに含まれる前記送信時刻と前記第2のタイマによりカウントされる前記アクチュエータ制御コマンドの受信時刻とを比較して送受信の遅延時間を検出し、この遅延時間に基づき前記アクチュエータ制御コマンドに含まれる加速度及び等速時間の制御パラメータを補正し、補正後の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積と補正前の前記複数の制御パラメータにより定義される速度と時間の関係を示す台形面積とを一致させ、補正された加速度及び等速時間の制御パラメータを含む全ての制御パラメータに基づき前記受信時刻に対応した補正制御により前記アクチュエータを制御し、さらに前記第2のタイマによりカウントされる検出時刻を含み且つこの検出時刻に検出された前記アクチュエータの変位量を示す検出データを含む送信データを前記第1の制御部へ送信し、
前記第1の制御部は、前記第2の制御部から送信される前記送信データを受信し、この送信データに含まれる前記検出時刻と前記第1のタイマによりカウントされる前記送信データの受信時刻とを比較して検出から受信までの遅延時間を検出し、この遅延時間及び時間あたりの前記アクチュエータの変位量を示すデータに基づき前記送信データに含まれる前記検出データの前記受信時刻における変位量を推定し、推定された変位量を前記送信データに含まれる前記検出データへ加えて、前記受信時刻に対応した検出データへ補正する、
ことを特徴とする制御システム。 - 動作開始時刻を含むコマンドを送信する制御手段と、
前記制御手段から送信される前記コマンドを受信し、このコマンドに基づく動作を実行する複数の制御ユニットとを備え、
前記制御ユニットの各々は、前記コマンドに含まれる前記動作開始時刻に到達したタイミングで前記コマンドにより指定される制御内容を実行する、
ことを特徴とする制御システム。 - 動作開始時刻を含む第1及び第2のコマンドを送信する制御手段と、
前記制御手段から送信される前記第1のコマンドを受信し、この第1のコマンドに基づく動作を実行する第1の制御ユニットと、
前記制御手段から送信される前記第2のコマンドを受信し、この第2のコマンドに基づく動作を実行する第2の制御ユニットとを備え、
前記第1の制御ユニットは、第1のタイマに基づき前記第1のコマンドに含まれる前記動作開始時刻に到達したタイミングで前記第1のコマンドにより指定される第1の制御内容を実行し、
前記第2の制御ユニットは、前記第1のタイマに同期した第2のタイマに基づき前記第2のコマンドに含まれる前記動作開始時刻に到達したタイミングで前記第2のコマンドにより指定される第2の制御内容を実行する、
ことを特徴とする制御システム。 - 物理特性の変化を検知し、検知結果を通知する第1の制御ユニットと、
前記検知結果を受信し、第1のタイマのカウント時刻に基づき設定される動作開始時刻を含む第1及び第2のコマンドを送信する制御手段と、
前記制御手段から送信される前記第1のコマンドを受信し、この第1のコマンドに基づく動作を実行する第2の制御ユニットと、
前記制御手段から送信される前記第2のコマンドを受信し、この第2のコマンドに基づく動作を実行する第3の制御ユニットとを備え、
前記第2の制御ユニットは、前記第1のタイマに同期した第2のタイマに基づき前記第1のコマンドに含まれる前記動作開始時刻に到達したタイミングで前記第1のコマンドにより指定される第1の制御内容を実行し、
前記第3の制御ユニットは、前記第1及び第2のタイマに同期した第3のタイマに基づき前記第2のコマンドに含まれる前記動作開始時刻に到達したタイミングで前記第2のコマンドにより指定される第2の制御内容を実行する、
ことを特徴とする制御システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004155065A JP2005269879A (ja) | 2004-02-19 | 2004-05-25 | 制御システム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004042898 | 2004-02-19 | ||
JP2004155065A JP2005269879A (ja) | 2004-02-19 | 2004-05-25 | 制御システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005269879A true JP2005269879A (ja) | 2005-09-29 |
Family
ID=35093822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004155065A Pending JP2005269879A (ja) | 2004-02-19 | 2004-05-25 | 制御システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005269879A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101018465B1 (ko) * | 2009-04-06 | 2011-03-02 | 주식회사 포스코아이씨티 | 안전등급 plc의 타임 틱 동기화 장치 |
JP2011216085A (ja) * | 2010-03-15 | 2011-10-27 | Omron Corp | プログラマブルコントローラ |
JP2016224663A (ja) * | 2015-05-29 | 2016-12-28 | 株式会社日立産機システム | モータ制御システム |
JP2017044599A (ja) * | 2015-08-27 | 2017-03-02 | ルネサスエレクトロニクス株式会社 | 制御システム |
US9883474B2 (en) | 2013-07-19 | 2018-01-30 | Mitsubishi Electric Corporation | Ring-shaped synchronous network system and time slave station |
JP2018180699A (ja) * | 2017-04-05 | 2018-11-15 | 富士電機株式会社 | 判定装置、制御装置、制御システム、判定方法及びプログラム |
JP6594600B1 (ja) * | 2019-02-22 | 2019-10-23 | 三菱電機株式会社 | モータ駆動制御装置、連結制御システム、およびモータ駆動制御方法 |
JPWO2020079730A1 (ja) * | 2018-10-15 | 2021-02-15 | 三菱電機株式会社 | エンジニアリングツール、コンピュータシステム、システム及びプログラム |
WO2023145410A1 (ja) * | 2022-01-25 | 2023-08-03 | 株式会社日立製作所 | 機器の制御装置、制御システム、及び制御方法 |
-
2004
- 2004-05-25 JP JP2004155065A patent/JP2005269879A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101018465B1 (ko) * | 2009-04-06 | 2011-03-02 | 주식회사 포스코아이씨티 | 안전등급 plc의 타임 틱 동기화 장치 |
JP2011216085A (ja) * | 2010-03-15 | 2011-10-27 | Omron Corp | プログラマブルコントローラ |
US9883474B2 (en) | 2013-07-19 | 2018-01-30 | Mitsubishi Electric Corporation | Ring-shaped synchronous network system and time slave station |
JP2016224663A (ja) * | 2015-05-29 | 2016-12-28 | 株式会社日立産機システム | モータ制御システム |
JP2017044599A (ja) * | 2015-08-27 | 2017-03-02 | ルネサスエレクトロニクス株式会社 | 制御システム |
CN106483878A (zh) * | 2015-08-27 | 2017-03-08 | 瑞萨电子株式会社 | 控制系统 |
JP2018180699A (ja) * | 2017-04-05 | 2018-11-15 | 富士電機株式会社 | 判定装置、制御装置、制御システム、判定方法及びプログラム |
JPWO2020079730A1 (ja) * | 2018-10-15 | 2021-02-15 | 三菱電機株式会社 | エンジニアリングツール、コンピュータシステム、システム及びプログラム |
JP6594600B1 (ja) * | 2019-02-22 | 2019-10-23 | 三菱電機株式会社 | モータ駆動制御装置、連結制御システム、およびモータ駆動制御方法 |
WO2020170440A1 (ja) * | 2019-02-22 | 2020-08-27 | 三菱電機株式会社 | モータ駆動制御装置、連結制御システム、およびモータ駆動制御方法 |
CN113454909A (zh) * | 2019-02-22 | 2021-09-28 | 三菱电机株式会社 | 电动机驱动控制装置、连结控制系统及电动机驱动控制方法 |
WO2023145410A1 (ja) * | 2022-01-25 | 2023-08-03 | 株式会社日立製作所 | 機器の制御装置、制御システム、及び制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7525263B2 (en) | Control system | |
US9541915B2 (en) | Numerical controller having function of switching position control gain during synchronous control | |
JP4261500B2 (ja) | 制御システム | |
JP6777761B2 (ja) | 車両制御装置 | |
JP5314110B2 (ja) | マスタ軸とスレーブ軸との同期制御を行うモータ制御装置 | |
JP2005269879A (ja) | 制御システム | |
JPS6311373A (ja) | プリンタのキヤリツジ制御方法 | |
JP2007253535A (ja) | 印刷装置 | |
JP4980551B2 (ja) | コンビネーションドライブを同期化する方法 | |
JP4078065B2 (ja) | 複数のユニットで進行するプロセスを同期化する装置および方法 | |
US7202616B2 (en) | Synchronous control method and device of the same | |
JP4498250B2 (ja) | 同期制御システム | |
JP5687302B2 (ja) | 負荷駆動制御装置及び負荷駆動制御方法 | |
JP4487522B2 (ja) | モータ駆動装置 | |
CN110968119B (zh) | 双轴同步的控制方法和装置 | |
JP6400553B2 (ja) | ユニット間での同期制御機能を有する数値制御システム | |
JP5748126B2 (ja) | 同期制御システム | |
JP4549305B2 (ja) | 画像形成システム、シート搬送装置、画像形成装置およびその制御方法 | |
US7456386B2 (en) | Averaging signals | |
JP2008281656A (ja) | 画像形成装置、及び、画像形成方法 | |
US11155340B2 (en) | Data coherency algorithm to achieve bit-for-bit transmission | |
JP2018106513A (ja) | 検出装置 | |
KR20180008158A (ko) | 유도 조종장치 및 그의 시스템 클럭 생성 방법 | |
JPH11305812A (ja) | 分散型cpuシステムの同期方法 | |
CN112462694B (zh) | 基于总线伺服控制系统实现速度前馈补偿处理的方法、系统、装置、处理器及存储介质 |