特許第6899099号(P6899099)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

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

▶ 株式会社安川電機の特許一覧
特許6899099機械制御システム、機械制御装置、及び制振指令生成方法
<>
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000002
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000003
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000004
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000005
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000006
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000007
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000008
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000009
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000010
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000011
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000012
  • 特許6899099-機械制御システム、機械制御装置、及び制振指令生成方法 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6899099
(24)【登録日】2021年6月16日
(45)【発行日】2021年7月7日
(54)【発明の名称】機械制御システム、機械制御装置、及び制振指令生成方法
(51)【国際特許分類】
   G05D 3/12 20060101AFI20210628BHJP
   G05B 19/19 20060101ALI20210628BHJP
【FI】
   G05D3/12 305Z
   G05B19/19 P
【請求項の数】5
【全頁数】19
(21)【出願番号】特願2019-81162(P2019-81162)
(22)【出願日】2019年4月22日
(65)【公開番号】特開2020-177576(P2020-177576A)
(43)【公開日】2020年10月29日
【審査請求日】2019年5月23日
【前置審査】
(73)【特許権者】
【識別番号】000006622
【氏名又は名称】株式会社安川電機
(74)【代理人】
【識別番号】110003096
【氏名又は名称】特許業務法人第一テクニカル国際特許事務所
(72)【発明者】
【氏名】廣瀬 健一
(72)【発明者】
【氏名】丹代 篤郎
(72)【発明者】
【氏名】鈴木 泰宏
【審査官】 中田 善邦
(56)【参考文献】
【文献】 国際公開第2018/179120(WO,A1)
【文献】 国際公開第2012/057235(WO,A1)
【文献】 特開2005−284843(JP,A)
【文献】 特開2005−085074(JP,A)
【文献】 特開2010−204878(JP,A)
【文献】 特開2005−032101(JP,A)
【文献】 特開2016−045549(JP,A)
【文献】 特開2018−068094(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D3/00−3/20
(57)【特許請求の範囲】
【請求項1】
複数のモータでそれぞれ個別に駆動される複数の可動要素を備えた駆動機械と、
第1のモータを駆動制御するための第1の制御指令における加加速度に基づいて、第2のモータを駆動制御するための第2の制御指令を生成する機械制御装置と、
を有し、
前記機械制御装置は、
前記複数のモータをそれぞれ個別に駆動制御する複数のモータ制御装置と、
前記複数のモータ制御装置への前記第1の制御指令および前記第2の制御指令を生成する上位制御装置と、を有し、前記第2のモータを駆動制御する通常制御指令に、前記第1の制御指令における加加速度に基づく制振指令を付加した前記第2の制御指令を生成し、
前記制振指令は、
前記加加速度により前記第2のモータの前記可動要素に生じる振動波形の逆位相波形であって、前記第1のモータ側で発生する加加速度の振幅に対してあらかじめ設定された振幅比を乗算した振幅でかつ前記第1のモータ側と前記第2のモータ側との組合せに対応してあらかじめ設定した周波数と出力周期で定義される正弦波形により、前記上位制御装置と前記モータ制御装置との間の通信制御周期で標本化した値で時系列的に生成されるとともに、過去直近で発生した所定閾値以上にある所定数の加加速度にそれぞれ対応した前記逆位相波形の重畳波形として生成される
ことを特徴とする機械制御システム。
【請求項2】
記モータ制御装置は、
前記第2の制御指令における前記制振指令を、前記第2のモータを駆動制御する通常制御のトルク指令にトルクフィードフォワード指令として加算し、
前記上位制御装置は、
前記第1の制御指令における加加速度に基づいて、前記トルクフィードフォワード指令を生成する
ことを特徴とする請求項1記載の機械制御システム。
【請求項3】
前記制振指令は、
前記通信制御周期において前記加加速度の発生周期時期から所定周期数でオフセットした周期時期に出力される
ことを特徴とする請求項1又は請求項2記載の機械制御システム。
【請求項4】
複数のモータをそれぞれ個別に駆動制御する複数のモータ制御装置と、
第1のモータを駆動制御するための第1の制御指令および第2のモータを駆動制御するための第2の制御指令を生成する上位制御装置と、を有し、前記複数のモータでそれぞれ個別に駆動される複数の可動要素を備えた駆動機械を制御する機械制御装置であって、
前記第1の制御指令における加加速度に基づいて、前記第2の制御指令を生成し、
前記第2の制御指令を、前記第2のモータを駆動制御する通常制御指令に、前記第1の制御指令における加加速度に基づく制振指令を付加して生成し、
前記制振指令を、前記加加速度により前記第2のモータの前記可動要素に生じる振動波形の逆位相波形であって、前記第1のモータ側で発生する加加速度の振幅に対してあらかじめ設定された振幅比を乗算した振幅でかつ前記第1のモータ側と前記第2のモータ側との組合せに対応してあらかじめ設定した周波数と出力周期で定義される正弦波形により、前記上位制御装置と前記モータ制御装置との間の通信制御周期で標本化した値で時系列的に生成するとともに、過去直近で発生した所定閾値以上にある所定数の加加速度にそれぞれ対応した前記逆位相波形の重畳波形として生成する
ことを特徴とする機械制御装置。
【請求項5】
複数のモータでそれぞれ個別に駆動される複数の可動要素を備えた駆動機械を制御する機械制御装置であって、複数のモータをそれぞれ個別に駆動制御する複数のモータ制御装置と、第1のモータを駆動制御するための第1の制御指令および第2のモータを駆動制御するための第2の制御指令を生成する上位制御装置と、を有する機械制御装置が備える演算装置が実行する制振指令生成方法であって、
前記第1の制御指令における加加速度に基づいて、前記第2の制御指令を生成すること、
を実行し、
前記第2の制御指令を生成することは、
前記第2の制御指令を、前記第2のモータを駆動制御する通常制御指令に、前記第1の制御指令における加加速度に基づく制振指令を付加して生成することと、
前記制振指令を、前記加加速度により前記第2のモータの前記可動要素に生じる振動波形の逆位相波形あって、前記第1のモータ側で発生する加加速度の振幅に対してあらかじめ設定された振幅比を乗算した振幅でかつ前記第1のモータ側と前記第2のモータ側との組合せに対応してあらかじめ設定した周波数と出力周期で定義される正弦波形により、前記上位制御装置と前記モータ制御装置との間の通信制御周期で標本化した値で時系列的に生成するとともに、過去直近で発生した所定閾値以上にある所定数の加加速度にそれぞれ対応した前記逆位相波形の重畳波形として生成することと、
を有することを特徴とする制振指令生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
開示の実施形態は、機械制御システム、機械制御装置、及び制振指令生成方法に関する。
【背景技術】
【0002】
例えば特許文献1には、モータによる機械の位置決め制御時に発生する振動のオーバーシュートを打ち消すために、当該モータのトルク指令に上記振動と逆の位相の振動に対応する補償トルク指令を加算する振動抑制手法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2017−138821号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、複数のモータでそれぞれ個別に駆動する複数の可動要素を連結して備えた機械設備が多くあり、いずれかの可動要素の駆動によって他の可動要素を振動させる場合がある。これに対して上記従来技術の振動抑制手法を適用しても、振動の原因が他軸の可動要素の駆動であるため制振効果が得られない。
【0005】
本発明はこのような問題点に鑑みてなされたものであり、複数の駆動軸制御系の間における相互的な制振機能を向上できる機械制御システム、機械制御装置、及び制振指令生成方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明の一の観点によれば、複数のモータでそれぞれ個別に駆動される複数の可動要素を備えた駆動機械と、第1のモータを駆動制御するための第1の制御指令における加加速度に基づいて、第2のモータを駆動制御するための第2の制御指令を生成する機械制御装置と、を有する機械制御システムが適用される。
【0007】
また、本発明の別の観点によれば、第1のモータを駆動制御するための第1の制御指令における加加速度に基づいて、第2のモータを駆動制御するための第2の制御指令を生成する機械制御装置が適用される。
【0008】
また、本発明の別の観点によれば、複数のモータをそれぞれ個別に駆動制御する機械制御装置が備える演算装置が実行する制振指令生成方法であって、第1のモータを駆動制御するための第1の制御指令における加加速度に基づいて、第2のモータを駆動制御するための第2の制御指令のうちの通常制御指令に付加する制振指令を生成すること、を実行する制振指令生成方法が適用される。
【発明の効果】
【0009】
本発明によれば、複数の駆動軸制御系の間における相互的な制振機能を向上できる。
【図面の簡単な説明】
【0010】
図1】本実施形態に係る機械制御システムの全体構成の一例を示す説明図である。
図2】制振指令の生成手法を説明するタイムチャートである。
図3】サーボアンプの制御処理ループを表す図である。
図4】制振指令の具体的形態を説明するタイムチャートである。
図5】加加速度の大きさが変化する速度制御シーケンスの例を表すタイムチャートである。
図6】制振指令波形の波形振幅の算出について説明するタイムチャートである。
図7】制振力波形が重複する速度制御シーケンスの例を表すタイムチャートである。
図8】制振指令の重畳を説明するタイムチャートである。
図9】加加速度が頻発する速度制御シーケンスの例を表すタイムチャートである。
図10】有効最小加速度未満の微小な加加速度が発生する速度制御シーケンスの例を表すタイムチャートである。
図11】駆動軸制御系を3軸備えた場合の変形例に係る機械制御システムの全体構成の一例を示す説明図である。
図12】コントローラのハードウェア構成の一例を表すブロック図である。
【発明を実施するための形態】
【0011】
以下、一実施の形態について図面を参照しつつ説明する。
【0012】
<1.機械制御システムの全体構成>
まず、図1を参照しつつ、本実施形態に係る機械制御システムの構成の一例について説明する。図1は本実施形態に係る機械制御システムの全体構成の一例を示している。図示する本実施形態の例では、駆動機械の駆動源であるモータとして2つのリニアモータを使用した場合について説明する。
【0013】
図1において、機械制御システム100は、コントローラ1と、2つのサーボアンプ2A,2Bと、2つのリニアモータ3A,3Bと、駆動機械4とを有している。
【0014】
コントローラ1は、CPUやROM、RAMなどのメモリなどを備えたコンピュータ(図12参照)、PLC(Programmable Logic Controller)、又はMC(Motion Controller)等で構成され、駆動機械4に所望の経時的動作を行わせるよう制御する上位制御装置である。この動作制御機能の形態として具体的には、駆動機械4の動力源である後述のリニアモータ3A,3Bに対して所望のモーション動作をリアルタイムかつ高精度に指示するモーション制御指令を、後述の通信制御周期で周期的にサーボアンプ2A,2Bへ出力する。
【0015】
サーボアンプ2A,2Bは、CPUやROM、RAMなどのメモリなどを備えたコンピュータ(図12参照)で構成され、上記コントローラ1から入力したモーション制御指令についてリアルタイムかつ高精度に追従するよう後述のリニアモータ3A,3Bに駆動電力を給電し駆動制御するモータ制御装置である。なお、このサーボアンプ2A,2Bの制御構成については、後の図3で詳述する。
【0016】
リニアモータ3A,3Bは、直動型のモータであり、上記サーボアンプ2A,2Bから給電された駆動電力により駆動機械4を駆動するための直進推力を発生する。リニアモータ3A,3Bは、一方向に長い矩形平板形状の固定子31と、この固定子31上で長手方向に往復動可能な可動子32A,32Bとの組み合わせで構成されている。この例では、固定子31側において長手方向に対し磁極を交互に配置された多数の永久磁石(図示省略)が設けられ、可動子32A,32B側において上記サーボアンプ2A,2Bからの駆動電力により直進磁界を発生可能な電機子(図示省略)が設けられている。なお、この例におけるリニアモータ3A,3Bには、それぞれの可動子32A,32Bの出力位置を検出する特に図示しないリニアスケールが個別に設けられている。
【0017】
駆動機械4は、上記リニアモータ3A,3Bの可動子32A,32Bに連結してその駆動力(この例では推力)により機械的に駆動される機械構造物である。なお、図中においては、可動子32A,32B上にそれぞれ固定されたウェイトW1,W2でこの駆動機械1を模式的に略記している。
【0018】
本実施形態の機械制御システム100の例においては、駆動機械4の駆動源であるリニアモータ3A,3Bが、共通する1つの固定子31上に2つの可動子32A,32Bを個別に往復動させる構成となっており、つまり固定子31を共通化した2つのリニアモータ3A,3Bを備えている。ここで、一方の可動子(図示する例では図中右手前側の可動子32A)を備えたリニアモータを第1モータ3Aとし、他方の可動子(図示する例では図中左奥側の可動子32B)を備えたリニアモータを第2モータ3Bとする。そして、第1モータ3Aは第1サーボアンプ2Aから、第2モータ3Bは第2サーボアンプ2Bからそれぞれ個別に駆動電力が給電されて独自に駆動制御される。コントローラ1は、第1サーボアンプ2Aと第2サーボアンプ2Bにそれぞれ適宜の制御指令を出力することで、2つのリニアモータ3A,3Bを協調制御して駆動機械4全体を所定のシーケンスで駆動制御できる。
【0019】
コントローラ1と各サーボアンプ2A,2Bとの間で送受される制御指令は、対応するリニアモータ3A,3Bの可動子32A,32Bの動作について直接的に指令する通常制御指令と、可動子32A,32Bの振動を抑制するための制振指令とを含んでいる。例えば図示する例のように、コントローラ1が第1モータ3Aに対して出力した通常制御指令において加加速度が発生する場合には、その影響を受けて振動の発生が予測される第2モータ3Bに対して対応する通常制御指令と共に上記第1モータ3Aでの加加速度に基づいた制振指令が出力される。このようなコントローラ1と各サーボアンプ2A,2Bとの間における制御指令の送受に関しては、駆動機械4におけるモーション制御のリアルタイム性を確保するために後述する同期通信により行われる。
【0020】
なお、以下においては、対応するリニアモータ3A,3Bとサーボアンプ2A,2Bの組合せをまとめて駆動軸制御系という。また、以上においてリニアモータ3A,3Bの可動子32A,32Bとそれに連結して動作する駆動機械4の可動部分が各請求項記載の可動要素に相当し、サーボアンプ2A,2Bが各請求項記載のモータ制御装置に相当し、コントローラ1が各請求項記載の上位制御装置に相当し、コントローラ1と複数のサーボアンプ2A,2Bをまとめた全体が各請求項記載の機械制御装置に相当し、この例の第1サーボアンプ2Aへ向けてコントローラ1が出力する制御指令が各請求項記載の第1の制御指令に相当し、この例の第2サーボアンプ2Bへ向けてコントローラ1が出力する制御指令が各請求項記載の第2の制御指令に相当する。
【0021】
なお、上述したコントローラ1、第1サーボアンプ2A、第2サーボアンプ2B等における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の制御装置(例えば1つの機械制御装置)で処理されてもよく、また、更に分化された制御装置により処理されてもよい。また、コントローラ1(またはサーボアンプ2A,2B)の処理は、後述するCPU901(演算装置;図12参照)が実行するプログラムにより実装されてもよいし、その一部又は全部がASICやFPGA等の専用集積回路、その他の電気回路等の実際の装置により実装されてもよい。
【0022】
<2.本実施形態の特徴>
産業機械などを含めた一般的な機械設備には、本実施形態にあるように複数のモータ3A,3Bでそれぞれ個別に駆動される複数の可動要素を備えた構成のものが多くある。そして、複数のモータ3A,3Bは複数のサーボアンプ2A,2Bでそれぞれ個別に駆動制御され、それら複数のサーボアンプ2A,2Bはそれぞれ上位のコントローラ1から出力される制御指令に基づいて協調制御される。
【0023】
そのような機械制御システム100においていずれかの可動要素がモータ3A,3Bの駆動により動作した際には、その反力が伝播して他の可動要素を振動させる原因となる。これまでは、そのような機械系で発生する振動に対して、サーボアンプ2A,2Bが備える外乱抑制機能(オブザーバ利用など)により各駆動軸制御系のそれぞれで独自に制振制御を行う構成となっていた。
【0024】
しかし、例えば近年の半導体製造装置等で行われるような精密機器の製造作業等ではμmオーダーまでの非常に高い動作精度が要求されている。これに対して上述したように各駆動軸制御系が独自に外乱抑制機能によって制振制御を実行するだけでは、実際に振動を受けてからの対応となるため応答に遅れが生じ、また加加速度のような微小な振動の発生要因に対応した高い制振精度が得られないなどの理由から十分な制振効果が得られない恐れがあった。
【0025】
これに対して本実施形態では、コントローラ1が、第1モータ3Aを駆動制御するための第1制御指令における加加速度に基づいて、第2モータ3Bを駆動制御するための第2制御指令を生成する。
【0026】
つまり、各駆動軸制御系に実行させる制御指令を全て監視しているコントローラ1においては、いずれの駆動軸制御系及び可動要素がどのタイミングでどのような加加速度を生じ、これが他の駆動軸制御系の可動要素に対する振動の発生要因となるかまで把握できる。従ってこのようなコントローラ1が、上記他の駆動軸制御系である第2モータ3Bに対し、上記第1モータ3Aに発生する加加速度の発生タイミングや発生内容(大きさ、位相など)に適切に対応した制振制御を実行するよう指令する第2制御指令を生成できる。以下、このような制振制御を行うための手法について詳細に説明する。
【0027】
<3.制振指令の生成手法>
上記図1に示した例における加加速度の発生と、それに対応した制振指令の生成手法について図2のタイムチャートを参照しつつ説明する。この図2においては4つのタイムチャートが示されており、最上段から順に、加加速度を発生させる側(図1の例の第1モータ3Aの側;以下、加振側という)の駆動軸制御系における速度波形の一例と、その加速度波形と、その加加速度波形とが示されており、また最下段には上記加振側で発生した加加速度により振動を受ける側(図1の例の第2モータ3Bの側;以下、被振側という)の駆動軸制御系において生じる振動波形とそれに対応して生成すべき制振力の波形とが重ねて示されている。
【0028】
この図2に示す例では、まず加振側の駆動軸制御系が、位置制御または速度制御によって最上段のタイムチャートに示すような略台形の波形形状でモータ速度が制御される。このとき、コントローラ1とサーボアンプ2Aは、十分短い同一周期(以下、通信制御周期Tという)で同期して制御指令を逐次送受する。これによりコントローラ1から送信する制御指令の内容が経時的に変動する場合でも、サーボアンプ2Aは十分なリアルタイム性をもってその制御指令の変動に対応した追従制御を行える。つまり、図示する加振側速度波形のタイムチャート中において、通信制御周期T単位で分割して(標本化されて)示している各矩形グラフの高さは、各周期時期での加振側のサーボアンプ2Aにおける速度指令の瞬時値に相当する。
【0029】
このような速度波形に対応して、上から2段目のタイムチャートに示すように、モータ速度が加速している期間では正値側(図示する上方側)に延びた矩形波形でモータ加速度が生じ、モータ速度が減速している期間では負値側(図示する下方側)に延びた矩形波形でモータ加速度が生じ、それら以外でモータ速度が停止または一定速度にある期間ではモータ加速度は生じない。
【0030】
そして、このような加速度波形に対応して、上から3段目のタイムチャートに示すように、モータ加速度が立ち上がる際には正値側に延びた矩形波形でモータ加加速度が生じ、モータ加速度が切り下がる際には負値側に延びた矩形波形でモータ加加速度が生じ、それら以外でモータ加速度が0または一定にある期間ではモータ加加速度は生じない。この加加速度の大きさは速度指令の2階時間微分値、言い換えると移動位置の指令単位での変化量を、通信制御周期Tの周期期間の2乗値で除した値に相当する。なお、上記のモータ加速度及びモータ加加速度のいずれも通信制御周期Tの周期単位で標本化されており、特にモータ加速度が矩形波形で生じることから各モータ加加速度は一周期分のパルス波形(符号付きの瞬時値)で示している。
【0031】
このように加振側の駆動軸制御系で発生した加加速度に対する反力は、例えば上記図1の構成における共通の固定子31を伝播して被振側の駆動軸制御系を振動させる加振力となる。そして、最下段のタイムチャートに示すように、被振側では、加振側での加加速度の発生後に対応するタイミングで上記加振力により略正弦波形(図中の破線波形参照)の位置振動が生じる。これに対して本実施形態では、被振側の駆動軸制御系(この例の第2モータ3B)に対して、上記位置振動の略正弦波形と逆位相波形(図中の実線波形参照)で生成した制振力を付加するよう制振制御することで、被振側の振動を相殺させることができる。
【0032】
ここで、コントローラ1は、当該機械制御システム100が備える全ての駆動軸制御系に対し、それぞれどの周期時期でどのような制御指令を出力するかの制御スケジュールを管理している。このため、コントローラ1は、いずれの駆動軸制御系の可動要素がどの周期時期でどのような加加速度を生じて加振側となり、その加加速度が他の被振側となる駆動軸制御系の可動要素に対する振動の発生要因となるまで把握できる。従ってコントローラ1は、被振側の第2モータ3Bに対し、加振側の第1モータ3Aに発生する加加速度の発生タイミングや発生内容(大きさ、位相など)に適切に対応した制振指令を生成して出力すればよい。
【0033】
<4.制振指令の具体的形態>
以上の手法によりコントローラ1が生成する制振指令の具体的形態として、本実施形態の例では、リニアモータ3Bに任意の制振力を付加できるようサーボアンプ2Bに入力する推力フィードフォワード指令の形態で制振指令を生成する。
【0034】
例えば、サーボアンプ2Bにおいて実行される一般的な位置制御処理を伝達関数形式で表現すると、図3に示すような位置制御フィードバックループと速度制御フィードバックループの二重ループ処理となる。二重ループ処理では、コントローラ1から位置指令とモータ3Bの位置検出値との偏差を位置偏差として求め、この位置偏差に基づいて位置制御部51が速度指令を生成する。さらに、この速度指令とモータ3Bの速度検出値(微分演算子53による位置検出値の1階時間微分値)との偏差を速度偏差として求め、この速度偏差に基づいて速度制御部52が推力指令を生成する。そして、この推力指令を電力指令として、対応する駆動電力を給電することによりモータ3Bを駆動する。なお、速度制御処理を行う場合には、位置制御部51を省略した一重ループ処理で、コントローラ1から速度指令を入力してもよい。このようなループ処理において推力指令に直接加算する指令が推力フィードフォワード指令であり、コントローラ1はこのような推力フィードフォワード指令の形態で制振指令を生成する。
【0035】
図4は、上記推力フィードフォワード指令の形態で生成された制振指令の一例をタイムチャートで示している。上述したように被振側の駆動軸制御系における位置振動は略正弦波形で生じるため、これを相殺するための制振力はその逆位相の略正弦波形にできるだけ近づけて付加することが望ましく、その制振力を制御するための推力フィードフォワード指令もまたそのような逆位相の正弦波形に近づけて生成することが望ましい。なお、駆動機械4における基準座標系の設定態様や加振側と被振側の各駆動軸制御系どうしの間の配置関係によっては、同じ加加速度であっても被振側に生じる振動波形の位相が加加速度と同位相と逆位相の両方に成り得る。このため、加加速度を基準とするのではなく、被振側の可動要素の振動波形を基準とした逆位相波形の推力フィードフォワード指令で制振指令を生成するとよい。
【0036】
また、被振側に振動が発生してから十分に減衰するまで通信制御周期Tの複数周期分に相当する時間が必要な場合は、サーボアンプ2Bは当該複数周期の間(以下、出力周期という)にわたって継続的に制振制御のための推力フィードフォワード指令をトルク指令に加算し続ける必要がある。したがってコントローラ1は、上記制振力の略正弦波形を通信制御周期Tで標本化した値で推力フィードフォワード指令を時系列的に生成し、それを適宜設定した出力周期の間で継続的に制振指令として出力する。
【0037】
また、被振側で実際に受ける具体的な振動波形の内容は、その要因となる加振側の加加速度の発生内容(例えば振幅、位相など)そのものだけではなく、それら加振側と被振側の駆動軸制御系どうしの間で連結する機械要素の剛性や連結構成、各可動要素の質量比、駆動軸制御系の軸間配置関係(方向、距離)などの多様な要素の影響を受ける。そのため、推力フィードフォワード指令の具体的な生成内容は、加振側の駆動軸制御系と被振側の駆動軸制御系との間の機械的関係性に対応した内容で生成することが望ましい。
【0038】
ここで、一般的に正弦波形は振幅、周波数、及び位相の3つの波形パラメータで一義的に定義できるが、被振側で発生する略正弦波形の振動はその位相(正負符号)も含めた振幅が加振側の加加速度の振幅に比例し、また周波数は加振側と被振側の間の機械的関係性に依存し、また経時的に減衰する。このため、被振側で有効な推力フィードフォワード指令を生成する際には、加振側で発生する加加速度の振幅(通常制御指令に応じて増減変化する値)に対してあらかじめ適切に設定された振幅比を乗算した振幅で、また加振側と被振側との組合せに対応してあらかじめ適切に設定した周波数と出力周期で定義される正弦波形で推力フィードフォワード指令を生成するのが望ましい。本実施形態の例では、これら振幅比、周波数、及び出力周期の各波形パラメータを例えば手動調整作業によりあらかじめ適切に設定しておき、制振指令を生成するコントローラ1に記憶させておく。
【0039】
なお、図4に示す例の制振力波形では、加加速度の振幅に対する振幅比が+1(つまり加加速度と制振力が同位相→加加速度と振動が逆位相)であり、波形周期が通信制御周期Tの単位で19周期分であり、出力周期が正弦波形の周期単位で2周期分(T単位で38周期分)であると設定した場合を示している。また、上記の波形周期について言い換えると、通信制御周期Tの単位では1/19周期分の周波数にあると言える。時間に関係する周波数と出力周期の波形パラメータについては、通信制御周期Tの尺度を基準として設定することが機能上望ましいが、他にも制振力の正弦波形周期の尺度や実時間の尺度のいずれかを基準として設定してもよい。なお、振幅比の設定については別途後述する。
【0040】
また、一般的なモーション制御通信においては、コントローラ1が指令を出力してからサーボアンプ2Bがその指令を実際に実行するまでに通信制御周期Tの所定周期分に相当する時間を必要とする場合がある。また、加振側と被振側の間の機械的関係性によっては、それらの間における機械的な振動の伝播にも所定周期分に相当する時間が必要な場合がある。これに対して、コントローラ1が制振指令を出力する際に、加加速度が発生する周期時期Aからあらかじめ適切に設定された周期数(図示する例では−2T)でオフセットされた周期時期に制振指令を出力する。この出力オフセット周期は、コントローラ1とサーボアンプ2Bの間の通信制御機能や加振側と被振側の間の機械的関係性等に依存するため、このパラメータについても例えば手動調整作業によりあらかじめ適切に設定しておき、コントローラ1に記憶させておく。
【0041】
なお、制振力の逆位相波形は、振動波形と振幅、周波数、及び出力周期ができるだけ一致していることが望ましいが、少なくとも所定周期時期における振動波形の瞬時値と正負が逆の制振力を通信制御周期Tの1周期分で出力するだけでも一定の制振効果が得られる。
【0042】
<5.制振指令波形の波形振幅の算出について>
例えば図5のタイムチャートで示すように、加振側で実行する速度制御のシーケンスによっては発生する加加速度の大きさ(符号、絶対値)が変化する場合がある。コントローラ1は、上述したように全ての駆動軸制御系に対する全ての制御指令の出力スケジュールと内容を管理していることから、全ての加加速度の発生周期時期とその大きさを予め算出して対応する制振指令を適切な大きさ(位相、振幅)で生成して適切な周期時期に出力できる。
【0043】
コントローラ1は、上述したように制御指令で発生する加加速度の大きさに対して、あらかじめ適宜設定しておいた振幅比を乗算して制振指令波形の波形振幅を算出する。そして本実施形態の例では、さらに最大振幅を正規化した比率に基づいて実際の制振指令となる制振力波形の波形振幅を算出する。例えば図6に示す例では、図中の左側のタイムチャート列で示すように、加振側の速度波形が最短加速時間で最高速度に到達する場合、つまり加速度が最大となる場合(上段参照)に、その加速度に対応する加加速度(中段参照)の大きさに対してあらかじめ手動調整などで設定した振幅比を乗算することで被振側の制振力波形の波形振幅(下段参照)を算出できる。この振幅が当該被振側において付加し得る制振力波形の最大振幅となり、これを100%として正規化する。
【0044】
これにより、例えば制御指令で加速度50%である場合に対応して被振側に付加すべき制振力波形の振幅は上記最大振幅の50%で算出すればよく(図中、中央のタイムチャート列参照)、また制御指令で加速度25%である場合に対応して被振側に付加すべき制振力波形の振幅は上記最大振幅の25%で算出すればよい(図中、右側のタイムチャート列参照)。そしてこのように算出した波形振幅の値に対して、波形周波数に応じた角速度と経過周期での正弦関数を乗算することで、各周期時期に出力すべき制振指令の推力フィードフォワード指令の瞬時値を算出すればよい。
【0045】
<6.制振指令波形の重畳について>
例えば図7のタイムチャートで示すように、加振側で実行する速度制御のシーケンスによっては加加速度が短い時間間隔(図示する例では連続した周期時期)で発生する場合がある。この場合には、先の加加速度に対応して発生する振動が減衰する前に後の加加速度に対応して発生する振動が重畳するよう合成されて被振側の可動要素に伝搬する。これに対して本実施形態では、コントローラ1は各加加速度にそれぞれ対応した制振力の略正弦波形(それぞれ出力周期で時間長さが限定)を個別に生成した上で、それらを図8に示す例のように重畳してその合成波形の瞬時値から各周期時期における制振指令の推力フィードフォワード指令を生成する。
【0046】
また、図9に示すタイムチャートのように加加速度が短い時間間隔で頻発するような場合がある。この頻度がさらに高い場合、または各制振力波形の出力周期が長い場合には、3つ以上の制振指令を重畳させる場合もあり得る。これに対してコントローラ1は、過去直近で発生した所定数の加加速度を履歴として記憶しておき、それぞれの加加速度に対応した制振力波形(逆位相波形)の重畳波形で推力フィードフォワード指令の制振指令を生成すればよい。なお、先の加加速度と後の加加速度の間の発生時間間隔が十分に長い場合であっても、それぞれ対応する制振力波形には出力周期で時間長さが限定されている(つまり出力周期後は瞬時値が0となる)ため不要な重畳処理は回避できる。また、加加速度を記憶する数は出力周期の長さや記憶装置の記憶容量に応じて適宜設定すればよい。
【0047】
<7.有効最小加加速度について>
例えばコントローラ1が補間動作のような制御指令を出力した場合には、図10のタイムチャートで示すように、可動要素の移動速度に十分小さなバラツキが生じ、微小な加加速度が発生する場合がある。しかし、このような加振側に生じる微小な加加速度では被振側の駆動軸制御系に対してほとんど影響を与えることがなく(振動が無視できる程度しか発生せず)、逆に加振側で頻繁に発生する微小な加加速度の全てに対応して制振指令を出力した場合には被振側の駆動軸制御系を発振させてしまう可能性がある。これに対して本実施形態では、適切に設定した閾値としての有効最小加加速度以上にある加加速度に対応してのみ制振指令を生成する。言い換えると、発生した加加速度が有効最小加加速度未満である場合には、制振制御を実行しない。このときの有効最小加加速度は絶対値で設定し、正負それぞれの加加速度の絶対値と比較して制振指令を生成するか否かを判定する。
【0048】
<8.本実施形態の効果>
以上説明したように、本実施形態の機械制御システム100によれば、当該機械制御システム100の駆動を制御する機械制御装置(この例では複数のサーボアンプ2A,2Bとコントローラ1をまとめた総称)が、第1モータ3Aを駆動制御するための第1制御指令における加加速度に基づいて、第2モータ3Bを駆動制御するための第2制御指令を生成する。これにより、被振側の駆動軸制御系の第2モータ3Bに対し、加振側の第1モータ3Aに発生する加加速度の発生タイミングや発生内容(大きさ、位相など)に適切に対応した制振制御を実行するよう指令する第2制御指令を生成できる。この結果、複数の駆動軸制御系の間における相互的な制振機能を向上できる。
【0049】
また、本実施形態では特に、機械制御装置は、第2モータ3Bを駆動制御する通常制御指令に、第1制御指令における加加速度に基づく制振指令を付加した第2の制御指令を生成する。これにより、第2モータ3Bに対して通常制御指令により実行される位置制御や速度制御の通常制御とともに、外部で発生した加加速度により受ける反力(推力等)に適切に対応した制振指令での制振制御を併せて実行できる。
【0050】
また、本実施形態では特に、機械制御装置は、複数のモータ3A,3Bをそれぞれ個別に駆動制御する複数のサーボアンプ2A,2Bと、それら複数のサーボアンプ2A,2Bへの第1制御指令および第2制御指令を生成するコントローラ1と、を有し、コントローラ1は、第2制御指令における制振指令を、第2モータ3Bを駆動制御する通常制御の推力指令に推力フィードフォワード指令として加算し、コントローラ1は、第1制御指令における加加速度に基づいて、推力フィードフォワード指令を生成する。
【0051】
このように、機械制御装置が、各モータ3A,3Bそれぞれの駆動を制御する複数のサーボアンプ2A,2Bと、それら複数のサーボアンプ2A,2Bを統合的に制御するコントローラ1で構成していることにより、当該機械制御システム100全体の機械制御処理を各装置で機能的に分担できる。そして、コントローラ1が推力フィードフォワード指令の形態で制振指令を生成し、サーボアンプ2Bが制振指令として入力された推力フィードフォワード指令を推力指令に加算することで、当該サーボアンプ2Bで別途実行される位置制御や速度制御の通常制御に対して影響を与えることなく、かつ、外部で発生した加加速度により受ける反力(推力)に適切に対応した推力で制振制御を実行できる。
【0052】
また、加振側と被振側の各駆動軸制御系への制御指令及び制振指令を監視するコントローラ1は、それら2つの駆動軸制御系の機械的関係性に対応した内容での推力フィードフォワード指令の生成が容易であり、それ自体を制振指令として被振側のサーボアンプ2Bへ出力できる。そして、このような制振指令を入力したサーボアンプ2Bにおいては、推力フィードフォワード指令の形態である制振指令をそのまま推力指令に加算するだけでよいため、当該サーボアンプ2Bの処理負担を軽減できる。
【0053】
なお、特に図示しないが、サーボアンプ2Bが推力フィードフォワード指令を生成してもよい。この場合には、あらかじめサーボアンプ2Bが制振力の正弦波形を定義する波形パラメータ(振幅比、周波数、及び出力周期)を記憶しておき、コントローラ1は加振側に発生した加加速度の大きさ(符号、振幅)に相当する情報を制振指令として適切な周期時期に出力する。そして、サーボアンプ2Bが波形パラメータと制振指令に基づいて各周期時期ごとに対応する推力フィードフォワード指令を生成して推力指令に加算すればよい。
【0054】
また、本実施形態では特に、制振指令が、コントローラ1とサーボアンプ2Bとの間の通信制御周期Tで標本化した値で時系列的に生成される。これにより、通信制御周期Tごとにモーション制御処理を行うサーボアンプ2Bであっても、複数の通信制御周期Tにわたる制振力波形での制振制御が可能となる。
【0055】
また、本実施形態では特に、制振指令が、通信制御周期Tにおいて加加速度の発生周期時期から所定周期数でオフセットした周期時期に出力される。これにより、実際に被振側の可動要素が振動を開始するタイミングに適切に対応してサーボアンプ2Bに制振制御の実行を開始させることができる。
【0056】
また、本実施形態では特に、制振指令が、加加速度により可動要素に生じる振動波形の逆位相波形(少なくとも正負が逆であればよい)で生成される。このように加加速度を基準とするのではなく、被振側の可動要素の振動波形を基準とした逆位相波形の推力フィードフォワード指令で制振指令を生成することで、当該可動要素に発生する振動を相殺するよう制振できる。
【0057】
また、本実施形態では特に、被振側の振動波形の逆位相波形(制振力波形)が、加加速度との振幅比、周波数、出力周期の少なくとも1つの波形パラメータで定義される略正弦波形で生成される。これにより、振幅比、周波数、及び出力周期の波形パラメータを例えば手動調整作業によりあらかじめ適切に設定しておき、発生する加加速度の振幅が特定できれば制振機能上有効な正弦波形の推力フィードフォワード指令を生成できる。
【0058】
また、本実施形態では特に、制振指令が、過去直近で発生した所定数の加加速度にそれぞれ対応した逆位相波形の重畳波形で生成される。これにより、短い時間間隔で発生した複数の加加速度により合成された振動波形に対しても、サーボアンプ2Bは通信制御周期Tごとに入力される一つの制振指令(推力フィードフォワード指令)で機能的に相殺して制振制御できる。
【0059】
また、本実施形態では特に、制振指令が、有効最小加加速度の閾値以上にある加加速度に対応して生成される。これにより、例えば加振側に微小な加加速度が頻発するような速度制御が実行された場合であっても、被振側において十分な制振機能を維持しつつ駆動軸制御系の制御安定性を向上できる。
【0060】
なお、本実施形態の例では一方の第1モータ3Aを加振側として他方の第2モータ3Bを被振側とした関係を前提として説明したが、逆に第2モータ3Bが加振側となり第1モータ3Aが被振側と成り得るように相互に振動の因果関係を有する場合が多くあり、いずれの関係においてもコントローラ1は加振側の加加速度に基づいて被振側への制御指令を生成すればよい。なお、可動要素の振動波形に影響を与える機械的関係性で対称性がない場合、つまり加振側と被振側が逆転した場合で振動波形(波形パラメータ、オフセット周期数)が変化する場合には、コントローラ1は加振側と被振側の方向関係の組合せ(この例では2通り)ごとに波形パラメータやオフセット周期数を記憶して対応する内容の制振指令を生成する。
【0061】
また、制振指令である推力フィードフォワード指令は、被振側の駆動軸制御系が停止中と動作中(可動要素が移動中)のいずれにかかわらず任意の周期時期に入力してよく、サーボアンプ2Bは制振指令の推力フィードフォワード指令を加算した推力指令にリアルタイムに応答して制御すればよい。
【0062】
また、上記実施形態では、加振側への第1制御指令(通常制御指令)に加加速度が発生する際に対応する制振指令を生成し、これを被振側への通常制御指令だけに付加して第2制御指令として出力すると説明したが、これに限られない。例えば、コントローラ1がいずれの駆動軸制御系に出力する制御指令においても常に通常制御指令に制振指令を付加する形態で出力してもよい。この場合は、一方の駆動軸制御系側で加加速度が発生していない間は他方の駆動軸制御系側の制振指令(推力フィードフォワード指令)を0値で生成すればよい。
【0063】
また、本実施形態の制振手法は、加振側と被振側の機械的な配置関係が上記図1で示した例のような同一直線上の配置関係に限られず、例えば平行な配置関係や所定角度(直交も含む)を成す配置関係、空間的なねじれ配置関係なども含めて加加速度が伝播して機械的影響を及ぼし得る多様な配置関係に適用できる。例えば、平行に配置した複数のモータで同一の可動要素を駆動するいわゆるガントリ機構をさらに複数設けた駆動機械の場合には、加振側のガントリ機構での加加速度に対応した制振指令を被振側のガントリ機構の全てのサーボアンプにそれぞれ入力することで制振機能が得られる(図示省略)。
【0064】
また、駆動軸制御系で使用するモータは直動型のリニアモータに限られず、回転型のモータを使用した場合にも本実施形態の制振手法を適用できる。この場合、上記図3に示すループ処理における推力指令はトルク指令となり、制振指令の推力フィードフォワード指令はトルクフィードフォワード指令となる。また、可動要素はボールねじやピニオン・ラックの機構を介した直動機械要素などが想定され、被振側の振動は回転型モータの出力軸の回転位置における振動や上記の直動機械要素における振動などが想定される。また、直動型モータと回転型モータを組合せて備えた場合でも、本実施形態の制振手法が適用可能である。
【0065】
<9.変形例>
なお、開示の実施形態は、上記に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。以下、そのような変形例を説明する。
【0066】
<駆動軸制御系を3軸以上備える場合>
上記実施形態では、駆動軸制御系を2軸備えた機械制御システムについて説明したが、上記図1に対応する図11に示すように駆動軸制御系を3軸備えた機械制御システム200に対しても上記実施形態と同等の制振手法を適用できる。なお、図示する例では、各駆動軸制御系の第1〜第3モータ203A,203B,203Cが回転型であり、第1モータ203Aだけ他の第2、第3モータ203B,203Cと出力軸の先端方向(つまり回転方向)が逆であり、またそれぞれボールねじなどのネジ送り機構を介して異なる質量のウェイトW1,W2,W3を往復動させる駆動機械204を備える場合を示している。
【0067】
このように3軸以上の駆動軸制御系を備えた場合、コントローラ201は、いずれか1つの駆動軸制御系において制御指令に加加速度が生じて加振側となる際に、他の全ての駆動軸制御系を被振側としてそれぞれに制振指令を出力すればよい。
【0068】
しかしながら、多くの場合は加振側と被振側の関係にある2つの駆動軸制御系の組合せごとにそれらの間の機械的関係性が相違することになる。図示する例では、第2モータ203Bの駆動軸制御系が加振側となって他の第1モータ203A、第3モータ203Cそれぞれの駆動軸制御系が被振側となる場合を示しており、上述した各ウェイトW1,W2,W3の質量差やモータ軸方向の相違があることで、第2モータ203Bと第1モータ203Aの組合せにおける機械的関係性と第2モータ203Bと第3モータ203Cの組合せにおける機械的関係性が相違している。また、特に図示しないが、例えば第1モータ203Aが加振側である場合には、軸間設置距離の差から第1モータ203Aと第2モータ203Bの組合せと、第1モータ203Aと第3モータ203Cの組合せの間でも機械的関係性が相違する。
【0069】
そして上述したように、制振指令の基準となる制振力波形の波形形状(振幅比、周波数、出力周期)や、制振指令を出力する周期時期(オフセット周期数)は、加振側と被振側の間の方向性も含めた機械的関係性に依存する。このため、被振側の複数の駆動軸制御系にそれぞれ出力する制振指令は、駆動軸制御系ごとで個別に、加振側となる駆動軸制御系との軸組合せとその方向関係に対応した内容で生成するのが望ましい。図示する例では、被振側である第1モータ203Aに対して第2モータ203Bが加振側で当該第1モータ203Aが被振側である軸組合せと方向関係に対応した内容の制振指令を生成し、同じく被振側である第3モータ203Cに対して第2モータ203Bが加振側で当該第3モータ203Cが被振側である軸組合せと方向関係に対応した内容の制振指令を生成する。このため、コントローラ201は、複数ある駆動軸制御系のうちで対となる軸組合せ数と方向関係数の全て(この例では3組合せ×2方向=6通り)でそれぞれ波形パラメータやオフセット周期数を記憶して対応する内容の制振指令を生成する。
【0070】
また、短い時間間隔で2つの駆動軸制御系が加振側となる場合には、他の被振側に対してそれらの重畳波形に対応した制振指令を生成する。また、サーボアンプ202A,202Cでトルクフィードフォワード指令を生成する場合には、コントローラ201がいずれの駆動軸制御系が加振側であるかの情報と加加速度の大きさを併せた制振指令を生成してサーボアンプ202A,202Bに出力する。なお、特に図示しないが、4軸以上の駆動軸制御系を備えた場合でも、同様の制振手法を適用できる。
【0071】
<10.コントローラのハードウェア構成例>
次に、図12を参照しつつ、上記で説明したCPU901が実行するプログラムにより処理を実現するコントローラ1,201のハードウェア構成の一例について説明する。なお、サーボアンプ2A,2B,202A,202B,202Cが同様のハードウェア構成を有してもよい。
【0072】
図12に示すように、コントローラ1,201(サーボアンプ2,202)は、例えば、CPU901と、ROM903と、RAM905と、ASIC又はFPGA等の特定の用途向けに構築された専用集積回路907と、入力装置913と、出力装置915と、記録装置917と、ドライブ919と、接続ポート921と、通信装置923とを有する。これらの構成は、バス909や入出力インターフェース911を介し相互に信号を伝達可能に接続されている。
【0073】
プログラムは、例えば、ROM903やRAM905、記録装置917等に記録しておくことができる。
【0074】
また、プログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種のCD・MOディスク・DVD等の光ディスク、半導体メモリ等のリムーバブルな記録媒体925に、一時的又は永続的(非一時的)に記録しておくこともできる。このような記録媒体925は、いわゆるパッケージソフトウエアとして提供することもできる。この場合、これらの記録媒体925に記録されたプログラムは、ドライブ919により読み出されて、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0075】
また、プログラムは、例えば、ダウンロードサイト、他のコンピュータ、他の記録装置等(図示せず)に記録しておくこともできる。この場合、プログラムは、LANやインターネット等のネットワークNWを介し転送され、通信装置923がこのプログラムを受信する。そして、通信装置923が受信したプログラムは、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0076】
また、プログラムは、例えば、適宜の外部接続機器927に記録しておくこともできる。この場合、プログラムは、適宜の接続ポート921を介し転送され、入出力インターフェース911やバス909等を介し上記記録装置917に記録されてもよい。
【0077】
そして、CPU901が、上記記録装置917に記録されたプログラムに従い各種の処理を実行することにより、上記のコントローラ1,201(またはサーボアンプ2,202)による制御処理が実現される。この際、CPU901は、例えば、上記記録装置917からプログラムを直接読み出して実行してもよく、RAM905に一旦ロードした上で実行してもよい。更にCPU901は、例えば、プログラムを通信装置923やドライブ919、接続ポート921を介し受信する場合、受信したプログラムを記録装置917に記録せずに直接実行してもよい。
【0078】
また、CPU901は、必要に応じて、例えばマウス・キーボード・マイク(図示せず)等の入力装置913から入力する信号や情報に基づいて各種の処理を行ってもよい。
【0079】
そして、CPU901は、上記の処理を実行した結果を、例えば表示装置や音声出力装置等の出力装置915から出力する。さらにCPU901は、必要に応じてこの処理結果を通信装置923や接続ポート921を介し送信してもよく、上記記録装置917や記録媒体925に記録させてもよい。
【0080】
なお、以上の説明において、「垂直」「平行」「平面」等の記載がある場合には、当該記載は厳密な意味ではない。すなわち、それら「垂直」「平行」「平面」とは、設計上、製造上の公差、誤差が許容され、「実質的に垂直」「実質的に平行」「実質的に平面」という意味である。
【0081】
また、以上の説明において、外観上の寸法や大きさ、形状、位置等が「同一」「同じ」「等しい」「異なる」等の記載がある場合は、当該記載は厳密な意味ではない。すなわち、それら「同一」「等しい」「異なる」とは、設計上、製造上の公差、誤差が許容され、「実質的に同一」「実質的に同じ」「実質的に等しい」「実質的に異なる」という意味である。
【0082】
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。
【符号の説明】
【0083】
1 コントローラ(上位制御装置)
2A,2B サーボアンプ(モータ制御装置)
3A,3B リニアモータ(第1のモータ、第2のモータ)
4 駆動機械(可動要素)
31 固定子
32A 可動子(可動要素)
,32B
201 コントローラ(上位制御装置)
202A サーボアンプ(モータ制御装置)
,202B
,202C
203A モータ(第1のモータ、第2のモータ)
,203B
,203C
204 駆動機械(可動要素)
100 機械制御システム
,200
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12