simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- section...

60
Simulink 강강 강강 강강 강 강 : 2007, 01, 30 강 : 강 강강

Upload: katherine-mason

Post on 14-Dec-2015

260 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 강의 노트

작성 일자 : 2007, 01, 30 저 자 : 임 종수

Page 2: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

강의 순서-- Section 1.• 1. Simulink 의 특징과 install 시 주의사항 .• 2. simple simulink model 개발 .• 3. simulink 의 계산 방법 .• 4. Triggered model concept.• 5. Model workspace concept.• 6. model parameter settings rule.• 7. masking concept• 8. simulink library 개발 .

-- Section 2.• 1. matlab 과 simulink 의 연동 .• 2. simulink 의 third party 소개 .

Page 3: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 의 특징 .

• Simulink 는 동적으로 데이터를 분석 .-> step size.

• 그래픽 언어 .-> 알고리즘 개발보다는 구현 .( 즉 , 이론보다는 구현 위주 )

• 조합회로에 해당 .-> model 은 하나의 step size 에서 동시에 계산 .-> 순차회로는 stateflow 에서 수행 .

• 독특한 debugging 방법 .• C/C++, Ada, Fortran, M-file 과의 link

-> S-function

Page 4: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Install 방법 .

• Matlab 버전과는 독립적으로 운영 .

• Install 시 다음 사항에 주의 .

Page 5: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(1)

Page 6: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(2)• y=ksin(x) model 개발 :

① Sources Library 에 있는 Sine Wave block.② Sinks Library 에 있는 Scope block.

③ Math Library 에 있는 Gain block.

Page 7: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(3)

Page 8: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(4)

• 주석을 삽입할 수 있다 .-> 수학기호 및 다른 특수 문자 삽입가능 .

• Port Data type 표시 기능 .• Storage class 표시 기능 .• Sample Time Colors• Signal Dimension 표시 기능 .

Page 9: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(5)

• 버전에 따라서 GUI 환경이 다름 .

• install 한 toolbox 에 따라서 GUI 환경이 다름 .

• model 에 대한 거의 모든 환경을 setting 할 수 있음 .

Page 10: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(6)

Page 11: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simple Simulink Model(7)

• >> simplot(ScopeData)

-> simplot 사용 기능 .

• simulation 결과 2 개의 경고문이 발생 .

1) continuous states 가 없음 .

2) maximum step size : 0.2

Page 12: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Model Ex1(1)

• Motion Equation :

-> 2 계 system 이므로 2 개의 적분 block 이 필요 .

• damping 계수 c=1.0 lb sec/ft, spring 상수 k=2 lb/ft, cart 의 질량 m=5 slugs.

->

Page 13: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Model Ex1(2)

Page 14: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Model Ex1(3)

Page 15: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Model Ex1(4)

Page 16: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Model Ex1(5)

Page 17: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Subsystem (1)

Page 18: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Subsystem (2)

Page 19: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink & Matlab 데이터 교환(1)

% 시간 축의 범위는 0∼7 초이고 , % sampling frequency 는 100[Hz] 이다 .>> XTime=0:0.01:7; >> YData=sin(XTime);>> MatToSim=[XTime' YData'];

>> plot(XTime,YData,'k')>> set(gcf,'color','w','pos',[232 326 360 352],'units','pixels')>> axis([min(XTime) max(XTime) min(YData) max(YData)])>> grid on

Page 20: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink & Matlab 데이터 교환(2)

Page 21: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink & Matlab 데이터 교환(3)

Page 22: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 의 계산 방법 (1)• 초기화 과정에서 model 을 구성하는 blocks 의 실행 ( 즉 , 갱신 ) 순서를 정함 .

-> Simulink 는 모든 inputs 에 대한 outputs 의 관계에 근거하여 model을 구성하는 block 들을 분류 .

1) direct-feedthrough port :

현재의 input port 값은 곧바로 block 의 현재 output port 값을 결정 .

예 : gain, Product. 등등

2) non-direct-feedthrough port :

Integrator block 의 output port 는 입력이 아닌 , states 의 함수 ,

Constant block 은 입력을 가지고 있지 않으며 ,

Memory block 의 output 은 이전 time step 에서의 입력

• Simulink 는 direct-feedthrough port 를 갖지 않는 block 을 update 순서의 앞에 놓고 , direct-feedthrough port 를 갖는 block 을 update 순서의 뒤에 놓는 초기화 과정을 수행하고 나서 update 를 순서대로 수행 .

Page 23: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 의 계산 방법 (2)

Page 24: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 의 계산 방법 (3)

• Computability Model

Page 25: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Triggered Model Comcept(1)• Enabled Subsystem : control signal 이 positive 인 경우 , 각각의 simulation step 에서 실행 . 즉 , scalar 또는 vector 형태를 갖는 control signal 이 negative에서 positive 로 바뀌는 순간 실행을 시작하여 positive 에서 negative 로 바뀌는 경우 실행을 멈춤 .

• Triggered Subsystem : 임의의 trigger event 가 발생할 때마다 한번 실행한다 . rising edge 또는 falling edge 가 발생한 경우 .

Page 26: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Triggered Model Comcept(2)

Page 27: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Triggered Model Comcept(3)

Page 28: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Triggered Model Comcept(4)

Page 29: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Triggered Model Comcept(5)

• 실습 : subsystem 안의 unit delay 에 주의 .

Page 30: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Workspace Concept(1)• model workspace 에 있는 변수들은 단지 , 해당 model 의 범위에서만 볼

수 있으며 , model 이 loading 될 때 , 이들 변수에 관련된 데이터가 초기화됨 .

* Model Explorer : Simulink model 또는 Stateflow chart 의 elements 에 대한 위치를 찾거나 , 보거나 , 수정할 때 사용 .

Page 31: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Workspace Concept(2)

Page 32: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

* Model workspace 에 새로운 변수 AmpVar 생성 .

* Model workspace 에 있는 AmpVar 를 Model 매개변수로 선언 .

Model Workspace Concept(3)

Page 33: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Workspace Concept(4)

Page 34: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Parameters Setting(1)

• Matlab Handle Graphics System– set.m, get.m

• Simulink Parameter based System– set_param, get_param– set_param('obj', 'parameter1', value1,

'parameter2', value2, ...) – get_param('obj', 'parameter')

Page 35: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Parameters Setting(2)

Page 36: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Parameters Setting(3)

Page 37: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Model Parameters Setting(4)

• sim command :– Model 을 matlab command window 에서 실행 .– sim(‘model name’)

• 예 제 :

Page 38: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(1)

• Subsystems 에 대한 custom user interfaces( 즉 , masks) 를 새롭게 만드는 기법 .

• Masked subsystem 의 요구 사항 :– Mask Icon.– Mask Parameters– Mask Initialization Code– Mask Workspace

Page 39: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(2)

Page 40: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(3)

Page 41: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(4)

Page 42: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(5)

Page 43: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(6)

Page 44: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(7)

Page 45: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(8)

Page 46: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(9)

Page 47: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(10)

Page 48: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(11)

Page 49: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(12)

Page 50: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Masking Concept(13)

Page 51: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(1)

Page 52: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(2)

Page 53: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(3)function blkStruct=slblocks%SLBLOCKS Defines the block library for a specific Toolbox or Blockset.%% 2005, 6, 6 By Lim Jong Su%

blkStruct.Name=sprintf('Sim Library Test');blkStruct.OpenFcn='SimLibByLim';blkStruct.MaskInitialization=''; blkStruct.MaskDisplay=['disp(''Sim Library Test'')']; % Define the library list for the Simulink Library Browser.% Return the name of the library model and the name for it. Browser(1).Library='SimLibByLim';Browser(1).Name ='Sim Library Test'; blkStruct.Browser=Browser; %end of slblocks.m

Page 54: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(4)

• LimSimLib directory 를 matlab 경로에 첨가해 주어야 함 .

Page 55: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(5)

Page 56: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink Library(6)

Page 57: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Matlab & Simulink 연동 (1)

• Simulink model 과 Matlab GUI 기능을 link.

Page 58: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Matlab & Simulink 연동 (2)

• Matlab 의 guide.m 함수로 GUI 개발 .

Page 59: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Matlab & Simulink 연동 (3)

• 소스 분석 .

Page 60: Simulink 강의 노트 작성 일자 : 2007, 01, 30 저 자 : 임 종수. 강의 순서 -- Section 1. 1. Simulink 의 특징과 install 시 주의사항. 2. simple simulink model 개발

Simulink 의 third Party

• http://www.mathworks.com/products/connections/company_name.html

• Xilinx Syste Generator, Altera DSP Builder, Synplify DSP, AccelChip etc.

• http://www.mathworks.com/matlabcentral/fileexchange/loadCategory.do

• http://www.mathworks.com/access/helpdesk/help/helpdesk.html