• 검색 결과가 없습니다.

Presented by Byoung-Kuk Lee, Ph. D., Senior IEEE Energy Mechatronics Lab.

N/A
N/A
Protected

Academic year: 2022

Share "Presented by Byoung-Kuk Lee, Ph. D., Senior IEEE Energy Mechatronics Lab."

Copied!
47
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

Presented by Byoung-Kuk Lee, Ph. D., Senior IEEE

Energy Mechatronics Lab.

College of Information and Communication Eng.

Sungkyunkwan University Tel: +82-31-299-4581 Fax: +82-31-299-4612 http://seml.skku.ac.kr EML: bkleeskku@skku.edu

(2)

Introduction of MATLAB

MATLAB의 개요

 MATrix + LABoratory

 행렬을 기본 데이터로 사용하는 계산환경

 M-file을 사용한 프로그래밍

 심볼로 이루어진 수식을 계산하는 기호 계산

 수치해석, 행렬연산, 신호처리 및 간편한 그래픽 기능 등을 통합

 고성능의 수치계산 및 결과의 가시화 기능을 제공하는 프로그램

 사용자와 쌍방향흐름의 대화식 프로그램 : 명령어 입력하면 바로 결과 출력

(3)

2/46

Introduction of MATLAB

MATLAB 코딩 체계 = 수학적인 기호 + 간단한 C문법

MATLAB의 전형적인 이용범위

수학과 관련된 계산

알고리즘 개발

상황 모델링과 data분석

MATLAB 여러 가지 과학과 공학적인 그래픽적 표현

GUI(Graphical User Interface)에 의한 에플리케이션 개발 MATLAB의 코딩체계

(4)

Introduction of MATLAB

  sin(x ) y

 위의 적분의 프로그래밍에 대해

생각해 보자.

 MATLAB에서 위와 같은 문제는

>> y=int('sin(x)');

>> ezplot(y);

Why use MATLAB

(5)

4/46

MATLAB 실행화면

Current Directory

- 작업 디렉토리 표시 및 변경 Workspace

- 사용하고 있는

변수 리스트

Command History

- 사용하였던 MATLAB

명령 리스트

Command Window

- 명령 입력 프롬프트 - 명령 처리 결과 표시

(6)

MATLAB 실행화면

File

New

- 새로운 MATLAB 파일

- M-file, Figure, Model, GUI

※ M-file 선택 : M-file파일 편집을 위한 텍스트 편집 윈도우 생성

Open

- 저장된 MATLAB 파일 loading

New Open Cut Copy Paste Undo Redo Simulink

MATLAB Menu

(7)

6/46

MATLAB 실행화면

File

Import Data

- MATALB 파일외의 여러 가지 파일(소리, 영상 문자)을 loading

Save Workspace As

Set Path

- Work directory의 Path를 설정

Close Current Directory

- MATLAB 프로그램 상에 실행된 여러 윈도우를 닫음.

- 한번 선택 할 때마다 다른 윈도우를 닫는 명령으로 변경

Preferences

Page setup

Print

최근 작업 파일

Exit MATLAB

MATLAB Menu

(8)

MATLAB 실행화면

Edit

Undo

Redo

Cut

Copy

Paste

Paste Special

- 클립 보드에 있는 데이터를 분리하여 붙여 넣기

Select All

Delete

Find

Clear

MATLAB Menu

(9)

8/46

MATLAB 실행화면

View

Desktop Layout : MATLAB 윈도우 설정(배열)을 선택 - Default

- Command Window Only - Simple

- Short History - Tall History - Five Panel

Undock Command Window

- Command 윈도우를 독립된 윈도우로 생성

그 외 MATLB에서 사용 가능한 윈도우를 활성화 또는 비활성화

Web

Mathworks사 웹 사이트, 업데이트 사이트 등 MATLAB과 관련된 웹 사이트 링크

Window

Close all

MATLAB Menu

(10)

MATLAB 사용을 위한 환경설정

기본적으로 사용하는 파일

m파일 (예 : pwm.m)

- Script 형태의 MATLAB코드

- Command Window에 입력할 명령 및 함수들을 순차적으로 작성 - Command Window에 m-file 이름을 입력하면 작성된 명령 수행

mat파일(사용된 변수들의 저장)

사용하는 창 (window) : 작업공간

command window - 명령입력 및 결과 확인

text window

- 명령입력 및 결과 확인

File & Directory

(11)

10/46

MATLAB 사용을 위한 환경설정

작업 디렉토리의 지정

File - Set Path 를 이용하여 path 저장

- Path를 저장하면 디렉토리 변경할 필요 없음

- Path를저장하지않고작업디렉토리변경은툴바의Current Directory에서 변경

검색 경로의 지정을 고려

- 검색경로 : 실행에 필요한 m파일의 존재를 점검

Set Directory

(12)

MATLAB Command

clc

Clear Command Window

Command 윈도우에 표시된 내용을 모두 지움 >> clc (enter)

clear

Clear variables and functions from memory

변수와 함수를 메모리로부터 삭제

사용법

>> clear <변수명> (enter) : 해당 변수를 지움 >> clear all (enter) : 모든 변수와 함수를 지움 ※ default = clear all

>> clear (enter)

Basic Command (I)

(13)

12/46

MATLAB Command

format

MATLAB에서 보여지는 모든 변수의 형태를 결정

Short 형 : 소수점 이하 5자리까지만 표시

Long 형 : 소수점 이하 15자리까지만 표시

사용법

ans : 가장 최근에 계산된 변수표시

Basic Command (II)

(14)

MATLAB Command

Help

명령과 함수에 대한 도움말

사용법

>> help <명령 또는 함수> (enter)

Basic Command (III)

(15)

14/46

MATLAB Command

Command 입력 다음의 “;” (세미콜론)

명령수행 결과를 숨김

요소가 많은 계산시에는 “;”를 사용

- 단, 계산과정의 확인이 필요한 경우에는 “;”없이 사용

Basic Command (IV)

(16)

Arithmetic Operation of MATLAB

“:” (콜론) 연산자

등간 증감 연산자

일정 구간 내 동일한 간격으로 증가 혹은 감소

사용법 (default 간격 = 1)

>> <시작 값> : <간격> : <종료 값> (enter)

Basic Arithmetic (I)

(17)

16/46

Arithmetic Operation of MATLAB

Matrix

MATLAB 데이터 처리의 기본형태 ([ ]로 입력)

행렬에서 행 구분은 “(enter)” 또는 “;”, 열 구분은 “ ” 또는 “,”

사용법

Basic Arithmetic (II)

(18)

Arithmetic Operation of MATLAB

Matrix의 활용 및 변경 Basic Arithmetic (III)

(19)

18/46

Complex Matrix

MATLAB에서 복소수 표현은 “i”로 표현

예제 : 아래 행렬 C를 MATLAB에 표현

Arithmetic Operation of MATLAB

1 2 2 3 4 3 2

i i

C i i

 

 

      

Basic Arithmetic (IV)

(20)

Arithmetic Operation

“+”, “-”, “*”, “/”, “\”, “.” ...

C언어와 유사한 형태

행렬 산술 연산자를 포함 (단, 행렬간 연산 시 행렬의 차원이 같아야 함)

Arithmetic Operation of MATLAB

Arithmetic Operation (I)

(21)

20/46

Arithmetic Operation

행렬의 나눗셈 연산자 : “/”, “\”

>> A/B (=AB1) >> A\B (=A1B)

Arithmetic Operation of MATLAB

Arithmetic Operation (II)

(22)

Arithmetic Operation

Dot Product “.”

행렬 요소간 곱셈, 나눗셈 : “.*”, “./”

행렬의 차원이 같아야 연산 가능

Arithmetic Operation of MATLAB

,

.*

a b e f

A B

c d g h

ae bf A B

cg dh

   

     

   

 

  

 

Arithmetic Operation (III)

(23)

22/46

기타 수학 함수

Arithmetic Operation of MATLAB

수학 함수

abs(x) x의 절대값을 계산

sqrt(x) x의 근호값을 계산

round(x) x를 가까운 정수로 반올림

sign(x) x가 0보다 작으면 -1, 0이면 0. 0보다 크면 1 rem(x,y) x/y의 나머지를 계산

exp(x) e^x를 계산

삼각함수 (radian 단위)

sin(x) sin(x) 계산

cos(x) cos(x) 계산

tan(x) tan(x) 계산

asin(x) sin-1(x) 계산 acos(x) cos-1 (x) 계산 atan(x) tan-1 (x) 계산 atan2(x,y) tan-1 (y/x) 계산

Arithmetic Operation (IV)

(24)

기타 수학 함수 (continue)

Arithmetic Operation of MATLAB

Arithmetic Operation (V)

(25)

24/46

삼각함수 (radian)

Arithmetic Operation of MATLAB

Arithmetic Operation (VI)

(26)

Graphic

2차원 그래픽에 관련된 함수들 - title(‘제목’)

- xlabel(‘제목’), ylabel(‘제목’) - text(x좌표, y좌표, ‘내용’)

- plot( x축, y축, ‘선의 색, 선의 모양’ ) : 꺾은선 그래프 - grid

- hold.

Graphical Function

Graphical Function (I)

(27)

26/46

plot ( x축, y축, ‘선의 색, 선의 모양’ )

x축 data와 y축 data의 크기가 일치해야 함

Graphical Function

가능한 선의 Color Matlab

Symbol Color Matlab

Symbol Color

c 하늘 g 초록

m 자주 b 파랑

y 노랑 w 흰색

r 빨강 k 검은색

가능한 선의 Style Matlab

Symbol Style Matlab

Symbol Style - Solid

line : Dotted

line -- Dashed

line -. Dash-dot line

none No Line

가능한 선의 marker Matlab

Symbol

Marker Style

Matlab Symbol

Marker Style

+ + ^

o o v

* * >

. <

x × pentagra

m

Square hexagram ¤

Diamond none No marker

(default)

Graphical Function (II)

(28)

MATLAB Plot 설정

2. 편집하고자 하는 그래프 더블 클릭 1. Tools → Plot editor

3. 우측 하단에서 그래프 모양,

Plot tools (I)

(29)

28/46

MATLAB Plot 설정

1. Plot editor 선택 후 그래프 전체 더블 클릭

3. 변경 하고자 하는 축 선택 후

레이블, 범위, 스케일 설정 4. 글꼴 선택 후에 글자체 및 크

기 설정

Plot tools (II)

2. 좌측 하단 메뉴를 통해서, 그래프 제목,배경색, 그리드 설정

(30)

subplot ( 행수, 열수, 번호 )

다중 그래프의 표현

Graphical Function

1 2

3 4

Graphical Function (III)

(31)

30/46

Example #1

-pi < x < pi 일 때(단 x의 스텝은 0.05)

subplot(211)의 X축에 x, Y축에 a=cos(x)를 plot 하시오

subplot(212)에 X축에 x, Y축에 b=sin(x)를 plot 하시오

Example #2

실습 1의 각 그래프에 축의 이름을 붙이시오

실습 1의 각 그래프에 제목을 붙이시오

실습 1의 각 그래프에 격자를 넣으시오

Example #3

실습 1의 cos(x), sin(x) 그래프를 하나의 그래프에 그리시오

Graphical Function

Graphical Function (IV)

(32)

Graphical Function

Graphical Function (V)

(33)

32/46

기타 Graphic Function

Graphical Function

함 수 설 명

plot x와 y축에 대해서 모두 선형 배율로 된 그래프 loglog x와 y축에 대해서 모두 log배율로 된 그래프

semilogx x축에 대해서는 log배율, y축에 대해서는 선형 배율로 된 그래프

semilogy x축에 대해서는 선형 배율, y축에 대해서는 log배율로 된 그래프

Graphical Function (VI)

(34)

기타 Graphic Function

Graphical Function

Graphical Function (VII)

(35)

34/46

What is Simulink?

Simulink는 MATLAB환경에서 특별히 제작된 그래픽 인터페이스

동적 시스템을 시뮬레이션 하는 도구

그래픽 인터페이스 (Graphic Interface)

기본적으로 제공하는 100개 이상의 블록들(라이브러리)의 조합으로 시스템의 특성을 표현

 아이콘 화 되어 있는 기능 블록을 이용하여 시각적으로 알기 쉽게 모델링

동적 시스템 (Dynamics System)

 시간에 따라 응답이 선형이나 비선형으로 변하는 하나의 프로세스  미분 방정식 혹은 차분 방정식으로 표현, 블록선도로도 나타낼 수 있음

Simulink의 특징

(36)

What is Simulink?

전력전자 시뮬레이션 프로그램

 Circuit Configuration

- PSIM, PSPICE, SABER..

Control Strategy

- MATLAB(Simulink)

 토폴로지 설계에 강점 컨버터/인버터 설계 스너버 회로 설계 공진 네트워크 설계

 모든 동적 시스템 모델링 가능

Simulink의 특징

(37)

36/46

What is Simulink?

Understanding basic usage of SIMULINK

본 강의 이전에 SIMULINK의 전반적인 이해를 돕기 위함

예제 회로를 직접 모델링 실습

기초 회로 5개를 모델링 함으로서 기본적인 Simulink 사용방법 이해

반파 정류 회로 모델링을 통하여 응용능력 향상

Example

(38)

Simulink의 시작

(39)

38/46

Simulink의 시작

Library Browser

목록이나 아이콘의 형태로 제공하는 기본 기능을 보여줌

Basic ICON

Find Library

(40)

Simulink의 시작

Simulation Time Setting 시뮬레이션의 연산 조건 설정

(41)

40/46

Simulink의 기초

① 저항회로 ② 저항병렬회로 ③ 저항직렬회로

④ 인덕터 회로 ⑤ RL 회로

5개의 간단한 예제 회로를 Simulink로 모델링 Simulink의 특징

Process

1. 시스템의 분석 2. 수학적 모델링 3. 블록화

4. 가상실험

⑥ 단상 반파 다이오드 정류 회로

(42)

Simulink의 기초

① 저항회로: Basic Block의 이해

(43)

42/46

Simulink의 기초

>>Plot(t,I)

>>Plot(t,Isum)

② 저항병렬회로: To Workspace의 이해

(44)

Simulink의 기초

③ 저항직렬회로: Subsystem의 이해

(45)

44/46

Simulink의 기초

④ 인덕터 회로: Continues Library의 이해

(46)

Simulink의 기초

1. 시스템의 분석 2. 수학적 모델링 3. 블록화

4. 가상실험

⑤ RL 회로 : Modeling 절차의 이해

(47)

46/46

Simulink의 기초

1. 시스템의 분석 2. 수학적 모델링 3. 블록화

4. 가상실험

⑥ 단상 반파 다이오드 정류 회로

60

220*sqrt(2) 10

참조

관련 문서

그래프

§ 종래에 고골과 요골의 경상돌기(styloid process)를 혼동한 일이 있으나 고골과 경상돌기는 다른 부위임.. 고골에 대해서는

Sungkyunkwan Univ., Energy Mechatronics Lab... Sungkyunkwan Univ.,

• 그래프 이론 (graph theory) : 그래프를 문제해결의

Infinite Voltage Gain Very Large

단상 다이오드 정류기 기본 이론.. Presented by

BLDC 전동기

Sungkyunkwan Univ., Energy Mechatronics Lab... Sungkyunkwan Univ.,