ロボットシステム
【課題】モータの駆動を制御する駆動制御手段の制御内容を変更することなく、ロボットの一連の動作時間を短縮しつつ、減速動作時にモータから生じる回生エネルギーを消費する際に発生する熱を低減する。
【解決手段】昇降圧回路29は、入力電圧を昇圧値まで昇圧して出力する昇圧動作と、入力電圧を降圧して出力する降圧動作のうち、いずれかの動作を実行する。制御部27は、加速動作の後に等速動作を経ることなく減速動作が実行される動作パターンに基づいてモータMが駆動される際、加速動作の開始時点から加速動作終盤の切替タイミングまでの昇圧期間に昇圧動作を実行するとともに、切替タイミングから次の加速動作の開始時点までの降圧期間に降圧動作を実行するように昇降圧回路29の動作を制御する。制御部27は、演算により切替タイミングを求めることで昇圧期間の長さを決定する。
【解決手段】昇降圧回路29は、入力電圧を昇圧値まで昇圧して出力する昇圧動作と、入力電圧を降圧して出力する降圧動作のうち、いずれかの動作を実行する。制御部27は、加速動作の後に等速動作を経ることなく減速動作が実行される動作パターンに基づいてモータMが駆動される際、加速動作の開始時点から加速動作終盤の切替タイミングまでの昇圧期間に昇圧動作を実行するとともに、切替タイミングから次の加速動作の開始時点までの降圧期間に降圧動作を実行するように昇降圧回路29の動作を制御する。制御部27は、演算により切替タイミングを求めることで昇圧期間の長さを決定する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットのアームを駆動するモータから減速動作時に回生されるエネルギーを消費するための回生消費回路を備えたロボットシステムに関する。
【背景技術】
【0002】
ロボットの各アーム(各軸)は、それぞれモータにより駆動されるようになっており、これらモータは、コントローラに内蔵されるモータアンプ(駆動手段)により駆動される。モータアンプは、例えばインバータ回路を主体として構成されており、直流電源回路から一対の直流電源線を介して与えられる直流電圧(バス電圧)を所定の周波数を持つ交流電圧に変換してモータへの電力供給を行う。
【0003】
このような構成において、モータを減速動作させる際にはモータ側からモータアンプ側にエネルギーが回生され、これに伴いバス電圧が上昇する。このため、コントローラには、バス電圧が直流電源線に接続される各回路素子(インバータ回路のスイッチング素子、直流電源回路のコンデンサなど)の定格を超えて上昇しないように、上記回生されたエネルギー(回生エネルギー)を熱エネルギーに変換して放出する回生消費回路が設けられている。
【0004】
回生消費回路では、回生電流を直流電源線間に直列に設けられた回生抵抗に流すことで、回生エネルギーを熱エネルギーに変換している。元々、コントローラの内部には、その動作時に発熱を伴う部品が多数設置されているため、通常の動作時においてもある程度の温度上昇が生じているが、上記回生時にはさらに内部温度が上昇することになる。コントローラ内部における温度上昇量が多くなると、その分だけ放熱対策を強化する必要があるため、このような内部温度の上昇は極力抑えることが望ましい。
【0005】
上記回生エネルギーは、モータの減速動作時の加速度に比例するので、その加速度を小さくすればするほど、言い換えれば、減速動作に要する時間(減速時間)を長くすればするほど回生エネルギーに伴い上昇するバス電圧のピーク値を低く抑えることが可能となり、回生消費回路で発生する熱エネルギーを抑制することが可能となる。しかし、減速時間を長くすることは、ロボットの加速、等速、減速という一連の動作サイクルに要する時間(サイクルタイム)を長くすることに繋がる。ロボットが設置される例えば工場などでは、効率的に作業を行うことが重要視されることが多いため、上記のようにサイクルタイムが長くなる事態は好ましくない。
【0006】
このような問題の対策として、減速動作時におけるモータ駆動の制御内容を変更することで回生エネルギーの発生量を調整し、バス電圧の上昇を所定量に抑えつつ、減速時間が長くなることを抑制する技術が考案されている(例えば特許文献1参照)。具体的には、特許文献1記載の技術では、モータ電流をq軸電流(磁束と直交したモータ電流成分)とd軸電流(磁束と平行したモータ電流成分)とに分け、減速動作において、q軸電流を調整してブレーキトルクを制御し、d軸電流を調整して回生エネルギーを制御するようになっている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2002−084780号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ロボットシステムにおいては、各軸に対応する複数のモータの駆動状態をそれぞれ制御することで、ロボットの手先位置を高精度に制御するようになっている。このため、モータの制御内容を減速動作時のみ変更してしまうと、その変更に伴い上記手先位置の制御に誤差が生じてしまう可能性があったり、または制御内容を変更する際の設計が煩雑になったりするなど、種々の問題が生じる。このため、上記特許文献1記載の技術をロボットシステムに適用することは難しい。
【0009】
本発明は上記事情に鑑みてなされたものであり、その目的は、モータの駆動を制御する駆動制御手段の制御内容を変更することなく、ロボットの一連の動作時間を短縮しつつ、減速動作時にモータから生じる回生エネルギーを消費する際に発生する熱を低減することができるロボットシステムを提供することにある。
【課題を解決するための手段】
【0010】
請求項1に記載の手段によれば、ロボットのアームを駆動するモータは、駆動手段によって駆動される。その駆動手段は、一対の直流電源線を介して与えられる直流電圧の供給を受けて動作する。そして、駆動制御手段は、モータの回転速度を回転速度指令に一致させるように駆動手段によるモータの駆動をフィードバック制御する。また、一対の直流電源線間には、回生スイッチ手段および回生抵抗の直列回路からなる回生消費回路が設けられている。そして、回生制御手段は、上記直流電圧を検出する直流電圧検出手段の検出値が回生消費電圧値以下のときには回生スイッチ手段をオフし、上記検出値が回生消費電圧値を超えたときには回生スイッチ手段をオンする。
【0011】
このような構成において、減速動作時にモータから回生されるエネルギー(回生エネルギー)は、直流電源線間に接続されたコンデンサに静電エネルギーとして蓄積される。つまり、モータの減速動作時には、回生エネルギーによりコンデンサが充電され、コンデンサの端子間電圧である上記直流電圧が上昇する。そして、直流電圧(直流電圧検出手段の検出値)が回生消費電圧値を超えると、回生消費回路の回生抵抗に電流を流すことで回生エネルギーを熱エネルギーとして放出し、直流電圧が回生消費電圧値以下になるようにその電圧上昇が抑えられる。前述したとおり、このような回生消費回路の動作時間は、熱の問題や、回生エネルギーの有効利用などの観点から考えると、極力短いほうがよい。
【0012】
一方、昇降圧回路は、昇圧動作および降圧動作のうち、いずれかの動作を実行する。昇圧動作は、直流電源線間の電圧(直流電圧)を目標電圧値に一致させるように昇圧するものである。降圧動作は、直流電源線間の電圧を降圧するものである。そして、電圧制御手段は、回転速度指令を用いてモータの動作状態を判断し、その判断結果に応じて昇降圧回路の動作を制御する。大まかに言うと、電圧制御手段は、モータが加速動作する際には昇降圧回路に昇圧動作を実行させ、モータが減速動作する際には昇降圧回路に降圧動作を実行させる。
【0013】
このようにすれば、加速動作時に直流電圧が昇圧され、その昇圧された直流電圧でもって駆動手段がモータを駆動するので、昇圧動作を実行しない従来の構成に比べ、モータの回転速度、ひいてはアームの動作速度を高めることが可能になる。これにより、ロボットの一連の動作時間(サイクルタイム)の短縮を図ることができる。また、減速動作時に直流電圧が降圧されるので、回生エネルギーにより上昇するコンデンサの端子間電圧(直流電圧)が回生消費電圧値を超えるまでにコンデンサに蓄積可能なエネルギー量が、降圧動作を実行しない従来の構成に比べて多くなる。これに伴い、回生消費回路の動作時間が短くなり、回生消費回路により消費されるエネルギーを低減することができる。
【0014】
しかしながら、加速動作時に直流電圧を昇圧するとともに、減速動作時に直流電圧を降圧するという上記構成を採用する場合、その昇圧動作から降圧動作に移行するタイミングの設定が重要になるケースがある。つまり、加速動作の後、等速動作を経て、減速動作が実行される動作パターンでモータが駆動される場合には、加速動作の終了時点まで昇降圧回路に昇圧動作を実行させていたとしても、等速動作が実行される期間から昇降圧回路に降圧動作を実行させることが可能になる。このような場合、減速動作の開始時点には既に直流電圧が降圧されていることになる。このため、減速動作時において回生エネルギーによる直流電圧の上昇が始まるときには、既に直流電圧が降圧された状態であり、上記した回生消費回路により消費されるエネルギーを低減するという効果が得られる。
【0015】
これに対し、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターンでモータが駆動される場合には、加速動作の終了時点まで昇圧動作を実行させようとすると、減速動作の開始時点から降圧動作が開始されることになる。このような場合、減速動作時において回生エネルギーによる直流電圧の上昇が始まるときには、未だ直流電圧が降圧されていない。このため、回生消費回路の動作時間が長くなり、回生消費回路により消費されるエネルギーを低減するという効果がほとんど得られない。なお、ここで言う「等速動作が実行されることなく」とは、等速動作が完全に実行されない場合だけでなく、等速動作が所定時間未満だけ実行される場合をも含む。そして、その所定時間としては、降圧動作を行ったとしても、直流電圧を十分に降圧できないような時間とする。
【0016】
このような問題を解決するため、本手段の電圧制御手段は、加速動作の後に等速動作を行うことなく減速動作を行うという動作パターンでモータが駆動される際、加速動作が開始される時点(昇圧開始時点)から、モータの回転速度が加速動作における回転速度指令の最高値(最高回転速度指令)に一致する加速動作の終了時点よりも前の時点(昇圧終了時点)までの昇圧期間に、昇降圧回路に昇圧動作を実行させるように制御する。そして、電圧制御手段は、昇圧終了時点から次の昇圧開始時点までの降圧期間に、昇降圧回路に降圧動作を実行させるように制御する。すなわち、電圧制御手段は、加速動作の終了時点より前の昇圧終了時点において、昇圧動作から降圧動作に切り替えるように昇降圧回路の動作を制御するようになっている。
【0017】
ただし、加速動作の終了時点より前に切り替えると言っても、加速動作の終了時点より前であればいつでもよいわけではなく、昇圧動作から降圧動作への切替タイミングである昇圧終了時点の設定が重要となる。切替タイミングが早すぎると、アームの動作速度向上の効果が小さくなり、ロボットのサイクルタイム短縮効果が小さくなる。一方、切替タイミングが遅すぎると、回生時にコンデンサに対して蓄積可能なエネルギー量が少なくなり、回生消費回路の動作時間が長くなる。そこで、本手段では、昇圧終了時点は、回生消費回路の動作時間をほぼゼロにした上で、ロボットのサイクルタイム短縮効果を最大限に得ることができるようなタイミングに設定する。すなわち、本手段では、減速動作時において回生エネルギーにより上昇する直流電圧の値が、回生消費電圧値にちょうど一致するようなタイミングに昇圧終了時点を設定する。
【0018】
このような昇圧終了時点の設定条件を満たすべく、電圧制御手段は、下記(1)式を用いて昇圧終了時点tを求める。(1)式において、上段式の左辺第1項は、直流電圧が回生消費電圧値EPであるときにコンデンサに蓄えられる静電エネルギーから、直流電圧が昇圧値ETであるときにコンデンサに蓄えられる静電エネルギーを減算したものである。ただし、コンデンサの静電容量をCで表している。すなわち、上段式の左辺第1項は、昇降圧回路が昇圧動作を実行している期間(昇圧期間)におけるコンデンサに対し、その端子間電圧が回生消費電圧値に達するまでに蓄積することが可能なエネルギー量に相当する。
【0019】
【数2】
【0020】
(1)式において、上段式の左辺第2項は、回転速度が最高回転速度指令vPに一致した時点(加速動作の終了時点)の運動エネルギーから、昇圧終了時点tの運動エネルギーを減算したものである。ただし、アームの質量をmで表し、昇圧終了時点における速度指令をvCで表し、後述する変数をαで表している。すなわち、上段式の左辺第2項は、昇降圧回路が降圧動作を実行している状態でモータが加速動作する加速動作終盤の期間において消費されるエネルギー量に相当する。また、(1)式において、上段式の右辺は、減速動作時にモータ側から回生されるエネルギー量に相当する。
【0021】
上記各項において、変数αを用いた理由は以下のとおりである。すなわち、これら各項により表されるエネルギー量は、モータの動作に伴って生じるものであるため、機構部品におけるフリクションロス(摩擦による損失)やグリスの粘度などの経時的に変化する要素の影響を受ける。このように、上記各項のエネルギー量は、ロボットにおける機構部分の経時的な変化に応じて、実際の値が変化する可能性がある。上記変数αは、このような変動に応じて生じるエネルギー量の演算誤差を補正することを目的として用いている。従って、上記した経時的な変動が問題にならない初期段階において、変数αの値を所定の初期値に設定し、その後、上記変動に応じて変数αの値を適宜変更していけばよい。
【0022】
要するに(1)式の上段式は、昇圧期間終了後にコンデンサに蓄積可能なエネルギー量と、昇降圧回路が昇圧動作から降圧動作に切り替えられた後の加速動作において消費されるエネルギー量とを足し合わせたエネルギー量が、減速動作時に回生されるエネルギー量に一致する、というものである。このような(1)式を昇圧終了時点の速度指令vCについて解き、その速度指令vC((1)式の中段式)を加速動作時の加速度aで除算することにより、減速動作時に回生エネルギーによって上昇する直流電圧の値が回生消費電圧値にちょうど一致するようなタイミングとなる昇圧終了時点t((1)式の下段式)が得られる。
【0023】
このように、電圧制御手段は、(1)式により昇圧終了時点tを求め、昇降圧回路に昇圧動作を実行させる昇圧期間の長さ、つまり昇圧動作から降圧動作への切替タイミングを決定する。このようにすることで、回生消費回路の動作時間をほぼゼロにした上で、ロボットのサイクルタイム短縮効果が最大限に得られる。従って、本手段によれば、モータの駆動を制御する駆動制御手段の制御内容を変更することなく、ロボットの一連の動作時間を短縮しつつ、減速動作時にモータから生じる回生エネルギーを消費する際に発生する熱を低減することができる。
【0024】
請求項2に記載の手段によれば、電圧制御手段は、前述した動作パターン(加速動作の後に等速動作を行うことなく減速動作を行うという動作パターン)に基づく一連の動作が終了する毎に、その一連の動作における最高回転速度指令と、その一連の動作における実際のモータの回転速度の最高値(最高回転速度)との差を求める。そして、電圧制御手段は、その差が所定の許容誤差値を超える場合には、昇圧終了時点を補正する補正制御を実行する。すなわち、最高回転速度指令と最高回転速度との差が許容誤差値以下になるまでは、一連の動作が終了する毎に補正制御が実行される。
【0025】
さて、請求項1に記載の手段で述べたように、電圧制御手段は、昇圧動作から降圧動作への切替タイミングに相当する昇圧終了時点を、(1)式を用いた演算により求めている。このようにして求められる昇圧終了時点は、あくまでも演算による結果であるため、実際に前述した効果を最大限に得ることが可能な最適な値であるとは限らない。そこで、本手段では、モータを実際に駆動する際、昇圧終了時点を最適な値に近づけるような補正を行う補正制御を実行するようにしている。
【0026】
その補正制御の具体的な内容は以下のとおりである。すなわち、電圧制御手段は、回転速度指令を用いて、一連の動作においてモータの回転速度が最高回転速度指令に一致する時点(推定最高速度時点)を推定する。また、電圧制御手段は、一連の動作においてモータの回転速度が最高回転速度になった時点(実際最高速度時点)を求める。昇圧終了時点が最適な値ではない場合、最高回転速度が、最高回転速度指令より低くなったり、あるいは、高くなったりする。
【0027】
前者の場合、昇圧終了時点が最適な値よりも早い時点であり、速度不足や減速時の加速度が低下することによりサイクルタイムが長くなるといった問題が生じる。このような場合、つまり、最高回転速度が最高回転速度指令より低い場合、そのときの昇圧終了時点を所定の補正量だけ遅らせる。一方、後者の場合、昇圧終了時点が最適な値よりも遅い時点であり、速度超過や減速時の加速度が規定値を上回るといった問題が生じる。このような場合、つまり、最高回転速度が最高回転速度指令より高い場合、そのときの昇圧終了時点を所定の補正量だけ早める。上記補正量は、推定最高速度時点と実際最高速度時点との差の絶対値としている。このような補正制御を、最高回転速度指令と最高回転速度との差が許容誤差値以下となるまで実行することで、昇圧動作から降圧動作への切替タイミングである昇圧終了時点が最適な値に補正され、前述した効果を最大限に得ることができる。
【0028】
請求項3に記載の手段によれば、電圧制御手段は、実際最高速度時点が推定最高速度時点より早い時点になるように、変数αの初期値を設定する。請求項1に記載の手段において、ロボットの機構部分の経時的な変動が問題にならない初期段階では変数αの値を所定の初期値に設定すればよいと述べた。これに対し、本手段では、変数αの初期値は、(1)式による昇圧終了時点の演算結果を、意図的に安全サイドにシフトさせるような値に設定する。
【0029】
さて、昇圧終了時点が最適な値に対して所定の誤差を有する場合、昇圧終了時点が最適な値よりも早い時点となるか、あるいは遅い時点となるかの2通りのパターンが考えられる。昇圧終了時点が最適な値より遅い時点となる場合に生じる問題は、速度超過や加速度定格オーバーなどであり、問題の深刻度は比較的高い。一方、昇圧終了時点が最適な値より早い時点となる場合に生じる問題は、速度不足やサイクルタイムの増加などであり、問題の深刻度は比較的低い。そして、演算により求められる昇圧終了時点は、最適な値になるとは限らず、所定の誤差が生じる可能性がある。
【0030】
このようなことから、本手段では、実際最高速度時点が推定最高速度時点より早い時点となるように、つまり、演算により求められる昇圧終了時点が最適な値よりも早い時点となるように、変数αの初期値を設定する。このようにすることで、昇圧終了時点を演算により求めた後、最初の動作においては、速度不足やサイクルタイムの増加などの比較的深刻度の低い問題が生じることになるが、その後は補正制御により、昇圧終了時点が徐々に最適な値に近づけられることになる。従って、本手段によれば、速度超過や加速度定格オーバーなどの比較的深刻度の高い問題が発生する事態を未然に防止することができる。
【図面の簡単な説明】
【0031】
【図1】本発明の一実施形態を示すロボットシステムの電気構成図
【図2】モータ制御の内容を等価的に示すブロック図
【図3】ロボットシステムの構成を概略的に示す図
【図4】昇圧動作の実行時および非実行時の回転速度およびバス電圧を示す図
【図5】理想的な切替タイミングで昇降圧動作を切り替えた場合の回転速度およびバス電圧を示す図
【図6】コンデンサに蓄えられるエネルギー量を概略的に示す図
【図7】切替タイミングの演算方法を説明するためものであり、回転速度を示す図
【図8】切替タイミングが最適な値と異なる場合における回転速度を示す図
【図9】一連の動作が終了毎に実行される制御内容を示す図
【図10】切替タイミングが最適な値より早い場合における補正例を示す図
【図11】切替タイミングが最適な値より遅い場合における補正例を示す図
【発明を実施するための形態】
【0032】
以下、本発明の一実施形態について図面を参照しながら説明する。
図3は、一般的な産業用ロボットのシステム構成を示している。図3に示すロボットシステム1は、ロボット2と、ロボット2を制御するコントローラ3と、コントローラ3に接続されたティーチングペンダント4とから構成されている。
ロボット2は、例えば6軸の垂直多関節型ロボットとして構成されている。ロボット2は、ベース5と、ベース5に水平方向に回転可能に支持されたショルダ部6と、ショルダ部6に上下方向に回転可能に支持された下アーム7と、下アーム7に上下方向に回転可能に支持された第1の上アーム8と、第1の上アーム8に捻り回転可能に支持された第2の上アーム9と、第2の上アーム9に上下方向に回転可能に支持された手首10と、手首10に捻り回転可能に支持されたフランジ11とから構成されている。
【0033】
ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能し、アーム先端であるフランジ11には、図示はしないが、エンドエフェクタ(手先)が取り付けられる。ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能する。ロボット2の各アーム(複数の軸)はそれぞれに対応して設けられるモータ(図1に符号Mを付して示す)により駆動される。各モータの近傍には、それぞれの回転軸の回転位置を検出するための位置検出器(図示せず)が設けられている。
【0034】
ティーチングペンダント4は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状に形成されている。ティーチングペンダント4には、各種のキースイッチ12が設けられており、使用者は、キースイッチ12により種々の入力操作を行う。ティーチングペンダント4は、ケーブルを経由してコントローラ3に接続され、通信インターフェイスを経由してコントローラ3との間で高速のデータ転送を実行するようになっており、キースイッチ12の操作により入力された操作信号等の情報はティーチングペンダント4からコントローラ3へ送信される。
【0035】
図1は、ロボットシステムの電気構成を概略的に示すブロック図である。ロボット2には、各軸をそれぞれ駆動するための複数のモータM(図1では1つのみ示す)が設けられている。モータMは例えばブラシレスDCモータである。コントローラ3には、交流電源21より供給される交流を整流および平滑して出力する直流電源回路22、回生消費回路23、モータMを駆動するインバータ装置24、電流検出部25、位置検出部26およびこれら各装置の制御などを行う制御部27が設けられている。
【0036】
直流電源回路22は、整流回路28、昇降圧回路29および平滑用のコンデンサ30から構成されている。整流回路28は、ダイオードをブリッジの形態に接続してなる周知構成のものである。例えば3相200Vの交流電源21の各相出力は、整流回路28の交流入力端子に接続されている。整流回路28の直流出力端子は、それぞれ入力電源線31および基準電源線32に接続されている。
【0037】
昇降圧回路29は、トランジスタQ1、Q2、インダクタL1およびダイオードD1、D2を備えている。トランジスタQ1は、Nチャネル型のパワーMOSFETであり、そのドレインは入力電源線31に接続され、そのソースはインダクタL1の一方の端子に接続されている。ダイオードD1は、インダクタL1の一方の端子と基準電源線32との間に、基準電源線32側をアノードとして接続されている。トランジスタQ2は、Nチャネル型のパワーMOSFETであり、そのドレインはインダクタL1の他方の端子に接続され、そのソースは基準電源線32に接続されている。ダイオードD2は、インダクタL1の他方の端子と出力電源線33との間に、インダクタL1の他方の端子側をアノードとして接続されている。出力電源線33および基準電源線32(一対の直流電源線に相当)間には、コンデンサ30が接続されている。
【0038】
昇降圧回路29は、昇圧動作および降圧動作のうち、いずれかの動作を実行するようになっている。昇圧動作は、入力電源線31および基準電源線32を介して与えられる入力電圧(整流回路28から出力される直流電圧)を昇圧して出力電源線33および基準電源線32を介して出力するものである。降圧動作は、入力電圧を降圧して出力電源線33および基準電源線32を介して出力するものである。
【0039】
昇降圧回路29による上記各動作は、トランジスタQ1、Q2の駆動状態に応じて切り替えられる。トランジスタQ1、Q2の駆動は、制御部27により制御される。すなわち、本実施形態では、制御部27が、昇降圧回路29の動作を制御する電圧制御手段に相当する。制御部27は、出力電源線33および基準電源線32間のバス電圧(直流電圧)の値を検出する直流電圧検出手段としての機能およびモータMの動作状態を判断する機能(後述する)を備えている。このような機能を備えた制御部27は、モータMの動作状態の判断結果に応じて、昇降圧回路29の動作を制御する。
【0040】
制御部27は、昇圧動作を実行する場合、トランジスタQ1をオンした状態で、バス電圧の検出値が昇圧値ET(目標電圧値)となるようにトランジスタQ2をスイッチング(チョッパ)する。なお、昇圧値ETは、入力電圧の値(例えば、約282V)よりも高い所定値とする。これにより、昇降圧回路29は、入力電圧を昇圧して出力する昇圧コンバータとして機能する。
【0041】
制御部27は、降圧動作を実行する場合、トランジスタQ2をオフした状態で、バス電圧が降圧値ELとなるようにトランジスタQ1をスイッチング(チョッパ)する。なお、降圧値ELは、入力電圧の値よりも低く、且つモータMを駆動するために最低限必要な電圧値であればよく、直流電源回路22、モータM、インバータ装置24などの仕様に応じて適宜変更すればよい。これにより、昇降圧回路29は、入力電圧を降圧して出力する降圧コンバータとして機能する。ただし、昇降圧回路29が上記降圧動作を実行している期間であっても、後述する回生エネルギーが生じる期間では、バス電圧は降圧値ELより上昇する。
【0042】
制御部27は、基本的には、モータMが加速動作する際には昇圧動作を実行させ、等速動作および減速動作する際には降圧動作を実行させるように昇降圧回路29の動作を制御する。ただし、制御部27は、後述する特定のケースにおいては、加速動作終盤の特定の切替タイミングにおいて昇圧動作の実行を終了し、その後、次の加速動作が開始されるまで降圧動作を実行させるように昇降圧回路29の動作を制御する。なお、ここでは全てのモータMの動作状態(加速、等速および減速)が互いに概ね一致するという前提が成立するものとしている。このような前提が成立しない場合には、制御部27は、全てのモータMのうち、最も高い加速度で動作するモータMの動作状態の判断結果に基づいて昇降圧回路29の動作を制御すればよい。
【0043】
回生消費回路23は、出力電源線33および基準電源線32間に回生抵抗R1およびトランジスタQ3(回生スイッチ手段に相当)の直列回路を接続して構成されている。トランジスタQ3は、Nチャネル型のパワーMOSFETであり、そのオン、オフは、制御部27により制御される。すなわち、本実施形態では、制御部27は、回生消費回路23の動作を制御する回生制御手段に相当する。
【0044】
制御部27は、バス電圧の検出値が、回生消費電圧値EP以下であるときには、トランジスタQ3をオフし、回生消費電圧値EPを超えるときにはトランジスタQ3をオンする。このような構成により、減速動作時にモータMから回生されるエネルギー(回生エネルギー)に起因してバス電圧が上昇して回生消費電圧値EPを超える場合には回生抵抗R1に電流が流れる。これにより、回生エネルギーが熱エネルギーとして放出され、バス電圧が回生消費電圧値EP以下となるようにその電圧上昇が抑えられる。このような回生消費回路23の動作時間は、熱の問題や回生エネルギーの有効利用などの観点から考えると、極力短いほうがよい。
【0045】
回生消費電圧値EPは、出力電源線33および基準電源線32に接続される各回路素子(インバータ装置24のスイッチング素子、直流電源回路22のコンデンサ30など)の定格を超えてバス電圧が上昇しないような値に設定すればよい。なお、回生スイッチ手段としてのトランジスタQ3は、パワーMOSFETに限らずともよく、例えばバイポーラトランジスタなどの他の半導体スイッチング素子により構成してもよい。また、回生スイッチ手段としては、例えばリレーなどの機械式のスイッチで構成してもよい。
【0046】
インバータ装置24(駆動手段に相当)は、出力電源線33および基準電源線32間に6つのスイッチング素子例えばIGBT(図1には2つのみ示す)を三相フルブリッジ接続して構成されたインバータ主回路と、その駆動回路とを6組備えている(図1には1組のみ示す)。IGBTのコレクタ・エミッタ間には還流ダイオードが接続されている。また、IGBTのゲートには、駆動回路からゲート信号が与えられている。駆動回路は、制御部27から与えられる指令信号(通電指令Sc)に基づいてパルス幅変調されたゲート信号(PWM信号)を出力して各IGBTを駆動する。
【0047】
制御部27(駆動制御手段に相当)は、CPU、ROM、RAM、I/Oなどを備えたマイクロコンピュータを主体として構成されている。電流検出部25は、モータMに流れる電流を検出する電流検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。位置検出部26は、モータMの回転位置を検出する位置検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。制御部27は、電流検出部25から出力されるデータを元にモータMに流れる電流の値を取得するとともに、位置検出部26から出力されるデータを元にモータMの回転位置および回転速度を取得する。詳細は後述するが、制御部27は、このようにして取得した電流値、回転位置および回転速度を用いてインバータ装置24によるモータMの駆動をフィードバック制御する。
【0048】
図2は、ロボットシステム1におけるモータ制御の内容を等価的に示したブロック図である。図2に示すように、制御部27は、位置制御部41、速度制御部42、電流制御部43および動作状態判断部44を備えている。なお、図2では、1つのモータMの制御に係る構成のみを示しているが、実際には全てのモータMのそれぞれに対応して同様の構成が設けられている。さて、一般に産業用のロボットは、予めティーチングなどを実施することにより作成される所定の動作プログラムに従って動作するようになっている。図示しない上位制御部は、その動作プログラムを解釈し、ロボット2に動作プログラムに従った動作を行わせるように各モータMを制御するための指令値(位置指令pref)を位置制御部41に出力する。
【0049】
位置制御部41は、上位制御部から与えられる位置指令prefに対する現在の回転位置p*の偏差を求める減算器45と、減算器45の出力(偏差)をゼロに近づけるように速度指令vref(回転速度指令に相当)を出力する位置制御アンプ46とから構成されている。位置制御アンプ46のゲインはKpとなっている。速度制御部42は、微分器47、減算器48および速度制御アンプ49により構成されている。微分器47は、現在の回転位置p*を微分して現在の回転速度v*に変換する。減算器48は、速度指令vrefに対する現在の回転速度v*の偏差を求める。速度制御アンプ49は、減算器48の出力(偏差)をゼロに近づけるように電流指令irefを出力する。速度制御アンプ49のゲインはKvとなっている。
【0050】
電流制御部43は、電流指令irefに対する現在のモータMに流れる電流i*の偏差を求める減算器50と、減算器50の出力(偏差)をゼロに近づけるようにインバータ装置24に対する指令信号(通電指令Sc)を出力する電流制御アンプ51とから構成されている。電流制御アンプ51のゲインはKiとなっている。このような構成により、制御部27は、電流フィードバック制御、速度フィードバック制御および位置フィードバック制御を行い、モータMの駆動をフィードバック制御してロボット2のアームの動作制御を行う。
【0051】
動作状態判断部44は、モータMの回転速度v*および速度指令vrefを用いてモータM(ロボット2)の動作状態を判断する。すなわち、動作状態判断部44は、例えば、現時点の回転速度v*と速度指令vrefとを比較する。その結果、下記(2)式の関係を満たす状態が所定回数継続した場合には、回転速度を上昇させるようにモータMを駆動している状態であるため、加速動作中であると判断する。
v*<vref …(2)
【0052】
また、下記(3)式の関係を満たす状態が所定回数継続した場合には、回転速度を低下させるようにモータMを駆動している状態であるため、減速動作中であると判断する。
v*>vref …(3)
【0053】
また、下記(4)式の関係を満たす状態が所定回数継続した場合には、回転速度を一定値に維持するようにモータMを駆動している状態であるため、等速動作状態であると判断する。
v*=vref …(4)
【0054】
ただし、下記(5)式の関係を満たす状態が所定回数継続した場合には、回転速度をゼロに維持するようにモータMを駆動している状態、つまりモータMの駆動を停止している状態であるため、上記(4)式による判断に代えて、非動作状態であると判断する。
v*=vref=0 …(5)
【0055】
なお、動作状態判断部44によるモータMの動作状態判断方法は、上記判断方法に限らない。例えば、動作状態判断部44は、速度指令vrefを用いてモータM(ロボット2)の動作状態を以下のように判断してもよい。すなわち、動作状態判断部44は、例えば、現時点の速度指令vref(n)と、現時点より所定期間だけ前の時点(例えば、1サンプリング前の時点)の速度指令vref(n-1)とを比較する。その結果、下記(6)式の関係を満たす状態が所定回数継続した場合には、回転速度を上昇させるようにモータMを駆動している状態であるため、加速動作中であると判断する。
vref(n-1)<vref(n) …(6)
【0056】
また、下記(7)式の関係を満たす状態が所定回数継続した場合には、回転速度を低下させるようにモータMを駆動している状態であるため、減速動作中であると判断する。
vref(n-1)>vref(n) …(7)
【0057】
また、下記(8)式の関係を満たす状態が所定回数継続した場合には、回転速度を一定値に維持するようにモータMを駆動している状態であるため、等速動作状態であると判断する。
vref(n-1)=vref(n) …(8)
【0058】
ただし、下記(9)式の関係を満たす状態が所定回数継続した場合には、回転速度をゼロに維持するようにモータMを駆動している状態、つまりモータMの駆動を停止している状態であるため、上記(8)式による判断に代えて、非動作状態であると判断する。
vref(n-1)=vref(n)=0 …(9)
【0059】
なお、上記(4)、(5)、(8)、(9)式におけるイコール(=)は、完全に一致するものだけに限らず、所定の誤差を許容する場合も含むものとする。また、上記所定回数としては、1回以上であればよく、必要とされる動作状態の判断精度に応じて適宜設定すればよい。
【0060】
さて、前述したとおり、制御部27は、加速動作時に昇圧動作を実行するように昇降圧回路29の動作を制御する。これにより、加速動作時、インバータ装置24は、昇圧値ETに昇圧されたバス電圧の供給を受けてモータMを駆動することになる。図4は、加速動作時に昇圧動作を実行した場合と実行しなかった場合とにおけるモータMの回転速度(速度指令)およびバス電圧の推移の違いを示している。なお、図4では、昇圧動作を実行した場合を実線で示し、昇圧動作を実行しなかった場合を破線で表している。また、図4では、加速動作から等速動作を経ることなく直ちに減速動作に移行するような動作パターンとしている。
【0061】
図4に示すように、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、加速動作時における回転速度の傾き(加速度)が大きくなるとともに回転速度の最大値が高くなる。また、減速動作時における加速度(減速度)についても、加速動作時の加速度と同様に大きくなる。このため、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、加速動作の開始から減速動作の終了までの一連の動作に要する時間(サイクルタイム)が短縮される。しかし、図4に示すように、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、減速動作時におけるバス電圧のピーク値が高くなるため、回生消費回路23の動作時間が長くなる。
【0062】
このような点を改善するため、制御部27は、前述したとおり、等速動作時および減速動作時に降圧動作を実行するように昇降圧回路29の動作を制御する。これにより、減速動作時、バス電圧が降圧値ELに向けて降圧される。このため、回生エネルギーにより上昇するコンデンサ30の端子間電圧(バス電圧)が回生消費電圧値EPを超えるまでにコンデンサ30に蓄積可能なエネルギー量は、降圧動作を実行しない場合に比べて多くなる。すなわち、降圧動作を実行しない場合に比べ、より多くの回生エネルギーをコンデンサ30に蓄積することが可能になり、回生消費回路23の動作時間が短くなるので、回生消費回路23により無駄に消費されるエネルギーを低減することができる。
【0063】
しかし、加速動作時にバス電圧を昇圧するとともに、減速動作時にバス電圧を降圧するという上記構成を採用する場合、その昇圧動作から降圧動作に移行するタイミングの設定が重要になるケースが存在する。すなわち、加速動作の後、等速動作を経て、減速動作が実行される動作パターンでモータMが駆動される場合、加速動作の終了時点まで昇圧動作を実行していたとしても、等速動作が実行される期間から降圧動作を実行することが可能である。このような場合、減速動作の開始時点には既にバス電圧が降圧値ELまで降圧されていることになる。このため、減速動作時において回生エネルギーによるバス電圧の上昇が始まるときには、既にバス電圧が降圧値ELまで降圧された状態であり、上記したように回生消費回路23の動作時間を短くすることが可能になる。
【0064】
これに対し、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターン(特定の動作パターン)でモータMが駆動される場合には、加速動作の終了時点まで昇圧動作を実行していると、降圧動作は減速動作の開始時点からしか開始されないことになる。このような場合、減速動作時において回生エネルギーによるバス電圧の上昇が始まるときには、未だバス電圧が降圧されていない。このため、回生消費回路23の動作時間が長くなってしまう。なお、本実施形態における「等速動作が実行されることなく」とは、等速動作が完全に実行されない場合だけでなく、等速動作が所定時間未満だけ実行される場合をも含むものとする。そして、その所定時間としては、降圧動作を行ったとしても、バス電圧を降圧することができないような時間とする。
【0065】
そこで、制御部27は、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターンでモータMが駆動される際には、加速動作が開始される時点(昇圧開始時点)から、加速動作が終了される時点より前の切替タイミングt(昇圧終了時点)までの期間(昇圧期間)に昇圧動作を実行させるように昇降圧回路29の動作を制御する。そして、制御部27は、切替タイミングtから次の加速動作が開始される時点までの期間(降圧期間)に降圧動作を実行させるように昇降圧回路29の動作を制御する。すなわち、制御部27は、加速動作終盤の切替タイミングtにおいて、昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御する。
【0066】
ただし、加速動作の終了時点より前のタイミングにおいて昇圧動作から降圧動作に切り替えるとしても、どのようなタイミングが最適であるのかを見極めることが重要である。切替タイミングtが早すぎると、加速動作時のモータMの加速度を大きくするとともに回転速度の最大値を高める効果が小さくなり、ロボット2のサイクルタイムの短縮効果が小さくなる。一方、切替タイミングtが遅すぎると、減速動作時にコンデンサ30に対して蓄積可能なエネルギー量が少なくなり、回生消費回路23の動作時間の短縮効果が小さくなる。
【0067】
図5は、理想的な切替タイミングにおいて昇圧動作から降圧動作に切り替えた場合における回転速度およびバス電圧の推移を示している。なお、図5には、加速動作の終了時点txにおいて昇圧動作から降圧動作に切り替えた場合におけるバス電圧の推移を比較例として破線にて示している。図5に示すように、本実施形態では、回生消費回路23の動作時間をほぼゼロにした上で、ロボット2のサイクルタイム短縮効果を最大限に得ることができるような時点となる切替タイミングtに設定する。すなわち、減速動作時において回生エネルギーにより上昇する際のバス電圧のピーク値が、回生消費電圧値EPにちょうど一致するようなタイミングに切替タイミングtを設定する。
【0068】
なお、図5には示されていないが、加速動作の期間において、切替タイミングt以前の回転速度の傾きに対し、切替タイミングt以降における回転速度の傾きは若干小さくなる。ただし、その差は僅かなものであり、サイクルタイムを短縮する効果に影響を及ぼすほどのものではないため、ここでは考慮しないこととする。
【0069】
このような切替タイミングの設定条件を満たすため、制御部27は、下記(1)式を用いて切替タイミングtを求めるようにしている。(1)式において、上段式の左辺第1項は、バス電圧が回生消費電圧値EPに一致するときにコンデンサ30に蓄えられる静電エネルギー(図6における三角形61の面積;ハッチング部分+白抜き部分の面積)から、バス電圧が昇圧値ETに一致するときにコンデンサ30に蓄えられる静電エネルギー(図6における三角形62の面積;白抜き部分の面積)を減算したものである。ただし、コンデンサ30の静電容量をCで表している。すなわち、上段式の左辺第1項は、昇降圧回路29が昇圧動作を実行している期間におけるコンデンサ30に対し、その端子間電圧が回生消費電圧値EPに達するまでに蓄積することが可能なエネルギー量(図6における台形63の面積;ハッチング部分の面積)に相当する。
【0070】
【数3】
【0071】
(1)式において、上段式の左辺第2項は、回転速度が最高回転速度指令vPに一致した時点(加速動作の終了時点;図7における時刻tx)における運動エネルギーから、切替タイミング(図7における時刻t)における運動エネルギーを減算したものである。ただし、切替タイミングtにおける速度指令をvCで表し、アームの質量をmで表し、後述する変数をαで表している。すなわち、上段式の左辺第2項は、昇降圧回路29が降圧動作を実行している状態でモータMが加速動作する期間(図7における時刻t〜txの期間)において消費されるエネルギー量に相当する。そして、(1)式において、上段式の右辺は、減速動作時にモータM側から回生されるエネルギー量に相当する。
【0072】
上記各項において、変数αを用いた理由は以下のとおりである。すなわち、これら各項により表されるエネルギー量は、モータMの動作に伴って生じるものである。このため、それらエネルギー量は、機構部品におけるフリクションロス(摩擦による損失)や、可動部分に用いられるグリスの粘度などの経時的に変化する要素の影響を受ける。従って、上記各項のエネルギー量は、ロボット2における機構部分の経時的な変化に応じて、実際の値が変化する可能性がある。変数αは、このような経時的な変化に起因するエネルギー量の演算誤差を補正することを目的として用いる。このため、上記経時的な変化が問題にならない初期段階において、変数αの値を所定の初期値(例えば「1」)に設定し、その後、ロボット2の稼働時間の増加に応じて、変数αの値を適宜調整すればよい。
【0073】
要するに、(1)式の上段式は、昇圧期間終了後にコンデンサ30に蓄積可能なエネルギー量と、昇降圧回路29が昇圧動作から降圧動作に切り替えられた後の加速動作において消費されるエネルギー量とを足し合わせたエネルギー量が、減速動作時に回生されるエネルギー量に一致する、という条件を表している。このような(1)式の上段式を切替タイミングtにおける速度指令vCについて解くと、(1)式の中段式が得られる。そして、(1)式の中段式により表される速度指令vCを、加速動作時の加速度aで除算することにより、(1)式の下段式が得られる。すなわち、減速動作時に回生エネルギーにより上昇するバス電圧のピーク値が、ちょうど回生消費電圧値EPに一致するようなタイミングとなる切替タイミングtが得られる。制御部27は、このような演算を行うことにより、昇圧動作から降圧動作への切替タイミングtを決定する。これに伴い、昇降圧回路29が昇圧動作を実行する昇圧期間が決定されることになる。
【0074】
特定の動作パターンに基づいてモータMが駆動される際、このようにして決定された昇圧期間(切替タイミングt)に基づいて昇降圧回路29の動作が制御されると、バス電圧は図5の実線のように変化する。すなわち、加速動作の開始時点から切替タイミングtまでの期間には、昇降圧回路29が昇圧動作を実行することで、バス電圧は昇圧値ETに維持される。切替タイミングtから加速動作の終了時点txまでの期間には、昇降圧回路29が降圧動作を実行することにより、バス電圧が降圧値ELに向けて低下する。降圧動作時、バス電圧が降圧値ELに達するまでの間は昇降圧回路29のトランジスタQ1はオフされた状態である。このため、コンデンサ30に対する新たなエネルギーの供給は行われない。従って、同期間(t〜txの期間)において、モータMの加速動作によりコンデンサ30に蓄積されたエネルギーが消費されることにより、バス電圧は低下する。その後、時点tx以降において減速動作が開始されると、回生エネルギーに起因してバス電圧は上昇する。ただし、そのピーク値は回生消費電圧値EPに抑えられる。
【0075】
また、制御部27は、前述した特定の動作パターン(加速動作の後、等速動作が実行されることなく、減速動作が実行されるという動作パターン)でモータMが駆動される際には、その一連の動作が終了する毎に、以下のような制御を実行する。すなわち、制御部27は、一連の動作が終了したとき(減速動作終了時)、その一連の動作における最高回転速度指令と、その一連の動作における実際の回転速度の最高値(最高回転速度)との差を求める。制御部27は、その差が所定の許容誤差値を超える場合には、昇圧終了時点tを補正する補正制御(後述する)を実行し、その差が所定の許容誤差値以下である場合には補正制御を実行しない。
【0076】
すなわち、最高回転速度指令と実際の最高回転速度との差が許容誤差値以下になるまでは、一連の動作が終了する毎に補正制御が継続的に実行されることになる。なお、切替タイミングtが最適な値であっても、種々の誤差の影響により、最高回転速度指令と実際の最高回転速度とが一致しないことも多い。そこで、本実施形態における許容誤差値は、そのような誤差の影響により生じる最高回転速度指令と実際の最高回転速度との差よりも明らかに大きい値に設定している。
【0077】
本実施形態において、補正制御を実行する理由は以下のとおりである。すなわち、前述したとおり、制御部27は、昇圧動作から降圧動作への切替タイミングtを、(1)式を用いた演算により求めている。このようにして求められる切替タイミングtは、あくまでも演算による結果であるため、実際に前述した効果を最大限に得ることが可能な最適な値であるとは限らない。
【0078】
図8は、切替タイミングが最適な値ではない場合における回転速度を示しており、(a)は切替タイミングが最適な値よりも早い場合であり、(b)は切替タイミングが最適な値よりも遅い場合である。なお、図8では、切替タイミングが最適な値である場合における回転速度も比較のために破線で示している。また、図8では、説明の都合上、切替タイミングが最適な値に対して大きくかけ離れた状態を図示しているが、実際にはこのように大きくかけ離れた値になることはない。
【0079】
図8の(a)に示すように、切替タイミングtが最適な値toよりも早い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より低くなる。このような場合、速度不足や減速時の加速度が低下することによりサイクルタイムが所定時間Tdだけ長くなるといった問題が生じる。また、図8の(b)に示すように、切替タイミングtが最適な値toよりも遅い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より高くなる。このような場合、速度超過や減速時の加速度が規定値を上回るといった問題が生じる。このような問題を解消するため、本実施形態では、実際にモータMを上記動作パターンに基づいて駆動する際、一連の動作が終了する毎に、昇圧終了時点を最適な値に近づけるような補正を行う補正制御を実行するようにしている。
【0080】
次に、上記構成の作用および効果について説明する。
ここでは、前述した特定の動作パターン(加速動作から等速動作を経ることなく減速動作を実行する動作パターン)に該当する所定の動作パターンAに基づいて、モータMが駆動される際における制御部27の動作について説明する。制御部27は、初めて動作パターンAに基づいてモータMの駆動を行う場合、上記(1)式を用いた演算により、その動作パターンAに対応する切替タイミングtを求める。その後、制御部27は、動作パターンAに基づいてモータMの駆動を制御するとともに、モータMの動作状態に応じて昇降圧回路29の動作を制御する。この際、制御部27は、演算により求めた切替タイミングtの時点において、昇降圧回路29を昇圧動作から降圧動作に切り替える。
【0081】
制御部27は、このような動作パターンAに基づく一連の動作(加速動作〜減速動作)が終了する度に、図9に示すような内容の制御を実行する。すなわち、図9のステップS1では、その一連の動作における最高回転速度指令vref(max)と、その一連の動作における実際の最高回転速度v*(max)との差を求め、その差が所定の許容誤差値Vth以下であるか否かが判断される。最高回転速度指令vref(max)および最高回転速度v*(max)の差が許容誤差値Vthを超える場合(NO)には、ステップS2に進み、後述する補正制御が実行される。これにより、動作パターンAに対応する切替タイミングtが補正される。すると、次に同じ動作パターンAに基づくモータMの駆動が行われる際において、制御部27は、補正後の切替タイミングtを用いて昇降圧回路29の動作を制御する。一方、上記差が許容誤差値Vth以下である場合(YES)には補正制御が実行されることなく、制御が終了する。この場合には、次に同じ動作パターンAに基づくモータMの駆動が行われる際においても、制御部27は、演算により求めた切替タイミングtを用いて昇降圧回路29の動作を制御する。
【0082】
ステップS2では、制御部27は、その一連の動作においてモータMの回転速度が最高回転速度指令vref(max)に一致すると考えられる時点(推定最高速度時点)を、回転速度指令を用いて推定する。続くステップS3において、制御部27は、その一連の動作においてモータMの回転速度が実際に最高回転速度v*(max)になった時点(実際最高速度時点)を求め、ステップS4に進む。例えば、図8の場合には、時刻taが推定最高速度時点に相当し、時刻tbが実際最高速度時点に相当する。
【0083】
ステップS4では、最高回転速度v*(max)が最高回転速度指令vref(max)より高いか否かが判断される。図8の(a)のように切替タイミングtが最適な値toよりも早い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より低くなるため(NO)、ステップS5に進む。このような場合、図10に示すように、切替タイミングtを所定量Δtだけ遅らせたタイミングt’にすれば、上記した問題(サイクルタイムの増加など)が軽減されることが分かる。そこで、ステップS5では、そのときの切替タイミングを所定の補正量だけ遅らせるような補正が行われる。そして、ステップS6に進み、補正後の値が切替タイミングとして設定される。
【0084】
一方、図8の(b)のように切替タイミングtが最適な値toよりも遅い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より高くなるため(YES)、ステップS7に進む。このような場合、図11に示すように、切替タイミングtを所定量Δtだけ早めたタイミングt’にすれば、上記した問題(速度超過や加速度の規定値オーバーなど)が軽減されることが分かる。そこで、ステップS7では、そのときの切替タイミングを所定の補正量だけ早めるような補正が行われる。そして、ステップS6に進み、補正後の値が切替タイミングとして設定される。
【0085】
上記した所定の補正量は、推定した推定最高速度時点と求めた実際最高速度時点との差の絶対値としている。推定最高速度時点が推定により求めたものであるため、ある程度不確定な要素が存在するものの、上記補正量は、演算により求めた切替タイミングと、最適な切替タイミングとの差に近いものである。このため、上記した補正制御を行うことにより、補正後の切替タイミングを、最適な値に近づけることが可能となる。
【0086】
以上説明したように、本実施形態の制御部27は、特定の動作パターン(加速動作から等速動作を経ることなく減速動作が実行される動作パターン)に基づいてモータMが駆動される際、(1)式を用いた演算により求めた切替タイミングtの時点において、昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御する。このようにすることで、回生消費回路23の動作時間をほぼゼロにした上で、ロボット2のサイクルタイム短縮効果を最大限に得ることができる。従って、本実施形態によれば、モータMの駆動を制御するための制御内容を変更することなく、ロボット2の一連の動作時間を短縮しつつ、減速動作時にモータMから回生されるエネルギーを消費する際に発生する熱を低減することができる。
【0087】
また、制御部27は、上記した特定の動作パターンに該当する動作パターンでモータMが駆動される際には、その一連の動作が終了する毎に、最高回転速度指令と実際の最高回転速度との差を求め、その差が許容誤差値を超える場合には演算により求めた切替タイミングを補正する補正制御を実行する。すなわち、制御部27は、最高回転速度指令と実際の最高回転速度との差を許容誤差値以下にするまでは、一連の動作が終了する毎に補正制御を実行する。このように、同じ動作パターンでモータMが駆動される度に、昇圧動作から降圧動作への切替タイミングが、その動作パターンにおける最適な値に近づくように補正されるため、前述した効果を最大限に得ることができる。例えば、ティーチングにおける最終動作確認を実行する際に上記補正制御を実行しておけば、実動作を行うときには、その初回動作時から最適な値に近い切替タイミングtでもって昇降圧動作を切り替えることが可能になり、上記効果(サイクルタイムの短縮、減速動作時の熱低減、回生エネルギーの有効利用など)を得る事が可能となる。
【0088】
なお、本発明は上記し且つ図面に記載した実施形態に限定されるものではなく、次のような変形または拡張が可能である。
制御部27は、(1)式を用いて切替タイミングtを演算する際、実際最高速度時点が推定最高速度時点よりも早い時点になるように、変数αの初期値を設定してもよい。このようにすることで、(1)式による演算結果を意図的に安全サイドにシフトさせることができる。その理由は以下のとおりである。すなわち、演算により求めた切替タイミングが最適な値に対して所定の誤差を有する場合、切替タイミングが最適な値よりも早い時点となるか、あるいは、遅い時点となるかの2通りのパターンが考えられる。切替タイミングが最適な値より遅い時点となる場合(図8の(b))に生じる問題は、速度超過や加速度定格オーバーなどであり、問題の深刻度は比較的高い。一方、切替タイミングが最適な値より早い時点となる場合(図8の(a))に生じる問題は、速度不足やサイクルタイムの増加などであり、問題の深刻度は比較的低い。また、このような問題のある切替タイミングが最適な値より早い時点となる場合でも、昇圧動作を実行しない従来の構成と比較すれば、サイクルタイムを短くできる上、加速度定格オーバーなどの深刻な問題を招くことがない分だけ有効であると考えられる。そして、演算により求められる切替タイミングは、最適な値になるとは限らず、所定の誤差が生じる可能性がある。
【0089】
このようなことから、上記したように変数αの初期値を設定すれば、演算により切替タイミングを求めた後の最初の動作においては、速度不足やサイクルタイムの増加などの比較的深刻度の低い問題が生じることになるが、その後は補正制御が行われることにより、切替タイミングが徐々に最適な値に近づけられ、上記問題も徐々に生じなくなる。従って、上記したように変数αの初期値を設定することで、速度超過や加速度定格オーバーなどの比較的深刻度の高い問題が発生する事態を未然に防止することができる上、従来の構成に比べてサイクルタイムを短縮することが可能となる。
【0090】
制御部27は、図9に示す制御(補正制御を含む制御)を必ずしも実行する必要はない。例えば、制御部27が、(1)式を用いた演算により求められる切替タイミングの時点で昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御するだけで、所望の効果(サイクルタイムの短縮、減速動作時の熱低減、回生エネルギーの有効利用など)が得られるのであれば、制御部27は図9に示す制御(補正制御を含む)を実行しなくてもよい。
昇降圧回路は、図1に示した構成に限らずともよく、一対の直流電源線間のバス電圧(直流電圧)を所定の昇圧値(目標電圧値)に昇圧する昇圧動作と、上記バス電圧を降圧する降圧動作とを実行可能な構成であればよい。
【0091】
本発明は、モータMとしてDCブラシレスモータを用いた構成に限らず、例えば直流モータ、交流モータなど各種のモータを用いた構成にも適用可能である。なお、モータMとして直流モータを用いる場合には、モータMを駆動する駆動手段として、インバータ装置24に代えて、例えばHブリッジ回路を主体として構成された駆動回路を用いればよい。
上記実施形態では、本発明を6軸の垂直多関節型のロボット2に適用した例を説明したが、本発明は、各軸をモータにより駆動する構成のロボット全般に適用可能である。
【符号の説明】
【0092】
図面中、1はロボットシステム、2はロボット、23は回生消費回路、24はインバータ装置(駆動手段)、27は制御部(駆動制御手段、直流電圧検出手段、回生制御手段、電圧制御手段)、29は昇降圧回路、30はコンデンサ、32は基準電源線(直流電源線)、33は出力電源線(直流電源線)、Mはモータ、Q3はトランジスタ(回生スイッチ手段)、R1は回生抵抗を示す。
【技術分野】
【0001】
本発明は、ロボットのアームを駆動するモータから減速動作時に回生されるエネルギーを消費するための回生消費回路を備えたロボットシステムに関する。
【背景技術】
【0002】
ロボットの各アーム(各軸)は、それぞれモータにより駆動されるようになっており、これらモータは、コントローラに内蔵されるモータアンプ(駆動手段)により駆動される。モータアンプは、例えばインバータ回路を主体として構成されており、直流電源回路から一対の直流電源線を介して与えられる直流電圧(バス電圧)を所定の周波数を持つ交流電圧に変換してモータへの電力供給を行う。
【0003】
このような構成において、モータを減速動作させる際にはモータ側からモータアンプ側にエネルギーが回生され、これに伴いバス電圧が上昇する。このため、コントローラには、バス電圧が直流電源線に接続される各回路素子(インバータ回路のスイッチング素子、直流電源回路のコンデンサなど)の定格を超えて上昇しないように、上記回生されたエネルギー(回生エネルギー)を熱エネルギーに変換して放出する回生消費回路が設けられている。
【0004】
回生消費回路では、回生電流を直流電源線間に直列に設けられた回生抵抗に流すことで、回生エネルギーを熱エネルギーに変換している。元々、コントローラの内部には、その動作時に発熱を伴う部品が多数設置されているため、通常の動作時においてもある程度の温度上昇が生じているが、上記回生時にはさらに内部温度が上昇することになる。コントローラ内部における温度上昇量が多くなると、その分だけ放熱対策を強化する必要があるため、このような内部温度の上昇は極力抑えることが望ましい。
【0005】
上記回生エネルギーは、モータの減速動作時の加速度に比例するので、その加速度を小さくすればするほど、言い換えれば、減速動作に要する時間(減速時間)を長くすればするほど回生エネルギーに伴い上昇するバス電圧のピーク値を低く抑えることが可能となり、回生消費回路で発生する熱エネルギーを抑制することが可能となる。しかし、減速時間を長くすることは、ロボットの加速、等速、減速という一連の動作サイクルに要する時間(サイクルタイム)を長くすることに繋がる。ロボットが設置される例えば工場などでは、効率的に作業を行うことが重要視されることが多いため、上記のようにサイクルタイムが長くなる事態は好ましくない。
【0006】
このような問題の対策として、減速動作時におけるモータ駆動の制御内容を変更することで回生エネルギーの発生量を調整し、バス電圧の上昇を所定量に抑えつつ、減速時間が長くなることを抑制する技術が考案されている(例えば特許文献1参照)。具体的には、特許文献1記載の技術では、モータ電流をq軸電流(磁束と直交したモータ電流成分)とd軸電流(磁束と平行したモータ電流成分)とに分け、減速動作において、q軸電流を調整してブレーキトルクを制御し、d軸電流を調整して回生エネルギーを制御するようになっている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2002−084780号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ロボットシステムにおいては、各軸に対応する複数のモータの駆動状態をそれぞれ制御することで、ロボットの手先位置を高精度に制御するようになっている。このため、モータの制御内容を減速動作時のみ変更してしまうと、その変更に伴い上記手先位置の制御に誤差が生じてしまう可能性があったり、または制御内容を変更する際の設計が煩雑になったりするなど、種々の問題が生じる。このため、上記特許文献1記載の技術をロボットシステムに適用することは難しい。
【0009】
本発明は上記事情に鑑みてなされたものであり、その目的は、モータの駆動を制御する駆動制御手段の制御内容を変更することなく、ロボットの一連の動作時間を短縮しつつ、減速動作時にモータから生じる回生エネルギーを消費する際に発生する熱を低減することができるロボットシステムを提供することにある。
【課題を解決するための手段】
【0010】
請求項1に記載の手段によれば、ロボットのアームを駆動するモータは、駆動手段によって駆動される。その駆動手段は、一対の直流電源線を介して与えられる直流電圧の供給を受けて動作する。そして、駆動制御手段は、モータの回転速度を回転速度指令に一致させるように駆動手段によるモータの駆動をフィードバック制御する。また、一対の直流電源線間には、回生スイッチ手段および回生抵抗の直列回路からなる回生消費回路が設けられている。そして、回生制御手段は、上記直流電圧を検出する直流電圧検出手段の検出値が回生消費電圧値以下のときには回生スイッチ手段をオフし、上記検出値が回生消費電圧値を超えたときには回生スイッチ手段をオンする。
【0011】
このような構成において、減速動作時にモータから回生されるエネルギー(回生エネルギー)は、直流電源線間に接続されたコンデンサに静電エネルギーとして蓄積される。つまり、モータの減速動作時には、回生エネルギーによりコンデンサが充電され、コンデンサの端子間電圧である上記直流電圧が上昇する。そして、直流電圧(直流電圧検出手段の検出値)が回生消費電圧値を超えると、回生消費回路の回生抵抗に電流を流すことで回生エネルギーを熱エネルギーとして放出し、直流電圧が回生消費電圧値以下になるようにその電圧上昇が抑えられる。前述したとおり、このような回生消費回路の動作時間は、熱の問題や、回生エネルギーの有効利用などの観点から考えると、極力短いほうがよい。
【0012】
一方、昇降圧回路は、昇圧動作および降圧動作のうち、いずれかの動作を実行する。昇圧動作は、直流電源線間の電圧(直流電圧)を目標電圧値に一致させるように昇圧するものである。降圧動作は、直流電源線間の電圧を降圧するものである。そして、電圧制御手段は、回転速度指令を用いてモータの動作状態を判断し、その判断結果に応じて昇降圧回路の動作を制御する。大まかに言うと、電圧制御手段は、モータが加速動作する際には昇降圧回路に昇圧動作を実行させ、モータが減速動作する際には昇降圧回路に降圧動作を実行させる。
【0013】
このようにすれば、加速動作時に直流電圧が昇圧され、その昇圧された直流電圧でもって駆動手段がモータを駆動するので、昇圧動作を実行しない従来の構成に比べ、モータの回転速度、ひいてはアームの動作速度を高めることが可能になる。これにより、ロボットの一連の動作時間(サイクルタイム)の短縮を図ることができる。また、減速動作時に直流電圧が降圧されるので、回生エネルギーにより上昇するコンデンサの端子間電圧(直流電圧)が回生消費電圧値を超えるまでにコンデンサに蓄積可能なエネルギー量が、降圧動作を実行しない従来の構成に比べて多くなる。これに伴い、回生消費回路の動作時間が短くなり、回生消費回路により消費されるエネルギーを低減することができる。
【0014】
しかしながら、加速動作時に直流電圧を昇圧するとともに、減速動作時に直流電圧を降圧するという上記構成を採用する場合、その昇圧動作から降圧動作に移行するタイミングの設定が重要になるケースがある。つまり、加速動作の後、等速動作を経て、減速動作が実行される動作パターンでモータが駆動される場合には、加速動作の終了時点まで昇降圧回路に昇圧動作を実行させていたとしても、等速動作が実行される期間から昇降圧回路に降圧動作を実行させることが可能になる。このような場合、減速動作の開始時点には既に直流電圧が降圧されていることになる。このため、減速動作時において回生エネルギーによる直流電圧の上昇が始まるときには、既に直流電圧が降圧された状態であり、上記した回生消費回路により消費されるエネルギーを低減するという効果が得られる。
【0015】
これに対し、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターンでモータが駆動される場合には、加速動作の終了時点まで昇圧動作を実行させようとすると、減速動作の開始時点から降圧動作が開始されることになる。このような場合、減速動作時において回生エネルギーによる直流電圧の上昇が始まるときには、未だ直流電圧が降圧されていない。このため、回生消費回路の動作時間が長くなり、回生消費回路により消費されるエネルギーを低減するという効果がほとんど得られない。なお、ここで言う「等速動作が実行されることなく」とは、等速動作が完全に実行されない場合だけでなく、等速動作が所定時間未満だけ実行される場合をも含む。そして、その所定時間としては、降圧動作を行ったとしても、直流電圧を十分に降圧できないような時間とする。
【0016】
このような問題を解決するため、本手段の電圧制御手段は、加速動作の後に等速動作を行うことなく減速動作を行うという動作パターンでモータが駆動される際、加速動作が開始される時点(昇圧開始時点)から、モータの回転速度が加速動作における回転速度指令の最高値(最高回転速度指令)に一致する加速動作の終了時点よりも前の時点(昇圧終了時点)までの昇圧期間に、昇降圧回路に昇圧動作を実行させるように制御する。そして、電圧制御手段は、昇圧終了時点から次の昇圧開始時点までの降圧期間に、昇降圧回路に降圧動作を実行させるように制御する。すなわち、電圧制御手段は、加速動作の終了時点より前の昇圧終了時点において、昇圧動作から降圧動作に切り替えるように昇降圧回路の動作を制御するようになっている。
【0017】
ただし、加速動作の終了時点より前に切り替えると言っても、加速動作の終了時点より前であればいつでもよいわけではなく、昇圧動作から降圧動作への切替タイミングである昇圧終了時点の設定が重要となる。切替タイミングが早すぎると、アームの動作速度向上の効果が小さくなり、ロボットのサイクルタイム短縮効果が小さくなる。一方、切替タイミングが遅すぎると、回生時にコンデンサに対して蓄積可能なエネルギー量が少なくなり、回生消費回路の動作時間が長くなる。そこで、本手段では、昇圧終了時点は、回生消費回路の動作時間をほぼゼロにした上で、ロボットのサイクルタイム短縮効果を最大限に得ることができるようなタイミングに設定する。すなわち、本手段では、減速動作時において回生エネルギーにより上昇する直流電圧の値が、回生消費電圧値にちょうど一致するようなタイミングに昇圧終了時点を設定する。
【0018】
このような昇圧終了時点の設定条件を満たすべく、電圧制御手段は、下記(1)式を用いて昇圧終了時点tを求める。(1)式において、上段式の左辺第1項は、直流電圧が回生消費電圧値EPであるときにコンデンサに蓄えられる静電エネルギーから、直流電圧が昇圧値ETであるときにコンデンサに蓄えられる静電エネルギーを減算したものである。ただし、コンデンサの静電容量をCで表している。すなわち、上段式の左辺第1項は、昇降圧回路が昇圧動作を実行している期間(昇圧期間)におけるコンデンサに対し、その端子間電圧が回生消費電圧値に達するまでに蓄積することが可能なエネルギー量に相当する。
【0019】
【数2】
【0020】
(1)式において、上段式の左辺第2項は、回転速度が最高回転速度指令vPに一致した時点(加速動作の終了時点)の運動エネルギーから、昇圧終了時点tの運動エネルギーを減算したものである。ただし、アームの質量をmで表し、昇圧終了時点における速度指令をvCで表し、後述する変数をαで表している。すなわち、上段式の左辺第2項は、昇降圧回路が降圧動作を実行している状態でモータが加速動作する加速動作終盤の期間において消費されるエネルギー量に相当する。また、(1)式において、上段式の右辺は、減速動作時にモータ側から回生されるエネルギー量に相当する。
【0021】
上記各項において、変数αを用いた理由は以下のとおりである。すなわち、これら各項により表されるエネルギー量は、モータの動作に伴って生じるものであるため、機構部品におけるフリクションロス(摩擦による損失)やグリスの粘度などの経時的に変化する要素の影響を受ける。このように、上記各項のエネルギー量は、ロボットにおける機構部分の経時的な変化に応じて、実際の値が変化する可能性がある。上記変数αは、このような変動に応じて生じるエネルギー量の演算誤差を補正することを目的として用いている。従って、上記した経時的な変動が問題にならない初期段階において、変数αの値を所定の初期値に設定し、その後、上記変動に応じて変数αの値を適宜変更していけばよい。
【0022】
要するに(1)式の上段式は、昇圧期間終了後にコンデンサに蓄積可能なエネルギー量と、昇降圧回路が昇圧動作から降圧動作に切り替えられた後の加速動作において消費されるエネルギー量とを足し合わせたエネルギー量が、減速動作時に回生されるエネルギー量に一致する、というものである。このような(1)式を昇圧終了時点の速度指令vCについて解き、その速度指令vC((1)式の中段式)を加速動作時の加速度aで除算することにより、減速動作時に回生エネルギーによって上昇する直流電圧の値が回生消費電圧値にちょうど一致するようなタイミングとなる昇圧終了時点t((1)式の下段式)が得られる。
【0023】
このように、電圧制御手段は、(1)式により昇圧終了時点tを求め、昇降圧回路に昇圧動作を実行させる昇圧期間の長さ、つまり昇圧動作から降圧動作への切替タイミングを決定する。このようにすることで、回生消費回路の動作時間をほぼゼロにした上で、ロボットのサイクルタイム短縮効果が最大限に得られる。従って、本手段によれば、モータの駆動を制御する駆動制御手段の制御内容を変更することなく、ロボットの一連の動作時間を短縮しつつ、減速動作時にモータから生じる回生エネルギーを消費する際に発生する熱を低減することができる。
【0024】
請求項2に記載の手段によれば、電圧制御手段は、前述した動作パターン(加速動作の後に等速動作を行うことなく減速動作を行うという動作パターン)に基づく一連の動作が終了する毎に、その一連の動作における最高回転速度指令と、その一連の動作における実際のモータの回転速度の最高値(最高回転速度)との差を求める。そして、電圧制御手段は、その差が所定の許容誤差値を超える場合には、昇圧終了時点を補正する補正制御を実行する。すなわち、最高回転速度指令と最高回転速度との差が許容誤差値以下になるまでは、一連の動作が終了する毎に補正制御が実行される。
【0025】
さて、請求項1に記載の手段で述べたように、電圧制御手段は、昇圧動作から降圧動作への切替タイミングに相当する昇圧終了時点を、(1)式を用いた演算により求めている。このようにして求められる昇圧終了時点は、あくまでも演算による結果であるため、実際に前述した効果を最大限に得ることが可能な最適な値であるとは限らない。そこで、本手段では、モータを実際に駆動する際、昇圧終了時点を最適な値に近づけるような補正を行う補正制御を実行するようにしている。
【0026】
その補正制御の具体的な内容は以下のとおりである。すなわち、電圧制御手段は、回転速度指令を用いて、一連の動作においてモータの回転速度が最高回転速度指令に一致する時点(推定最高速度時点)を推定する。また、電圧制御手段は、一連の動作においてモータの回転速度が最高回転速度になった時点(実際最高速度時点)を求める。昇圧終了時点が最適な値ではない場合、最高回転速度が、最高回転速度指令より低くなったり、あるいは、高くなったりする。
【0027】
前者の場合、昇圧終了時点が最適な値よりも早い時点であり、速度不足や減速時の加速度が低下することによりサイクルタイムが長くなるといった問題が生じる。このような場合、つまり、最高回転速度が最高回転速度指令より低い場合、そのときの昇圧終了時点を所定の補正量だけ遅らせる。一方、後者の場合、昇圧終了時点が最適な値よりも遅い時点であり、速度超過や減速時の加速度が規定値を上回るといった問題が生じる。このような場合、つまり、最高回転速度が最高回転速度指令より高い場合、そのときの昇圧終了時点を所定の補正量だけ早める。上記補正量は、推定最高速度時点と実際最高速度時点との差の絶対値としている。このような補正制御を、最高回転速度指令と最高回転速度との差が許容誤差値以下となるまで実行することで、昇圧動作から降圧動作への切替タイミングである昇圧終了時点が最適な値に補正され、前述した効果を最大限に得ることができる。
【0028】
請求項3に記載の手段によれば、電圧制御手段は、実際最高速度時点が推定最高速度時点より早い時点になるように、変数αの初期値を設定する。請求項1に記載の手段において、ロボットの機構部分の経時的な変動が問題にならない初期段階では変数αの値を所定の初期値に設定すればよいと述べた。これに対し、本手段では、変数αの初期値は、(1)式による昇圧終了時点の演算結果を、意図的に安全サイドにシフトさせるような値に設定する。
【0029】
さて、昇圧終了時点が最適な値に対して所定の誤差を有する場合、昇圧終了時点が最適な値よりも早い時点となるか、あるいは遅い時点となるかの2通りのパターンが考えられる。昇圧終了時点が最適な値より遅い時点となる場合に生じる問題は、速度超過や加速度定格オーバーなどであり、問題の深刻度は比較的高い。一方、昇圧終了時点が最適な値より早い時点となる場合に生じる問題は、速度不足やサイクルタイムの増加などであり、問題の深刻度は比較的低い。そして、演算により求められる昇圧終了時点は、最適な値になるとは限らず、所定の誤差が生じる可能性がある。
【0030】
このようなことから、本手段では、実際最高速度時点が推定最高速度時点より早い時点となるように、つまり、演算により求められる昇圧終了時点が最適な値よりも早い時点となるように、変数αの初期値を設定する。このようにすることで、昇圧終了時点を演算により求めた後、最初の動作においては、速度不足やサイクルタイムの増加などの比較的深刻度の低い問題が生じることになるが、その後は補正制御により、昇圧終了時点が徐々に最適な値に近づけられることになる。従って、本手段によれば、速度超過や加速度定格オーバーなどの比較的深刻度の高い問題が発生する事態を未然に防止することができる。
【図面の簡単な説明】
【0031】
【図1】本発明の一実施形態を示すロボットシステムの電気構成図
【図2】モータ制御の内容を等価的に示すブロック図
【図3】ロボットシステムの構成を概略的に示す図
【図4】昇圧動作の実行時および非実行時の回転速度およびバス電圧を示す図
【図5】理想的な切替タイミングで昇降圧動作を切り替えた場合の回転速度およびバス電圧を示す図
【図6】コンデンサに蓄えられるエネルギー量を概略的に示す図
【図7】切替タイミングの演算方法を説明するためものであり、回転速度を示す図
【図8】切替タイミングが最適な値と異なる場合における回転速度を示す図
【図9】一連の動作が終了毎に実行される制御内容を示す図
【図10】切替タイミングが最適な値より早い場合における補正例を示す図
【図11】切替タイミングが最適な値より遅い場合における補正例を示す図
【発明を実施するための形態】
【0032】
以下、本発明の一実施形態について図面を参照しながら説明する。
図3は、一般的な産業用ロボットのシステム構成を示している。図3に示すロボットシステム1は、ロボット2と、ロボット2を制御するコントローラ3と、コントローラ3に接続されたティーチングペンダント4とから構成されている。
ロボット2は、例えば6軸の垂直多関節型ロボットとして構成されている。ロボット2は、ベース5と、ベース5に水平方向に回転可能に支持されたショルダ部6と、ショルダ部6に上下方向に回転可能に支持された下アーム7と、下アーム7に上下方向に回転可能に支持された第1の上アーム8と、第1の上アーム8に捻り回転可能に支持された第2の上アーム9と、第2の上アーム9に上下方向に回転可能に支持された手首10と、手首10に捻り回転可能に支持されたフランジ11とから構成されている。
【0033】
ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能し、アーム先端であるフランジ11には、図示はしないが、エンドエフェクタ(手先)が取り付けられる。ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能する。ロボット2の各アーム(複数の軸)はそれぞれに対応して設けられるモータ(図1に符号Mを付して示す)により駆動される。各モータの近傍には、それぞれの回転軸の回転位置を検出するための位置検出器(図示せず)が設けられている。
【0034】
ティーチングペンダント4は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状に形成されている。ティーチングペンダント4には、各種のキースイッチ12が設けられており、使用者は、キースイッチ12により種々の入力操作を行う。ティーチングペンダント4は、ケーブルを経由してコントローラ3に接続され、通信インターフェイスを経由してコントローラ3との間で高速のデータ転送を実行するようになっており、キースイッチ12の操作により入力された操作信号等の情報はティーチングペンダント4からコントローラ3へ送信される。
【0035】
図1は、ロボットシステムの電気構成を概略的に示すブロック図である。ロボット2には、各軸をそれぞれ駆動するための複数のモータM(図1では1つのみ示す)が設けられている。モータMは例えばブラシレスDCモータである。コントローラ3には、交流電源21より供給される交流を整流および平滑して出力する直流電源回路22、回生消費回路23、モータMを駆動するインバータ装置24、電流検出部25、位置検出部26およびこれら各装置の制御などを行う制御部27が設けられている。
【0036】
直流電源回路22は、整流回路28、昇降圧回路29および平滑用のコンデンサ30から構成されている。整流回路28は、ダイオードをブリッジの形態に接続してなる周知構成のものである。例えば3相200Vの交流電源21の各相出力は、整流回路28の交流入力端子に接続されている。整流回路28の直流出力端子は、それぞれ入力電源線31および基準電源線32に接続されている。
【0037】
昇降圧回路29は、トランジスタQ1、Q2、インダクタL1およびダイオードD1、D2を備えている。トランジスタQ1は、Nチャネル型のパワーMOSFETであり、そのドレインは入力電源線31に接続され、そのソースはインダクタL1の一方の端子に接続されている。ダイオードD1は、インダクタL1の一方の端子と基準電源線32との間に、基準電源線32側をアノードとして接続されている。トランジスタQ2は、Nチャネル型のパワーMOSFETであり、そのドレインはインダクタL1の他方の端子に接続され、そのソースは基準電源線32に接続されている。ダイオードD2は、インダクタL1の他方の端子と出力電源線33との間に、インダクタL1の他方の端子側をアノードとして接続されている。出力電源線33および基準電源線32(一対の直流電源線に相当)間には、コンデンサ30が接続されている。
【0038】
昇降圧回路29は、昇圧動作および降圧動作のうち、いずれかの動作を実行するようになっている。昇圧動作は、入力電源線31および基準電源線32を介して与えられる入力電圧(整流回路28から出力される直流電圧)を昇圧して出力電源線33および基準電源線32を介して出力するものである。降圧動作は、入力電圧を降圧して出力電源線33および基準電源線32を介して出力するものである。
【0039】
昇降圧回路29による上記各動作は、トランジスタQ1、Q2の駆動状態に応じて切り替えられる。トランジスタQ1、Q2の駆動は、制御部27により制御される。すなわち、本実施形態では、制御部27が、昇降圧回路29の動作を制御する電圧制御手段に相当する。制御部27は、出力電源線33および基準電源線32間のバス電圧(直流電圧)の値を検出する直流電圧検出手段としての機能およびモータMの動作状態を判断する機能(後述する)を備えている。このような機能を備えた制御部27は、モータMの動作状態の判断結果に応じて、昇降圧回路29の動作を制御する。
【0040】
制御部27は、昇圧動作を実行する場合、トランジスタQ1をオンした状態で、バス電圧の検出値が昇圧値ET(目標電圧値)となるようにトランジスタQ2をスイッチング(チョッパ)する。なお、昇圧値ETは、入力電圧の値(例えば、約282V)よりも高い所定値とする。これにより、昇降圧回路29は、入力電圧を昇圧して出力する昇圧コンバータとして機能する。
【0041】
制御部27は、降圧動作を実行する場合、トランジスタQ2をオフした状態で、バス電圧が降圧値ELとなるようにトランジスタQ1をスイッチング(チョッパ)する。なお、降圧値ELは、入力電圧の値よりも低く、且つモータMを駆動するために最低限必要な電圧値であればよく、直流電源回路22、モータM、インバータ装置24などの仕様に応じて適宜変更すればよい。これにより、昇降圧回路29は、入力電圧を降圧して出力する降圧コンバータとして機能する。ただし、昇降圧回路29が上記降圧動作を実行している期間であっても、後述する回生エネルギーが生じる期間では、バス電圧は降圧値ELより上昇する。
【0042】
制御部27は、基本的には、モータMが加速動作する際には昇圧動作を実行させ、等速動作および減速動作する際には降圧動作を実行させるように昇降圧回路29の動作を制御する。ただし、制御部27は、後述する特定のケースにおいては、加速動作終盤の特定の切替タイミングにおいて昇圧動作の実行を終了し、その後、次の加速動作が開始されるまで降圧動作を実行させるように昇降圧回路29の動作を制御する。なお、ここでは全てのモータMの動作状態(加速、等速および減速)が互いに概ね一致するという前提が成立するものとしている。このような前提が成立しない場合には、制御部27は、全てのモータMのうち、最も高い加速度で動作するモータMの動作状態の判断結果に基づいて昇降圧回路29の動作を制御すればよい。
【0043】
回生消費回路23は、出力電源線33および基準電源線32間に回生抵抗R1およびトランジスタQ3(回生スイッチ手段に相当)の直列回路を接続して構成されている。トランジスタQ3は、Nチャネル型のパワーMOSFETであり、そのオン、オフは、制御部27により制御される。すなわち、本実施形態では、制御部27は、回生消費回路23の動作を制御する回生制御手段に相当する。
【0044】
制御部27は、バス電圧の検出値が、回生消費電圧値EP以下であるときには、トランジスタQ3をオフし、回生消費電圧値EPを超えるときにはトランジスタQ3をオンする。このような構成により、減速動作時にモータMから回生されるエネルギー(回生エネルギー)に起因してバス電圧が上昇して回生消費電圧値EPを超える場合には回生抵抗R1に電流が流れる。これにより、回生エネルギーが熱エネルギーとして放出され、バス電圧が回生消費電圧値EP以下となるようにその電圧上昇が抑えられる。このような回生消費回路23の動作時間は、熱の問題や回生エネルギーの有効利用などの観点から考えると、極力短いほうがよい。
【0045】
回生消費電圧値EPは、出力電源線33および基準電源線32に接続される各回路素子(インバータ装置24のスイッチング素子、直流電源回路22のコンデンサ30など)の定格を超えてバス電圧が上昇しないような値に設定すればよい。なお、回生スイッチ手段としてのトランジスタQ3は、パワーMOSFETに限らずともよく、例えばバイポーラトランジスタなどの他の半導体スイッチング素子により構成してもよい。また、回生スイッチ手段としては、例えばリレーなどの機械式のスイッチで構成してもよい。
【0046】
インバータ装置24(駆動手段に相当)は、出力電源線33および基準電源線32間に6つのスイッチング素子例えばIGBT(図1には2つのみ示す)を三相フルブリッジ接続して構成されたインバータ主回路と、その駆動回路とを6組備えている(図1には1組のみ示す)。IGBTのコレクタ・エミッタ間には還流ダイオードが接続されている。また、IGBTのゲートには、駆動回路からゲート信号が与えられている。駆動回路は、制御部27から与えられる指令信号(通電指令Sc)に基づいてパルス幅変調されたゲート信号(PWM信号)を出力して各IGBTを駆動する。
【0047】
制御部27(駆動制御手段に相当)は、CPU、ROM、RAM、I/Oなどを備えたマイクロコンピュータを主体として構成されている。電流検出部25は、モータMに流れる電流を検出する電流検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。位置検出部26は、モータMの回転位置を検出する位置検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。制御部27は、電流検出部25から出力されるデータを元にモータMに流れる電流の値を取得するとともに、位置検出部26から出力されるデータを元にモータMの回転位置および回転速度を取得する。詳細は後述するが、制御部27は、このようにして取得した電流値、回転位置および回転速度を用いてインバータ装置24によるモータMの駆動をフィードバック制御する。
【0048】
図2は、ロボットシステム1におけるモータ制御の内容を等価的に示したブロック図である。図2に示すように、制御部27は、位置制御部41、速度制御部42、電流制御部43および動作状態判断部44を備えている。なお、図2では、1つのモータMの制御に係る構成のみを示しているが、実際には全てのモータMのそれぞれに対応して同様の構成が設けられている。さて、一般に産業用のロボットは、予めティーチングなどを実施することにより作成される所定の動作プログラムに従って動作するようになっている。図示しない上位制御部は、その動作プログラムを解釈し、ロボット2に動作プログラムに従った動作を行わせるように各モータMを制御するための指令値(位置指令pref)を位置制御部41に出力する。
【0049】
位置制御部41は、上位制御部から与えられる位置指令prefに対する現在の回転位置p*の偏差を求める減算器45と、減算器45の出力(偏差)をゼロに近づけるように速度指令vref(回転速度指令に相当)を出力する位置制御アンプ46とから構成されている。位置制御アンプ46のゲインはKpとなっている。速度制御部42は、微分器47、減算器48および速度制御アンプ49により構成されている。微分器47は、現在の回転位置p*を微分して現在の回転速度v*に変換する。減算器48は、速度指令vrefに対する現在の回転速度v*の偏差を求める。速度制御アンプ49は、減算器48の出力(偏差)をゼロに近づけるように電流指令irefを出力する。速度制御アンプ49のゲインはKvとなっている。
【0050】
電流制御部43は、電流指令irefに対する現在のモータMに流れる電流i*の偏差を求める減算器50と、減算器50の出力(偏差)をゼロに近づけるようにインバータ装置24に対する指令信号(通電指令Sc)を出力する電流制御アンプ51とから構成されている。電流制御アンプ51のゲインはKiとなっている。このような構成により、制御部27は、電流フィードバック制御、速度フィードバック制御および位置フィードバック制御を行い、モータMの駆動をフィードバック制御してロボット2のアームの動作制御を行う。
【0051】
動作状態判断部44は、モータMの回転速度v*および速度指令vrefを用いてモータM(ロボット2)の動作状態を判断する。すなわち、動作状態判断部44は、例えば、現時点の回転速度v*と速度指令vrefとを比較する。その結果、下記(2)式の関係を満たす状態が所定回数継続した場合には、回転速度を上昇させるようにモータMを駆動している状態であるため、加速動作中であると判断する。
v*<vref …(2)
【0052】
また、下記(3)式の関係を満たす状態が所定回数継続した場合には、回転速度を低下させるようにモータMを駆動している状態であるため、減速動作中であると判断する。
v*>vref …(3)
【0053】
また、下記(4)式の関係を満たす状態が所定回数継続した場合には、回転速度を一定値に維持するようにモータMを駆動している状態であるため、等速動作状態であると判断する。
v*=vref …(4)
【0054】
ただし、下記(5)式の関係を満たす状態が所定回数継続した場合には、回転速度をゼロに維持するようにモータMを駆動している状態、つまりモータMの駆動を停止している状態であるため、上記(4)式による判断に代えて、非動作状態であると判断する。
v*=vref=0 …(5)
【0055】
なお、動作状態判断部44によるモータMの動作状態判断方法は、上記判断方法に限らない。例えば、動作状態判断部44は、速度指令vrefを用いてモータM(ロボット2)の動作状態を以下のように判断してもよい。すなわち、動作状態判断部44は、例えば、現時点の速度指令vref(n)と、現時点より所定期間だけ前の時点(例えば、1サンプリング前の時点)の速度指令vref(n-1)とを比較する。その結果、下記(6)式の関係を満たす状態が所定回数継続した場合には、回転速度を上昇させるようにモータMを駆動している状態であるため、加速動作中であると判断する。
vref(n-1)<vref(n) …(6)
【0056】
また、下記(7)式の関係を満たす状態が所定回数継続した場合には、回転速度を低下させるようにモータMを駆動している状態であるため、減速動作中であると判断する。
vref(n-1)>vref(n) …(7)
【0057】
また、下記(8)式の関係を満たす状態が所定回数継続した場合には、回転速度を一定値に維持するようにモータMを駆動している状態であるため、等速動作状態であると判断する。
vref(n-1)=vref(n) …(8)
【0058】
ただし、下記(9)式の関係を満たす状態が所定回数継続した場合には、回転速度をゼロに維持するようにモータMを駆動している状態、つまりモータMの駆動を停止している状態であるため、上記(8)式による判断に代えて、非動作状態であると判断する。
vref(n-1)=vref(n)=0 …(9)
【0059】
なお、上記(4)、(5)、(8)、(9)式におけるイコール(=)は、完全に一致するものだけに限らず、所定の誤差を許容する場合も含むものとする。また、上記所定回数としては、1回以上であればよく、必要とされる動作状態の判断精度に応じて適宜設定すればよい。
【0060】
さて、前述したとおり、制御部27は、加速動作時に昇圧動作を実行するように昇降圧回路29の動作を制御する。これにより、加速動作時、インバータ装置24は、昇圧値ETに昇圧されたバス電圧の供給を受けてモータMを駆動することになる。図4は、加速動作時に昇圧動作を実行した場合と実行しなかった場合とにおけるモータMの回転速度(速度指令)およびバス電圧の推移の違いを示している。なお、図4では、昇圧動作を実行した場合を実線で示し、昇圧動作を実行しなかった場合を破線で表している。また、図4では、加速動作から等速動作を経ることなく直ちに減速動作に移行するような動作パターンとしている。
【0061】
図4に示すように、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、加速動作時における回転速度の傾き(加速度)が大きくなるとともに回転速度の最大値が高くなる。また、減速動作時における加速度(減速度)についても、加速動作時の加速度と同様に大きくなる。このため、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、加速動作の開始から減速動作の終了までの一連の動作に要する時間(サイクルタイム)が短縮される。しかし、図4に示すように、昇圧動作を実行した場合には、昇圧動作を実行しなかった場合に比べ、減速動作時におけるバス電圧のピーク値が高くなるため、回生消費回路23の動作時間が長くなる。
【0062】
このような点を改善するため、制御部27は、前述したとおり、等速動作時および減速動作時に降圧動作を実行するように昇降圧回路29の動作を制御する。これにより、減速動作時、バス電圧が降圧値ELに向けて降圧される。このため、回生エネルギーにより上昇するコンデンサ30の端子間電圧(バス電圧)が回生消費電圧値EPを超えるまでにコンデンサ30に蓄積可能なエネルギー量は、降圧動作を実行しない場合に比べて多くなる。すなわち、降圧動作を実行しない場合に比べ、より多くの回生エネルギーをコンデンサ30に蓄積することが可能になり、回生消費回路23の動作時間が短くなるので、回生消費回路23により無駄に消費されるエネルギーを低減することができる。
【0063】
しかし、加速動作時にバス電圧を昇圧するとともに、減速動作時にバス電圧を降圧するという上記構成を採用する場合、その昇圧動作から降圧動作に移行するタイミングの設定が重要になるケースが存在する。すなわち、加速動作の後、等速動作を経て、減速動作が実行される動作パターンでモータMが駆動される場合、加速動作の終了時点まで昇圧動作を実行していたとしても、等速動作が実行される期間から降圧動作を実行することが可能である。このような場合、減速動作の開始時点には既にバス電圧が降圧値ELまで降圧されていることになる。このため、減速動作時において回生エネルギーによるバス電圧の上昇が始まるときには、既にバス電圧が降圧値ELまで降圧された状態であり、上記したように回生消費回路23の動作時間を短くすることが可能になる。
【0064】
これに対し、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターン(特定の動作パターン)でモータMが駆動される場合には、加速動作の終了時点まで昇圧動作を実行していると、降圧動作は減速動作の開始時点からしか開始されないことになる。このような場合、減速動作時において回生エネルギーによるバス電圧の上昇が始まるときには、未だバス電圧が降圧されていない。このため、回生消費回路23の動作時間が長くなってしまう。なお、本実施形態における「等速動作が実行されることなく」とは、等速動作が完全に実行されない場合だけでなく、等速動作が所定時間未満だけ実行される場合をも含むものとする。そして、その所定時間としては、降圧動作を行ったとしても、バス電圧を降圧することができないような時間とする。
【0065】
そこで、制御部27は、加速動作の後、等速動作が実行されることなく、減速動作が実行される動作パターンでモータMが駆動される際には、加速動作が開始される時点(昇圧開始時点)から、加速動作が終了される時点より前の切替タイミングt(昇圧終了時点)までの期間(昇圧期間)に昇圧動作を実行させるように昇降圧回路29の動作を制御する。そして、制御部27は、切替タイミングtから次の加速動作が開始される時点までの期間(降圧期間)に降圧動作を実行させるように昇降圧回路29の動作を制御する。すなわち、制御部27は、加速動作終盤の切替タイミングtにおいて、昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御する。
【0066】
ただし、加速動作の終了時点より前のタイミングにおいて昇圧動作から降圧動作に切り替えるとしても、どのようなタイミングが最適であるのかを見極めることが重要である。切替タイミングtが早すぎると、加速動作時のモータMの加速度を大きくするとともに回転速度の最大値を高める効果が小さくなり、ロボット2のサイクルタイムの短縮効果が小さくなる。一方、切替タイミングtが遅すぎると、減速動作時にコンデンサ30に対して蓄積可能なエネルギー量が少なくなり、回生消費回路23の動作時間の短縮効果が小さくなる。
【0067】
図5は、理想的な切替タイミングにおいて昇圧動作から降圧動作に切り替えた場合における回転速度およびバス電圧の推移を示している。なお、図5には、加速動作の終了時点txにおいて昇圧動作から降圧動作に切り替えた場合におけるバス電圧の推移を比較例として破線にて示している。図5に示すように、本実施形態では、回生消費回路23の動作時間をほぼゼロにした上で、ロボット2のサイクルタイム短縮効果を最大限に得ることができるような時点となる切替タイミングtに設定する。すなわち、減速動作時において回生エネルギーにより上昇する際のバス電圧のピーク値が、回生消費電圧値EPにちょうど一致するようなタイミングに切替タイミングtを設定する。
【0068】
なお、図5には示されていないが、加速動作の期間において、切替タイミングt以前の回転速度の傾きに対し、切替タイミングt以降における回転速度の傾きは若干小さくなる。ただし、その差は僅かなものであり、サイクルタイムを短縮する効果に影響を及ぼすほどのものではないため、ここでは考慮しないこととする。
【0069】
このような切替タイミングの設定条件を満たすため、制御部27は、下記(1)式を用いて切替タイミングtを求めるようにしている。(1)式において、上段式の左辺第1項は、バス電圧が回生消費電圧値EPに一致するときにコンデンサ30に蓄えられる静電エネルギー(図6における三角形61の面積;ハッチング部分+白抜き部分の面積)から、バス電圧が昇圧値ETに一致するときにコンデンサ30に蓄えられる静電エネルギー(図6における三角形62の面積;白抜き部分の面積)を減算したものである。ただし、コンデンサ30の静電容量をCで表している。すなわち、上段式の左辺第1項は、昇降圧回路29が昇圧動作を実行している期間におけるコンデンサ30に対し、その端子間電圧が回生消費電圧値EPに達するまでに蓄積することが可能なエネルギー量(図6における台形63の面積;ハッチング部分の面積)に相当する。
【0070】
【数3】
【0071】
(1)式において、上段式の左辺第2項は、回転速度が最高回転速度指令vPに一致した時点(加速動作の終了時点;図7における時刻tx)における運動エネルギーから、切替タイミング(図7における時刻t)における運動エネルギーを減算したものである。ただし、切替タイミングtにおける速度指令をvCで表し、アームの質量をmで表し、後述する変数をαで表している。すなわち、上段式の左辺第2項は、昇降圧回路29が降圧動作を実行している状態でモータMが加速動作する期間(図7における時刻t〜txの期間)において消費されるエネルギー量に相当する。そして、(1)式において、上段式の右辺は、減速動作時にモータM側から回生されるエネルギー量に相当する。
【0072】
上記各項において、変数αを用いた理由は以下のとおりである。すなわち、これら各項により表されるエネルギー量は、モータMの動作に伴って生じるものである。このため、それらエネルギー量は、機構部品におけるフリクションロス(摩擦による損失)や、可動部分に用いられるグリスの粘度などの経時的に変化する要素の影響を受ける。従って、上記各項のエネルギー量は、ロボット2における機構部分の経時的な変化に応じて、実際の値が変化する可能性がある。変数αは、このような経時的な変化に起因するエネルギー量の演算誤差を補正することを目的として用いる。このため、上記経時的な変化が問題にならない初期段階において、変数αの値を所定の初期値(例えば「1」)に設定し、その後、ロボット2の稼働時間の増加に応じて、変数αの値を適宜調整すればよい。
【0073】
要するに、(1)式の上段式は、昇圧期間終了後にコンデンサ30に蓄積可能なエネルギー量と、昇降圧回路29が昇圧動作から降圧動作に切り替えられた後の加速動作において消費されるエネルギー量とを足し合わせたエネルギー量が、減速動作時に回生されるエネルギー量に一致する、という条件を表している。このような(1)式の上段式を切替タイミングtにおける速度指令vCについて解くと、(1)式の中段式が得られる。そして、(1)式の中段式により表される速度指令vCを、加速動作時の加速度aで除算することにより、(1)式の下段式が得られる。すなわち、減速動作時に回生エネルギーにより上昇するバス電圧のピーク値が、ちょうど回生消費電圧値EPに一致するようなタイミングとなる切替タイミングtが得られる。制御部27は、このような演算を行うことにより、昇圧動作から降圧動作への切替タイミングtを決定する。これに伴い、昇降圧回路29が昇圧動作を実行する昇圧期間が決定されることになる。
【0074】
特定の動作パターンに基づいてモータMが駆動される際、このようにして決定された昇圧期間(切替タイミングt)に基づいて昇降圧回路29の動作が制御されると、バス電圧は図5の実線のように変化する。すなわち、加速動作の開始時点から切替タイミングtまでの期間には、昇降圧回路29が昇圧動作を実行することで、バス電圧は昇圧値ETに維持される。切替タイミングtから加速動作の終了時点txまでの期間には、昇降圧回路29が降圧動作を実行することにより、バス電圧が降圧値ELに向けて低下する。降圧動作時、バス電圧が降圧値ELに達するまでの間は昇降圧回路29のトランジスタQ1はオフされた状態である。このため、コンデンサ30に対する新たなエネルギーの供給は行われない。従って、同期間(t〜txの期間)において、モータMの加速動作によりコンデンサ30に蓄積されたエネルギーが消費されることにより、バス電圧は低下する。その後、時点tx以降において減速動作が開始されると、回生エネルギーに起因してバス電圧は上昇する。ただし、そのピーク値は回生消費電圧値EPに抑えられる。
【0075】
また、制御部27は、前述した特定の動作パターン(加速動作の後、等速動作が実行されることなく、減速動作が実行されるという動作パターン)でモータMが駆動される際には、その一連の動作が終了する毎に、以下のような制御を実行する。すなわち、制御部27は、一連の動作が終了したとき(減速動作終了時)、その一連の動作における最高回転速度指令と、その一連の動作における実際の回転速度の最高値(最高回転速度)との差を求める。制御部27は、その差が所定の許容誤差値を超える場合には、昇圧終了時点tを補正する補正制御(後述する)を実行し、その差が所定の許容誤差値以下である場合には補正制御を実行しない。
【0076】
すなわち、最高回転速度指令と実際の最高回転速度との差が許容誤差値以下になるまでは、一連の動作が終了する毎に補正制御が継続的に実行されることになる。なお、切替タイミングtが最適な値であっても、種々の誤差の影響により、最高回転速度指令と実際の最高回転速度とが一致しないことも多い。そこで、本実施形態における許容誤差値は、そのような誤差の影響により生じる最高回転速度指令と実際の最高回転速度との差よりも明らかに大きい値に設定している。
【0077】
本実施形態において、補正制御を実行する理由は以下のとおりである。すなわち、前述したとおり、制御部27は、昇圧動作から降圧動作への切替タイミングtを、(1)式を用いた演算により求めている。このようにして求められる切替タイミングtは、あくまでも演算による結果であるため、実際に前述した効果を最大限に得ることが可能な最適な値であるとは限らない。
【0078】
図8は、切替タイミングが最適な値ではない場合における回転速度を示しており、(a)は切替タイミングが最適な値よりも早い場合であり、(b)は切替タイミングが最適な値よりも遅い場合である。なお、図8では、切替タイミングが最適な値である場合における回転速度も比較のために破線で示している。また、図8では、説明の都合上、切替タイミングが最適な値に対して大きくかけ離れた状態を図示しているが、実際にはこのように大きくかけ離れた値になることはない。
【0079】
図8の(a)に示すように、切替タイミングtが最適な値toよりも早い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より低くなる。このような場合、速度不足や減速時の加速度が低下することによりサイクルタイムが所定時間Tdだけ長くなるといった問題が生じる。また、図8の(b)に示すように、切替タイミングtが最適な値toよりも遅い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より高くなる。このような場合、速度超過や減速時の加速度が規定値を上回るといった問題が生じる。このような問題を解消するため、本実施形態では、実際にモータMを上記動作パターンに基づいて駆動する際、一連の動作が終了する毎に、昇圧終了時点を最適な値に近づけるような補正を行う補正制御を実行するようにしている。
【0080】
次に、上記構成の作用および効果について説明する。
ここでは、前述した特定の動作パターン(加速動作から等速動作を経ることなく減速動作を実行する動作パターン)に該当する所定の動作パターンAに基づいて、モータMが駆動される際における制御部27の動作について説明する。制御部27は、初めて動作パターンAに基づいてモータMの駆動を行う場合、上記(1)式を用いた演算により、その動作パターンAに対応する切替タイミングtを求める。その後、制御部27は、動作パターンAに基づいてモータMの駆動を制御するとともに、モータMの動作状態に応じて昇降圧回路29の動作を制御する。この際、制御部27は、演算により求めた切替タイミングtの時点において、昇降圧回路29を昇圧動作から降圧動作に切り替える。
【0081】
制御部27は、このような動作パターンAに基づく一連の動作(加速動作〜減速動作)が終了する度に、図9に示すような内容の制御を実行する。すなわち、図9のステップS1では、その一連の動作における最高回転速度指令vref(max)と、その一連の動作における実際の最高回転速度v*(max)との差を求め、その差が所定の許容誤差値Vth以下であるか否かが判断される。最高回転速度指令vref(max)および最高回転速度v*(max)の差が許容誤差値Vthを超える場合(NO)には、ステップS2に進み、後述する補正制御が実行される。これにより、動作パターンAに対応する切替タイミングtが補正される。すると、次に同じ動作パターンAに基づくモータMの駆動が行われる際において、制御部27は、補正後の切替タイミングtを用いて昇降圧回路29の動作を制御する。一方、上記差が許容誤差値Vth以下である場合(YES)には補正制御が実行されることなく、制御が終了する。この場合には、次に同じ動作パターンAに基づくモータMの駆動が行われる際においても、制御部27は、演算により求めた切替タイミングtを用いて昇降圧回路29の動作を制御する。
【0082】
ステップS2では、制御部27は、その一連の動作においてモータMの回転速度が最高回転速度指令vref(max)に一致すると考えられる時点(推定最高速度時点)を、回転速度指令を用いて推定する。続くステップS3において、制御部27は、その一連の動作においてモータMの回転速度が実際に最高回転速度v*(max)になった時点(実際最高速度時点)を求め、ステップS4に進む。例えば、図8の場合には、時刻taが推定最高速度時点に相当し、時刻tbが実際最高速度時点に相当する。
【0083】
ステップS4では、最高回転速度v*(max)が最高回転速度指令vref(max)より高いか否かが判断される。図8の(a)のように切替タイミングtが最適な値toよりも早い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より低くなるため(NO)、ステップS5に進む。このような場合、図10に示すように、切替タイミングtを所定量Δtだけ遅らせたタイミングt’にすれば、上記した問題(サイクルタイムの増加など)が軽減されることが分かる。そこで、ステップS5では、そのときの切替タイミングを所定の補正量だけ遅らせるような補正が行われる。そして、ステップS6に進み、補正後の値が切替タイミングとして設定される。
【0084】
一方、図8の(b)のように切替タイミングtが最適な値toよりも遅い場合には、最高回転速度v*(max)が最高回転速度指令vref(max)より高くなるため(YES)、ステップS7に進む。このような場合、図11に示すように、切替タイミングtを所定量Δtだけ早めたタイミングt’にすれば、上記した問題(速度超過や加速度の規定値オーバーなど)が軽減されることが分かる。そこで、ステップS7では、そのときの切替タイミングを所定の補正量だけ早めるような補正が行われる。そして、ステップS6に進み、補正後の値が切替タイミングとして設定される。
【0085】
上記した所定の補正量は、推定した推定最高速度時点と求めた実際最高速度時点との差の絶対値としている。推定最高速度時点が推定により求めたものであるため、ある程度不確定な要素が存在するものの、上記補正量は、演算により求めた切替タイミングと、最適な切替タイミングとの差に近いものである。このため、上記した補正制御を行うことにより、補正後の切替タイミングを、最適な値に近づけることが可能となる。
【0086】
以上説明したように、本実施形態の制御部27は、特定の動作パターン(加速動作から等速動作を経ることなく減速動作が実行される動作パターン)に基づいてモータMが駆動される際、(1)式を用いた演算により求めた切替タイミングtの時点において、昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御する。このようにすることで、回生消費回路23の動作時間をほぼゼロにした上で、ロボット2のサイクルタイム短縮効果を最大限に得ることができる。従って、本実施形態によれば、モータMの駆動を制御するための制御内容を変更することなく、ロボット2の一連の動作時間を短縮しつつ、減速動作時にモータMから回生されるエネルギーを消費する際に発生する熱を低減することができる。
【0087】
また、制御部27は、上記した特定の動作パターンに該当する動作パターンでモータMが駆動される際には、その一連の動作が終了する毎に、最高回転速度指令と実際の最高回転速度との差を求め、その差が許容誤差値を超える場合には演算により求めた切替タイミングを補正する補正制御を実行する。すなわち、制御部27は、最高回転速度指令と実際の最高回転速度との差を許容誤差値以下にするまでは、一連の動作が終了する毎に補正制御を実行する。このように、同じ動作パターンでモータMが駆動される度に、昇圧動作から降圧動作への切替タイミングが、その動作パターンにおける最適な値に近づくように補正されるため、前述した効果を最大限に得ることができる。例えば、ティーチングにおける最終動作確認を実行する際に上記補正制御を実行しておけば、実動作を行うときには、その初回動作時から最適な値に近い切替タイミングtでもって昇降圧動作を切り替えることが可能になり、上記効果(サイクルタイムの短縮、減速動作時の熱低減、回生エネルギーの有効利用など)を得る事が可能となる。
【0088】
なお、本発明は上記し且つ図面に記載した実施形態に限定されるものではなく、次のような変形または拡張が可能である。
制御部27は、(1)式を用いて切替タイミングtを演算する際、実際最高速度時点が推定最高速度時点よりも早い時点になるように、変数αの初期値を設定してもよい。このようにすることで、(1)式による演算結果を意図的に安全サイドにシフトさせることができる。その理由は以下のとおりである。すなわち、演算により求めた切替タイミングが最適な値に対して所定の誤差を有する場合、切替タイミングが最適な値よりも早い時点となるか、あるいは、遅い時点となるかの2通りのパターンが考えられる。切替タイミングが最適な値より遅い時点となる場合(図8の(b))に生じる問題は、速度超過や加速度定格オーバーなどであり、問題の深刻度は比較的高い。一方、切替タイミングが最適な値より早い時点となる場合(図8の(a))に生じる問題は、速度不足やサイクルタイムの増加などであり、問題の深刻度は比較的低い。また、このような問題のある切替タイミングが最適な値より早い時点となる場合でも、昇圧動作を実行しない従来の構成と比較すれば、サイクルタイムを短くできる上、加速度定格オーバーなどの深刻な問題を招くことがない分だけ有効であると考えられる。そして、演算により求められる切替タイミングは、最適な値になるとは限らず、所定の誤差が生じる可能性がある。
【0089】
このようなことから、上記したように変数αの初期値を設定すれば、演算により切替タイミングを求めた後の最初の動作においては、速度不足やサイクルタイムの増加などの比較的深刻度の低い問題が生じることになるが、その後は補正制御が行われることにより、切替タイミングが徐々に最適な値に近づけられ、上記問題も徐々に生じなくなる。従って、上記したように変数αの初期値を設定することで、速度超過や加速度定格オーバーなどの比較的深刻度の高い問題が発生する事態を未然に防止することができる上、従来の構成に比べてサイクルタイムを短縮することが可能となる。
【0090】
制御部27は、図9に示す制御(補正制御を含む制御)を必ずしも実行する必要はない。例えば、制御部27が、(1)式を用いた演算により求められる切替タイミングの時点で昇圧動作から降圧動作に切り替えるように昇降圧回路29の動作を制御するだけで、所望の効果(サイクルタイムの短縮、減速動作時の熱低減、回生エネルギーの有効利用など)が得られるのであれば、制御部27は図9に示す制御(補正制御を含む)を実行しなくてもよい。
昇降圧回路は、図1に示した構成に限らずともよく、一対の直流電源線間のバス電圧(直流電圧)を所定の昇圧値(目標電圧値)に昇圧する昇圧動作と、上記バス電圧を降圧する降圧動作とを実行可能な構成であればよい。
【0091】
本発明は、モータMとしてDCブラシレスモータを用いた構成に限らず、例えば直流モータ、交流モータなど各種のモータを用いた構成にも適用可能である。なお、モータMとして直流モータを用いる場合には、モータMを駆動する駆動手段として、インバータ装置24に代えて、例えばHブリッジ回路を主体として構成された駆動回路を用いればよい。
上記実施形態では、本発明を6軸の垂直多関節型のロボット2に適用した例を説明したが、本発明は、各軸をモータにより駆動する構成のロボット全般に適用可能である。
【符号の説明】
【0092】
図面中、1はロボットシステム、2はロボット、23は回生消費回路、24はインバータ装置(駆動手段)、27は制御部(駆動制御手段、直流電圧検出手段、回生制御手段、電圧制御手段)、29は昇降圧回路、30はコンデンサ、32は基準電源線(直流電源線)、33は出力電源線(直流電源線)、Mはモータ、Q3はトランジスタ(回生スイッチ手段)、R1は回生抵抗を示す。
【特許請求の範囲】
【請求項1】
ロボットのアームを駆動するモータと、
一対の直流電源線を介して与えられる直流電圧の供給を受けて動作し、前記モータを駆動する駆動手段と、
前記モータの回転速度を回転速度指令に一致させるように前記駆動手段による前記モータの駆動を制御する駆動制御手段と、
前記直流電圧を検出する直流電圧検出手段と、
前記一対の直流電源線間に接続されたコンデンサと、
前記一対の直流電源線間に直列に設けられた回生スイッチ手段および回生抵抗とからなる回生消費回路と、
前記直流電圧検出手段の検出値が回生消費電圧値以下のときには前記回生スイッチ手段をオフし、当該検出値が回生消費電圧値を超えたときには前記回生スイッチ手段をオンする回生制御手段と、
前記直流電圧を目標電圧値に一致させるように昇圧する昇圧動作および前記直流電圧を降圧する降圧動作を実行する昇降圧回路と、
前記回転速度指令を用いて前記モータの動作状態を判断し、その判断結果に応じて前記昇降圧回路の動作を制御する電圧制御手段と、
を備え、
前記電圧制御手段は、
加速動作の後に等速動作を行うことなく減速動作を行うという動作パターンで前記モータが駆動される際、
前記加速動作が開始される時点である昇圧開始時点から、前記モータの回転速度が前記加速動作における前記回転速度指令の最高値である最高回転速度指令に一致する前記加速動作の終了時点よりも前の時点である昇圧終了時点までの昇圧期間には、前記昇圧動作を実行するように前記昇降圧回路の動作を制御し、
前記昇圧終了時点から次の前記昇圧開始時点までの降圧期間には、前記降圧動作を実行するように前記昇降圧回路の動作を制御するようになっており、
前記昇圧終了時点tを下記(1)式により求めることにより、前記昇圧期間の長さを決定することを特徴とするロボットシステム。
【数1】
ただし、前記コンデンサの静電容量をCとし、前記回生消費電圧値をEPとし、前記目標電圧値をETとし、前記ロボットのアームの質量をmとし、前記昇圧終了時点における速度指令をvCとし、前記最高回転速度指令をvPとし、前記加速動作時の加速度をaとし、前記ロボットにおける機構部分の経時的な変化に応じて変更される変数をαとする。
【請求項2】
前記電圧制御手段は、
前記動作パターンに基づく一連の動作が終了する毎に、その一連の動作における前記最高回転速度指令と、その一連の動作における前記モータの回転速度の最高値である最高回転速度との差を求め、
その差が所定の許容誤差値を超える場合には、前記昇圧終了時点を補正する補正制御を実行し、
前記補正制御においては、
前記一連の動作において前記モータの回転速度が前記最高回転速度指令に一致する時点である推定最高速度時点を、前記回転速度指令を用いて推定し、
前記一連の動作において前記モータの回転速度が前記最高回転速度になった時点である実際最高速度時点を求め、
前記最高回転速度が前記最高回転速度指令より低い場合には、前記昇圧終了時点に、前記推定最高速度時点と前記実際最高速度時点との差の絶対値を加算する補正を行い、
前記最高回転速度が前記最高回転速度指令より高い場合には、前記昇圧終了時点から、前記推定最高速度時点と前記実際最高速度時点との差の絶対値を減算する補正を行うことを特徴とする請求項1に記載のロボットシステム。
【請求項3】
前記電圧制御手段は、前記実際最高速度時点が前記推定最高速度時点より早い時点になるように、前記変数αの初期値を設定することを特徴とする請求項2に記載のロボットシステム。
【請求項1】
ロボットのアームを駆動するモータと、
一対の直流電源線を介して与えられる直流電圧の供給を受けて動作し、前記モータを駆動する駆動手段と、
前記モータの回転速度を回転速度指令に一致させるように前記駆動手段による前記モータの駆動を制御する駆動制御手段と、
前記直流電圧を検出する直流電圧検出手段と、
前記一対の直流電源線間に接続されたコンデンサと、
前記一対の直流電源線間に直列に設けられた回生スイッチ手段および回生抵抗とからなる回生消費回路と、
前記直流電圧検出手段の検出値が回生消費電圧値以下のときには前記回生スイッチ手段をオフし、当該検出値が回生消費電圧値を超えたときには前記回生スイッチ手段をオンする回生制御手段と、
前記直流電圧を目標電圧値に一致させるように昇圧する昇圧動作および前記直流電圧を降圧する降圧動作を実行する昇降圧回路と、
前記回転速度指令を用いて前記モータの動作状態を判断し、その判断結果に応じて前記昇降圧回路の動作を制御する電圧制御手段と、
を備え、
前記電圧制御手段は、
加速動作の後に等速動作を行うことなく減速動作を行うという動作パターンで前記モータが駆動される際、
前記加速動作が開始される時点である昇圧開始時点から、前記モータの回転速度が前記加速動作における前記回転速度指令の最高値である最高回転速度指令に一致する前記加速動作の終了時点よりも前の時点である昇圧終了時点までの昇圧期間には、前記昇圧動作を実行するように前記昇降圧回路の動作を制御し、
前記昇圧終了時点から次の前記昇圧開始時点までの降圧期間には、前記降圧動作を実行するように前記昇降圧回路の動作を制御するようになっており、
前記昇圧終了時点tを下記(1)式により求めることにより、前記昇圧期間の長さを決定することを特徴とするロボットシステム。
【数1】
ただし、前記コンデンサの静電容量をCとし、前記回生消費電圧値をEPとし、前記目標電圧値をETとし、前記ロボットのアームの質量をmとし、前記昇圧終了時点における速度指令をvCとし、前記最高回転速度指令をvPとし、前記加速動作時の加速度をaとし、前記ロボットにおける機構部分の経時的な変化に応じて変更される変数をαとする。
【請求項2】
前記電圧制御手段は、
前記動作パターンに基づく一連の動作が終了する毎に、その一連の動作における前記最高回転速度指令と、その一連の動作における前記モータの回転速度の最高値である最高回転速度との差を求め、
その差が所定の許容誤差値を超える場合には、前記昇圧終了時点を補正する補正制御を実行し、
前記補正制御においては、
前記一連の動作において前記モータの回転速度が前記最高回転速度指令に一致する時点である推定最高速度時点を、前記回転速度指令を用いて推定し、
前記一連の動作において前記モータの回転速度が前記最高回転速度になった時点である実際最高速度時点を求め、
前記最高回転速度が前記最高回転速度指令より低い場合には、前記昇圧終了時点に、前記推定最高速度時点と前記実際最高速度時点との差の絶対値を加算する補正を行い、
前記最高回転速度が前記最高回転速度指令より高い場合には、前記昇圧終了時点から、前記推定最高速度時点と前記実際最高速度時点との差の絶対値を減算する補正を行うことを特徴とする請求項1に記載のロボットシステム。
【請求項3】
前記電圧制御手段は、前記実際最高速度時点が前記推定最高速度時点より早い時点になるように、前記変数αの初期値を設定することを特徴とする請求項2に記載のロボットシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−61563(P2012−61563A)
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願番号】特願2010−207928(P2010−207928)
【出願日】平成22年9月16日(2010.9.16)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【Fターム(参考)】
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願日】平成22年9月16日(2010.9.16)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【Fターム(参考)】
[ Back to top ]