lastnamesong

[System Modeling] Block Diagram (블록 다이어그램, 블록선도) 본문

Control Theory/System Modeling

[System Modeling] Block Diagram (블록 다이어그램, 블록선도)

응솩이 2025. 1. 19. 22:22
반응형

 

라플라스 변환과 전달함수에 대해서는 이전 글에서 정리했던 적이 있다.

 

 

[System Modeling] 라플라스 변환과 전달함수 (Laplace transformation, Transfer function)

제어 시스템 분석에서 라플라스 변환 (Laplace transformation)은 매우 강력한 도구로, 시간 영역 (time domain)에서의 미분 방정식을 주파수, 또는 라플라스 영역 (frequency domain)으로 변환하여 해석하는 데

lastnamesong.tistory.com

시스템을 수학적으로 표현하는 것도 해석에는 용이하지만 직관적으로 이해하기 어렵다. 입력과 출력, 그리고 모델을 시각적으로 표현할 수 있는 방법이 있으며 이것이 블록 선도 (block diagram)이다. 이 block diagram을 잘 쓸 수 있으면 복잡한 모델도 간단하게 표현할 수 있고, 제어 논문을 쓰거나 읽을 때에도 수월해진다. 이번 글에서는 block diagram에 대해 정리해본다.

나의 경우, 다양한 예시들을 보면서 "이럴 때는 이렇게 정리하면 되겠구나"하는 식으로 공부했던 것 같다.


Block Diagrams

블록 선도는 시스템의 구성 요소와 그들 사이의 관계를 시각적으로 표현하는 도구이다.

이를 통해 각 구성 요소의 입력과 출력, 그리고 그들 사이의 연결 방식을 한눈에 파악할 수 있다.

Block diagram에 대한 아주 기초적인 소개

블록선도의 구성 요소는 아래와 같이 정리할 수 있다.

 

  • 블록 (Block): 시스템의 개별 요소를 나타내며, 보통 위 그림에서 볼 수 있는 직사각형으로 표현된다. 블록 내부에는 시스템의 전달 함수나 이득 (gain)이 표시된다.
  • 화살표 (Arrow): 신호의 흐름을 나타낸다. 입력 신호와 출력 신호를 연결하며 방향성을 지닌다.
  • 합산점 (Summing Point): 여러 신호의 합을 나타내며, 원 모양에 덧셈(+)이나 뺄셈(−) 기호를 사용한다.
  • 분기점 (Branch Point): 신호를 여러 개의 경로로 나누는 지점을 나타낸다.

위 그림에서 \( y(t) \)와 \( u(t) \)의 라플라스 변환을 각각 \( Y(s) \), \( U(s) \)라 하면, 출력 신호인 \( Y(s) \)는 \( G(s)U(s) \)로 정의된다.

Series Elements & Feedback Loops

블록 선도의 구성 요소들을 연결하는 방법으로 직렬 (Series) 연결과 되먹임 (Feedback)을 들 수 있다.

Series로 연결된 경우, 전달 함수는 각 블록의 곱으로 표현된다.

series blocks

위의 예시에서를 들어, \(T_1(s) \)와 \(T_2(s) \)가 직렬 연결되었다면 전체 전달 함수는 \( T_{total}(s) = T_1(s)T_2(s) \)가 된다.


피드백 루프는 제어 시스템에서 매우 중요한 역할을 한다. 아래 그림에 피드백 루프를 구성한 블록선도와 그것을 간단하게 표현한 것이다. 이 폐루프에 대한 등가 전달 함수를 구하는 과정은 아래와 같다.

feedback loop

위 그림을 통해 아래 세 가지를 정리할 수 있다.

$$ A(s) = F(s) - B(s) \qquad B(s) = H(s)X(s) \qquad X(s) = G(s)A(s) $$
\( A(s) \)와 \( B(s) \)를 소거하면 아래와 같이 식을 정리할 수 있다.

$$ X(s) = \dfrac{G(s)}{1 + G(s)H(s)}F(s) $$
여기서 \( G(s) \)는 순방향 전달 함수, \( H(s) \)는 피드백 전달 함수다. 위 식은 피드백 제어의 가장 기본이니 잘 숙지해두어야 한다.

반응형

Rearranging Block Diagrams

동일한 모델에 대해서 다양한 블록 선도를 그릴 수 있다.

\( \ddot{x} + 7\dot{x} + 10x = f(t) \)가 있다. 이 시스템의 전달함수는 라플라스 변환을 하면 어렵지 않게 구할 수 있다.

$$ T(s) = \dfrac{X(s)}{F(s)} = \dfrac{1}{s^2 + 7s + 10} $$

그런데, \( x \)와 \( \dot{x} \)이 어떻게 영향을 주는지를 보고 싶다면, 미분방정식으로 표현되었던 모델을 아래와 같이 수정할 수 있다.

$$ \ddot{x} = f(t) - 7\dot{x} - 10x $$

이를 라플라스 변환하고 \(s^2\)을 정리하면 아래와 같다.

$$ X(s) = \dfrac{1}{s} \left[ \dfrac{1}{s} \{ F(s) - 7(sX(s)) - 10X(s) \} \right]$$

이를 block diagram으로 직관적으로 표현하면 단일 전달함수보다는 복잡한 무언가가 나올 것이다. 이를 정리하면 아래 그림과 같다.

Diagrams representing the equation \( \ddot{x} + 7\dot{x} +10x = f(t) \).

여기서 (a)가 맨 처음 전달함수를 바로 표현한 것으로 볼 수 있고, (b)와 (c)는 바꾼 식을 직관적으로 표현한 것이다. 그리고 (d)는 (c)에서 보이는 피드백 루프를 위에서 정리했던 것과 같이 간결화한 것이다. 동일한 모델에 대해 식을 어떻게 정리하느냐에 따라서 이렇게 다양하게 블록다이어그램으로 표현할 수 있다.

Transfer Functions form Block Diagrams

문제를 풀거나, 논문을 읽을 때 블록 다이어그램만 나와있는 경우가 있을 때도 있다. 이 때 시스템의 모델을 구하는 방법을 모른다면 굉장히 난감할 것이다. 그렇다고 블록 다이어그램에서 전달함수를 구하는 방법에는 어떤 지름길이 있는 것은 아니다. 그저 각 블록의 입출력 관계를 식으로 정리하고 이를 정리하면 전달함수를 구할 수 있게 된다.

위에서 정리했던 것처럼 블록 다이어그램을 최대한 간단하게 만들면 전달함수를 구하는 것이 조금 더 쉬워질 수 있다.

- Example 1

아래 그림과 같은 블록 다이어그램의 입력 \( F(s) \)에서 출력 \( X(s) \)로 가는 전달함수를 구해보자.

블록 다이어그램의 \( X(s) \), \( Y(s) \), \( Z(s) \)에 대해 다음과 같이 식을 쓸 수 있다.

$$ X(s) = \dfrac{1}{s+12}Y(s) \qquad\qquad Y(s) = \dfrac{1}{s+6}Z(s) $$

\( Y(s) \)를 없애기 위해 식을 정리하고, summing point에서의 흐름까지 식으로 정리하면 아래와 같다.

$$ X(s) = \dfrac{1}{(s+6)(s+12)}Z(s) \qquad\qquad Z(s) = F(s) - 8X(s) $$

이를 전달함수의 형태로 정리하기 위해 \( Z(s) \)를 없애면 아래와 같이 구할 수 있다.

$$ \dfrac{X(s)}{F(s)} = \dfrac{1}{s^2 + 18s + 80}$$

- Example 2

조금 더 복잡한 블록 다이어그램에 대해 정리해보면 다음과 같다.

루프 안에 루프가 있는 형태고, \( G(s) \)라는 입력이 추가됐으며, 적분기 (\( \frac{1}{s} \))도 추가된 것을 볼 수 있다.

위에서 했던 것처럼 가장 먼저 각 신호 \( G(s) \), \( Y(s) \), \( X(s) \), \( W(s) \), \( F(s) \)의 입출력 관계를 식으로 정리한다.

$$ X(s) = \dfrac{1}{s} \left[ G(s) + Y(s) \right] \qquad Y(s) = \dfrac{1}{s} \left[ 7W(s) - 3X(s) \right] \qquad W(s) = F(s) - 4X(s) $$

중간에 있는 신호인 \( W(s) \)와 \( Y(s) \)를 없애는 방향으로 식을 정리하면 아래와 같다.

$$ X(s) = \dfrac{7}{s^2 + 31}F(s) + \dfrac{s}{s^2 + 31}G(s) $$

각각의 입출력에 대한 전달함수를 구하면 아래와 같다.

$$ \dfrac{X(s)}{F(s)} = \dfrac{7}{s^2 + 31} \qquad \dfrac{X(s)}{G(s)} = \dfrac{s}{s^2 + 31}$$


블록 다이어그램의 정의와 구성 요소를 정리했고, 복잡한 블록 다이어그램을 간단하게 만드는 방법을 배웠다.

그리고 블록 다이어그램에서 필요한 전달함수를 구하는 방법을 예시를 통해 정리해보았다.

실제 제어 시스템은 더 복잡하지만 결국 위에서 했던 것처럼 입출력 관계를 나열하고 식을 정리하다보면 원하는 결론을 얻어낼 수 있다.

반응형