説明

モータ制御装置及びモータ制御方法

【課題】搬送アクチュエータの振動を抑制すると共に、各駆動軸の回転動作が他の駆動軸に与える影響を低減する。
【解決手段】右搬送アクチュエータ32が伸縮動作する場合、中央制御装置10の制御部12は、縮み位置から伸び位置へ移動させるための位置指令を右搬送アクチュエータ制御装置30に出力し、現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力し、現状を維持するための距離0の位置指令を左搬送アクチュエータ制御装置20に出力する。右搬送アクチュエータ制御装置30は制振制御用の位置ゲインを用いて制振制御を行い、旋回アクチュエータ制御装置40は駆動軸42−Kが回転しないように維持制御を行い、左搬送アクチュエータ制御装置20は通常の位置ゲインを用いて駆動軸22−Kが回転しないように維持制御を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自動搬送機、自動組立機等の自動機械や産業用ロボット等に用いられるモータ制御装置及びモータ制御方法に関し、特に、伸縮動作する搬送アクチュエータに対して制振制御を行うと共に、各駆動軸の回転に伴う他の駆動軸に与える影響を低減させるための多軸補間制御を行う技術に関する。
【背景技術】
【0002】
従来、ガラス基板等を搬送する自動搬送機、部品等を組み立てる自動組立機等の自動機械や産業用ロボット等を制御する装置として、所定の位置にアクチュエータを停止させる際に振動を抑制するモータ制御装置が知られている(例えば、特許文献1を参照)。このモータ制御装置は、モータで駆動する機械(負荷)の剛性が低く振動しやすい場合であっても、モータトルクを許容値以下に抑えると共にモータトルク指令値への追従誤差を許容値以下に抑えるという制約条件を逸脱することなく、モータトルク指令値を少ない計算量で算出するものである。
【0003】
図15は、従来のモータ制御装置を含む全体システムの概略構成を示す図である。このシステムは、モータ1001により機械1002を駆動させる際に、モータトルクを所定のトルク許容値1011以下に抑え、かつ、指令値生成手段1010の指令値算出手段1005により算出されたトルク指令値に対する実際のモータトルクの追従誤差を所定の誤差許容値1012以下に抑えるようにするものであり、さらに、所定の場合に、前記トルク許容値1011及び誤差許容値1012を修正して、トルク指令値を新たに生成するものである。
【0004】
以下、図15に示す従来のモータ制御装置の概要について説明する。このモータ制御装置は、指令値生成手段1010により生成されたトルク指令値にモータ1001を追従させるように制御するモータ制御手段1003、実際のモータトルク及びモータトルク指令値に対する追従誤差を計測する被制約変数計測手段1013、計測したモータトルクの絶対値の最大値を検出する第1のトルク最大値検出手段1014、計測した追従誤差の絶対値の最大値を検出する第2の誤差最大値検出手段1015、トルク許容値1011とモータトルクの絶対値の最大値とを比較してその比を算出する第1の比較手段1016、誤差許容値1012と追従誤差の絶対値の最大値とを比較してその比を算出する第2の比較手段1017、第1の比較手段1016により算出された比を用いてトルク許容値1011を修正し、新たな第1の修正許容値となるトルク許容値1020を得る第1の許容値修正手段1018、第2の比較手段1017により算出された比を用いて誤差許容値1012を修正し、新たな第2の修正許容値となる誤差許容値1021を得る第2の許容値修正手段1019、モータ1001と機械1002とモータ制御手段1003との特性をモデル化したモータ制御モデル1007、モータ制御モデル1007に基づいてモータトルク及び追従誤差を予測する予測モデル1008、及び、指令値生成手段1010を備えている。指令値生成手段1010は、修正されたトルク許容値1020及び誤差許容値1021と予測されたトルク及び追従誤差とを用いて、時間スケール関数記憶手段1006に記憶された時間スケール関数を最適化する最適化手段1009、及び、基準指令値記憶手段1004に記憶された基準指令値及び最適化された時間スケール関数によりトルク指令値を算出する指令値算出手段1005を備えている。
【0005】
このモータ制御装置によれば、第1及び第2の許容値修正手段1018,1019が、実際に計測されたモータトルク及びモータトルク指令値への追従誤差を用いて、トルク許容値1011及び誤差許容値1012をそれぞれ修正し、最適化手段1009が、これらの修正した許容値1020,1021を用いて最適な時間スケール関数を生成し、指令値算出手段1005が、トルク指令値を算出するようにした。これにより、モータ制御モデル1007にモデル誤差がある場合であっても、実際に計測したモータトルク及びその追従誤差が許容値以下になるようなトルク指令値を生成することができる。つまり、このモータ制御装置は、モータ1001で駆動する機械1002の剛性が低く振動しやすいため、モータ制御モデル1007にモデル誤差がある場合であっても、モータトルク及びその追従誤差を許容値以下に抑えるという制約条件を逸脱することなく、トルク指令値を少ない計算量で算出することができるというものである。
【0006】
また、他のモータ制御装置の例として、フィルタを制御ループに挿入することにより高い周波数の振動を抑制する装置、機械振動を抽出してその特性を同定し、機械振動モデルを用いてトルク指令値を生成することにより、位置決め整定時の低い振動数の残留振動を抑制する装置、及び、負荷の慣性モーメントがモータの数十倍以上と大きい場合であっても、機械剛性の低い領域で生じる低い周波数の振動を抑制する装置も知られている(例えば、非特許文献1を参照)。
【0007】
【特許文献1】特開平10−323070号公報
【非特許文献1】宮崎友宏他、「新ACサーボアンプ“MR−J3シリーズ”」、三菱電機株式会社、三菱電機技報、Vol.79 No.3 2005、p11(181)−p.14(184)
【発明の開示】
【発明が解決しようとする課題】
【0008】
前述した特許文献1及び非特許文献1に記載のモータ制御装置は、例えば、モータにより駆動軸を回転させ、その回転により搬送アクチュエータを伸縮させる場合、その伸縮動作の停止時に生じる振動(伸縮方向の振動)を抑制するための制振制御を実現するものである。この伸縮動作の停止時に生じる振動は、搬送アクチュエータの剛性の低さや搬送中の駆動軸から見た負荷の慣性モーメントの変化等によって生じるものであり、このような振動により、搬送対象の受け渡しに支障を来たす恐れがある。このため、制振制御を用いることにより、前述の問題を解消することができる。
【0009】
したがって、従来のモータ制御装置は、伸縮動作を行う搬送アクチュエータの負荷を制御する場合には有効であるが、伸縮動作を行う搬送アクチュエータに加えて旋回動作を行う旋回アクチュエータも含む負荷を制御する場合には、必ずしも有効ではないという問題があった。
【0010】
具体的には、搬送アクチュエータ用のモータにより駆動軸を回転させ、その回転により搬送アクチュエータを伸縮させる動作、及び、旋回アクチュエータ用のモータにより駆動軸を回転させ、その回転により旋回アクチュエータを旋回させる動作をそれぞれ実現するモータ制御装置において、各駆動軸の回転が他の駆動軸に影響を与えることがある。すなわち、駆動軸が回転すると他の駆動軸も少なからず回転してしまう場合、前述の制振制御だけでは、駆動軸相互間の影響を考慮していないため、結果として、旋回及び伸縮動作を精度高く実現することができないという問題があった。
【0011】
そこで、本発明の目的は、搬送アクチュエータの振動を抑制すると共に、各駆動軸の回転動作が他の駆動軸に与える影響を低減することが可能なモータ制御装置及びモータ制御方法を提供することにある。
【課題を解決するための手段】
【0012】
上記目的を達成するために、本発明のモータ制御装置は、所定の物を搬送するための搬送アクチュエータの駆動軸を回転させることにより、前記搬送アクチュエータを伸縮動作させる第1のモータ、及び、旋回アクチュエータの駆動軸を回転させることにより、前記旋回アクチュエータを旋回動作させる第2のモータをそれぞれ制御するモータ制御装置において、前記搬送アクチュエータが伸縮方向に振動しないように所定の第1の位置ゲインを用いて制振制御を行い、搬送アクチュエータを所定位置に停止させる搬送制御部と、前記旋回アクチュエータの旋回制御を行い、旋回アクチュエータを所定位置に停止させる旋回制御部と、を備え、前記搬送アクチュエータを伸縮動作させる場合に、前記搬送制御部が、第1の位置ゲインを用いて制振制御を行い、前記旋回制御部が、搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御し、前記旋回アクチュエータを旋回動作させる場合に、前記搬送制御部が、旋回アクチュエータの駆動軸の回転に伴い、搬送アクチュエータの駆動軸が旋回アクチュエータの駆動軸に同期して回転するように、第1の位置ゲインよりも大きい第2の位置ゲインを用いて第1のモータを多軸補間制御し、前記旋回制御部が、前記旋回動作を実現するための旋回制御を行うことを特徴とする。
【0013】
また、本発明のモータ制御装置は、さらに、前記搬送制御部及び旋回制御部に位置指令を出力する中央制御部を備え、前記中央制御部は、搬送アクチュエータを伸縮動作させるための位置指令として、搬送アクチュエータを所定位置に停止させるための位置指令を搬送制御部に出力すると共に、旋回アクチュエータの位置を維持させるための位置指令を旋回制御部に出力し、旋回アクチュエータを旋回動作させるための指令として、搬送アクチュエータを旋回アクチュエータに同期させるための位置指令を搬送制御部に出力すると共に、旋回アクチュエータを所定位置に停止させるための位置指令を旋回制御部に出力することを特徴とする。
【0014】
また、本発明のモータ制御装置は、搬送アクチュエータと、当該搬送アクチュエータを伸縮動作させる第1のモータと、前記第1のモータを制御する搬送制御部とが、それぞれ対になって複数設けられ、前記複数の搬送アクチュエータのうちの一つの搬送アクチュエータが伸縮動作する場合に、前記一つの搬送アクチュエータと対になっている搬送制御部が、前記第1の位置ゲインを用いて制振制御を行い、前記複数の搬送アクチュエータのうちの他の搬送アクチュエータと対になっている搬送制御部が、前記一つの搬送アクチュエータの駆動軸の回転に伴い、前記他の搬送アクチュエータの駆動軸が回転しないように、前記第1の位置ゲインよりも大きい第2の位置ゲインを用いて、対になっている第1のモータを維持制御し、前記旋回制御部が、前記一つの搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御することを特徴とする。
【0015】
また、本発明のモータ制御装置は、さらに、前記搬送制御部及び旋回制御部に位置指令を出力する中央制御部を備え、前記中央制御部は、前記一つの搬送アクチュエータを伸縮動作させるための位置指令として、前記一つの搬送アクチュエータを所定位置に停止させるための位置指令を前記一つの搬送アクチュエータと対になっている搬送制御部に出力すると共に、前記他の搬送アクチュエータの位置を維持させるための位置指令を前記他の搬送アクチュエータと対になっている搬送制御部に出力し、さらに、旋回アクチュエータの位置を維持させるための位置指令を旋回制御部に出力し、旋回アクチュエータを旋回動作させるための指令として、前記全ての搬送アクチュエータを旋回アクチュエータに同期させるための位置指令をそれぞれの搬送制御部に出力すると共に、旋回アクチュエータを所定位置に停止させるための位置指令を旋回制御部に出力することを特徴とする。
【0016】
また、本発明のモータ制御方法は、所定の物を搬送するための搬送アクチュエータの駆動軸を第1のモータにより回転させることにより、前記搬送アクチュエータを伸縮動作させ、旋回アクチュエータの駆動軸を第2のモータにより回転させることにより、前記旋回アクチュエータを旋回動作させるモータ制御方法において、前記搬送アクチュエータを伸縮動作させるための指令に基づいて、搬送アクチュエータが振動しないように所定の第1の位置ゲインを用いて制振制御を行い、搬送アクチュエータを所定位置に停止させるステップと、前記搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御するステップと、前記第1の位置ゲインよりも大きい第2の位置ゲインを設定するステップと、前記旋回アクチュエータを旋回動作させるための指令に基づいて、前記旋回動作を実現するための旋回制御を行い、旋回アクチュエータを所定位置に停止させるステップと、前記旋回アクチュエータの駆動軸の回転に伴い、搬送アクチュエータの駆動軸が旋回アクチュエータの駆動軸に同期して回転するように、第2の位置ゲインを用いて第1のモータを多軸補間制御するステップと、を有することを特徴とする。
【発明の効果】
【0017】
以上説明したように、本発明によれば、搬送アクチュエータの伸縮時には、搬送アクチュエータが振動しないように、第1の位置ゲインを用いて制振制御を行うと共に、搬送アクチュエータの駆動軸の回転に伴い旋回アクチュエータの駆動軸が回転しないように維持制御を行うようにした。また、旋回アクチュエータの旋回時には、旋回アクチュエータを旋回制御すると共に、旋回アクチュエータの駆動軸の回転に伴い搬送アクチュエータの駆動軸が旋回アクチュエータの駆動軸に同期して回転するように、第1の位置ゲインよりも大きい位置ゲインを用いて多軸補間制御を行うようにした。これにより、搬送アクチュエータの振動を抑制すると共に、各駆動軸の回転動作が他の駆動軸に与える影響を低減することが可能なモータ制御装置及びモータ制御方法を実現することができる。
【発明を実施するための最良の形態】
【0018】
以下、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。
〔モータ制御装置の構成〕
まず、モータ制御装置の構成について、モータ制御装置を含む全体システム、モータ制御装置に備えた左(右)搬送アクチュエータ制御装置及び旋回アクチュエータ制御装置に区別してそれぞれ説明する。
【0019】
(全体システムの構成)
まず、モータ制御装置を含む全体システムの構成について説明する。図1は、本発明の実施の形態に係るモータ制御装置を含む全体システムの概略構成を示す図である。このシステムは、2つの伸縮動作及び1つの旋回動作を制御するモータ制御装置1と、第1のアクチュエータ(左搬送アクチュエータ22)の駆動軸22−Kを回転させるモータ21と、第2のアクチュエータ(右搬送アクチュエータ32)の駆動軸32−Kを回転させるモータ31と、第3のアクチュエータ(旋回アクチュエータ42)の駆動軸42−Kを回転させるモータ41と、左搬送アクチュエータ22、右搬送アクチュエータ32及び旋回アクチュエータ42の負荷2とを備えて構成される。
【0020】
モータ制御装置1は、制御部11,12を有する中央制御装置10と、左搬送アクチュエータ22の伸縮位置を、モータ21を介して制御する左搬送アクチュエータ制御装置20と、右搬送アクチュエータ32の伸縮位置を、モータ31を介して制御する右搬送アクチュエータ制御装置30と、旋回アクチュエータ42の旋回角度を、モータ41を介して制御する旋回アクチュエータ制御装置40とを備えている。
【0021】
また、負荷2である左搬送アクチュエータ22は、先端部分22−Sが駆動軸22−Kの回転により矢印で示す直線の方向22−Dに伸縮し、右搬送アクチュエータ32は、先端部分32−Sが駆動軸32−Kの回転により矢印で示す直線の方向32−Dに伸縮し、旋回アクチュエータ42は、駆動軸42−Kの回転により左搬送アクチュエータ22及び右搬送アクチュエータ32と共に、右回り及び左回りの方向42−Rに旋回する。
【0022】
ここで、駆動軸22−K,32−K,42−Kは、それぞれ独立して回転し、左搬送アクチュエータ22及び右搬送アクチュエータ32の伸縮は、旋回用の駆動軸42−Kが回転していないときに行われるものとする。つまり、左搬送アクチュエータ22の伸縮は、旋回用の駆動軸42−Kに対して搬送用の駆動軸22−Kが回転した場合に行われる。右搬送アクチュエータ32についても同様である。また、左搬送アクチュエータ22の伸縮は、旋回用の駆動軸42−Kに対して搬送用の駆動軸22−Kが回転しない場合には行われない。右搬送アクチュエータ32についても同様である。すなわち、左搬送アクチュエータ22及び右搬送アクチュエータ32の伸縮は、それぞれの駆動軸22−K,32−Kが旋回用の駆動軸42−Kに対して相対的に回転したときに行われる。
【0023】
また、旋回アクチュエータ42の旋回は、旋回用の駆動軸42−Kが回転することにより行われるが、左搬送アクチュエータ22及び右搬送アクチュエータ32の先端部分22−S,32−Sを伸縮位置に維持したまま、その向きを変えるためには、左搬送アクチュエータ22及び右搬送アクチュエータ32も旋回アクチュエータ42に同期して旋回させる必要がある。
【0024】
本発明の実施の形態では、左搬送アクチュエータ制御装置20が、左搬送アクチュエータ22の先端部分22−Sを移動させてその伸び位置または縮み位置で停止させるときに、通常よりも低い値の位置ゲインを用いて制振制御を行うことにより、低周波の残留振動を抑制する。右搬送アクチュエータ制御装置30が右搬送アクチュエータ32を制振制御するときも同様である。
【0025】
ここで、例えば、左搬送アクチュエータ22が駆動軸22−Kの回転により駆動しているとき、他の右搬送アクチュエータ32及び旋回アクチュエータ42の駆動軸32−K,42−Kは、駆動軸22−Kの回転の影響を受けてしまうため、回転してしまう。そこで、本発明の実施の形態では、駆動軸22−Kの回転による影響を受けないように、右搬送アクチュエータ32を位置制御する右搬送アクチュエータ制御装置30及び旋回アクチュエータ42を旋回制御する旋回アクチュエータ制御装置40が維持制御を行う。具体的には、右搬送アクチュエータ制御装置30は、制振制御時よりも大きい値の位置ゲインを用いて、右搬送アクチュエータ32の現在位置を維持するように位置指令を出力する。また、旋回アクチュエータ制御装置40は、旋回アクチュエータ42の現在角度を維持するように位置指令を出力する。右搬送アクチュエータ32が駆動軸32−Kの回転により駆動しているときも同様である。
【0026】
また、例えば、旋回アクチュエータ42が駆動軸42−Kの回転により駆動しているとき、他の左搬送アクチュエータ22及び右搬送アクチュエータ32の駆動軸22−K,32−Kも駆動軸42−Kの回転の影響を受けてしまうため、旋回アクチュエータ42と左搬送アクチュエータ22及び右搬送アクチュエータ32との機械的な結合のみでは、正確な位置制御が実現することができない。そこで、本発明の実施の形態では、駆動軸42−Kの回転による影響を受けないように、左搬送アクチュエータ22を位置制御する左搬送アクチュエータ制御装置20及び右搬送アクチュエータ32を位置制御する右搬送アクチュエータ制御装置30が多軸補間制御を行う。具体的には、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は、旋回アクチュエータ42が旋回する角度と同等の角度に相当する左搬送アクチュエータ22及び右搬送アクチュエータ32の伸縮位置の位置指令を生成し、その位置指令を出力する。この場合、旋回アクチュエータ42の駆動軸42−Kの回転に追従(同期)して駆動軸22−K,32−Kが回転する限り、左搬送アクチュエータ22及び右搬送アクチュエータ32の先端部分22−S,32−Sの位置は、伸縮方向22−D,32−Dにおいて変化はない。
【0027】
(左(右)搬送アクチュエータ制御装置の構成)
次に、モータ制御装置1における左(右)搬送アクチュエータ制御装置20(30)の構成について説明する。図2は、図1に示した左搬送アクチュエータ制御装置20の構成を示すブロック図である。図2は左搬送アクチュエータ制御装置20の構成を示しているが、右搬送アクチュエータ制御装置30についても同様である。この左搬送アクチュエータ制御装置20は、減算器201,202,203,221、加減算器222,223、位置制御モデル211、速度制御モデル212、電流制御モデル213、負荷モデル214、位置制御器231、速度制御器232及び電流制御器233を備えており、中央制御装置10から位置指令及び位置ゲインを入力し、操作量を算出してモータ21へ出力すると共に、モータ21及び左搬送アクチュエータ22の実負荷からモータ電流値、モータ回転速度値及び左搬送アクチュエータ22の先端部分22−Sの位置情報を入力する。
【0028】
負荷モデル214は、モータ21及び左搬送アクチュエータ22の実負荷の特性をモデル化したものであり、そのモデルにより電流値、速度値及び左搬送アクチュエータ22の先端部分22−Sの位置情報を算出する。
【0029】
減算器201は、中央制御装置10から位置指令を、負荷モデル214から位置情報をそれぞれ入力し、差分値を算出して位置制御モデル211に出力する。位置制御モデル211は、規範モデルの位置制御器であり、中央制御装置10から位置ゲインを入力し、増幅演算に用いる位置ゲインとしてメモリに格納し、また、減算器201から位置指令と位置情報との間の差分値を入力し、メモリに格納した位置ゲインを用いてその差分値を増幅し、速度指令として減算器202及び加減算器222に出力する。
【0030】
ここで、規範モデルによる制御方法について簡単に説明する。理想的な制御器として、実負荷の伝達関数の逆関数を導き出し、これを用いる手法がある。すなわち、実負荷の伝達関数を特定し、その逆関数を制御器として設計することにより、入出力が1対1の関係となる理想的なシステムを実現するものである。しかし、現実には、実負荷の伝達関数を特定したり、その逆関数を設計したりすることが、必ずしも解析的に実現することができない。そこで、その発展的な手法として、規範モデルの制御器が提案されている。本発明の実施形態で用いる制御器は、1.規範モデルとして、実負荷の特性から類推される負荷モデルとこれを制御する制御器モデルを用意し、2.その負荷モデルが望ましい応答になるように帰還を制御器モデルに施して、3.同帰還が指令値となって実負荷を追従させることを目的としている。
【0031】
また、位置ゲインは、左搬送アクチュエータ22の伸縮動作の停止時における制振制御を実現するための値(第1の位置ゲイン/通常の位置ゲインの値よりも小さい値であって、振動周波数の定数倍以下の値)と、通常の値(第2の位置ゲイン/制振制御を実現するための位置ゲインよりも大きい値)との2つの値が存在し、中央制御装置10の制御部12に格納されている。位置制御モデル211は、伸縮動作の開始から終了までの間に、制振制御を行うための第1の位置ゲインを用いて速度指令を算出し、伸縮動作以外の期間に、補間制御を行うための第2の位置ゲインを用いて速度指令を算出する。
【0032】
尚、中央制御装置10の制御部12は、実際に測定された左搬送アクチュエータ22の振動周波数を用いて、その定数倍以下の値を第1の位置ゲインとして決定する。また、第1の位置ゲインよりも大きい値であって、後述する多軸補間制御及び維持制御を行うために左搬送アクチュエータ22の駆動軸22−Kを回転させるために必要な値を第2の位置ゲインとして決定する。右搬送アクチュエータ32についても同様である。このようにして決定された位置ゲインは、制御部12のメモリに記憶される。
【0033】
減算器202は、位置制御モデル211から速度指令を、負荷モデル214から速度値をそれぞれ入力し、差分値を算出して速度制御モデル212に出力する。速度制御モデル212は、規範モデルの速度制御器であり、減算器202から速度指令と速度値との間の差分値を入力し、予め設定された速度ゲインを用いてその差分値を増幅し、電流指令として減算器203及び加減算器223に出力する。
【0034】
減算器203は、速度制御モデル212から電流指令を、負荷モデル214から電流値をそれぞれ入力し、差分値を算出して電流制御モデル213に出力する。電流制御モデル213は、規範モデルの電流制御器であり、減算器203から電流指令と電流値との間の差分値を入力し、予め設定された電流ゲインを用いてその差分値を増幅し、操作量として負荷モデル214に出力する。
【0035】
また、減算器221は、負荷モデル214から位置情報を、モータ21及び左搬送アクチュエータ22の実負荷から位置情報をそれぞれ入力し、差分値を算出して位置制御器231に出力する。位置制御器231は、減算器221から負荷モデル214と実負荷とのの間の位置情報の差分値を入力し、予め設定された位置ゲインを用いてその差分値を増幅し、速度指令として加減算器222に出力する。
【0036】
加減算器222は、位置制御モデル211から速度指令を、位置制御器231から速度指令を、モータ21及び左搬送アクチュエータ22の実負荷から速度値をそれぞれ入力し、2つの速度指令を加算し、その加算結果と実負荷からの速度値との間の差分値を算出して速度制御器232に出力する。速度制御器232は、加減算器222から速度指令と速度値との間の差分値を入力し、予め設定された速度ゲインを用いてその差分値を増幅し、電流指令として加減算器223に出力する。
【0037】
加減算器223は、速度制御モデル212から電流指令を、速度制御器232から電流指令を、モータ21及び左搬送アクチュエータ22の実負荷から電流値をそれぞれ入力し、2つの電流指令を加算し、その加算結果と実負荷からの電流値との間の差分値を算出して電流制御器233に出力する。電流制御器233は、加減算器223から電流指令と電流値との間の差分値を入力し、予め設定された電流ゲインを用いてその差分値を増幅し、操作量としてモータ21に出力する。
【0038】
(旋回アクチュエータ制御装置の構成)
次に、モータ制御装置1における旋回アクチュエータ制御装置40の構成について説明する。図3は、図1に示した旋回アクチュエータ制御装置40の構成を示すブロック図である。この旋回アクチュエータ制御装置40は、減算器401,402,403,421、加減算器422,423、位置制御モデル411、速度制御モデル412、電流制御モデル413、負荷モデル414、位置制御器431、速度制御器432及び電流制御器433を備えており、中央制御装置10から位置指令を入力し、操作量を算出してモータ41へ出力すると共に、モータ41及び旋回アクチュエータ42の実負荷からモータ電流値、モータ回転速度値及び旋回アクチュエータ42の位置情報を入力する。
【0039】
図2に示した左搬送アクチュエータ制御装置20の構成と、この旋回アクチュエータ制御装置40の構成とを比較すると、左搬送アクチュエータ制御装置20の位置制御モデル211は、中央制御装置10から位置ゲインを入力し、入力した位置ゲインを用いて速度指令を算出するのに対し、旋回アクチュエータ制御装置40の位置制御モデル411は、予め設定された位置ゲインを用いて速度指令を算出する点で相違する。その他の構成要素は同じであるため、旋回アクチュエータ制御装置40の構成の説明は省略する。
【0040】
〔モータ制御装置の処理〕
次に、図1に示したモータ制御装置1の処理について説明する。図4は、図1に示したモータ制御装置1の処理による左搬送アクチュエータ22、右搬送アクチュエータ32及び旋回アクチュエータ42の動作例を示す図である。また、図5は、図4に示す動作と、左搬送アクチュエータ制御装置20、右搬送アクチュエータ制御装置30及び旋回アクチュエータ制御装置40により行われる制御との間の関係を示す図である。図4(1)は、左搬送アクチュエータ22及び右搬送アクチュエータ32がX軸のマイナス方向を向いており、かつ縮んでいる状態にある(両搬送アクチュエータ22,32の先端部分22−S,32−Sが縮み位置にある)ことを示している。
【0041】
図4(2)は、左搬送アクチュエータ22、右搬送アクチュエータ32及び旋回アクチュエータ42が(1)の状態から中央の丸印(駆動軸)を中心にして右90°旋回した結果、左搬送アクチュエータ22及び右搬送アクチュエータ32がY軸のマイナス方向を向いており、かつ縮んでいる状態にある(両搬送アクチュエータ22,32の先端部分22−S,32−Sが縮み位置にある)ことを示している。図5を参照して、(1)から(2)への状態変化に際し、旋回アクチュエータ制御装置40は旋回制御及び多軸補間制御を行い、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は、旋回アクチュエータ42の駆動軸42−Kの回転に伴う多軸補間制御を行う。この多軸補間制御は、旋回アクチュエータ42の駆動軸42−K、左搬送アクチュエータ22の駆動軸22−K及び右搬送アクチュエータ32の駆動軸32−Kがそれぞれ同期して回転動作するための制御である。
【0042】
図4(3)は、右搬送アクチュエータ32が(2)の状態から伸び位置まで移動した結果、左搬送アクチュエータ22及び右搬送アクチュエータ32がY軸のマイナス方向を向いており、左搬送アクチュエータ22が縮んでいる状態にあり、右搬送アクチュエータ32が伸びている状態にある(左搬送アクチュエータ22の先端部分22−Sが縮み位置にあり、右搬送アクチュエータ32の先端部分32−Sが伸び位置にある)ことを示している。図5を参照して、(2)から(3)への状態変化に際し、右搬送アクチュエータ制御装置30は制振制御を行い、左搬送アクチュエータ制御装置20及び旋回アクチュエータ制御装置40は、右搬送アクチュエータ32の駆動軸32−Kの回転の影響を排除し、現在位置を維持するための維持制御を行う。左搬送アクチュエータ制御装置20による維持制御は、左搬送アクチュエータ22の駆動軸22−Kを回転させないように、左搬送アクチュエータ22の現在位置を維持するための制御である。同様に、旋回アクチュエータ制御装置40による維持制御は、旋回アクチュエータ42の駆動軸42−Kを回転させないように、旋回アクチュエータ42の現在位置を維持するための制御である。
【0043】
図4(4)は、左搬送アクチュエータ22が(3)の状態から伸び位置まで移動し、右搬送アクチュエータ32が(3)の状態から縮み位置まで移動した結果、左搬送アクチュエータ22及び右搬送アクチュエータ32がY軸のマイナス方向を向いており、左搬送アクチュエータ22が伸びている状態にあり、右搬送アクチュエータ32が縮んでいる状態にある(左搬送アクチュエータ22の先端部分22−Sが伸び位置にあり、右搬送アクチュエータ32の先端部分32−Sが縮み位置にある)ことを示している。図5を参照して、(3)から(4)への状態変化に際し、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は制振制御を行い、旋回アクチュエータ制御装置40は、左搬送アクチュエータ22の駆動軸22−Kの回転及び右搬送アクチュエータ32の駆動軸32−Kの回転の影響を排除し、現在位置を維持するための維持制御を行う。旋回アクチュエータ制御装置40による維持制御は、旋回アクチュエータ42の駆動軸42−Kを回転させないように、旋回アクチュエータ42の現在位置を維持するための制御である。
【0044】
図4(5)は、左搬送アクチュエータ22が(4)の状態から縮み位置まで移動した結果、左搬送アクチュエータ22及び右搬送アクチュエータ32がY軸のマイナス方向を向いており、かつ縮んでいる状態にある(両搬送アクチュエータ22,32の先端部分22−S,32−Sが縮み位置にある)ことを示している。図5を参照して、(4)から(5)への状態変化に際し、左搬送アクチュエータ制御装置20は制振制御を行い、右搬送アクチュエータ制御装置30及び旋回アクチュエータ制御装置40は、左搬送アクチュエータ制御装置20の駆動軸22−Kの回転の影響を排除し、現在位置を維持するための維持制御を行う。右搬送アクチュエータ制御装置30による維持制御は、右搬送アクチュエータ32の駆動軸32−Kを回転させないように、右搬送アクチュエータ32の現在位置を維持するための制御である。同様に、旋回アクチュエータ制御装置40による維持制御は、旋回アクチュエータ42の駆動軸42−Kを回転させないように、旋回アクチュエータ42の現在位置を維持するための制御である。
【0045】
図4(6)は、左搬送アクチュエータ22、右搬送アクチュエータ32及び旋回アクチュエータ42が(5)の状態から中央の丸印(駆動軸)を中心にして右90°旋回した結果、左搬送アクチュエータ22及び右搬送アクチュエータ32がY軸のプラス方向を向いており、かつ縮んでいる状態にある(両搬送アクチュエータ22,32の先端部分22−S,32−Sが縮み位置にある)ことを示している。図5を参照して、(5)から(6)への状態変化に際し、旋回アクチュエータ制御装置40は旋回制御及び多軸補間制御を行い、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は、旋回アクチュエータ42の駆動軸42−Kの回転に伴う多軸補間制御を行う。この多軸補間制御は、旋回アクチュエータ42の駆動軸42−K、左搬送アクチュエータ22の駆動軸22−K及び右搬送アクチュエータ32の駆動軸32−Kがそれぞれ同期して回転動作するための制御である。
【0046】
(全体フロー)
次に、図4に示した動作を実現するモータ制御装置1の処理について具体的に説明する。まず、モータ制御装置1の処理による全体フローについて説明する。図6は、モータ制御装置1における中央制御装置10の制御部11の処理による全体フローを示す図である。
【0047】
制御部11は、動作受付の処理を開始すると、受け付けた動作指令の内容を解釈し、その動作指令の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の前処理を行う(ステップS601)。例えば、動作指令がモータ制御装置1の動作として許容されている内容であるか否かを判定し、許容されていない内容である場合は異常を検知する。
【0048】
そして、制御部11は、動作指令による処理を判断する(ステップS602)。ステップS602において、その動作指令が旋回動作に関する指令、アクチュエータ伸び動作に関する指令、アクチュエータ縮み動作に関する指令、アクチュエータ同時動作に関する指令、またはその他の動作に関する指令であると判断した場合(ステップS602:Y)、旋回動作(ステップS603)、アクチュエータ伸び動作(ステップS604)、アクチュエータ縮み動作(ステップS605)、アクチュエータ同時動作(ステップS606)、またはその他の動作(ステップS607)の処理を行う。一方、ステップS602において、その動作指令が旋回動作に関する指令等でないと判断した場合(ステップS602:N)、異常処理を行う(ステップS608)。
【0049】
そして、制御部11は、ステップS603〜ステップS607の処理の後、動作結果の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行し、動作結果レポートを出力する等の後処理を行う(ステップS609)。例えば、ステップS603において右90°の旋回動作の処理を行った後、全アクチュエータ22,32,42が右90°の旋回を完了できたか否かを判定し、旋回を完了できなかった場合は異常を検知する。
【0050】
(旋回動作フロー)
次に、図6に示した全体フローにおける旋回動作(ステップS603)の処理について詳細に説明する。図7は、その旋回動作フロー(図4において(1)の状態から(2)の状態に変化させる処理)を示す図である。
【0051】
制御部11は、図6のステップS603において旋回動作指令の処理を開始すると、その旋回動作指令の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の前処理を行う(ステップS701)。ここでの旋回動作指令は、各アクチュエータ22,32,42を原点位置(図4の(1))から右に90°旋回させる指令である。したがって、制御部11は、前処理により、左搬送アクチュエータ22及び右搬送アクチュエータ32が縮み位置にある等の原点位置から右に90°旋回させるための条件を満たしていることを検証する。
【0052】
そして、制御部11は、旋回動作指令に基づいて旋回軸同期動作指令を生成し、その指令を制御部12に出力する(ステップS702)。ここで、旋回軸同期動作指令は、旋回アクチュエータ42が原点位置から右90°旋回するのに伴い、左搬送アクチュエータ22及び右搬送アクチュエータ32もそれに同期して原点位置から右90°旋回すること示す、角度を単位とした指令である。
【0053】
制御部12は、制御部11から旋回軸同期動作指令を入力すると、旋回制御の処理を開始する(ステップS703)。具体的には、旋回軸同期指令信号に基づいて、旋回アクチュエータ制御装置40、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30毎の位置指令を生成して出力する。
【0054】
図11は、制御部12がステップS703において出力する位置指令を示す図である。図11に示すように、制御部12は、右回り90°の位置指令を旋回アクチュエータ制御装置40に出力すると共に、右回り90°に相当する距離の位置指令を左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30に出力する。ここで、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30に出力される位置指令が右回り90°に相当する位置の位置指令になっているのは、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30が、左搬送アクチュエータ22の先端部分22−S及び右搬送アクチュエータ32の先端部分32−Sの移動距離を単位とした位置指令を入力するようになっているからである。すなわち、右回り90°に相当する距離の位置指令は、左搬送アクチュエータ22及び右搬送アクチュエータ32の駆動軸22−K,32−Kが右に90°回転したときに移動する先端部分22−S,32−Sの移動距離に相当する指令である。この場合、駆動軸22−K,32−Kは駆動軸42−Kと共に同期して回転するから、左搬送アクチュエータ22及び右搬送アクチュエータ32の伸縮方向の移動はない。
【0055】
図7に戻って、旋回アクチュエータ制御装置40は、制御部12から右回り90°の位置指令を入力し、モータ41を用いて旋回制御及び多軸補間制御を行い、旋回軸である駆動軸42−Kを主軸として右回り90°回転させる(ステップS704)。また、左搬送アクチュエータ制御装置20は、制御部12から右回り90°に相当する距離の位置指令を入力し、通常の位置ゲイン(制振制御を実現するために位置ゲインよりも大きい値)を用いてモータ21により、駆動軸22−Kを駆動軸42−K(主軸)の従軸として右回り90°回転させる(ステップS705)。また、右搬送アクチュエータ制御装置30は、制御部12から右回り90°に相当する距離の位置指令を入力し、通常の位置ゲインを用いてモータ31により、駆動軸32−Kを駆動軸42−K(主軸)の従軸として右回り90°回転させる(ステップS706)。これにより、左搬送アクチュエータ22の駆動軸22−K及び右搬送アクチュエータ32の駆動軸32−Kにおける旋回アクチュエータ42の駆動軸42−Kに対する相対位置を維持させることができるから、左搬送アクチュエータ22及び右搬送アクチュエータ32は伸縮しない。ここで、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30による回転動作は、旋回アクチュエータ制御装置40の旋回制御に従って行われ、旋回アクチュエータ制御装置40による旋回動作は、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30による回転動作と共に行われることから、これらの制御は、図5に示したように、それぞれ多軸補間制御となる。これにより、図4に示したように、(1)の状態から(2)の状態に変化させることができる。そして、旋回アクチュエータ制御装置40、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は、各動作が完了すると、指令完了をそれぞれ制御部12に出力する。
【0056】
制御部12は、旋回アクチュエータ制御装置40、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30から指令完了をそれぞれ入力すると、旋回制御の処理を完了し、指令完了を制御部11に出力する(ステップS707)。
【0057】
制御部11は、制御部12から指令完了を入力すると、動作結果の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の後処理を行う(ステップS708)。
【0058】
尚、前述した旋回動作フローは、図4において(5)の状態から(6)の状態に変化させる処理を示すフローでもある。
【0059】
(右搬送アクチュエータ伸び動作フロー)
次に、図6に示した全体フローにおけるアクチュエータ伸び動作(ステップS604)の処理について詳細に説明する。図8は、その右搬送アクチュエータ伸び動作フロー(図4において(2)の状態から(3)の状態に変化させる処理)を示す図である。
【0060】
制御部11は、図6のステップS604において右搬送アクチュエータ伸び指令の処理を開始すると、その右搬送アクチュエータ伸び指令の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の前処理を行う(ステップS801)。ここでの右搬送アクチュエータ伸び指令は、右搬送アクチュエータ32の先端部分32−Sを縮み位置から伸び位置へ移動させる指令である。したがって、制御部11は、前処理により、右搬送アクチュエータ32の先端部分32−Sを縮み位置から伸び位置へ移動させるための条件を満たしていることを検証する。
【0061】
そして、制御部11は、右軸の制振制御をオン(開始)し、右軸制振制御オン指令を制御部12に出力する(ステップS802)。制御部12は、制御部11から右軸制振制御オン指令を入力すると、予め設定された制振制御用の位置ゲインを右軸制御切替指令として右搬送アクチュエータ制御装置30に出力する(ステップS803)。
【0062】
図12は、制御部12がステップS803及び後述するステップS807において出力する位置ゲイン及び位置指令を示す図である。図12に示すように、制御部12は、制振制御用の位置ゲインを右軸制御切替指令として右搬送アクチュエータ制御装置30に出力する。
【0063】
ここで、右搬送アクチュエータ制御装置30は、右搬送アクチュエータ32の伸縮動作時に発生する振動を抑制するための位置ゲイン(制振制御用の位置ゲイン)と、伸縮動作以外の補間制御時に使用する位置ゲイン(通常の位置ゲイン)とのいずれかを用いて制御を行う。この制振制御用の位置ゲインは、前述したように、通常の位置ゲインよりも小さい値であって、共振周波数の定数倍以下の値である。尚、左搬送アクチュエータ制御装置20も、右搬送アクチュエータ制御装置30と同様に、左搬送アクチュエータ22の伸縮動作時に発生する振動を抑制するための制振制御用の位置ゲインと、伸縮動作以外の補間制御時に使用する通常の位置ゲインとのいずれかを用いて制御を行う。
【0064】
図8に戻って、右搬送アクチュエータ制御装置30は、制御部12から右軸制御切替指令として制振制御用の位置ゲインを入力すると、右軸制御切替を実行し、右軸制御切替指令完了を制御部12に出力する(ステップS804)。具体的には、右搬送アクチュエータ制御装置30は、図2に示した位置制御モデル211に相当する位置制御モデルがその制振制御用の位置ゲインを用いて処理するように、入力した位置ゲインを格納する。制御部12は、右軸制御切替指令完了を右搬送アクチュエータ制御装置30から入力すると、右軸制御切替の受付を完了し、右軸制御切替受付完了を制御部11に出力する(ステップS805)。
【0065】
制御部11は、制御部12から右軸制御切替受付完了を入力すると、右搬送アクチュエータ伸び指令に基づいて右軸移動指令を生成し、その指令を制御部12に出力する(ステップS806)。ここで、右軸移動指令は、右搬送アクチュエータ32の駆動軸32−Kを回転させて、その先端部分32−Sを縮み位置から伸び位置へ移動させることを示す、距離を単位とした指令である。
【0066】
制御部12は、制御部11から右軸移動指令を入力すると、右軸移動制御の処理を開始する(ステップS807)。具体的には、制御部12は、右軸移動指令に基づいて、右搬送アクチュエータ制御装置30、旋回アクチュエータ制御装置40及び左搬送アクチュエータ制御装置20毎の位置指令を生成する。そして、図12に示すように、縮み位置から伸び位置へ移動させるための位置指令を右搬送アクチュエータ制御装置30に出力すると共に、角度を変化させないで現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力し、位置を変化させないで現状を維持するための距離0の位置指令を左搬送アクチュエータ制御装置20に出力する。
【0067】
図8に戻って、右搬送アクチュエータ制御装置30は、制御部12から縮み位置から伸び位置へ移動させるための位置指令を入力すると、モータ31により駆動軸32−Kを回転させ、右搬送アクチュエータ32の先端部分32−Sが伸び位置で停止するように位置制御を行う。この場合、右搬送アクチュエータ制御装置30は、制振制御用の位置ゲイン(通常よりも小さい値)を用いてモータ31を制御し、制振制御を行う(ステップS810)。
【0068】
また、旋回アクチュエータ制御装置40は、制御部12から角度を変化させないで現状を維持するための0°の位置指令を入力し、モータ41により駆動軸42−Kの現在位置を維持させる(ステップS808)。具体的には、右搬送アクチュエータ32の駆動軸32−Kの回転に伴って、旋回アクチュエータ42の駆動軸42−Kもその影響を受けて回転してしまうから、駆動軸42−Kをその逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。
【0069】
また、左搬送アクチュエータ制御装置20は、制御部12から位置を変化させないで現状を維持するための距離0の位置指令を入力し、モータ21により駆動軸22−Kの現在位置を維持させる(ステップS809)。具体的には、右搬送アクチュエータ32の駆動軸32−Kの回転に伴い、左搬送アクチュエータ22の駆動軸22−Kもその影響を受けて回転してしまうから、駆動軸22−Kをその逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。この場合、左搬送アクチュエータ制御装置20は、通常の位置ゲイン(制振制御用の位置ゲインよりも大きい値)を用いてモータ21を制御する。
【0070】
ここで、旋回アクチュエータ制御装置40及び左搬送アクチュエータ制御装置20による回転動作は、右搬送アクチュエータ制御装置30の位置制御に従って行われることから、図5に示したように、多軸の影響を排除し、現在位置を維持するための維持制御となる。そして、右搬送アクチュエータ制御装置30、旋回アクチュエータ制御装置40及び左搬送アクチュエータ制御装置20は、各動作が完了すると、指令完了をそれぞれ制御部12に出力する。
【0071】
制御部12は、右搬送アクチュエータ制御装置30、旋回アクチュエータ制御装置40及び左搬送アクチュエータ制御装置20から指令完了をそれぞれ入力すると、右軸移動制御の処理を完了し、指令完了を制御部11に出力する(ステップS811)。
【0072】
制御部11は、制御部12から指令完了を入力すると、動作結果の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の後処理を行う(ステップS812)。
【0073】
(右搬送アクチュエータ及び左搬送アクチュエータ同時動作フロー)
次に、図6に示した全体フローにおける同時動作(ステップS606)の処理について詳細に説明する。図9−1は、その同時動作における左搬送アクチュエータ伸び動作フローを示す図であり、図9−2は、その同時動作における右搬送アクチュエータ縮み動作フローを示す図である。これらのフローは、図4において(3)の状態から(4)の状態に変化させる処理を示している。
【0074】
図9−1を参照して、制御部11は、図6のステップS606において同時動作指令の処理を開始すると、その同時動作指令の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の前処理を行う(ステップS901)。ここでの同時動作指令は、左搬送アクチュエータ22の先端部分22−Sを縮み位置から伸び位置へ移動させると共に、右搬送アクチュエータ32の先端部分32−Sを伸び位置から縮み位置へ移動させる指令である。したがって、制御部11は、前処理により、左搬送アクチュエータ22の先端部分22−Sを縮み位置から伸び位置へ移動させるための条件を満たし、かつ、右搬送アクチュエータ32の先端部分32−Sを伸び位置から縮み位置へ移動させるための条件を満たしていることを検証する。
【0075】
そして、制御部11は、左軸の制振制御をオン(開始)し、左軸制振制御オン指令を制御部12に出力する(ステップS902)。制御部12は、制御部11から左軸制振制御オン指令を入力すると、予め設定された制振制御用の位置ゲインを左軸制御切替指令として左搬送アクチュエータ制御装置20に出力する(ステップS903)。
【0076】
図13は、制御部12がステップS903、後述するステップS907、ステップS913及びステップS919において出力する位置ゲイン及び位置指令を示す図である。図13に示すように、制御部12は、制振制御用の位置ゲインを左軸制御切替指令として左搬送アクチュエータ制御装置20に出力する。
【0077】
図9−1に戻って、左搬送アクチュエータ制御装置20は、制御部12から左軸制御切替指令として制振制御用の位置ゲインを入力すると、左軸制御切替を実行し、左軸制御切替指令完了を制御部12に出力する(ステップS904)。具体的には、左搬送アクチュエータ制御装置20は、図2に示した位置制御モデル211がその制振制御用の位置ゲインを用いて処理するように、入力した位置ゲインを格納する。制御部12は、左軸制御切替指令完了を左搬送アクチュエータ制御装置20から入力すると、左軸制御切替の受付を完了し、左軸制御切替受付完了を制御部11に出力する(ステップS905)。
【0078】
制御部11は、制御部12から右軸制御切替受付完了を入力すると、同時動作指令のうちの左搬送アクチュエータ伸び指令に基づいて左軸移動指令を生成し、その指令を制御部12に出力する(ステップS906)。ここで、左軸移動指令は、左搬送アクチュエータ22の駆動軸22−Kを回転させて、その先端部分22−Sを縮み位置から伸び位置へ移動させることを示す、距離を単位とした指令である。
【0079】
制御部12は、制御部11から同時動作指令における左軸移動指令を入力すると、左軸移動制御の処理を開始する(ステップS907)。具体的には、制御部12は、同時動作指令における左軸移動指令に基づいて、左搬送アクチュエータ制御装置20及び旋回アクチュエータ制御装置40の位置指令を生成する。そして、図13に示すように、縮み位置から伸び位置へ移動させるための位置指令を左搬送アクチュエータ制御装置20に出力すると共に、角度を変化させないで現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力する。
【0080】
図9−1に戻って、左搬送アクチュエータ制御装置20は、制御部12から縮み位置から伸び位置へ移動させるための位置指令を入力すると、モータ21により駆動軸22−Kを回転させ、左搬送アクチュエータ22の先端部分22−Sが伸び位置で停止するように位置制御を行う。この場合、左搬送アクチュエータ制御装置20は、制振制御用の位置ゲイン(通常よりも小さい値)を用いてモータ21を制御し、制振制御を行う(ステップS909)。
【0081】
また、旋回アクチュエータ制御装置40は、制御部12から角度を変化させないで現状を維持するための0°の位置指令を入力し、モータ41を用いて駆動軸42−Kの現在位置を維持させる(ステップS908)。具体的には、左搬送アクチュエータ22の駆動軸22−Kの回転に伴って、旋回アクチュエータ42の駆動軸42−Kもその影響を受けて回転してしまうから、駆動軸42−Kをその逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。
【0082】
尚、制御部12は、位置を変化させないで現状を維持するための距離0の位置指令を右搬送アクチュエータ制御装置30に出力しない。右搬送アクチュエータ制御装置30は、同時動作指令のうちの右搬送アクチュエータ縮み指令により、位置制御を行っており、右搬送アクチュエータ32が移動中だからである(ステップS910)。
【0083】
ここで、旋回アクチュエータ制御装置40による回転動作は、左搬送アクチュエータ制御装置20の位置制御に従って行われることから、図5に示したように、多軸の影響を排除し、現在位置を維持するための維持制御となる。そして、左搬送アクチュエータ制御装置20及び旋回アクチュエータ制御装置40は、各動作が完了すると、指令完了をそれぞれ制御部12に出力する。
【0084】
制御部12は、左搬送アクチュエータ制御装置20及び旋回アクチュエータ制御装置40から指令完了をそれぞれ入力すると、左軸移動制御の処理を完了し、指令完了を制御部11に出力する(ステップS911)。
【0085】
一方、ステップS905の後、図9−2を参照して、制御部11は、制御部12から右軸制御切替受付完了を入力すると、同時動作指令のうちの右搬送アクチュエータ縮み指令に基づいて右軸移動指令を生成し、その指令を制御部12に出力する(ステップS912)。ここで、右軸移動指令は、右搬送アクチュエータ32の駆動軸32−Kを回転させて、その先端部分32−Sを伸び位置から縮み位置へ移動させることを示す、距離を単位とした指令である。
【0086】
制御部12は、制御部11から右軸移動指令を入力すると、右軸移動制御の処理を開始する(ステップS913)。具体的には、制御部12は、右軸移動指令に基づいて、右搬送アクチュエータ制御装置30及び旋回アクチュエータ制御装置40毎の位置指令を生成する。そして、図13に示すように、伸び位置から縮み位置へ移動させるための位置指令を右搬送アクチュエータ制御装置30に出力すると共に、角度を変化させないで現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力する。
【0087】
図9−2に戻って、右搬送アクチュエータ制御装置30は、制御部12から伸び位置から縮み位置へ移動させるための位置指令を入力すると、モータ31により駆動軸32−Kを回転させ、右搬送アクチュエータ32の先端部分32−Sが縮み位置で停止するように位置制御を行う。この場合、左搬送アクチュエータ制御装置20は、制振制御用の位置ゲイン(通常よりも小さい値)を用いてモータ21を制御し、制振制御を行う(ステップS916)。
【0088】
また、旋回アクチュエータ制御装置40は、制御部12から角度を変化させないで現状を維持するための0°の位置指令を入力し、モータ41を用いて駆動軸42−Kの現在位置を維持させる(ステップS914)。具体的には、右搬送アクチュエータ32の駆動軸32−Kの回転に伴って、旋回アクチュエータ42の駆動軸42−Kもその影響を受けて回転してしまうから、駆動軸42−Kをその逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。
【0089】
尚、制御部12は、位置を変化させないで現状を維持するための距離0の位置指令を左搬送アクチュエータ制御装置20に出力しない。左搬送アクチュエータ制御装置20は、同時動作指令のうちの左搬送アクチュエータ伸び指令により、位置制御を行っており、左搬送アクチュエータ22が移動中だからである(ステップS910)。
【0090】
ここで、旋回アクチュエータ制御装置40による回転動作は、右搬送アクチュエータ制御装置30の位置制御に従って行われることから、図5に示したように、多軸の影響を排除し、現在位置を維持するための維持制御となる。そして、右搬送アクチュエータ制御装置30及び旋回アクチュエータ制御装置40は、各動作が完了すると、指令完了をそれぞれ制御部12に出力する。
【0091】
制御部12は、右搬送アクチュエータ制御装置30及び旋回アクチュエータ制御装置40から指令完了をそれぞれ入力すると、右軸移動制御の処理を完了し、指令完了を制御部11に出力する(ステップS917)。
【0092】
制御部11は、制御部12から指令完了を入力すると、右軸の制振制御をオフ(終了)し、右軸制振制御オフ指令を制御部12に出力する(ステップS918)。制御部12は、制御部11から右軸制振制御オフ指令を入力すると、図13に示すように、予め設定された通常の位置ゲインを右軸制御切替指令として右搬送アクチュエータ制御装置30に出力する(ステップS919)。
【0093】
図9−2に戻って、右搬送アクチュエータ制御装置30は、制御部12から右軸制御切替指令として通常の位置ゲインを入力すると、右軸制御切替を実行し、右軸制御切替指令完了を制御部12に出力する(ステップS920)。具体的には、右搬送アクチュエータ制御装置30は、図2に示した位置制御モデル211に相当する位置制御モデルがその通常の位置ゲインを用いて処理するように、入力した位置ゲインを格納する。制御部12は、右軸制御切替指令完了を右搬送アクチュエータ制御装置30から入力すると、右軸制御切替の受付を完了し、右軸制御切替受付完了を制御部11に出力する(ステップS921)。
【0094】
そして、図9−1に戻って、制御部11は、制御部12からステップS911における指令完了、及びステップS921における右軸制御切替受付完了をそれぞれ入力すると(ステップS922)、動作結果の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の後処理を行う(ステップS923)。
【0095】
(左搬送アクチュエータ縮み動作フロー)
次に、図6に示した全体フローにおけるアクチュエータ縮み動作(ステップS605)の処理について詳細に説明する。図10は、その左搬送アクチュエータ縮み動作フロー(図4において(4)の状態から(5)の状態に変化させる処理)を示す図である。
【0096】
制御部11は、図6のステップS605において左搬送アクチュエータ縮み指令の処理を開始すると、その左搬送アクチュエータ縮み指令の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の前処理を行う(ステップS1001)。ここでの左アクチュエータ縮み指令は、左搬送アクチュエータ22の先端部分22−Sを伸び位置から縮み位置へ移動させる指令である。したがって、制御部11は、前処理により、左搬送アクチュエータ22の先端部分22−Sを伸び位置から縮み位置へ移動させるための条件を満たしていることを検証する。
【0097】
制御部11は、左搬送アクチュエータ縮み指令に基づいて左軸移動指令を生成し、その指令を制御部12に出力する(ステップS1002)。ここで、左軸移動指令は、左搬送アクチュエータ22の駆動軸22−Kを回転させて、その先端部分22−Sを伸び位置から縮み位置へ移動させることを示す、距離を単位とした指令である。
【0098】
制御部12は、制御部11から左軸移動指令を入力すると、左軸移動制御の処理を開始する(ステップS1003)。具体的には、左軸移動指令に基づいて、左搬送アクチュエータ制御装置20、旋回アクチュエータ制御装置40及び右搬送アクチュエータ制御装置30毎の位置指令を生成して出力する。
【0099】
図14は、制御部12がステップS1003及び後述するステップS1009において出力する位置指令及び位置ゲインを示す図である。図14に示すように、制御部12は、伸び位置から縮み位置へ移動させるための位置指令を左搬送アクチュエータ制御装置20に出力すると共に、角度を変化させないで現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力し、位置を変化させないで現状を維持するための距離0の位置指令を右搬送アクチュエータ制御装置30に出力する。
【0100】
図10に戻って、左搬送アクチュエータ制御装置20は、制御部12から伸び位置から縮み位置へ移動させるための位置指令を入力すると、モータ21により駆動軸22−Kを回転させ、左搬送アクチュエータ22の先端部分22−Sが縮み位置で停止するように位置制御を行う。この場合、右搬送アクチュエータ制御装置30は、制振制御用の位置ゲイン(通常よりも小さい値)を用いてモータ31を制御し、制振制御を行う(ステップS1005)。
【0101】
また、旋回アクチュエータ制御装置40は、制御部12から角度を変化させないで現状を維持するための0°の位置指令を入力し、モータ41を用いて駆動軸42−Kの現在位置を維持させる(ステップS1004)。具体的には、左搬送アクチュエータ22の駆動軸22−Kの回転に伴って、旋回アクチュエータ42の駆動軸42−Kもその影響を受けて回転してしまうから、駆動軸42−Kを逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。
【0102】
また、右搬送アクチュエータ制御装置30は、制御部12から位置を変化させないで現状を維持するための距離0の位置指令を入力し、モータ31を用いて駆動軸32−Kの現在位置を維持させる(ステップS1006)。具体的には、左搬送アクチュエータ22の駆動軸22−Kの回転に伴って、右搬送アクチュエータ32の駆動軸32−Kもその影響を受けて回転してしまうから、駆動軸32−Kを逆方向に回転させることにより、角度を変化させないで現状の角度を維持するように維持制御を行う。この場合、右搬送アクチュエータ制御装置30は、通常の位置ゲイン(制振制御用の位置ゲインよりも大きい値)を用いてモータ31を制御する。
【0103】
ここで、旋回アクチュエータ制御装置40及び右搬送アクチュエータ制御装置30による回転動作は、左搬送アクチュエータ制御装置20の位置制御に従って行われることから、図5に示したように、多軸の影響を排除し、現在位置を維持するための維持制御となる。そして、左搬送アクチュエータ制御装置20、旋回アクチュエータ制御装置40及び右搬送アクチュエータ制御装置30は、各動作が完了すると、指令完了をそれぞれ制御部12に出力する。
【0104】
制御部12は、左搬送アクチュエータ制御装置20、旋回アクチュエータ制御装置40及び右搬送アクチュエータ制御装置30から指令完了をそれぞれ入力すると、左軸移動制御の処理を完了し、指令完了を制御部11に出力する(ステップS1007)。
【0105】
制御部11は、制御部12から指令完了を入力すると、左軸の制振制御をオフ(終了)し、左軸制振制御オフ指令を制御部12に出力する(ステップS1008)。制御部12は、制御部11から左軸制振制御オフ指令を入力すると、図14に示すように、予め設定された通常の位置ゲインを左軸制御切替指令として左搬送アクチュエータ制御装置20に出力する(ステップS1010)。
【0106】
図10に戻って、左搬送アクチュエータ制御装置20は、制御部12から左軸制御切替指令として通常の位置ゲインを入力すると、左軸制御切替を実行し、左軸制御切替指令完了を制御部12に出力する(ステップS1010)。具体的には、左搬送アクチュエータ制御装置20は、図2に示した位置制御モデル211がその通常の位置ゲインを用いて処理するように、入力した位置ゲインを格納する。制御部12は、左軸制御切替指令完了を左搬送アクチュエータ制御装置20から入力すると、左軸制御切替の受付を完了し、左軸制御切替受付完了を制御部11に出力する(ステップS1011)。
【0107】
制御部11は、制御部12から左軸制御切替受付完了を入力すると、動作結果の妥当性を検証することにより、異常を検知し、異常処理のトリガを発行する等の後処理を行う(ステップS1012)。
【0108】
以上のように、本発明の実施の形態によるモータ制御装置1によれば、全アクチュエータ22,32,42を右90°旋回動作させるために、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30が、通常の位置ゲイン(制振制御用の位置ゲインよりも大きい値)を前もって中央制御装置10の制御部12から入力し、中央制御装置10の制御部12が、右回り90°の位置指令を旋回アクチュエータ制御装置40に出力すると共に、右回り90°に相当する距離の位置指令を左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30に出力するようにした。これにより、旋回アクチュエータ制御装置40は、旋回アクチュエータ42の駆動軸42−Kが右回り90°旋回するように旋回制御及び多軸補間制御を行う共に、左搬送アクチュエータ制御装置20及び右搬送アクチュエータ制御装置30は、通常の位置ゲインを用いて左搬送アクチュエータ22及び右搬送アクチュエータ32の駆動軸22−K,32−Kが右回り90°に駆動軸42−Kと同期して旋回するように多軸補間制御を行う。つまり、モータ制御装置1は、全アクチュエータ22,32,42をそれぞれ制御することにより、右90°旋回動作させることができる。したがって、旋回アクチュエータ42の駆動軸42−Kの回転に伴い、左搬送アクチュエータ22及び右搬送アクチュエータ32の駆動軸22−K,32−Kが回転してしまうという影響を低減することが可能となる。
【0109】
また、本発明の実施の形態によるモータ制御装置1によれば、例えば、右搬送アクチュエータ32を伸縮動作させるために、右搬送アクチュエータ制御装置30が、制振制御用の位置ゲイン(通常の位置ゲインよりも小さい値であって、振動周波数の定数倍以下の値)を前もって中央制御装置10の制御部12から入力し、左搬送アクチュエータ制御装置20が、通常の位置ゲインを前もって中央制御装置10の制御部12から入力し、中央制御装置10の制御部12が、縮み位置から伸び位置へ移動させるための位置指令を右搬送アクチュエータ制御装置30に出力すると共に、角度を変化させないで現状を維持するための0°の位置指令を旋回アクチュエータ制御装置40に出力し、位置を変化させないで現状を維持するための距離0の位置指令を左搬送アクチュエータ制御装置20に出力するようにした。これにより、右搬送アクチュエータ制御装置30は、制振制御用の位置ゲインを用いて制振制御を行うと共に、旋回アクチュエータ制御装置40は、旋回アクチュエータ42の駆動軸42−Kが回転しないように維持制御を行い、左搬送アクチュエータ制御装置20は、通常の位置ゲインを用いて左搬送アクチュエータ22の駆動軸22−Kが回転しないように維持制御を行う。つまり、モータ制御装置1は、旋回アクチュエータ42及び左搬送アクチュエータ22を現状の位置に維持させたまま、右搬送アクチュエータ32を伸縮動作させることができる。したがって、右搬送アクチュエータ32の伸縮動作時に発生する振動を抑制することができると共に、右搬送アクチュエータ32の駆動軸32−Kの回転に伴い、旋回アクチュエータ42及び左搬送アクチュエータ22の駆動軸42−K,22−Kが回転してしまうという影響を低減することが可能となる。
【0110】
以上、実施の形態を挙げて本発明を説明したが、本発明は前記実施の形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、前記実施の形態では、モータ制御装置1が3軸を対象として制御を行うようにしたが、3軸に限定されるものではなく、それよりも多い軸を対象として制御を行うようにしてもよい。
【図面の簡単な説明】
【0111】
【図1】本発明の実施の形態に係るモータ制御装置を含む全体システムの概略構成を示す図である。
【図2】図1のモータ制御装置における左(右)搬送アクチュエータ制御装置の構成を示すブロック図である。
【図3】図1のモータ制御装置における旋回アクチュエータ制御装置の構成を示すブロック図である。
【図4】アクチュエータの動作例を示す図である。
【図5】図4の動作と制御との間の関係を示す図である。
【図6】中央制御装置の処理による全体フローを示す図である。
【図7】旋回動作フローを示す図である。
【図8】右搬送アクチュエータ伸び動作フローを示す図である。
【図9−1】同時動作における左搬送アクチュエータ伸び動作フローを示す図である。
【図9−2】同時動作における右搬送アクチュエータ縮み動作フローを示す図である。
【図10】左搬送アクチュエータ縮み動作フローを示す図である。
【図11】旋回動作における指令を示す図である。
【図12】右搬送アクチュエータ伸び動作における指令を示す図である。
【図13】同時動作における指令を示す図である。
【図14】左搬送アクチュエータ縮み動作における指令を示す図である。
【図15】従来のモータ制御装置を含む全体システムの概略構成を示す図である。
【符号の説明】
【0112】
1 モータ制御装置
2 負荷
10 中央制御装置
11,12 制御部
20 左搬送アクチュエータ制御装置
21,31,41 モータ
22 左搬送アクチュエータ
30 右搬送アクチュエータ制御装置
32 右搬送アクチュエータ
40 旋回アクチュエータ制御装置
42 旋回アクチュエータ
201,202,203,221,401,402,403,421 減算器
211,411 位置制御モデル
212,412 速度制御モデル
213,413 電流制御モデル
214,414 負荷モデル
231,431 位置制御器
232,432 速度制御器
233,433 電流制御器
222,223,422,423 加減算器
1001 モータ
1002 機械
1003 モータ制御手段
1004 基準指令値記憶手段
1005 指令値算出手段
1006 時間スケール関数記憶手段
1007 モータ制御モデル
1008 予測モデル
1009 最適化手段
1010 指令値生成手段
1011 トルク許容値
1012 誤差許容値
1013 被制約変数計測手段
1014 第1のトルク最大値検出手段
1015 第2のトルク誤差最大値検出手段
1016 第1の比較手段
1017 第2の比較手段
1018 第1の許容値修正手段
1019 第2の許容値修正手段
1020 第1の修正許容値
1021 第2の修正許容値

【特許請求の範囲】
【請求項1】
所定の物を搬送するための搬送アクチュエータの駆動軸を回転させることにより、前記搬送アクチュエータを伸縮動作させる第1のモータ、及び、旋回アクチュエータの駆動軸を回転させることにより、前記旋回アクチュエータを旋回動作させる第2のモータをそれぞれ制御するモータ制御装置において、
前記搬送アクチュエータが伸縮方向に振動しないように所定の第1の位置ゲインを用いて制振制御を行い、搬送アクチュエータを所定位置に停止させる搬送制御部と、
前記旋回アクチュエータの旋回制御を行い、旋回アクチュエータを所定位置に停止させる旋回制御部と、を備え、
前記搬送アクチュエータを伸縮動作させる場合に、
前記搬送制御部が、第1の位置ゲインを用いて制振制御を行い、
前記旋回制御部が、搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御し、
前記旋回アクチュエータを旋回動作させる場合に、
前記搬送制御部が、旋回アクチュエータの駆動軸の回転に伴い、搬送アクチュエータの駆動軸が旋回アクチュエータの駆動軸に同期して回転するように、第1の位置ゲインよりも大きい第2の位置ゲインを用いて第1のモータを多軸補間制御し、
前記旋回制御部が、前記旋回動作を実現するための旋回制御を行うことを特徴とするモータ制御装置。
【請求項2】
請求項1に記載のモータ制御装置において、
さらに、前記搬送制御部及び旋回制御部に位置指令を出力する中央制御部を備え、
前記中央制御部は、搬送アクチュエータを伸縮動作させるための位置指令として、搬送アクチュエータを所定位置に停止させるための位置指令を搬送制御部に出力すると共に、旋回アクチュエータの位置を維持させるための位置指令を旋回制御部に出力し、旋回アクチュエータを旋回動作させるための指令として、搬送アクチュエータを旋回アクチュエータに同期させるための位置指令を搬送制御部に出力すると共に、旋回アクチュエータを所定位置に停止させるための位置指令を旋回制御部に出力することを特徴とするモータ制御装置。
【請求項3】
請求項1に記載のモータ制御装置において、
搬送アクチュエータと、当該搬送アクチュエータを伸縮動作させる第1のモータと、前記第1のモータを制御する搬送制御部とが、それぞれ対になって複数設けられ、
前記複数の搬送アクチュエータのうちの一つの搬送アクチュエータが伸縮動作する場合に、
前記一つの搬送アクチュエータと対になっている搬送制御部が、前記第1の位置ゲインを用いて制振制御を行い、
前記複数の搬送アクチュエータのうちの他の搬送アクチュエータと対になっている搬送制御部が、前記一つの搬送アクチュエータの駆動軸の回転に伴い、前記他の搬送アクチュエータの駆動軸が回転しないように、前記第1の位置ゲインよりも大きい第2の位置ゲインを用いて、対になっている第1のモータを維持制御し、
前記旋回制御部が、前記一つの搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御することを特徴とするモータ制御装置。
【請求項4】
請求項3に記載のモータ制御装置において、
さらに、前記搬送制御部及び旋回制御部に位置指令を出力する中央制御部を備え、
前記中央制御部は、前記一つの搬送アクチュエータを伸縮動作させるための位置指令として、前記一つの搬送アクチュエータを所定位置に停止させるための位置指令を前記一つの搬送アクチュエータと対になっている搬送制御部に出力すると共に、前記他の搬送アクチュエータの位置を維持させるための位置指令を前記他の搬送アクチュエータと対になっている搬送制御部に出力し、さらに、旋回アクチュエータの位置を維持させるための位置指令を旋回制御部に出力し、旋回アクチュエータを旋回動作させるための指令として、前記全ての搬送アクチュエータを旋回アクチュエータに同期させるための位置指令をそれぞれの搬送制御部に出力すると共に、旋回アクチュエータを所定位置に停止させるための位置指令を旋回制御部に出力することを特徴とするモータ制御装置。
【請求項5】
所定の物を搬送するための搬送アクチュエータの駆動軸を第1のモータにより回転させることにより、前記搬送アクチュエータを伸縮動作させ、旋回アクチュエータの駆動軸を第2のモータにより回転させることにより、前記旋回アクチュエータを旋回動作させるモータ制御方法において、
前記搬送アクチュエータを伸縮動作させるための指令に基づいて、搬送アクチュエータが振動しないように所定の第1の位置ゲインを用いて制振制御を行い、搬送アクチュエータを所定位置に停止させるステップと、
前記搬送アクチュエータの駆動軸の回転に伴い、旋回アクチュエータの駆動軸が回転しないように第2のモータを維持制御するステップと、
前記第1の位置ゲインよりも大きい第2の位置ゲインを設定するステップと、
前記旋回アクチュエータを旋回動作させるための指令に基づいて、前記旋回動作を実現するための旋回制御を行い、旋回アクチュエータを所定位置に停止させるステップと、
前記旋回アクチュエータの駆動軸の回転に伴い、搬送アクチュエータの駆動軸が旋回アクチュエータの駆動軸に同期して回転するように、第2の位置ゲインを用いて第1のモータを多軸補間制御するステップと、
を有することを特徴とするモータ制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9−1】
image rotate

【図9−2】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2009−129042(P2009−129042A)
【公開日】平成21年6月11日(2009.6.11)
【国際特許分類】
【出願番号】特願2007−301239(P2007−301239)
【出願日】平成19年11月21日(2007.11.21)
【出願人】(390014384)日本リライアンス株式会社 (58)
【Fターム(参考)】