52
1 © 2015 The MathWorks, Inc. 実験データを活用したモデリング手法 MathWorks Japan アプリケーションエンジニアリング部 制御

実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

1© 2015 The MathWorks, Inc.

実験データを活用したモデリング手法

MathWorks Japan

アプリケーションエンジニアリング部 制御

張 莉

Page 2: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

2

仮想環境

制御装置

実環境

制御対象

プラントモデル(制御対象モデル)

制御モデル

はじめに:モデルベースデザイン

構想・設計・試作・検証といった一連の開発プロセスにモデルを活用した開発手法

Page 4: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

4

データドリブンモデリング第一原理モデリング 統一モデリング環境

MATLAB®/Simulink®は、統一モデリング環境を提供

ニューラルネットワーク

物理モデリング

システム同定

パラメータチューニング

プログラミング

ブロック線図

数式処理

統計的手法(MATLAB)

(Simulink)

(Symbolic MathToolbox)

(Simscapeなど)

(Neural NetworkToolbox)

(Model BasedCalibration Toolbox)

(Simulink Design Optimization)

(System Identification

Toolbox)

Page 5: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

5

モデル作成によくある課題

モデリング対象の構造が未知– 外部調達品、black box system

モデリング対象は物理法則で表現することが困難– 膨大なシステム、専門知識不足

モデリング対象の構造が既知だが未知パラメータがある– 摩擦、乱流、無駄時間

細かいモデルを作成する時間がない

精度を保ちつつ高速度なプラントモデルが欲しい

etc..

Page 6: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

6

実験データベースのモデリング手法とは?

実験データを用いて、プラントの数式モデルやパラメータを推定する方法

素早くモデルを作成できる

細かい専門知識が不要

精度を保ちつつ、高速度なモデルができる

Page 7: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

7

アジェンタ

システム同定によるBlack Boxシステムのモデリング

パラメータ推定によるモデル精度向上

制御設計との連携Optimizer

Model

Page 8: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

8

入力信号: 印加電圧

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

y1

Input and output signals

0 1 2 3 4 5 6 7 8-0.5

0

0.5

1

1.5

2

Time

u1

出力信号: 回転速度

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

y1

Input and output signals

0 1 2 3 4 5 6 7 8-0.5

0

0.5

1

1.5

2

Time

u1

システム同定とは?

システム数式モデル

対象の入出力データから、ある目的のもとで、対象と同一であることを証明できるような何らかの数学モデルを作成すること

※ 線形システム同定理論はLennart Ljung 博士によりほぼ体系づけられたLennart Ljung : System identification – Theory for the Users – (1999)

Page 9: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

9

目的:制御設計、異常診断、信号処理、画像解析、etc.

同一(Identification):・プラントとの完全一致は不可能・制御系を構成する上で重要な特性が表現できていること

数学モデル:・伝達関数モデル・状態空間モデル・多項式モデル・非線形モデルetc.

システム同定とは?

対象の入出力データから、ある目的のもとで、対象と同一であることを証明できるような何らかの数学モデルを作成すること

Page 10: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

10

MATLAB/Simulinkにおけるシステム同定:System Identification Toolbox™

※ このツールボックスの主な設計は、システム同定の分野で世界的な権威である Lennart Ljung 博士によるものです。

Page 11: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

11

システム同定の基本的な流れ

入出力データの収集、前処理

システム同定

モデル妥当性の検証

同定結果を出力

Page 12: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

12

1.入出力データをimport、前処理 2.システム同定

4.同定結果を出力

システム同定の基本的な流れ

3.モデル妥当性の検証

Page 13: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

13

デモ①:電気モーターのシステム同定

入力信号: 印加電圧

出力信号: 回転速度

実機数式モデル

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

y1

Input and output signals

0 1 2 3 4 5 6 7 8-0.5

0

0.5

1

1.5

2

Time

u1

0 1 2 3 4 5 6 7 80

500

1000

1500

2000

2500

3000

y1

Input and output signals

0 1 2 3 4 5 6 7 8-0.5

0

0.5

1

1.5

2

Time

u1

Page 14: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

14

Step 1 :入出力データの収集、前処理

入力信号(周波数特性・振幅特性)を選定

– 対象のすべてのモードを励起したいため、ほとんどすべての周波数成分を持っている信号は望ましい

サンプリング周期を選定

– ステップ応答から決定: 同定対象の立ち上がり時間の間に5~8サンプル点が入るぐらいの間隔を

サンプリング周期にする

– 周波数応答から決定: 同定対象のバンド幅の10倍程度

Tip: 「advice」関数の活用・信号の励起レベルとモデル階数への影響・オフセットと線形トレンドの除去に意味があるかどうか・データの中に出力フィードバックの兆候はあるかどうか・線形ARXモデルより非線形ARXモデルを使用した方がいいかどうか

Page 15: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

15

選択可能な前処理:・チャネル選択・実験の選択・実験のマージ・データ範囲選択・平均値の除去・トレンドの除去・フィルター・リサンプル・データの変換・クイックスタート

前処理:同定に必要な情報を取り出し、必要ないものを除去

Step 1 :入出力データの収集、前処理

Page 16: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

16

Step 2 : システム同定

1.モデルの構造を選択

一番難しい問題。

モデル構造によって、モデリングの結果が大きく変わる。

試行錯誤 が必要な場合が多い。

2.その構造の最適なモデルを求める

⇒ これこそ、System Identification Toolboxの役目!

Page 17: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

17

Step 2 : システム同定

同定したいモデルのタイプを選択・伝達関数モデル・状態空間モデル・プロセスモデル・多項式モデル・非線形モデル・スペクトルモデル・相関モデル・既存モデル改良・クイックスタート

同定用データ

Page 18: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

18

Tip1. 無駄時間を加味して同定

無駄時間入力が遅れて伝わる時間

角度

時間

制御入力

無駄時間

←無駄時間を加味←無駄時間なし

0.1秒の無駄時間を加味して同定

Page 19: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

19

Tip2. 状態空間モデルの次数を自動選択Order selectionを使用し、同時に多くの次数をテストできます

最適なモデル次数

X軸:モデルの次数Y軸:特異値の対数

1次から10次までの状態空間をテストする

Page 20: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

20

Step 3: モデル妥当性の検証

検証用データ

同定出力(青)と検証データ(黒)のFit 率 を表示

: 検証データ: y の平均値: 同定出力

同定データと別のデータを利用して、モデルを評価

Page 21: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

21

推定と評価の重要性

どんなデータでも、パラメータを増やせば、モデルの誤差がゼロに収束する。

同じシステムの、他のデータを利用して、モデルを評価する必要がある。

誤差

モデルのパラメータ数

学習データ

評価データデモ②: 新しいデータを利用して、電気モーターのモデルを評価する

Page 22: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

22

Step4.同定結果を出力

同定結果をWorkspaceやLTI Viewerに出力し、MATLAB/Simulink上でシステム解析/制御設計などに活用

Page 23: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

23

Tip. 同定結果をWorkspace出力した後、Simulink上で活用する例 ①

System Identification Toolboxのブロックを利用

Workspace上の同定モデルをSimulink上に読込み、シミュレーションを実行可能

Page 24: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

24

Tip. 同定結果をWorkspace出力した後、Simulink上で活用する例 ②

Simulinkの基本ブロックを利用

Simulink上で状態空間モデルを表現

状態空間以外、伝達関数や、ゼロ-極モデルも表現可能

状態空間の係数をモデルに入力

Page 25: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

25

応用例

産業用ロボット アームのモデル化 (標準サンプル)

車両運動システムのモデル化 (標準サンプル)

2 タンク システムのモデル化 (標準サンプル)

Page 26: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

26

アジェンタ

システム同定によるBlack Boxシステムのモデリング

パラメータ推定によるモデル精度向上

制御設計との連携Optimizer

Model

Page 27: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

27

Simulink Design OptimizationTM

実験データを用いた制御対象パラメータ推定

期待出力値による制御パラメータ調節

System Identification Toolbox 入出力値から線形/非線形

動的モデルを同定 同定のための前処理/後処理

グレーボックス・モデル

数式・パラメータが一部不明

ダンパ要素(c)が不明

ブラックボックス・モデル

数式・パラメータが不明

何も分からない

Page 28: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

28

スロットルシステムのモデリング図

バタフライバルブイナーシャ:J

トルク:T(DCモータ)

減衰係数:c

バネ定数:k剛性:Kh

角度

例題:スロットルシステムのパラメータ推定

スロットルの概略構成図

DCモータ バタフライバルブ

ポジションセンサー

モータの応答遅延

バネ定数

バルブ慣性

減衰係数

Page 29: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

29

プラントの入出力実験データ

ファイルIO

0 0.1 0.2 0.3 0.4 0.510

20

30

40

50

60

70

80

90

100

Time

Am

pli

tud

e

最適化によるパラメータ推定

結果検証データ前処理

• トレンド除去• フィルタリング• 異常値の間引き等

• 実機データとシミュレーションの比較

• 残差プロット

最適化ソルバ―

Optimization ToolboxTM(必須)

Global OptimizationToolboxTM (推奨)

Simulinkモデル

統合化されたGUISimulink Design Optimization

プラントモデルのパラメータ推定Simulink Design Optimization

※ Parallel Computing ToolboxTMにより計算を高速化することも可能

Page 30: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

30

実験データの導入と前処理

Excel, CSV, ASCII ファイルから直接導入可能

前処理

オッフセットの除去

フィルターでノイズ除去

データのリサンプリング

etc.

Page 31: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

31

パラメータ推定の設定と実行

モデルの異なる部分の複数パラメータを推定可能

推定結果の検証

Parallel Computing Toolboxと併用で高速化可能

Page 32: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

32

パラメータ推定 使用可能な最適化手法

メソッド アルゴリズム 使用関数 使用Toolbox

非線形最小二乗(デフォルト)

• 信頼領域法(デフォルト)• レーベンバーグ・マルカート法

lsqnonlin Optimization Toolbox

勾配降下 • 有効制約法(デフォルト)• 内点法• 信頼領域法

fmincon Optimization Toolbox

パターン探索 探索法• なし• Positive Basis Np1• Positive Basis 2N• 遺伝的アルゴリズム• ラテン超方格• Nelder-Mead法

patternsearch Global Optimization Toolbox

シンプレックス探索 fminsearch Global Optimization Toolbox

Page 33: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

33

応用例

バッテリーのパラメータ推定 4:48 (ビデオ)

油圧システムのパラメータ推定 3:22 (ビデオ)

倒立振子のパラメータ推定 (標準サンプル)

Em(SOC,T)

C1(SOC,T)

R0(SOC,T)R1(SOC,T)

V

I

0 0.5 1 1.5 2 2.5 33.6

3.7

3.8

3.9

4

4.1

4.2

Time (hours)

Vo

lta

ge

電圧

面積A 面積B

面積V

未知パラメータ

Page 34: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

34

アジェンタ

システム同定によるBlack Boxシステムのモデリング

パラメータ推定によるモデル精度向上

制御設計との連携Optimizer

Model

Page 35: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

35

アクチュエータ

センサー

物理システム

制御対象

制御器

モデルを用いた制御システム設計

+-

フローチャート状態遷移図

数式

既存Cコード

ECUC/HDL

Page 36: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

36

制御設計との連携

目標値 制御量

C+-

x_ref xP

Simulink Design Optimization

最適化による制御パラメータ自動調整

1

System Identification Toolbox

システム同定とPID自動調整の併用

2

Simulink Control

DesignTM

オンライン推定と適応制御

3

System Identification Toolbox

Model Predictive Control ToolboxTM

Optimizer

Model

Page 37: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

37

設計仕様

最適化による制御パラメータ自動調整

最適化ソルバ―

Optimization Toolbox (必須)

Global OptimizationToolbox (推奨)

統合化されたGUI (sdotool)Simulink Design Optimization

• 応答上下限値• ステップ応答特性• トラック参照信号

最適化の実行(応答最適化)

Simulinkモデル

・設計変数・最適化オプション

設計仕様定義ブロック

※ Parallel Computing Toolboxにより計算を高速化することも可能

1

Page 38: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

38

調整したい制御パラメータを指定3

プラントのバラつきを指定2

応答波形に制約条件を付加1

例題:モータ応答の最適化

速度

電流

Page 39: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

39

例題:モータ応答の最適化

モーター電流 モーター速度

速度制御器(PI制御器) 比例ゲイン Kp

積分ゲイン Ki

Page 40: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

40

様々な制約条件による応答の最適化

時間応答 任意境界線 参照波形追従

Page 41: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

41

応用例

飛行制御システムを最適化する 4:53 (ビデオ)

最適サスペンションシステム性能 6:41 (ビデオ)

風力タービンのブレードピッチ制御システムの最適化 4:32 (ビデオ)

Page 42: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

42

システム同定とPID自動調整の併用

+-

目標値

Yref

操作量

U

制御量

Y

IN OUT

× ?制御器 制御対象

Page 43: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

43

例題:不連続要素を含むシステムの補償器設計

PWM要素(線形化できない)

補償器

Page 44: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

44

ソリューション:システム同定と併用した制御パラメータの自動調整

1 シミュレーションデータを利用したシステム同定で、プラントを線形化

プラントの同定結果

Page 45: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

45

ソリューション:システム同定と併用した制御パラメータの自動調整

2 PID調整器を利用し、制御パラメータを自動調整

不連続要素を含むシステムの補償器設計にも、自動調整が適用可能に!

Page 46: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

46

オンライン推定とは? オフライン推定: データを収集し、後で処理

オンライン推定: データを取得しながら処理を行う

オンライン推定と適応制御3

適応制御とは? 時々刻々と変化する制御対象の特性に合わせて、

制御装置の制御定数を変化させ制御を行う方式

オンライン推定

プラント適応制御

外乱に影響を受けやすいシステムや、不確定性を持っているシステムに対して、高い制御性能を発揮できる

Page 47: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

47

オンライン推定機能

プラントの回帰モデルを内蔵 線形回帰モデル(ARX)、 疑似線形回帰モデル(ARMAX)、の係数を時々刻々と推定する

プラントの回帰モデルを外部に自作最小二乗法を用いて、 線形回帰モデルの係数を時々刻々と推定する

線形回帰モデル

System Identification ToolboxはR2014aから、オンライン推定用のブロックが追加

Page 48: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

48

適応型モデル予測制御(Adaptive MPC)機能

制御器の状態を更新するため、ビルトインの状態観測器 (LTV カルマンフィルタ)を使用

ワークフローは簡単– 初期操作点で、MPC制御器を設計

– 適応型MPCブロックに入れる

– 実行時、モデルのinポートを経由して

プラントモデルを更新

Model Predicative Control ToolboxはR2014bから、適応型MPCブロックが追加

Page 49: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

49

例題:連続攪拌タンク反応器(CSTR)の制御設計

目的:反応器温度(Y2)が目標に対していい追従性を保つこと

供給温度(測定された外乱)

供給濃度(定数)

反応物Aの濃度反応器温度

冷却水温度(操作変数)

オンライン推定

適応型MPC

プラント

Page 50: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

50

従来型 MPC

例題:連続攪拌タンク反応器(CSTR)の制御設計

適応型 MPC

※もっと詳しく知りたい方へ:オンライン推定と適応制御のWebセミナー

― 反応器温度目標値― 反応器温度― 供給温度(外乱)― 冷却水温度(操作変数)

Page 51: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

51

まとめ

物理法則で表現することが困難なシステム、または未知パラメータが存在するシステムに対して、実験データを活用したモデリング手法は有効な手段です。

素早くモデルを作成できる

細かい専門知識が不要

精度を保ちつつ、高速度なモデルができる

Page 52: 実験データを活用したモデリング手法...(Model Based Calibration Toolbox) (Simulink Design Optimization) (System Identification Toolbox) 5 モデル作成によくある課題

52

© 2015 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of

The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional

trademarks. Other product or brand names may be trademarks or registered

trademarks of their respective holders.

Accelerating the pace of engineering and science