본문 바로가기
자동제어/Simulink

Simulink 기초 (2) 미분방정식 만들기 - 수직하강 문제, 블록

by Mene 2023. 3. 23.
반응형

10m의 높이에서 떨어지는 상황에 대한 미분방정식을 만들어보자. 뉴턴의 법칙에 의해

\[m\ddot{x}=-mg, x(0)=10\]

와 같은 미분방정식과 초기 조건을 얻을 수 있다.

 

 

 

먼저 중력가속도를 표현하는 Constant 블록을 생성해보자. 라이브러리 - Source - Constant 블록을 드래그하여 생성한 후에 블록을 더블클릭하여 상수 값을 -9.81로 변경한다.

 

 

 

질량은 서로 약분되므로 고려하지 않고, g를 2번 적분하면 x가 나오는 것을 알 수 있다. 따라서 적분기 2개를 배치하고 Constant 블록과 연결해보자. 적분기는 라이브러리 - Continuous - Integrator 블록을 이용하여 추가할 수 있다.

 

 

 

초기조건을 지정하기전에 각 신호의 이름을 지정해보자 화살표를 더블클릭하면 이름을 작성할 수 있다. -9.81을 통과하는 신호는 x2dot, 1번째 적분기를 통과하는 신호는 xdot, 2번째 적분기를 통과하는 신호는 x이다.

각 신호에 대해 이름을 작성하는 것은 나중에 시스템을 확인할 때 도움이 되고, 그래프에 범례로 나타낼 수 있기에 추가하는 것이 좋다.

 

 

 

이제 초기조건을 지정해보자. 초기조건은 x의 초기조건이므로 2번째 적분기에 초기조건을 지정해야한다. 2번째 적분기를 더블클릭하여 초기조건을 10으로 설정한다.

 

 

 

결과를 그래프로 확인하기 위해 Scope 블록을 추가하고 x 신호를 연결해보자. Scope 블록은 라이브러리 - SInk - Scope을 이용하여 추가할 수 있다.

 

 

 

1초까지의 응답을 고려하기 위해 중지시간을 조절할 수 있다. 시뮬레이션 탭에 중지시간을 1로 변경하면 1초까지의 응답만 도출하게 된다.

 

 

 

이제 Scope 블록을 더블클릭하고 실행 버튼을 누르면 다음과 같은 그래프를 얻을 수 있다.

범례를 확인하려면 보기 - 범례를 클릭하여 볼 수있고, 우리가 작성한 신호의 이름이 범례로 나타나는 것을 알 수 있다.

 

반응형

댓글