特許第5759013号(P5759013)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 国際計測器株式会社の特許一覧

<>
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000002
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000003
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000004
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000005
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000006
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000007
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000008
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000009
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000010
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000011
  • 特許5759013-制御プログラム、制御方法及び制御装置 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5759013
(24)【登録日】2015年6月12日
(45)【発行日】2015年8月5日
(54)【発明の名称】制御プログラム、制御方法及び制御装置
(51)【国際特許分類】
   G05B 11/36 20060101AFI20150716BHJP
   G05B 17/02 20060101ALI20150716BHJP
【FI】
   G05B11/36 A
   G05B17/02
【請求項の数】12
【全頁数】18
(21)【出願番号】特願2013-542934(P2013-542934)
(86)(22)【出願日】2012年10月30日
(86)【国際出願番号】JP2012077960
(87)【国際公開番号】WO2013069500
(87)【国際公開日】20130516
【審査請求日】2014年5月14日
(31)【優先権主張番号】特願2011-248124(P2011-248124)
(32)【優先日】2011年11月12日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】391046414
【氏名又は名称】国際計測器株式会社
(74)【代理人】
【識別番号】100078880
【弁理士】
【氏名又は名称】松岡 修平
(74)【代理人】
【識別番号】100169856
【弁理士】
【氏名又は名称】尾山 栄啓
(72)【発明者】
【氏名】松本 繁
(72)【発明者】
【氏名】宮下 博至
(72)【発明者】
【氏名】田代 和義
(72)【発明者】
【氏名】村内 一宏
【審査官】 牧 初
(56)【参考文献】
【文献】 特開平10−127100(JP,A)
【文献】 特開2005−85177(JP,A)
【文献】 国際公開第2008/120304(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 1/00− 7/04
G05B 11/00−13/04
G05B 17/00−17/02
G05B 21/00−21/02
H02K 7/00− 7/20
H02P 5/00− 5/753
(57)【特許請求の範囲】
【請求項1】
コンピュータに、仮想的な機構である仮想メカ機構の動作をシミュレーションさせ、該シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御させる制御プログラムであって、
前記仮想メカ機構は、
第1駆動モジュールと、
前記第1駆動モジュールに接続された第1メインシャフトモジュールと、
前記第1メインシャフトモジュールに接続され、前記複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、
を備え、
前記動力伝達サブシステムの各々は、出力モジュールを備え、
前記出力モジュールへの入力のシミュレーション結果に応じて、該動力伝達サブシステムと対応づけられたサーボモータを駆動することを特徴とする制御プログラム。
【請求項2】
前記動力伝達サブシステムの各々は、
第2駆動モジュールと、
主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、
を更に備え、
前記主入力軸が前記第1メインシャフトモジュールと接続され、
前記補助入力軸が前記第2駆動モジュールと接続され、
前記出力軸が前記出力モジュールと接続された、
ことを特徴とする、請求項1に記載の制御プログラム。
【請求項3】
前記主入力軸が、第1クラッチモジュールを介して前記第1メインシャフトモジュールと接続されたことを特徴とする、請求項に記載の制御プログラム。
【請求項4】
前記補助入力軸は、第2のクラッチモジュールを介して前記第2駆動モジュールと接続されたことを特徴とする、請求項又は請求項に記載の制御プログラム。
【請求項5】
前記第2駆動モジュールの回転位置の設定によって、前記サーボモータの駆動の位相が制御されることを特徴とする、請求項に記載の制御プログラム。
【請求項6】
前記第1駆動モジュールを第1の駆動波形に従って駆動させ、前記第2駆動モジュールを振動波形に従って駆動させることで、前記第1の駆動波形によって規定される前記サーボモータの回転位置を中心に、前記振動波形に従って前記サーボモータの回転を振動させることを特徴とする、請求項に記載の制御プログラム。
【請求項7】
前記第1の駆動波形がランプ波であり、前記サーボモータの回転振動の中心が等角速度運動することを特徴とする、請求項に記載の制御プログラム。
【請求項8】
前記第2駆動モジュールを方形波に従って階段状に駆動させることにより、前記サーボモータの駆動波形のオフセットを実現することを特徴とする、請求項に記載の制御プログラム。
【請求項9】
コンピュータ上で仮想的なメカ機構である仮想メカ機構の動作をシミュレーションし、該シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御する制御方法であって、
前記仮想メカ機構は、
第1駆動モジュールと、
前記第1駆動モジュールに接続された第1メインシャフトモジュールと、
前記第1メインシャフトモジュールに接続され、前記複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、
を備え、
前記動力伝達サブシステムの各々は、出力モジュールを備え、
前記出力モジュールへの入力のシミュレーション結果に応じて、該動力伝達サブシステムと対応づけられたサーボモータを駆動することを特徴とする制御方法。
【請求項10】
前記動力伝達サブシステムの各々は、
第2駆動モジュールと、
主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、
を更に備え、
前記主入力軸が前記第1メインシャフトモジュールと接続され、
前記補助入力軸が前記第2駆動モジュールと接続され、
前記出力軸が前記出力モジュールと接続された、
ことを特徴とする、請求項9に記載の制御方法。
【請求項11】
仮想的な機構である仮想メカ機構の動作をシミュレーションし、該シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御する制御装置であって、
前記仮想メカ機構の動作のシミュレーションを行うシミュレーション部と、
前記シミュレーションの結果に基づいて、前記複数のサーボモータの駆動を制御する駆動制御部と、
を備え、
前記仮想メカ機構は、
第1駆動モジュールと、
前記第1駆動モジュールに接続された第1メインシャフトモジュールと、
前記第1メインシャフトモジュールに接続され、前記複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、
を備え、
前記動力伝達サブシステムの各々は、出力モジュールを備え、
前記駆動制御部は、前記出力モジュールへの入力のシミュレーション結果に応じて、該動力伝達サブシステムと対応づけられたサーボモータの駆動を制御する制御信号を出力することを特徴とする制御装置。
【請求項12】
前記動力伝達サブシステムの各々は、
第2駆動モジュールと、
主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、
を更に備え、
前記主入力軸が前記第1メインシャフトモジュールと接続され、
前記補助入力軸が第1クラッチモジュールを介して前記第2駆動モジュールと接続され、
前記出力軸が前記出力モジュールと接続された、
ることを特徴とする、請求項11に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えばサーボモータによって駆動されるサーボモータ式機械試験装置等の駆動を制御するための制御プログラム、制御方法及び制御装置に関する。
【背景技術】
【0002】
100Hzを超える高い周波数の変動トルクを出力可能な低慣性型の高出力ACサーボモータ(以下「サーボモータ」と略記する。)の実用化に伴い、従来の油圧アクチュエータに替えてサーボモータを駆動源として使用するサーボモータ式機械試験装置(例えば、疲労試験装置や振動試験装置)が普及しつつある。また、サーボモータは、油圧装置と比べて、小型であり、操作やメンテナンスが容易であることから、複数のサーボモータを使用して高度な試験を可能にする機械試験装置のニーズが高まっている。しかしながら、出力が高速で変動する複数のサーボモータを同期制御する為には高度な制御技術を必要とし、また専用の制御プログラムを開発するには多額の開発コストと長い開発期間を要するという問題があった。
【0003】
複数のサーボモータを同期制御する制御システムを効率的に構築するための開発環境が、サーボモータ・メーカーから提供されている(非特許文献1)。非特許文献1には、メカ機構プログラムというビジュアルプログラミング言語が開示されている。メカ機構プログラムは、ギアやカム等の機械要素を使用して複数の出力軸の同期駆動を機械的に制御するハードウェア同期制御をソフトウェア上でシミュレーションし、各出力軸(仮想軸)と関連付けられた複数のサーボモータの同期制御をソフトウェア上で行う。
【先行技術文献】
【特許文献】
【0004】
【非特許文献1】Mitsubishi Integrated FA Software MELSOFT, effective May 2005, pages25-26. [online]. MITSUBISHI ELECTRIC. [retrieved on 2011-11-02]. Retrieved fromthe Internet: <URL: http://wwwf2.mitsubishielectric.co.jp/melfansweb/document/catalog/melsoft/l08008/l08008c.pdf>.
【発明の概要】
【0005】
しかしながら、非特許文献1に記載されるような開発環境を使用しても、従来の一般的なプログラミング手法を用いると、近年の機械試験装置に要求される高度な制御を実現するためには、プログラムの構成が複雑になるため、より効率的に開発できるプログラム構成が望まれていた。
【0006】
本発明の実施形態に従って、コンピュータに、仮想的な機構である仮想メカ機構の動作をシミュレーションさせ、該シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御させる制御プログラムが提供される。仮想メカ機構は、第1駆動モジュールと、第1駆動モジュールに接続された第1メインシャフトモジュールと、第1メインシャフトモジュールに接続され、複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、を備え、動力伝達サブシステムの各々は、第2駆動モジュールと、主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、出力モジュールと、を備え、主入力軸は第1メインシャフトモジュールと接続され、補助入力軸は第2駆動モジュールと接続され、出力軸は出力モジュールと接続され、出力モジュールへの入力のシミュレーション結果に応じて、その動力伝達サブシステムと対応づけられたサーボモータを駆動する。
【0007】
この構成によれば、仮想機構モジュールを用いて、第1駆動モジュールと第2駆動モジュールそれぞれの出力の差動歯車モジュールによる合成を仮想的に実現することで、サーボモータの複雑な駆動制御を容易に行うことができる。
【0008】
また、主入力軸が、第1クラッチモジュールを介して第1メインシャフトモジュールに接続された構成としてもよい。
【0009】
この構成によれば、第1クラッチモジュールのON/OFFにより、第1駆動モジュールによる各サーボモータの駆動のON/OFFを容易に制御することができる。
【0010】
また、補助入力軸は、第2クラッチモジュールを介して第2駆動モジュールと接続された構成としてもよい。
【0011】
この構成によれば、第2駆動モジュールから差動歯車モジュールへの入力を第2クラッチモジュールによってON/OFF制御できるため、各サーボモータの出力を個別に且つ容易に制御することができる。
【0012】
また、第2駆動モジュールの回転位置の設定によって、サーボモータの駆動の位相が制御される構成としてもよい。
【0013】
この構成によれば、第2駆動モジュールによる位相制御の為の出力を、第2クラッチモジュールによって所望のサーボモータに与えることができるので、各サーボモータの位相を独立に設定することができ、サーボモータ駆動制御プログラムの開発や改変が容易である。
【0014】
また、第1駆動モジュールを第1の駆動波形に従って駆動させ、第2駆動モジュールを振動波形に従って駆動させることで、第1の駆動波形によって規定されるサーボモータの回転位置を中心に、振動波形に従ってサーボモータの回転を振動させる構成としてもよい。
【0015】
第1駆動モジュールの駆動波形がランプ波であり、サーボモータの回転振動の中心が等角速度運動する構成としてもよい。
【0016】
第2駆動モジュールを方形波に従って階段状に駆動させることにより、サーボモータの駆動波形のオフセットを実現する構成としてもよい。
【0017】
また、本発明の実施形態に従って、コンピュータ上で仮想的なメカ機構である仮想メカ機構の動作をシミュレーションし、シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御する制御方法が提供される。仮想メカ機構は、第1駆動モジュールと、第1駆動モジュールに接続された第1メインシャフトモジュールと、第1メインシャフトモジュールに接続され、複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、を備え、動力伝達サブシステムの各々は、第2駆動モジュールと、主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、出力モジュールと、を備え、主入力軸は第1メインシャフトモジュールと接続され、補助入力軸は第2駆動モジュールと接続され、出力軸は出力モジュールと接続され、出力モジュールへの入力のシミュレーション結果に応じて、該動力伝達サブシステムと対応づけられたサーボモータを駆動する。
【0018】
また、本発明の実施形態に従って、仮想的な機構である仮想メカ機構の動作をシミュレーションし、シミュレーションの結果に基づいて複数のサーボモータの駆動を同期制御する制御装置が提供される。仮想メカ機構の動作のシミュレーションを行うシミュレーション部と、シミュレーションの結果に基づいて、複数のサーボモータの駆動を制御する駆動制御部と、を備え、仮想メカ機構は、第1駆動モジュールと、第1駆動モジュールに接続された第1メインシャフトモジュールと、第1メインシャフトモジュールに接続され、複数のサーボモータとそれぞれ対応づけられた、複数の動力伝達サブシステムと、を備え、動力伝達サブシステムの各々は、第2駆動モジュールと、主入力軸、補助入力軸、および出力軸を有する、差動歯車モジュールと、出力モジュールと、を備え、主入力軸は第1メインシャフトモジュールと接続され、補助入力軸は第1クラッチモジュールを介して第2駆動モジュールと接続され、出力軸は出力モジュールと接続され、駆動制御部は、出力モジュールへの入力のシミュレーション結果に応じて、該動力伝達サブシステムと対応づけられたサーボモータの駆動を制御する制御信号を出力する。
【0019】
また、本発明の実施形態に従って、機械試験装置の駆動部を目標波形に従って駆動させるためにコンピュータを、目標波形を表す目標波形データを生成する目標波形データ生成部、及び目標波形データに基づいて駆動部に駆動を指令する駆動指令部として機能させ、目標波形データ生成部と駆動指令部とが並列処理するように構成された制御プログラムが提供される。また、目標波形データ生成部が、外部から入力される波形信号を読み取り、波形信号を目標波形データに変換するように構成されてもよい。
【0020】
この構成によれば、目標波形データの生成処理と、駆動指令処理とが並列して処理をするため、例えば駆動部の駆動波形を試験状況に応じてリアルタイムで決定する制御を容易に行うことが可能となる。また、外部から入力される波形信号に従って制御する処理にも容易に対応することができる。
【0021】
また、複数の波形信号に基づいて、複数の駆動部の駆動を制御可能に構成されており、複数の波形信号のそれぞれに対応する複数の目標波形データ生成部と、複数の駆動部のそれぞれに対応する複数の駆動指令部とを備える構成としてもよい。
【0022】
この構成によれば、複数の波形信号に基づいて複数の駆動部を制御する複雑な駆動制御を簡単なプログラム構成で実現することができる。
【0023】
また、本発明の実施形態に従って、機械試験装置の駆動部を目標波形に従って駆動させる制御方法であって、目標波形を表す目標波形データを生成するステップと、目標波形データに基づいて駆動部に駆動を指令するステップと、を含み、目標波形データを生成するステップと駆動部に駆動を指令するステップを並列処理する制御方法が提供される。
【0024】
本発明の実施形態に従って、機械試験装置の駆動部を目標波形に従って駆動させるためにコンピュータを、1周期分の基本波形を定義する基本波形定義データに基づいて、1周期分の波形を表す単位波形データを生成する単位波形データ生成部、1つ以上の単位波形データに基づいて、目標波形を表す連続波形データである目標波形データを生成する目標波形データ生成部、及び目標波形データに基づいて駆動部に駆動を指令する駆動指令部として機能させる制御プログラムが提供される。
【0025】
この構成によれば、データ容量の小さい基本波形定義データに基づいて機械試験装置の連続的な駆動が可能になる。また、比較的に少ない種類の基本波形定義データに基づいて、複雑かつ多様な目標波形データの生成が可能となり、機械試験装置の自由度の高い駆動制御が可能になる。
【0026】
単位波形データ生成部、目標波形データ生成部と駆動指令部とが並列処理するように構成されていてもよい。
【0027】
この構成によれば、機械試験装置のリアルタイム制御を容易に行うことが可能になる。
【0028】
本発明の実施形態に従って、サーボモータの駆動を制御するためにコンピュータを、制御量の目標値を生成する目標値生成部、目標値を補正する補正部、及び補正された目標値に基づいてサーボモータに駆動を指令する駆動指令部、として機能させ、補正部は、サーボモータの回転を検出するエンコーダからのパルス信号を取得するパルス信号取得部と、パルス信号に基づいて、サーボモータの回転の位相を計算する位相計算部と、位相に基づいて補正値を決定する補正値決定部と、を備え、目標値に補正値を加えることによって目標値を補正する、ことを特徴とする制御プログラムが提供される。
【0029】
この構成によれば、実際のサーボモータの駆動状態(実位相)に同期してサーボモータの駆動制御が行われるため、実位相と制御信号との位相差を排除することができ、トルクリップルの無いスムーズな駆動制御が可能になる。
【0030】
また、本発明の実施形態に従って、機械試験装置の駆動部を目標波形に従って駆動させる制御装置が提供される。制御装置は、目標波形を表す目標波形データを生成する目標波形データ生成部と、目標波形データに基づいて駆動部に駆動を指令する駆動指令部とを備え、目標波形データ生成部と駆動指令部が並列処理するように構成される。
【0031】
また、本発明の実施形態に従って、サーボモータの駆動を制御する制御方法が提供される。この制御方法は、制御量の目標値を生成するステップと、目標値を補正するステップと、補正された目標値に基づいてサーボモータに駆動を指令するステップと、を含み、標値を補正するステップは、サーボモータの回転を検出するエンコーダからのパルス信号を取得するステップと、パルス信号に基づいて、サーボモータの回転の位相を計算するステップと、位相に基づいて補正値を生成するステップと、目標値に補正値を加えることによって目標値を補正するステップと、を含む。
【0032】
また、本発明の実施形態に従って、サーボモータの駆動を制御する制御装置が提供される。この制御装置は、制御量の目標値を生成する目標値生成部と、目標値を補正する補正部と、補正された目標値に基づいてサーボモータに駆動を指令する駆動指令部と、を備え、補正部は、サーボモータの回転を検出するエンコーダからのパルス信号を取得するパルス信号取得部と、パルス信号に基づいて、サーボモータの回転の位相を計算する位相計算部と、位相に基づいて補正値を生成する補正値生成部と、を備え、目標値に補正値を加えることによって目標値を補正するように構成される。
【0033】
また、本発明の実施形態に従って、複数のサーボモータの駆動を制御するためにコンピュータを、目標波形データを生成する、複数の目標波形データ生成部、及び、一または複数の目標波形データに基づいて駆動部に駆動を指令する駆動指令部として機能させ、駆動指令部は、複数の目標波形データに基づいて駆動部に駆動を指令する場合には、複数の目標波形データを合成した波形に基づいて駆動部に駆動を支持するように構成された制御プログラムが提供される。
【0034】
また、本発明の実施形態に従って、複数のサーボモータの駆動を制御する制御方法が提供される。この制御方法は、目標波形データを生成するステップと、一または複数の目標波形データに基づいて駆動部に駆動を指令するステップと、を含み、駆動部に駆動を指令するステップにおいて、複数の目標波形データに基づいて駆動部に駆動を指令する場合には、複数の目標波形データを合成した波形に基づいて駆動部に駆動を指令する。
【0035】
本発明の実施形態の構成によれば、開発・改変が容易でありながら、機械試験装置等の複雑な駆動制御が可能な制御プログラム及び制御装置が提供される。
【図面の簡単な説明】
【0036】
図1】本発明の実施形態に係る機械試験装置のハードウェア構成の概略を示すブロック図である
図2】モーションコントローラの概略構成を示すブロック図である。
図3】実施例1において実行されるメカ機構ユーザプログラムを示す図である。
図4】実施例1の動作フローを示すフローチャートである。
図5】実施例2におけるサーボモータの駆動を説明する図である。
図6図6(a)、(b)及び(c)は、それぞれ第1駆動モジュール、第2駆動モジュール及び出力モジュールの回転角の時間変化を示すグラフである。
図7】実施例4のユーザプログラムの概略構成を示すブロック図である。
図8】実施例5の制御に使用されるユーザプログラムの構成を示す図である。
図9】基本波形定義データ27Cの例を示す図である。
図10】実施例6の制御量の補正を説明するグラフである。
図11】実施例6の制御システムの概略構成を示すブロック図である。
【発明を実施するための形態】
【0037】
以下、本発明の実施形態について図面を参照しながら説明する。
【0038】
図1は、本発明の実施形態に係る機械試験装置1のハードウェア構成の概略を示すブロック図である。機械試験装置1は、複数のサーボモータ11を備えた試験機構部10、複数のサーボモータ11にそれぞれ対応する複数のサーボアンプ11a、モーションコントローラ20、計測ユニット30、PC(Personal Computer)40、及びファンクションジェネレータ50を備えている。
【0039】
試験機構部10は、供試体(不図示)に加えられる荷重を検出する荷重センサ14(例えば、ロードセルやトルクメータ)及び供試体の変位を検出する変位センサ16を備えている。なお、変位センサ16に代えて供試体の応答を検出する他の種類のセンサ(例えば、ひずみゲージ、速度センサ、加速度センサ等)を試験機構部10に設けてもよい。また、各サーボモータ11は、回転軸の回転数を検出するロータリーエンコーダ12を備える。
【0040】
サーボアンプ11aは、各サーボモータ11に1台ずつ接続されており、モーションコントローラ20からの指令信号に基づいて、対応するサーボモータ11に駆動電流を供給する。サーボアンプ11aは、光ファイバーケーブルによりモーションコントローラ20にデイジー・チェーンで接続されている。
【0041】
モーションコントローラ20は、PC40から入力される各種設定パラメータ(後述)に基づいて、各サーボモータ11の駆動を制御するための駆動制御信号を生成して、サーボアンプ11aに出力する。また、モーションコントローラ20は、ファンクションジェネレータ50が生成した交流電圧信号に基づいて駆動制御信号を生成することもできるように構成されている。モーションコントローラ20の詳細な構成については後述する。
【0042】
計測ユニット30は、荷重センサ14及び変位センサ16の検出信号をデジタルデータに変換して、PC40に出力する。また、計測ユニット30はモーションコントローラ20に接続されており、ロータリーエンコーダ12が検出したサーボモータ11の回転数を示すデジタル信号が、サーボアンプ11a及びモーションコントローラ20を介して計測ユニット30に入力され、荷重センサ14及び変位センサ16の検出結果と共にPC40に送信される。
【0043】
PC40は、ユーザ入力に基づいてサーボモータ11を駆動するための目標波形データを計算し、目標波形データを定義する各種設定パラメータを生成して、モーションコントローラ20に出力する。また、PC40は、計測ユニット30が出力する各種計測データに基づいてリアルタイムで試験結果を計算して、ディスプレイ表示すると共に、内蔵するメモリ(不図示)に試験結果を記録する。また、PC40は、計測ユニット30からの各種計測データに基づいて、目標波形データを修正する機能も備えている。これらの処理は、PC40にインストールされた専用アプリケーションソフトウェアを使用して行われる。
【0044】
図2は、モーションコントローラ20の概略構成を示すブロック図である。モーションコントローラ20は、ハードウェア20a、オペレーションシステム20b及びユーザプログラム20cから構成される。オペレーションシステム20bは、階層構造を有し、ハードウェア20aを直接管理する下位レイヤーのカーネル21と、カーネル21上で動作する上位レイヤーのモーション制御用SFC言語プログラム22(以下「SFC言語プログラム22」という。)、メカ機構言語プログラム23及びインターフェース24を備える。SFC言語プログラム22は、モーション制御のために開発されたモーション制御用SFC言語によって記述されたユーザプログラム20c(SFCユーザプログラム25)を解釈して実行する。モーション制御用SFC言語は、モーション制御の手順をフローチャート形式で記述するビジュアルプログラミング言語である。また、メカ機構言語プログラム23は、メカ機構言語によって記述されたユーザプログラム20c(メカ機構ユーザプログラム26)を解釈して実行する。メカ機構ユーザプログラム26は、複数のサーボモータ11の同期駆動制御の記述に使用され、SFC言語プログラム22により呼び出されて実行される。ユーザプログラム20cには、上述のSFCユーザプログラム25及びメカ機構ユーザプログラム26に加えて、SFCユーザプログラム25の実行に使用される基本波形データ27等の設定データが含まれる。また、インターフェース24は、外部装置(例えば、モーションコントローラ20に接続されたPC40やファンクションジェネレータ50)との入出力を管理する。
【実施例1】
【0045】
次に、機械試験装置1を使用した具体的な制御の実施例を説明する。図3は、以下に説明する実施例1〜3において実行されるメカ機構ユーザプログラム26を示す。実施例1は、各サーボモータ11を所定の位相差で同期回転させる制御例である。メカ機構ユーザプログラム26は、第1駆動モジュール110と、これに駆動される第1メインシャフト120を有している。第1メインシャフト120には、実際に駆動するサーボモータ11の数と同数のギア(図3には2系統のギア130A、130Bのみを示す。)が設けられ、ギア130A、130Bを介して複数の第2メインシャフト120A、120Bに接続されている。第2メインシャフト120Aは、クラッチ140Aを介してディファレンシャルギア(差動歯車装置)150Aの主入力軸151Aに接続されている。また、ディファレンシャルギア150Aの補助入力軸152Aは、ギア160A及びクラッチ170Aを介して第2駆動モジュール180Aに接続されている。また、ディファレンシャルギア150Aの出力軸153Aには出力モジュール190Aが接続されている。ディファレンシャルギア150Aは、主入力軸151Aの回転と補助入力軸152Aの回転との差分の回転を出力軸153Aに与える。第1メインシャフト120に接続された他の第2仮想メインシャフト(120B等)にも、同じ構成の仮想機構(例えば、クラッチ140B、ディファレンシャルギア150B、ギア160B、クラッチ170B、第2駆動モジュール180B及び出力モジュール190B)が接続されている。また、各出力モジュール(190A、190B、・・・)は各サーボモータ11と一対一で関連付けられており、各サーボモータ11は対応する出力モジュールと同じ位相で回転するように制御される。上記のメカ機構により、各サーボモータ11(出力モジュール)の回転駆動は、第1駆動モジュール110の仮想的な回転駆動と関連付けられる(すなわち同期して駆動する)。また、実施例1においては、各第2駆動モジュール(図1では180Aと180B)には、共通の駆動パルスが入力され、各第2駆動モジュールは、駆動パルスに応じた角度だけ、同位相で回転するように設定されている。実施例1においては、第1駆動モジュール110は、入力される指令に従って、様々な波形(例えば、正弦波、三角波、矩形波、鋸波及び任意の合成波)で回転可能に設定されている。
【0046】
次に、実施例1におけるサーボモータの動作を説明する。上述のように、実施例1は、各サーボモータ11を所定の位相差で、かつ同じ波形で回転させる為の制御例である。ここでは、出力モジュール190A、190Bに対応するサーボモータ11の回転駆動に位相差を与える場合について説明する。図4は、実施例1の動作フローを示すフローチャートである。
【0047】
先ず、処理S1において、初期設定が行われる。具体的には、クラッチ140A、140B及び170Aをつなぎ、クラッチ170Bを切った状態に設定する。次に、第1駆動モジュール110を始動する(S2)。このとき、出力モジュール190Aと190Bは、同位相で回転する。次に、第2駆動モジュール180A及び180Bに、所定の回転角Δθ(例えば180度)に相当する駆動パルスを入力する(S3)。このとき、クラッチ170Aがつながれている為、ディファレンシャルギア150Aの補助入力軸152Aは第2駆動モジュール180Aにより回転角Δθだけ回転し、ディファレンシャルギア150Aの出力軸153Aは主入力軸151Aに対してΔθだけ位相差(回転角度差)が与えられる。一方、この時、クラッチ170Bはつながれていない為、ディファレンシャルギア150Bの補助入力軸152Bは第1駆動モジュール110と同位相で回転する。ディファレンシャルギア150A、150Bの主入力軸151A、151Bは同位相で回転するため、ディファレンシャルギア150A、150Bの出力軸153A、153Bは、それぞれ第1駆動モジュール110と同じ波形で、かつ位相差Δθで回転することになる。すなわち、実施例1の制御により、第1駆動モジュール110の回転状態を変動させても、出力モジュール190Aと190Bに対応するサーボモータ11を、常に所定の位相差で回転させることができる。また、実施例1の構成によれば、各サーボモータ11の駆動波形と位相とを独立に制御することが可能となる。すなわち、第1駆動モジュール110を使用して駆動波形を制御し、これと独立して、第2駆動モジュール180A、180B及び170A、170Bにより位相差を制御することができる。
【実施例2】
【0048】
次に、サーボモータの回転を振動させながら、所定方向に一定の平均速度で回転させる制御を行う実施例2について説明する。ここでは、出力モジュール190Aの制御を例に挙げて説明する。図5は、実施例2におけるサーボモータ11の駆動を説明する図である。具体的には、図5(a)、(b)及び(c)は、それぞれ第1駆動モジュール110、第2駆動モジュール180A及び出力モジュール190Aの回転角の時間変化を示すグラフである。実施例2においては、クラッチ140A及び170Aがつなげられ、出力モジュール190Aの回転角は、第1駆動モジュール110及び第2駆動モジュール180Aの回転角の和に等しくなる。実施例2では、図5(a)に示されるように、第1駆動モジュール110には、一定の回転速度で回転させるような指令を入力する。また、図5(b)に示されるように、第2駆動モジュール180Aには、正弦波に従って回転角が変動するような指令を入力する。これにより、第1駆動モジュール110と第2駆動モジュール180Aの回転は、ディファレンシャルギア150Aによって重畳され、出力モジュール190Aは図5(a)の波形と図5(b)の波形を重ね合わせた図5(c)の波形に従って回転する。実施例2の構成によれば、サーボモータ11の回転と振動とを独立に制御することが容易に可能となる。すなわち、第1駆動モジュール110を使用して回転運動(振動の中心角度)を制御し、これと独立して、第2駆動モジュール180Aにより振動を制御することができる。なお、実施例2では、第1駆動モジュール110を等角速度駆動し、第2駆動モジュール180Aを正弦振動させる構成を例に説明したが、第1駆動モジュール110及び第2駆動モジュール180Aを他の波形で駆動させてもよい。例えば、第1駆動モジュール110を等角速度駆動させ、第2駆動モジュール180Aを鋸波で駆動する構成としてもよい。この構成は、例えば供試体を所定速度で回転させながら、供試体に繰り返しねじり荷重(又は加振力)を加える、いわゆる回転ねじり試験の制御に適用することができる。
【実施例3】
【0049】
次に、サーボモータ11を振動させながら、振動の中心角度にオフセットを与える制御を行う実施例3について説明する。ここでは、出力モジュール190Aの制御を例に挙げて説明する。図6(a)、(b)及び(c)は、それぞれ第1駆動モジュール110、第2駆動モジュール180A及び出力モジュール190Aの回転角の時間変化を示すグラフである。実施例3においても、クラッチ140A及び170Aがつなげられ、出力モジュール190Aの回転角は、第1駆動モジュール110及び第2駆動モジュール180Aの回転角の和に等しくなる。また、実施例3では、図6(a)に示されるように、第1駆動モジュール110には、正弦波に従って回転角が変動するような指令が入力される。また、図6(b)に示されるように、第2駆動モジュール180Aの回転角は、制御開始時(t=0)において、位相θ1に設定される。時刻0〜t1においては、第2駆動モジュール180Aには駆動パルスは与えられず、回転角θ1にて静止する。また、サーボモータ11の振動の中心角にオフセットを与えるタイミング(t=t1)において、第2駆動モジュール180Aに駆動パルスが入力され、第2駆動モジュール180Aは回転角Δθだけ回転する。その後は、第2駆動モジュール180Aには駆動パルスは与えられず、回転角θ2にて静止する。その結果、出力モジュール190Aに関連付けられたサーボモータ11は、時刻0〜t1において回転角θ1を中心に正弦振動し、時刻t1において中心角がΔθだけオフセットされ、時刻t1以降は回転角θ2を中心に正弦振動するように駆動制御される。実施例3の構成によれば、サーボモータ11の振動波形とオフセットを独立に制御することが容易に可能となる。すなわち、第1駆動モジュール110を使用して駆動波形を制御し、これと独立して、第2駆動モジュール180Aによりオフセット量を制御することができる。第1駆動モジュール110の振動波形は、正弦波に限らず、様々な波形(例えば、正弦波、三角波、矩形波、鋸波及び任意の合成波)に設定することができる。また、第2駆動モジュール180Aの駆動により、オフセット量やオフセットの方向、タイミングを自由に制御することができる。また、オフセット付与時における第2駆動モジュール180Aの駆動速度(駆動パルスのレート)により、オフセットの緩急を調節することもできる。なお、以上は出力モジュール190Aの制御の説明であるが、例えば出力モジュール190Bを含む複数の出力モジュールを同期駆動させながら、各出力モジュールの位相θにオフセットを与えることができる。各出力モジュールの位相に同じ値のオフセットを同時に与える構成としてもよいし、異なる値のオフセットを各出力モジュールに異なるタイミングで与える構成としてもよい。
【実施例4】
【0050】
次に、ファンクションジェネレータ50が発生する交流電圧信号(アナログ波形信号)に基づいてサーボモータ11を駆動制御する実施例4について説明する。図7は、実施例4のユーザプログラム20cの概略構成を示すブロック図である。実施例4において使用されるSFCユーザプログラム25は、同時並列に実行される2種類のプログラム(波形信号読取プログラム25A及び駆動制御プログラム25B)から構成される。波形信号読取プログラム25Aは、モーションコントローラ20のアナログ信号入力部(不図示)に入力されたアナログ波形信号を逐次目標波形データに変換する処理を行う。また、駆動制御プログラム25Bは、波形信号読取プログラム25Aが生成した目標波形データに基づいてサーボモータ11を駆動する処理を実行する。波形信号読取プログラム25Aは、機械試験装置1の制御に使用されるアナログ波形信号の数だけ設けられ、並列処理を行う。また、駆動制御プログラム25Bは、機械試験装置1が備えるサーボモータ11の数だけ設けられ、並列処理を行う。なお、同一の制御を行うサーボモータ11については、共通の駆動制御プログラム25Bが使用される。このように、複数の波形信号読取プログラム25A及び/又は複数の駆動制御プログラム25Bにより並列処理を行う構成により、複数のアナログ波形信号を使用して、複数のサーボモータ11を動作させる複雑な制御を行うことが可能になる。実施例4は、メカ機構ユーザプログラム26を使用せずに、SFCユーザプログラム25のみを使用して複数のサーボモータ11の駆動制御を行う例であるが、例えば駆動制御プログラム25Bによりメカ機構ユーザプログラム26を呼び出して、別のサーボモータ11と同期制御させることも可能である。
【実施例5】
【0051】
次に、予めモーションコントローラ20に保存された後述の基本波形定義データ27Cを使用して、機械試験装置1の動作を制御する実施例5について説明する。図8は、実施例5の制御に使用されるユーザプログラム20cの具体的構成を示す図である。図8に示すように、実施例5においては、ユーザ設定データ27の一つである基本波形定義データ27Cと、3つのSFCユーザプログラム25(単位波形データ生成プログラム25C、目標波形データ生成プログラム25D及び駆動制御プログラム25B)を使用して機械試験装置1の動作制御が行われる。
【0052】
基本波形定義データ27Cの例を図9に示す。基本波形定義データ27Cは、1周期分の基本波形が所定の規約に従って記述されたマトリックスデータである。モーションコントローラ20のメモリ(不図示)には、複数種類の基本波形(例えば、正弦波、三角波、矩形波、鋸波及び任意の合成波)に対応する基本波形定義データ27Cが記憶されている。また、基本波形定義データ27Cは、PC40にインストールされた専用アプリケーションソフトウェアを使用してユーザが作成することもできる。基本波形定義データ27Cは、後述する単位波形データ28Cとは異なり、正規化された振幅及び周期を有するデータである。単位波形データ生成プログラム25Cは、機械試験装置1の制御に使用される波形に対応した基本波形定義データ27Cを読み取り、基本波形定義データ27Cに基づいて、指定された振幅及び周期を有する1周期分の波形データである単位波形データ28Cを生成する。単位波形データ28Cは、時間tと回転角θのデータ対から構成され、設定された時間間隔で生成された複数のデータ対を含んでいる。なお、振幅の代わりに回転角θの最大値/最小値、又は中心値/片振幅値によって生成する単位波形データ28Cの強度を指定することもできる。目標波形データ生成プログラム25Dは、一つ以上の単位波形データ28Cを使用して、連続波形データである目標波形データ29Cを生成する。駆動制御プログラム25Bは、指定された波形の周期に応じた時間間隔で目標波形データ29Cのデータ対を順次読み取って、内部クロックに同期して(同期制御を行う場合はメカ機構ユーザプログラム26を介して)、目標波形データ29Cの振幅を指令信号Cとしてサーボアンプ11aに出力する。なお、本実施例では、単位波形データ生成プログラム25Cと目標波形データ生成プログラム25Dが設けられているが、これらを一体化して、基本波形定義データ27Cから目標波形データ29Cを直接生成する構成としてもよい。
【実施例6】
【0053】
次に、実施例6について説明する。図11は、実施例6の制御の概要を示すブロック図である。また、図10は、制御量(回転数)の補正を説明するグラフである。実施例6は、サーボモータ11の回転軸の回転数N(位相速度ω=2πN)を制御量とする回転数制御(速度制御)の一例であり、モーションコントローラ20の回転数制御モード下で実行される。サーボモータ11は、コギングトルク等の影響により、一定出力で駆動しても、1回転中に出力トルクが変動するトルクリップルが生じる。また、同じ理由により、回転数制御を行った場合でも、位相θに応じて位相速度ωが変動する速度リップルが生じる。実施例6は、サーボモータ11の位相θに応じて位相速度ωの目標値を補正することにより、速度リップルを解消して、均一な回転駆動を実現する。
【0054】
実施例6では、予め、サーボモータ11を定速回転駆動させたときの、回転周期中の回転数Nの変動が計測される。具体的には、まず、サーボモータ11を定速回転駆動させたときに、ロータリーエンコーダ12からパルスが出力されるタイミング(時刻t)が計測される。各パルスが出力された時刻tにおけるサーボモータ11の位相θは既知であるため、各パルス(時刻t、位相θ)をプロットすると、図10(a)のプロットPに示すような位相θの時間変化を示すグラフが得られる。プロットPの上下の振動は、周期的な回転数Nのゆらぎ(速度リップル)の存在を示している。また、図10(a)に示す直線Lは、最小二乗法によりプロットPを直線近似したものである。周期的な変動として現れる速度リップルの影響は直線近似によってキャンセルされるため、直線Lは、速度リップルが生じない理想的な制御が行われた場合の位相θの時間変化(すなわち位相θの目標値の波形)と考えることができる。
【0055】
図10(b)に示す曲線Dは、図10(a)における曲線P(プロットPのフィッティング曲線)と直線Lとの差分θ−θのグラフである。この差分は、サーボモータ11の速度リップルに起因する。従って、曲線Dの時間微分により、サーボモータ11の速度リップル、すなわち回転数N(=ω/2π)の偏差E(=Nref−Nmeas)が得られる(但し、Nref:回転数Nの目標値、Nmeas:回転数Nの計測値)。図10(c)の曲線Eは、曲線Dを時間微分し、更に横軸を位相に変換したものである。
【0056】
偏差Eは、回転数Nの補正値として使用することができる。すなわち、回転数の目標値Nsetに曲線Eの値を加えて補正したものを用いてサーボモータ11の回転の位相θを制御することにより、トルクリップルが打ち消され、均一な回転数の制御が可能になる。なお、上記のように予め取得された曲線Eの波形は、ルックアップテーブル(補正データ29E)としてモーションコントローラ20の内蔵メモリに記録されている。
【0057】
次に、上記の補正データEを使用したサーボモータ11の駆動制御の方法について説明する。図11は、実施例6の制御システムの概略構成を示すブロック図である。図11に示されるように、まず、モーションコントローラ20(駆動制御プログラム25B)にロータリーエンコーダ12からのパルス信号Pが入力される。駆動制御プログラム25Bは、パルス信号Pに基づいてサーボモータ11の位相θを計算し、補正データ29Eを参照して位相θに対応する補正値Eを取得する。また、駆動制御プログラム25Bは、上述の目標波形データ生成プログラム25Dが生成した目標波形データ29Cを読み取り、回転数の目標値Nrefに補正値Eを加えたものを指令信号Cとしてサーボアンプ11aに出力する。サーボアンプ11aは、指令信号Cに従って駆動電流を生成して、サーボモータ11を駆動させる。そして、ロータリーエンコーダ12は、サーボモータ11の回転数を示すパルス信号Pをモーションコントローラ20に出力し、再び実行中の駆動制御プログラム25Bに入力される。
【0058】
トルクリップルや速度リップルはサーボモータ11の位相θの関数となるが、回転数Nを一定にする速度制御を行った場合でも、サーボモータ11の位相θはモーションコントローラ20の内部クロックとは必ずしも同期していない。そのため、実施例6では、上述のようにサーボモータ11のロータリーエンコーダの出力に同期した制御を行うことで、トルクリップルや速度リップルの効果的な補正が実現している。
【0059】
また、上記の実施例6は、速度制御(回転数制御)を行う例であるが、この構成に限らず、例えば位相θを制御量とする位相制御や、トルクを制御量とするトルク制御などの別の制御モードにも本発明を適用することができる。なお、補正量Eには、制御量の偏差が使用される。
【0060】
また、上記の実施例6では、補正データ29Eの波形が実験的に取得されているが、トルクリップルや速度リップルは、一般にサーボモータ11の位相θの余弦により良好に近似される。そのため、トルクリップルや速度リップルの振幅、周期、位相に合わせた余弦の波形を補正データ29Eとして用いても良い。
【0061】
以上が本発明の例示的な実施形態の説明である。本発明の実施の形態は、上記に説明したものに限定されず、特許請求の範囲の記載により表現された技術的思想の範囲内で任意に変更することができる。
【0062】
例えば、上記の実施形態は、サーボモータ11の回転軸の回転角を制御するものであるが、本発明の実施形態の構成はこれに限定されず、サーボモータの回転数やトルク、サーボモータによって駆動されるアクチュエータの位置、速度、駆動力等を目標値にして制御する構成も本発明の技術的範囲に含まれる。
【0063】
また、上記の実施形態では、モーションコントローラ20は、デジタル値の指令信号をサーボアンプ11aに与えるが、他の形態の指令信号(例えば、アナログ電流信号、アナログ電圧信号、パルス信号)をサーボアンプ11aに与える構成とすることもできる。
【0064】
また、上記に説明した本発明の実施形態の構成は、引張り圧縮試験機、ねじり試験機、振動試験機、その他各種の機械試験装置に適用することができる。
【符号の説明】
【0065】
1 機械試験装置
10 試験機構部
11 サーボモータ
20 モーションコントローラ
25 SFCユーザプログラム
26 メカ機構ユーザプログラム
30 計測ユニット
40 PC
50 ファンクションジェネレータ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11