Matlab 1 Complete

18
กกกกกกกกกกก 1 กกกกกกกกกกกกกกกกกกกกกกกกกกกกกกกกก MATLAB/SIMULINK กกกกกกกกกกกกก กกกกกกกก กกกกกกกกกกกกก 53109010250 กกกกกกกก กกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกก Control System กกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกก กกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกก กกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกก กกกก Control System กกกกกกกกกกกกกกกก MATLAB,SIMULINK, กกกกก กกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกก MATLAB/SIMULINK กกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกก กกก กกกกกกกกก กกกกกกกกกกกกก กกกกกกกกกกกกกก Of a trial, the basic content of the course by a control system that is managed by the Algebra. The equation used in the analysis and design of control systems. In the experiment, which will be discussed in some of the contents of the control system. These include the. MATLAB, SIMULINK, Analysis First’s order and Second’s order with MATLAB/SIMULINK This course these are some introductory material, but can be applied in the analysis and design of control systems in the future. กกกกก กกกกกกกกกกก MATLAB/SIMULINK กกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกก MATLAB กกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกก MATLAB/SIMULINK กกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกก กกกกกกกกกกกกกกกกกกกกกกกกกก กกกก Linear control theory Robust Model control synthesis กกกกกกกกกกกกกกกกก กกกกกกกกกกกกก

description

HW Aj.Khichchai

Transcript of Matlab 1 Complete

Page 1: Matlab 1 Complete

การทดลองท 1 การว คราะห�ระบบควบค�มย�อนกล�บด�วย MATLAB/SIMULINK

นายก ต ศ�กด � พ�ชนะก�ล รห�สประจำ"าต�ว 53109010250

บทค�ดย#อ

จำากเน%&อหาการทดลองซ(งเป)นเน%&อหาพ%&นฐานของว ชา Control System โดยเป)นเน%&อหาทมการจำ�ดการสมการทางพชคณ ต โดยสมการใช�หล�กการในการว เคราะห�และออกแบบระบบควบค�ม ซ(งโดยในการทดลองจำะกล#าวในเน%&อหาบางส#วนของว ชา Control System ซ(งประกอบไปด�วย MATLAB,SIMULINK, การว เคาระห�ระบบอ�นด�บหน(งและอ�นด�บสองด�วย MATLAB/SIMULINK ซ(งเน%&อหาว ชาเหล#าน&เป)นแค#เน%&อหาเบ%&องต�นในบางส#วนแต#สามารถประย�กต� ค ด ว เคราะห� และออกแบบระบบควบค�มได�ต#อไป

Of a trial, the basic content of the course by a control system that is managed by the Algebra. The equation used in the analysis and design of control systems. In the experiment, which will be discussed in some of the contents of the control system. These include the. MATLAB, SIMULINK, Analysis First’s order and Second’s order with MATLAB/SIMULINK This course these are some introductory material, but can be applied in the analysis and design of control systems in the future.

บทน"า

เพ%อเข�าใจำ MATLAB/SIMULINK

เบ%&องต�น และสามารถประย�กต�ใช�เพ%อว เคราะห�ระบบควบค�มป2อนกล�บได�และเพ%อเป)นพ%&นฐานในการออกแบบระบบควบค�มต#อไป

ทฤษฎทเกยวข�อง

MATLAB ค%อโปรแกรมการค"านวณทช#วยว ศวกรระบบควบค�มในการว เคาระห�และออกแบบควบค�มรวมถ(งการพ�ฒนาในงานด�านว ศวกรรมแขนงอ%นๆ MATLAB/SIMULINK ย�งสามารถประย�กต�ใช�แก�ป8ญหาในการว เคราะห�และออกแบบส"าหร�บทฤษฎการควบค�มอกหลายๆด�านเช#น Linear control theory Robust

Model control synthesis ด�งน�&นในการทดลองน&จำะประย�กต� MATLAB/SIMULINK

ส"าหร�บว ศวกรควบค�ม

การทดลอง

1.MATLAB

1.1 พชคณ ตเช งเส�น การค"านวณ–

เมตทร กซ�และเวคเตอร�

Page 2: Matlab 1 Complete

ร�ป 1 แสดงผลการพ มพ�ค"าส�งลงใน script file

ร�ป 2 แสดงผลการทดลองเม%อใช�ค"าส�ง plot

1.2 ฟ8งก�ช�นถ#ายโอน (Transfer

Function)

การทดลองน&เป)นการสร�างฟ8งก�ช�นถ#ายโอนค%ออ�ตราส#วนของการแปลงลาปลาซของฟ8งก�ช�นเวลาเอาท�พ�ตต#ออ นพ�ต หร%อเป)นการแทนพฤต กรรมพลศาสตร�ของระบบจำากสมการอน�พ�นธ�

d2 yd t2

+1.5dydt

+5y = 2dudt

+4u

ร�ป 3 แสดงผลการพ มพ�ค"าส�งลงใน script file

ร�ป 4 แสดงผลล�พธ�เม%อใช�ค"าส�ง lsim

ร�ป 5 แสดงผลการพ มพ�ค"าส�งลงใน script file

Page 3: Matlab 1 Complete

ร�ป 6 แสดงผลล�พธ�เม%อใช�ค"าส�ง step

1.3 ฟ8งก�ช�น “conv”,”series” และ “feedback”

ร�ปท 7 แสดงถ(งการใช�ค"าส�ง conv

การใช�ฟ8งก�ช�น “series”

ร�ปท 8 แสดงถ(งการใช�ค"าส�ง series

การใช�ฟ8งก�ช�น “feedback”

ร�ปท 9 แสดงถ(งการใช�ค"าส�ง feedback

SIMULINK

ร�ป 10 แสดงถ(งการ simulink ของ dxdt

= 3sin(2t)

โดยการก"าหนด sinwave ด�งน&

Amplitude = 3

Frequency = 2

และก"าหนดค#าพาราม เตอร� ท Integretor

Page 4: Matlab 1 Complete

X(0) = -1

ร�ป 11 แสดงถ(งผลล�พธ�ของระบบ dxdt

=

3sin(2t)

การสร�างแบบจำ"าลองอ�นด�บสองจำากระบบ mass,spring,damper

การทดลองข�&นตอนน&เป)นการทดลองโดยสร�างแบบจำ"าลองของระบบ mass – spring – damper

ด�วย SIMULINK ซ(งเป)นแบบจำ"าลองของสมการอนพ�นธ�อ�นด�บสองซ(งมพาราม เตอร�ต#างๆด�งน&

--Initial condition: x(0) = 0

and dxdt

(0) = 0 dx/dt(0) = 0

--the input f(t) is a step function with magnitude 3 at t=0

--mass, m = 0.25

--damping coefficient, c = 0.5

--spring constant, k=1

md2 xd t2

+cdxdt

+ kx = f(t)

ร�ปท 12 แสดงถ(งการ simulink ระบบ

เพ ม step block และก"าหนดค#าพาราม เตอร�

-Steptime =0

-Initial value = 0

-Final value = 3

เม%อก"าหนดค#าพาราม เตอร�ต#างๆเราสามารถด�เอาท�พ�ตของการท"า simulation ได�จำาก Scope

ร�ปท 13 กราฟผลล�พธ�ของระบบ m d2 xd t2

+c

dxdt

+ kx = f(t)

จำากกราฟ

ค#าส�งส�ดของ X(t) = 3.5

ค#าส�ดท�ายของ X(t) = 3

Page 5: Matlab 1 Complete

การสร�างแบบจำ"าลองด�วยตนเอง

1) การพ จำารณาพฤต กรรมของระบบ mass

– spring –damper

1.1 ) การเปลยนแปลงของมวลมผลอย#างไรต#อผลตอบสนองของระบบ?

จำงหาค#า setting time และ overshoot ของระบบเม%อเปลยนแปลงพาราม เตอร�ตามตาราง

Mass Overshoot

5% setting Time

0.2*m 3 1.260.5*m 3.13 1.05061.0*m 3.5 1.312.0*m 3.9 5.555.9*m 4.5 9.65

ตารางท 1 แสดงค#าเม%อท"าการเปลยน mass

Damping Coefficie

nt

Overshoot

5% Setting Time

0.2*m 5.15 13.0780.5*m 4.32 5.371.0*m 3.45 2.652.0*m 3 2.40255.0*m 3 7.288

ตารางท 2 แสดงค#าเม%อท"าการเปลยน Damping

Spring constant

Overshoot

5% Setting Time

0.2*m 15 6.4560.5*m 6.25 2.121.0*m 3.45 2.52.0*m 1.95 2.7885.0*m 0.89 2.945

ตารางท 3 แสดงค#าเม%อท"าการเปลยน Spring constant

- แบบจำ"าลองของวงจำรไฟฟ2าพ%&นฐาน - จำงใช� simulation diagram ด�ง

กล#าวสร�าง SIMULINK model โดยก"าหนดR = 3 ohm ,L = 1 H, C = 0.5 F

และ E(t) เป)นส�ญญาณพ�ลส�จำากน�&นเพ ม Scope blocks เพ%อแสดงส�ญญาณ i(t) และ e(t) พร�อม label ช%อของบล=อกส�ญญาณจำนครบ

ร�ป 14 แสดงการ SIMULINK ของวงจำร RLC

Page 6: Matlab 1 Complete

ร�ป 15 กราฟ i(t) ของวงจำร RLC

ร�ป 16 กราฟ e(t) ของวงจำร RLC

0 1 2 3 4 5 6 7 8 9 10-0.04

-0.02

0

0.02

0.04

0.06

0.08

0.1

Time (seconds)

data

Time Series Plot:

ร�ป 17 กราฟ I เพ ม R = 20

0 1 2 3 4 5 6 7 8 9 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (seconds)

data

Time Series Plot:

ร�ป 18 กราฟ v เพ ม R = 20

0 1 2 3 4 5 6 7 8 9 10-0.1

-0.05

0

0.05

0.1

0.15

0.2

0.25

Time (seconds)

data

Time Series Plot:

ร�ป 19 กราฟ I เพ ม L=30

0 1 2 3 4 5 6 7 8 9 100

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Time (seconds)

data

Time Series Plot:

ร�ป 20 กราฟ v เพ ม L=30

Page 7: Matlab 1 Complete

0 1 2 3 4 5 6 7 8 9 10-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Time (seconds)

data

Time Series Plot:

ร�ป 21 กราฟ I เพ ม C=50

0 1 2 3 4 5 6 7 8 9 100

0.01

0.02

0.03

0.04

0.05

0.06

Time (seconds)

data

Time Series Plot:

ร�ป 22 กราฟ v เพ ม C=50

การว เคราะห�ระบบอ�นด�บหน(งและอ�นด�บสองด�วย MATLAB/SIMULINK

พ จำารณาสมการอน�พ�นธ�ต#อไปน&

1.5 y + y = 3u

เม%อ y(0) = -2 และ u(t) = unit

step input จำงสร�าง Simulink model

ร�ป 23 แสดงการ simulink ของ 1.5 y + y = 3u

0 10 20 30 40 50 60-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

3

ร�ป 24 กราฟแสดงผลล�พธ�ของ 1.5 y + y = 3u

จำาก Simulink model ท"าการเปลยนพาราม เตอร�ของบล=อกต#างๆด�งน& แทน gain ด�วย 1/tan เปลยน IC ของ Integrater ด�วยต�วแปร y0 และเปลยนขนาดของ step input เป)น A

ร�ป 25 แสดงการเปลยนค#าต�วแปรของ 1.5

y + y = 3u

Page 8: Matlab 1 Complete

ร�ป 26 แสดงผลล�พธ�ใน Scope เม%อท"าการเปลยนค#าต�วแปรของระบบ 1.5 y + y =

3u

ท"าการเพ ม argument ใหม#ทค"าส�ง sim

โดยในการทดลองน&จำะท"าการ simulation

ในช#วงเวลา 0≤ t ≤ 20

จำากน�&นเพ%อความสะดวกในการพล>อตกราฟทดกว#า ท"าการลบ scope แล�วใส# workspace แทน แล�วต�&งช%อด�งร�ป

ร�ป 27 แสดงเม%อต�องการพล=อตกราฟใน MATLAB

ร�ป 28 กราฟแสดงผลล�พธ�เม%อใช�ค"าส�ง plot ใน m-file

จำากน�&นเพ มค"าส�งในการก"าหนด title และ label ของแกนด�งน&

ร�ป 29 แสดงการใช�ค"าส�ง title และ label

ใน m-file

Page 9: Matlab 1 Complete

ร�ป 30 กราฟแสดงผลล�พธ�เม%อใช�ค"าส�ง title และ label

การพล=อตกราฟหลายๆกราฟฝนร�ปเดยวและหลายๆกราฟในหน�าเดยว

ร�ป 31 ค"าส�งการพล=อตกราฟหลายๆกราฟฝนร�ปเดยวและหลายๆกราฟในหน�าเดยว

ร�ป 32 การพล=อตกราฟหลายๆกราฟฝนร�ปเดยวและหลายๆกราฟในหน�าเดยว

เราจำะใช�ฟ8งก�ช�น subplot ในการพล=อตหลายๆกราฟในหน�าเดยวก�นโดยการเพ มค"าส�งใน m-file ด�งน&

% M-file to run Simulink fileclear;y0 = -3;tau = 2;A = 4;sim('first_order',[0 20]);t1=time;y1=yout;y0 = 6;sim('first_order',[0 20]);t2=time;y2=yout;subplot(221)plot(t1,y1,'r')title('Step response of first-order system with IC = -3')xlabel('Time (s)')ylabel('Output variable y(t) (no units)')axis([0 20 -3 6])subplot(223)plot(t2,y2,'b')title('Step response of first-order system with IC = 6')xlabel('Time (s)')ylabel('Output variable y(t) (no units)')

Page 10: Matlab 1 Complete

axis([0 20 -3 6])

ร�ป 33 กราฟแสดงผลล�พธ�ของค"าส�งเม%อต�องการพล=อตกราฟหลายๆกราฟในหน�าเดยว

สร�ปผลการทดลอง ::

MATLAB เป)นโปรแกรมคอมพ วเตอร�สมรรถนะส�งทให�ความสะดวกในการเรยนการสอนสายว ศวกรรมศาสตร�และว ทยาศาสตร� รวมท�&งการท"าว จำ�ยในป8จำจำ�บ�น ท�&งน& MATLAB เป)นโปรแกรมทใช�งานง#าย ต�&งแต#การค"านวณด�วยระเบยบว ธเช งต�วเลข การจำ�ดการสมการทางพชคณ ตด�วยการใช�ส�ญล�กษณ� และการพล=อตผลล�พธ�ทช#วยให�เข�าใจำปรากฎการณ�ทางคณ ตศาสตร�

การท"างานของ MATLAB จำะสามารถท"างานได�ท�&งในล�กษณะของการต ดต#อโดยตรง (Interactive) ค%อการเขยนค"าส�งเข�าไปทละค"าส�ง เพ%อให� MATLAB ประมวลผลไปเร%อยๆ หร%อสามารถทจำะรวบรวมช�ดค"าส�งเราน�&นเป)นโปรแกรมก=ได� ข�อส"าค�ญอย#างหน(งของ MATLAB ก=ค%อข�อม�ลท�กต�วจำะถ�กเก=บในล�กษณะของ array ค%อในแต#ละต�วแปรจำะได�ร�บการแบ#งเป)นส#วนย#อยเล=กๆข(&น (หร%อจำะได�ร�บการแบ#งเป)น element น�นเอง)

ซ(งการใช�ต�วแปรเป)น array ใน MATLAB น&เราไม#จำ"าเป)นทจำะต�องจำอง dimension

เหม%อนก�บการเขยนโปรแกรมในภาษาข�&นต"าต�วไป ซ(งท"าให�เราสามารถทจำะแก�ป8ญหาของต�วแปรทอย�#ในล�กษณะของ matrix และ vector ได�โดยง#าย MATLAB/SIMULINK

ย�งสามารถประย�กต�ใช�แก�ป8ญหาในการว เคราะห�และออกแบบส"าหร�บทฤษฏการควบค�มอกหลายๆด�าน โดยการทดลองคร�&งน&จำะประกอบไปด�วย 3 ส#วนโดยส#วนแรกจำะเป)นการทดลองเกยวก�บ

1). MATLAB

1.1) การใช�ค"าส�งพชคณ ตเช งเส�นในการค"านวณเมตร กซ�และเวกเตอร� โดยใช�ค"าส�ง a=[1 2 3] ถ�าต�องการสร�าง row vector

และค"าส�ง b=[4;5;6] ถ�าต�องการสร�าง colume vector

1.2) การพล=อต เป)นค"าส�งในการพล=อตกราฟโดยใช�ร�ปแบบค"าส�ง plot(a,b,’-

g’) ซ(งจำะเป)นการพล=อตเวคเตอร� b (แกน y) เทยบก�บ a (แกน x) ด�วยเส�นท(บสเขยว แต#ถ�าต�องการ เปลยชน ดของเส�นในการพล=อตให�เป)นชน ดอ%นเช#นเส�นประ สามารถใช�ค"าส�ง plot(a,b,’--‘) นอกจำากน&ย�งสามารถ

Page 11: Matlab 1 Complete

เปลยนเส�นกราฟเป)นสอ%นๆ ได�โดยส�งใช�ค"าส�ง plot(a,b,’r’) ซ(งจำะได�กราฟเป)นสแดง

ส ต�วอ�กษรก"าหนดสแดง (red) r

เขยว (green) g

น"&าเง น (blue) b

เขยวน"&าเง น (cyan)

c

ม#วงแดงเข�ม (magenta)

m

เหล%อง (yellow) y

ด"า (black) k

ขาว (white) w

ตารางแสดงต�วอ�กษรก"าหนดส

ชน ดของเส�น ส�ญล�กษณ�แทนเส�นเส�นต#อเน%อง -

เส�นประ --

เส�นจำ�ดไข#ปลา :

เส�นประสล�บจำ�ด -.

ตารางแสดงส�ญล�กษณ�แทนเส�น

1.3) สคร ปส� (Scrips) การท"าสคร ปส�คล�ายๆก�บว#าเราได�สร�างโปรแกรมย#อยแล�วต�&งช%อให�ก�บช�ดค"าส�งน�&น จำากน�&นถ�าเราต�องการทจำะเรยกใช�ช�ดค"าส�งน�&น เราก=ไม#ต�องเสยเวลาในการพ มพ�ช�ดค"าส�งใหม# แค#พ มพ�ช%อช�ดค"าส�งน�&นลงใน command window ของ MATLAB ก=จำะสามารถร� �ผลล�พธ�ทเราต�องการทราบได�เลย ท�&งน&เป)นการช#วยลดการส�บสนในการใช�ช�ดค"าส�งอกด�วย

1.4) ฟ8งก�ถ#ายโอน (Transfer

Function) ฟ8งก�ช�นถ#ายโอนค%ออ�ตราส#วน

ของการแปลงลาปลาสของฟ8งก�ช�นเวลาของเอาท�พ�ตต#ออ นพ�ต หร%อเป)นการแทนพฤต กรรมพลศาสตร�ของระบบจำากสมการอน�พ�นธ� พ จำารณาสมการอน�พ�นธ�ต#อไปน&

1.5) ฟ8งก�ช�น “lsim”

1.6) ฟ8งก�ช�น “step”

1.7) ฟ8งก�ช�น “conv”,”series”

และ“feedback”

2). SIMULINK

SIMULINK ค%อซอฟแวร�เพ%อใช�ในการจำ"าลอง การท"า simulation และการว เคราะห�ระบบพลศาสตร�ซ(งรองร�บแบบจำ"าลองท�&งแบบเช งเส�นและไม#เช งเส�นในกรณเวลาต#อเน%องและเวลาไม#ต#อเน%อง หร%อรวมท�&งสองกรณ โดยเช%อมต#อแบบจำ"าลองในร�ปของ Block diagram ด�วยการใช�เมาส� (click,drag และ drop operations)

นอกจำากน&ย�งมเคร%องม%อเพ%อใช�ในการแสดงผลเอาท�พ�ต และต�วแปรสถานะของระบบจำากการท"า simulation

3). การว เคราะห�ระบบอ�นด�บหน(งและอ�นด�บ

สองด�วย MATLAB/SIMULINK

การทดลองข�&นตอนเป)นการพ จำารณาสมการอน�พ�นธ�

Page 12: Matlab 1 Complete

จำากการทดลองท�&งหมดย�งเป)นแค#ส#วนหน(งของว ชา ระบบควมค�ม ซ(งย�งสามารถน"าไปใช�ประย�กต�ในการว เคราะห�หร%อ ออกแบบระบบควบค�มต#อไปได�อก

เอกสารอ�างอง ::

- หน�งส%อการใช�งาน MATLAB ส"าหร�บงานทางว ศวกรรม

- หน�งส%อ MATLAB BOOK

- ปราโมทย� เดชะอ"าไพ,น พนธ� วรรณโสภาคย� MATLAB FUDAMENTALS

ส"าน�กพ มพ�แห#งจำ�ฬาลงกรณ�มหาว ทยาล�ย, 2554

- www.google.co.th

Page 13: Matlab 1 Complete
Page 14: Matlab 1 Complete
Page 15: Matlab 1 Complete
Page 16: Matlab 1 Complete