https://ctms.engin.umich.edu/CTMS/index.php?example=Introduction§ion=SimulinkModeling
Control Tutorials for MATLAB and Simulink - Introduction: Simulink Modeling
Introduction: Simulink Modeling In Simulink, it is very straightforward to represent and then simulate a mathematical model representing a physical system. Models are represented graphically in Simulink as block diagrams. A wide array of blocks are availab
ctms.engin.umich.edu
위의 사이트를 바탕으로 직접해보고 정리한 글입니다!!
simulink는 물리적 시스템을 나타내는 모델을 나타내고 시뮬레이션하는데 직관적이 매틀랩 도구이다.
여기서 모델은 block diagram으로 시각적으로 나타낸다.
아래의 간단한 모델을 이용해서 simulink를 시작해보자.
위의 시스템은 질량이 M1, M2인 두 물체가 스프링(k)로 열결되어 있고 M1의 물체에만 힘 F가 가해지고 있는
모습을 수식으로 표현한 것이다. 또한 마찰이 속도와 무게에 비례해서 작용하고 있다.
처음 매트랩을 설치하면 simulink를 추가적으로 다운받아야 한다.
홈->에드온탐색기->simulink
를 다운받고 재시작하면 아래 사진처럼 simulink를 찾을 수 있다.

simulink를 시작해보자.
simulink -> 빈 모델

여기에서 시뮬레이션 -> 라이브러리 브라우저
를 통해 block diagram의 블럭들을 추가할 수 있다.

아직 어떤것들이 있는지 다 몰라서 공부할때마다 추가하려고 한다.
1. commonly used blocks : 자주 사용하는 것들
ex) gain, sum, scope, integrator
2. continuous : 연속적인 시스템에서 주로 사용(?)
ex) Transfer Fcn, PID controller, derivative, integrator
3. sink : 여기서 신호 끝
ex) scope, Out1
4. source : 여기서 신호 시작
ex) step, ramp, sine wave, pulse generator, signal generator
처음에 보여줬던 식을 simulink에서 각 블록을 이용해서 표현하면 아래처럼 만들어진다.
(각 블록은 끌고와서 연결하면 된다)
또는 화면을 두번 클릭 후 추가하고 싶은 블록의 이름을 입력하면 된다.

signal generator에서 힘 F가 만들어지고 M1에 작용하는 힘들이 위쪽의 sum에서 합쳐진다. 이를 질량 M1으로 나누면 가속도가 나오고 가속도를 적분하면 속도, 속도를 적분하면 위치가 나온다. 가장 끝마다 있는 x1, x2, x1_dot의 직사각형은 각각 M1의 위치, M2의 위치, M1의 속도를 시작적으로 보여주는 scope이다.
%% 블럭을 클릭하고 ctrl+r을 하면 블럭이 회전
%% 블럭을 클릭하고 ctrl+i을 하면 블럭의 방향이 역전
Gain은 각각 입력해줘야 한다. Gain블럭을 클릭하면 아래처럼 블록 파라미터 창이 나온다.

여기에서 이득부분에 원하는 값을 넣으면 된다. 처음에 값을 넣으면 변수가 정의되어 있지 않다는 경고 메세지가 뜨고 변수를 새로 정의할 수 있게 해준다. 여기서 우리가 정의한 변수들은 모델링 -> 모델 탐색기 -> <파일명> ->Model Workspace에서 아래와 같이 확인하고 변경할 수 있다.

마지막으로 input인 F를 설정하고 측정하는 시간을 설정해야 한다.

진폭은 -1, 주파수는 0.001hz, 측정시간을 1000초이다. 1초동안 0.001번 진동하므로 1000초동안 1번 진동해서 위와 같이 나타난다. 진폭을 1로 하면 신호는 -1부터 시작한다. 파형의 형태를 구형으로 해서 위와 같은 모습으로 나타나게 되었다.
그러면 결과를 확인해보자.

가장 왼쪽은 F, 중간의 위쪽은 M1의 위치, 아래는 M1의 속도이고 가장 오른쪽은 M2의 속도이다. 결과를 간단하게 분석해보면 두 물체가 스프링으로 연결되어 있고 첫번째 물체에 500초동안 힘 1N을 가하고 다음 500초 동안 반대반향으로 힘 1N을 가하면 두 물체는 위의 사진과 같은 위치와 속도를 가지게 된다.
간단한 예시로 simulink를 이용해서 운동을 분석하는 방법이다. 다음은 이러한 시스템을 직접 제어해보자.
'control tutorials > introduction' 카테고리의 다른 글
| Simscape (0) | 2025.01.19 |
|---|---|
| Simulink Control (0) | 2025.01.15 |
| Frequency Domain (0) | 2025.01.14 |
| Root Locus(근궤적) (0) | 2025.01.14 |
| PID Controller Design (0) | 2025.01.13 |