数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down...

26
数理とデザイン 第11回 数理⼯学のツール(3) 数理⼯学専攻 南 裕樹 17. Dec. 2013

Transcript of 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down...

Page 1: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

数理とデザイン第11回 数理⼯学のツール(3)

数理⼯学専攻 南 裕樹

17. Dec. 2013

Page 2: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

前回の続き・・・

Up/DownカウンタD/A

変換器

モータ エンコーダ

振⼦ (ボディ)

⾞輪 (モータにより回転)

マイコン

⾞輪型倒⽴振⼦を安定化せよ

A/D変換器

ジャイロ

Page 3: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計設計の流れ 実験装置の

設計・製作 モデリング

制御系設計

制御系解析

シミュレーション

実機実験

PID 制御,極配置,最適レギュレータ,オブザーバ,

制御,LMI,etc...

数学モデル,パラメータ同定,線形化,etc...

アクチュエータ,センサ,インタフェース etc...

実装(組み込みプログラム, 離散化,

ノイズ除去 etc...)

Page 4: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 極配置,最適レギュレータ

状態フィードバック制御

を で安定化する

が安定(固有値の実部が負)となるように を決める

⽅法1)

⽅法2)

を最⼩化する を求める

Page 5: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 レギュレータ

LQ極配置

0 2 4 6 8 10-1

0

1

2

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

0 2 4 6 8 10-1

0

1

2

3

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

Page 6: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 サーボ系

を⽬標値 に追従させる

拡⼤系を⽤いて設計(極配置,最適レギュレータ)

積分器

Page 7: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 サーボ系

0 2 4 6 8 10-5

0

5

10

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

LQ

0 2 4 6 8 10-5

0

5

10

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

極配置

Page 8: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 LMI を⽤いた多⽬的設計

LMI (Linear Matrix Inequality) ,線形⾏列不等式

⾏列が正定 ⇒ ⾏列不等式

に関して線形 ⇒ 線形⾏列不等式

制御系の解析や設計問題は,LMI で記述できることが多い

例)安定性解析 ⇒

Page 9: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 LMI を⽤いた多⽬的設計

SDP ソルバ :半正定値計画問題を解くアルゴリズム・LMILAB (Matlab LMI control toolbox)・SeDuMi・SDPT3・CSDP・SDPA-M

LMI パーサ :LMIの記述を補助するインターフェース・LMI Control Toolbox (Matlab)・YALMIP・CVX LMITOOL

SciYalmip

LMITOOL

Page 10: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 LMI を⽤いた多⽬的設計

を最⼩化する初期値に依存しない形で定式化可能

を最⼩化する

Page 11: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 LMI を⽤いた多⽬的設計

を最⼩化する仕様1)

仕様2) 極配置

円領域への配置 実部の⼤きさを指定

Page 12: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

-16 -12 -8 -4 0-8

-4

0

4

8

制御系設計制御系設計 サーボ系

0 2 4 6 8 10-5

0

5

10

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

LQLMI

LQ+極領域指定

0 2 4 6 8 10-5

0

5

10

t

thet

a

0 2 4 6 8 10-0.1

0

0.1

0.2

0.3

t

phi

Page 13: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計制御系設計 状態推定

の情報をすべて知っていればOK

⇒ 知らなければ,推定する必要がある

・オブザーバ・カルマンフィルタ 極配置

LQ

から を推定

Page 14: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

制御系設計設計の流れ 実験装置の

設計・製作 モデリング

制御系設計

制御系解析

シミュレーション

実機実験

PID 制御,極配置,最適レギュレータ,オブザーバ,

制御,LMI,etc...

数学モデル,パラメータ同定,線形化,etc...

アクチュエータ,センサ,インタフェース etc...

実装(組み込みプログラム, 離散化,

ノイズ除去 etc...)

Page 15: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

実装ロータリーエンコーダ回転⾓度を計測

通過

遮断

A B

A B

発光部

回転円板

スリット

受光部

パルス数をカウントすれば,回転⾓度がわかる

位相で,回転⽅向がわかる

A相

B相

Page 16: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

実装エンコーダ回転⾓度を計測

⾓度 ⾓速度ローパスフィルタ

Page 17: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

実装ジャイロ

⾓速度を計測ハイパスフィルタ

⾓速度 ⾓度

ドリフト

⾓速度 ⾓度

Page 18: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

実装離散化

ゼロ次ホールド

Tustin 変換

離散化

サンプリング

サンプリング

Ts=0.01 [s]

Ts=0.1 [s]

Page 19: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

参考⽂献システム/制御/情報

2012 VOL.56 NO.4: 初学者のための図解でわかる制御⼯学Ⅰ 特集号

2011 VOL.55 NO.5: 制御系設計・解析における数値計算/数式処理

ソフトウェアの活⽤ 特集号

Page 20: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Scilab の紹介

問1

(1) の固有値と固有ベクトルを求めよ

⾏列 を考える

(2) を対⾓化せよ(3) の⾏列式を計算せよ(4) のランクを計算せよ

問3

のときの

⾏列 に対して,

の値を計算せよ

Page 21: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Scilab の紹介

問4 を部分分数分解せよ

問5 の概形を描け

Page 22: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Scilab の紹介

Up/DownカウンタD/A

変換器

モータ エンコーダ

振⼦ (ボディ)

⾞輪 (モータにより回転)

マイコン

⾞輪型倒⽴振⼦を安定化せよ

A/D変換器

ジャイロ

・解析(安定性,可制御性,可観測性)

・設計(極配置,最適レギュレータ)

Page 23: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Matlab による画像処理・画像の読み込み

R:157G: 55B: 70

R:176G: 66B: 76

R:185G: 65B: 70

R:199G: 77B: 83

R:141G: 36B: 60

R:183G: 68B: 74

R:188G: 72B: 78

R:200G: 76B: 77

R:138G: 35B: 60

R:180G: 65B: 72

R:192G: 72B: 77

R:196G: 77B: 82

R:156G: 41B: 57

R:173G: 61B: 74

R:181G: 70B: 78

R:187G: 74B: 80

R:164G: 52B: 67

R:175G: 65B: 68

R:184G: 57B: 62

R:182G: 61B: 67

R:174G: 59B: 68

R:175G: 59B: 73

R:168G: 69B: 82

R:176G: 67B: 74

・ヒストグラムの平坦化

・2値化

100 200 300 400 500

100

200

300

400

500100 200 300 400 500

100

200

300

400

500

100 200 300 400 500

100

200

300

400

500100 200 300 400 500

100

200

300

400

500

100 200 300 400 500

100

200

300

400

5000

500

1000

1500

2000

2500

3000

0 50 100 150 200 250

100 200 300 400 500

100

200

300

400

5000

1000

2000

3000

4000

5000

0 50 100 150 200 250

しきい値:64

しきい値:196しきい値:128

Page 24: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Matlab による画像処理・アフィン変換

・ダウン/アップサンプル

50 100 150 200 250 300 350 400 450 500

50

100

150

200

250

300

350

400

450

500

10 20 30

5

10

15

20

25

30

100 200 300 400 500

100

200

300

400

500

100 200 300 400 500

100

200

300

400

500100 200 300 400 500

100

200

300

400

500

↓16

拡⼤縮⼩ 平⾏移動 回転

↑16(nearest)

↑16(bicubic)↑16(bilinear)

Page 25: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Matlab による画像処理・空間フィルタリング

100 200 300 400 500

100

200

300

400

500100 200 300 400 500

100

200

300

400

500

100 200 300 400 500

100

200

300

400

500100 200 300 400 500

100

200

300

400

500

Average filter (Lowpass)

Laplacian filter (Highpass)Motion blur

Page 26: 数理とデザインy373.sakura.ne.jp/data/lecture/lecture11.pdf前回の続き・・・ Up/Down カウンタ D/A 変換器 モータ エンコーダ 振 (ボディ) 輪(モータ

Matlab による画像処理・周波数フィルタリング

0 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

500

0 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

500

0 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

500

0 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

500

0 200 400

0

100

200

300

400

5000 200 400

0

100

200

300

400

500

FFT

フィルタ

逆FFT

Lowpass filter

Freq. ⾼

Freq. ⾼

Motion blur

Highpass filter