Octave Atelier

코드와 해설을 함께 읽는 학습 문서

Code Detail

ex-control

Control & Dynamics + Visualization 중심의 Octave 학습 예제

ex-pkg/ex-control.m

목록으로

코드를 복사해 Octave에서 바로 실행할 수 있습니다.

카테고리

Package Drill

package-drill

코드 길이

30

lines

작성자

-

날짜 정보 없음

패키지

control

pkg load

전체 코드

30 lines

pkg load control

% 전송 함수 정의 (예: H(s) = 1 / (s^2 + 3s + 2))
s = tf('s');
H = 1 / (s^2 + 3*s + 2);

% 시스템의 전달 함수 출력
disp("전달 함수 H(s):")
disp(H)

% 시스템의 뿌리(특성 방정식의 해) 구하기
disp("시스템의 뿌리:")
roots([1, 3, 2])

% 시스템의 단계 응답 시뮬레이션 (시간 범위: 0에서 10초)
t = 0:0.01:10;
[y, t_out] = step(H, t);

% 응답 출력
disp("시스템의 단계 응답:")
plot(t_out, y)
title('단계 응답')
xlabel('시간 (초)')
ylabel('출력')
grid on

% 시스템의 안정성 분석: 뿌리 위치를 기반으로 안정성 확인
disp("시스템의 안정성 분석:")
pzmap(H)

코드 해설

목적

  • Control & Dynamics + Visualization 중심의 Octave 학습 예제

입력

  • 스크립트 상단에서 정의한 파라미터/입력 데이터를 사용합니다.

출력

  • 그래프/figure 출력
  • 콘솔 텍스트 출력

실행 흐름

  1. 시스템의 전달 함수 출력
  2. 응답 출력

핵심 함수

  • disp
  • plot
  • pzmap
  • roots
  • step
  • tf
  • title
  • xlabel

실습 과제

  • 질량/감쇠/강성 또는 전달함수 계수를 바꿔 응답 변화를 확인해보세요.
  • 축 범위와 라벨을 바꿔 그래프 해석성이 어떻게 달라지는지 확인해보세요.
  • 핵심 함수 disp의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.

학습 팁

  • 그래프 비교 시 축 범위(XLim/YLim)와 단위를 먼저 고정하면 해석 오류를 줄일 수 있습니다.
  • 입력 파일 경로가 현재 작업 디렉터리 기준인지 먼저 확인하세요.

같은 카테고리 코드

이전 코드 ex-cms 다음 코드 ex-fmt