(57)【要約】【課題】簡単な計算で振動系メカの負荷の振動を完全に抑制できるようにする。【解決手段】負荷を駆動するモータ２と、そのモータの位置か速度を検出する検出器３を備え、指令と検出器の信号をもとにモータヘ与えるトルク指令を計算するサーボ制御装置において、モータ２に作用する外乱を推定する剛体系のオブザーバ７と、外乱推定値に乗じるゲインG1と外乱推定値を積分して外乱積分値を計算する積分器８と、外乱積分値に乗じるゲインG2と外乱推定値にゲインG1を乗じた補償信号1と、外乱積分値にゲインG2を乗じた補償信号2と、制御部５が計算した加速度指令Uref0とを足し合わせる加算器１１とを備える。【選択図】    図１
2004199495.tif 000002
【特許請求の範囲】
【請求項１】
負荷を駆動するモータと、そのモータの位置もしくは速度を検出する検出器と、指令と前記検出器の信号から前記モータヘ与えるトルク指令を計算する位置制御部または速度制御部と、を有するサーボ制御装置において、
前記モータに作用する外乱を推定する剛体系のオブザーバと、
前記外乱推定値にゲインG1を乗じる係数器と、
前記外乱推定値を積分して外乱積分値を計算する積分器と、
前記外乱積分値にゲインG2を乗じる第２の係数器と、
前記外乱推定値に前記ゲインG1を乗じた補償信号1と、前記外乱積分値に前記ゲインG2を乗じた補償信号2と、前記位置制御部または前記速度制御部が計算した加速度指令Uref0を加算する加算器と
を備えたことを特徴とするサーボ制御装置。
【請求項２】
前記オブザーバで推定する状態変数は、モータ速度と前記モータに作用する加速度外乱の二つであることを特徴とする請求項１記載のサーボ制御装置。
【請求項３】
前記オブザーバの入力信号は、加速度指令と、モータ位置検出値もしくはモータ速度検出値であることを特徴とする請求項１または請求項２のいずれかに記載のサーボ制御装置。
【請求項４】
前記ゲインG1と前記ゲインG2の値は、制御系全体の極配置により決定されることを特徴とする請求項１から請求項３のいずれかに記載のサーボ制御装置。
【請求項５】
前記外乱推定値に前記ゲインG1を乗じる前に、フィルタ処理する、フィルタF1(s)を備えたことを特徴とする請求項１から請求項４のいずれかに記載のサーボ制御装置。
【請求項６】
前記積分器へ入力する前の前記外乱推定値をフィルタ処理する、フィルタF2(s)を備えたことを特徴とする請求項１から請求項５のいずれかに記載のサーボ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、制御対象が２慣性系を代表とするような振動系である場合の、負荷の振動を抑制するサーボ制御装置に関し、特にオブザーバの外乱推定値を使用し、振動を抑制するサーボ制御装置に関する。
【０００２】
【従来の技術】
（従来例１）
従来のオブザーバを用いたサーボ制御装置では、２慣性系のような振動系の制御対象に対して、その振動を抑制するための方法としては、２慣性メカを正確に模擬したモデルを使用してオブザーバを構成し、負荷速度と弾性変位を推定し、それらにゲインを乗じてフィードバックしていた（例えば、特許文献１参照）。
（従来例２）
また、オブザーバを使用した外乱抑圧制御として、外乱オブザーバを構成し、外乱推定値の高周波成分を除去するために、フィルタ処理を施し、ゲインを乗じてフィードバックする方法が一般的に用いられていた（例えば、特許文献２参照）。
【０００３】
【特許文献１】
特開昭６０−２００７８８（実施例、第５図）
【特許文献２】
特開平２−１９９５０２（実施例、第１図）
【０００４】
以下、２つの従来例について図を用いて説明する。
（従来例１）
図４において、１は制御対象の負荷であり、モータ２により駆動される。３はモータの速度を検出する検出器である。４はイナーシャ定数Jであり、加速度指令Urefをトルク指令Trefへ変換する定数である。５は、速度指令Vrefと検出速度Vmを入力し、指令と検出値が一致するようにサーボ制御を行う速度制御部であり、加速度指令Uref0を算出する。
41は２慣性系のオブザーバであり、トルク指令Tref（=u）と検出速度Vm（=v）を入力とし、弾性変位推定値dhと負荷速度推定値vlhを算出する。以下、（１）式に従来例１で使用されるオブザーバの式を示す。
【０００５】
【数１】
2004199495.tif 000003
【０００６】
ここで、Jmはモータイナーシャ、JLは負荷イナーシャ、Kはばね定数、l1、l2はオブザーバの推定値の収束の速さを決定する変数、ω1、ω2は中間変数である。
このように、オブザーバモデルとして、２慣性系のメカをそのまま使用するため、オブザーバの行列式自体に、メカのパラメータJm、JL、Kが含まれる構成となる。算出された、弾性変位推定値dhと負荷速度推定値vlhそれぞれに、係数器42のゲインK3と係数器43のゲインK4が乗じられ、加算器４４で加算されて減算器45に負帰還される。この方法では、負荷の状態量を推定し、フィードバックしてシステム全体の極を動かせるようになっており、減衰率が高くなるようにK3,K4を設定して負荷の振動が抑制されている。
（従来例２）
図５において、１は制御対象の負荷であり、モータ２により駆動される。３はモータの速度を検出する検出器である。４はイナーシャ定数Jであり、加速度指令Urefをトルク指令Trefへ変換する定数である。５は、速度指令Vrefと検出速度Vmを入力し、指令と検出値が一致するようにサーボ制御を行う速度制御部であり、加速指令Uref0を計算する。６は位置制御部を表し、位置指令θrefと検出位置θmを入力し、位置指令θrefと検出位値θmが一致するようにサーボ制御を行い、速度指令Vrefを算出する。51は外乱オブザーバを表し、トルク指令Trefと検出速度Vmを入力とし、外乱推定値dhを算出する。算出された外乱推定値dhに、係数器52のゲインを乗じ、フィルタ53でフィルタ処理した後、減算器５４にて負帰還される。ここで、係数器52中の記号Jはイナーシャ設定値、Aはフィードバックゲイン、KTはトルク定数を表す。
この方法では、外乱推定値をフィードバックすることで、外乱の影響を除去し、指令どおりに、モータが動作するような制御を行っていた。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来例１のサーボ制御方法では、（１）式に示すように２慣性系のメカを正確に模擬したモデルを使用するため、オブザーバの行列の要素自体に、メカのパラメータJm、JL、Kが含まれるため、計算が複雑になるという問題があった。また、ロボットなどのように動作中にイナーシャが変化する場合、ゲインだけでなく、オブザーバモデルまでも変化させなければならず、プログラムが複雑になるといった問題があった。また、例えば、メカのパラメータJm、JL、Kの設定値が実機とずれていた場合など、オブザーバの推定値自体がずれてしまうといった問題があった。そして、このように推定値自体がずれると振動抑制効果が得られないばかりか、逆に悪影響を及ぼすといった可能性もあった。
また、従来例２の外乱オブザーバを用いる方法では１つの信号（外乱推定値）しか取り扱っておらず、これでは、システム全体の極を自由に設定することはできず、結果的に制御対象の振動を完全に抑制するには不十分であるという問題があった。
本発明はこのような従来例１と従来例２の上記問題点に鑑みてなされたものであり、メカのパラメータを使用しない簡単な剛体系オブザーバを構成し、推定された外乱推定値にゲインG1を乗じたものと、外乱推定値を積分した外乱積分値にゲインG2を乗じたものを通常制御部で計算される加速度指令に加算するようにして、２種類の信号を独立に取り扱うことを可能とし、結果として、簡単な計算で、振動系メカの負荷の振動を完全に抑制することができる装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記問題を解決するため、本発明は、負荷を駆動するモータと、該モータの位置もしくは速度を検出する検出器と、指令と該検出器の信号から前記モータヘ与えるトルク指令を計算する位置制御部または速度制御部と、を有するサーボ制御装置において、前記モータに作用する外乱を推定する剛体系のオブザーバと、前記外乱推定値に乗じるゲインG1と、前記外乱推定値を積分し外乱積分値を計算する積分器と、前記外乱積分値に乗じるゲインG2と、前記外乱推定値にゲインG1を乗じた補償信号1と、前記外乱積分値にゲインG2を乗じた補償信号2と、前記位置制御部または前記速度制御部が計算した加速度指令Uref0と加算する加算器とを備えたことを特徴とするものである。
このようになっているため、簡単な計算で、且つ、制御系全体を自由に極配置でき、振動系メカの負荷の振動を完全に抑制することができる。また、メカのパラメータが分からない時でも、ゲインG1、G2の調整のみで、負荷の振動を完全に抑制することができる。
また、前記オブザーバで用いる状態変数は、モータ速度とモータに作用する加速度外乱の二つでであってもよい。このように状態変数が２つだけになっているため、さらに計算量が少なくできる。
また、前記オブザーバへの入力信号は、加速度指令と、モータ位置検出値もしくはモータ速度検出値であってもよい。このようにトルク指令ではなく加速度指令を用いているため、オブザーバの構成が簡単にでき、且つ、モータのイナーシャの正確な値が分からないような時でもオブザーバは外乱を正確に推定することができる。
また、前記ゲインG1と前記ゲインG2は、制御系全体の極配置により決定されるようにしてもよい。このようになっているため、制御系全体の挙動を自由に決定できる。
また、前記外乱推定値にゲインG1を乗じる前に、フィルタ処理する、フィルタF1(s)を備えてもよい。
また、前記積分器へ入力する前の前記外乱推定値をフィルタ処理する、フィルタF2(s)を備えてもよい。
このようになっているため、外乱推定値に、例えば摩擦や重力のようにフィードバックしたくない変数が含まれている場合除去することができる。また、外乱推定値が、高周波成分を含んでいる場合には、それを除去することができるという効果がある。
【０００９】
【発明の実施の形態】
以下、本発明の方法の具体的実施例について、図に基づいて説明する。図１は、本発明の方法を実施するサーボ制御装置のブロック図である。図において１は制御対象の負荷であり、モータ２により駆動される。３はモータの位置を検出する検出器である。４はイナーシャ定数Jであり、加速度指令Urefをトルク指令Trefへ変換する定数である。５は速度指令Vrefと検出速度Vmを入力し、指令と検出値が一致するようにサーボ制御を行う速度制御部であり、加速度指令Uref0を計算する。６は位置制御部を表し、位置指令θrefと検出位値θmを入力し、位置指令θrefと検出位値θmが一致するようにサーボ制御を行い、速度指令Vrefを算出する。７は剛体系オブザーバを表し、加速度指令Urefとモータ位置θmを入力し、外乱推定値dhを推定する。8は積分器を表し、外乱推定値を積分処理し、外乱積分値dIhを求める。９は外乱推定値にゲインG1を乗じる係数器を表し、10は外乱積分値にゲインG2を乗じる係数器を表している。11は加算器を表し、外乱推定値にゲインG1を乗じた補償信号Tcomp1と、外乱積分値にゲインG2を乗じた補償信号Tcomp2を速度制御器5で計算された加速度指令Uref0に足し合わせる処理を行う。
【００１０】
次に剛体系オブザーバの構成について具体的に説明する。（２）式のように、オブザーバのモデルを構成する。ここで、θm：モータ位置、Vm：モータ速度、d:加速度外乱、Uref：加速度指令である。
【００１１】
【数２】
2004199495.tif 000004
【００１２】
（２）式をデジタル制御で実現するために、離散化してオブザーバの構成にすると（３）式のようになる。
【００１３】
【数３】
2004199495.tif 000005
【００１４】
ここで、L1,L2,L3はオブザーバゲインであり、推定値の収束の速さを設計できる変数である。
変数L1、L2、L3は、（３）式の固有値の極λを設定して決定することができる。
例えば、固有値を３つともλとした場合は、（４）式の恒等式を解いて求められる。
(S-λ)3=S3+(L1-3)S2+(3-2L1+L2Ts)S+L1-1+Ts2L3-L2Ts              （４）
（４）式を解くと、（５）式が得られる。
L1=3-3λ
L2=(3λ2+2L1-3)/Ts                                             （５）
L3=(1-L1+L2・Ts-λ3)/Ts2
従って、λを任意に決定し、（５）式へ代入して変数L1,L2,L3の値を求めればよい。ここで、Tsは制御サンプリング時間を表す。
そして、後は、（３）式を制御サンプリング時間ごとに逐次計算をすれば、外乱推定値dhを求めることができる。
次に、外乱推定値dhを積分し、外乱積分値dIhを求める方法であるが、以下の（６）式により計算される。
dIh(k+1)=dIh(k)+Ts・dh(k+1)                                    （６）
最後に、外乱推定値dhと計算された外乱積分値dIhに、それぞれゲインG1,ゲインG2を乗じ、Uref0に加算器で加え合わせて、最終的な加速度指令Urefを（７）式により求める。
Uref=Uref0+G1・dh+G2・dIh                                      （７）
本実施の形態を用いれば、オブザーバのモデル自体は２慣性系ではなく、剛体系で構成され、且つ、加速度指令を入力するため、（３）式で表されるように、負荷イナーシャやばね定数などの制御対象のパラメータを全く用いず、非常に簡単に、計算量も少なく、負荷の振動を抑制することが可能になる。
また、メカのパラメータが分からない場合も、オブザーバ自体の計算は正確に行われるため、ゲインG1、G2を調整して負荷の振動を抑制することが可能になる。
以上が、第一の実施の形態の説明である。
次に第二の実施の形態について図２に基づいて説明する。ここでは、第一の実施の形態と、剛体系オブザーバで使用する変数のみが異なる。第一の実施の形態（図１）では、加速度指令Urefと位置検出値θmを入力としていたが、本実施例では、図２に示すように、加速度指令Urefと速度検出値Vmを入力とするところが特徴である。この場合、オブザーバの式は（８）式のようになる。
【００１５】
【数４】
2004199495.tif 000006
【００１６】
ここで、LL1、LL2は、（３）式のL1,L2,L3の求め方と同様に求めればよい。
このように第二の実施の形態を用いれば、第一の実施の形態で用いるオブザーバより、さらに、簡単な構成になり、計算量も非常に少なくなるという効果がある。以上が、第二の実施の形態の説明である。
次に第三の実施の形態について図３に基づいて説明する。図３は、図２に、13のフィルタF1(s)と14のフィルタF2(s)が付加されたものである。このように、フィルタ処理を行えば、外乱推定値に含まれる、フィードバックしたい値のみを抽出してフィードバックできるため、摩擦や重力などの外乱がある場合も、性能が落ちないという効果がある。ここで、F1(s)とF2(s)で表されるフィルタの種類は限定されるものではなく、例えば、摩擦、重力等の低周波数の外乱を除去したい場合は、ハイパスフィルタを用いればよく、また、ノイズ等高周波の信号を除去したい場合はローパスフィルタを用いればよいことになる。また特定の周波数成分のみ抽出したい場合は、バンドパスフィルタを用いても良いし、逆に、特定の周波数成分のみ除去したい場合はノッチフィルタを用いても良い。また、これらのフィルタを組み合わせて使用しても良い。以上が、第三の実施の形態の説明である。
【００１７】
【発明の効果】
以上述べたように、本発明の方法によれば、オブザーバにより外乱を推定しゲインを乗じたものと、外乱推定値を積分した外乱積分値にゲインを乗じたもの２つを加速度指令値に加算することで、２つの負荷情報を独立にフィードバックでき、ゲインの選び方でシステム全体を自由に極配置することができ、結果として、制御対象の振動を完全に抑制できるという効果がある。
また、オブザーバ行列の各要素にイナーシャやばね定数などのメカのパラメータが含まれないため、オブザーバ自体の推定値が誤差を含むことは無いという効果がある。
また、オブザーバ行列の各要素にメカのパラメータが含まれないため、動作中にメカのパラメータが変化する場合なども、フィードバックゲインの値のみを変更すればよく、処理が簡単になるという効果がある。
また、外乱推定値を積分した変数をフィードバックするため、外乱推定値に高周波の成分がある場合も、積分の効果で平均化され、フィードバックゲインを大きく設定できるという効果がある。
また、オブザーバ行列の各要素にメカのパラメータが含まれないため、メカのパラメータが分からない場合であっても、ゲインG1、G2を調整するだけで負荷の振動を抑制することが可能になる。
また、請求項２に記載の装置によれば、モータ速度とモータの加速度外乱のみ推定する構成であるのでオブザーバの行列計算が非常に簡単になるという効果がある。
また、請求項５および請求項６記載の装置によれば、外乱推定値をフィルタ処理することで、外乱推定値に含まれるフィードバックしたい値のみを抽出してフィードバックできるため、摩擦や重力などの外乱がある場合も、性能が落ちないという効果がある。
【図面の簡単な説明】
【図１】本発明の第一の実施の形態の構成を示すブロック図
【図２】本発明の第二の実施の形態の構成を示すブロック図
【図３】本発明の第三の実施の形態の構成を示すブロック図
【図４】従来例１を適用したサーボ制御装置の構成を示すブロック図
【図５】従来例２を適用したサーボ制御装置の構成を示すブロック図
１  負荷
２  モータ
３  検出器
４  イナーシャ定数
５  速度制御部
６  位置制御部
７  剛体系オブザーバ
８  積分器
９、１０、４２、４３、５２  係数器
１１、４４  加算器
１３  フィルタF1(s)
１４  フィルタF2(s)
４１  ２慣性系オブザーバ
４５、５４  減算器
５１  外乱オブザーバ
５３  フィルタ
【図１】
2004199495.tif 000007
【図２】
2004199495.tif 000008
【図３】
2004199495.tif 000009
【図４】
2004199495.tif 000010
【図５】
2004199495.tif 000011