control tutorials/introduction 7

추가적으로 정리한 것

1. 손으로 전달함수 구하고 매트랩과 비교https://fbc0314.tistory.com/1여기에서 수학적으로 모델링해서 구한 전달함수와 매트랩을 통해서 구한 전달함수를 비교해보자!! 1)수학적으로 계산$$\sum F_{1}=F-k(x_{1}-x_{2})-\mu M_{1}g\dot{x_{1}}=M_{1}\ddot{X_{1}}$$ $$\sum F_{2}=k(x_{1}-x_{2})-\mu M_{2}g\dot{x_{2}}=M_{2}\ddot{X_{2}}$$ 위와 같은 수식으로 모델링 할 수 있다.k= 1N/s, M1=1kg, M2=0.5kg, mu=0.02s/m, g=9.8m/s^2이다. 여기에 라플라스 변환을 적용하고 속도/힘의 전달함수를 구해보자. 라플라스 변환 적용결과 아래와 같다.$$ F(s)-k(X..

Simscape

1. Simscape와 Simulink지금까지 우리는 simulink를 사용해서 시스템을 모델링하고 원하는 조건을 성립하도록 제어기를 설계하고 시뮬레이션 하는 방법을 해보았다. Simscape도 Simulink와 비슷한 목적을 가지고 있다. 하지만 simulink는 수학적 모델링으로 연결되어 신호가 전달된다면 물리적 시스템을 구성 요소 기반으로 모델링하고  실제 물리적 상호작용(전압, 유량, 힘 등)을 직관적으로 표현한다. 이러한 Simscape를 처음 사용한다면 에드온으로 추가적인 설치가 필요한다. 에드온에서 아래 사진처럼 Simscape를 찾아서 설치해준다. 2. 기차 시스템 모델링https://ctms.engin.umich.edu/CTMS/index.php?example=Introduction&se..

Simulink Control

해당 카테고리의 첫 글에서 우리는 두개의 기차 시스템을 모델링했고 아래 사진처럼 완성했다. 우리가 모델링한 것은 feedback system의 plant 부분이고 controller부분을 설계해서 원하는대로 동작하도록 만들어야 한다. 먼저 간단하게 보기 위해서 train model을 하나의 subsystem block으로 만들어야 한다. 이를 위해서 3개의 scope block을 sinks library의 out1으로 바꾸고 한개의 signal generator를 sources library의 in1으로 바꿔야 한다. 그러면 아래와 같은 화면이 만들어진다. 모델을 모두 선택 후(Ctrl+A) 우클릭 후에 선택항목을 서브시스템으로 만들기 선택(Ctrl+G)를 통해서 하나의 subsystem block으로 ..

Frequency Domain

주파수 영역에서 controller를 디자인 하는 것은 직관적이지 않다.하지만 물리적 데이터를 가지고 전달함수를 설계하는데 유용하게 사용될 수 있다고 한다(아직 어떤 의미인지는 잘 모르겠다...) open loop frequency response를 이용해서 closed loop time response의 특성을 파악하는 방법에 대해서 알아보자!! 1. Gain Margin and Phase Margin먼저 짚고가야 하는 것이 있다. frequency response가 뭐지??sinusoidal input이 linear system에 들어왔을 때의 steady-state response가 frequency response이다.여기서 시스템의 크기만큼 증폭되고 시스템의 위상각만큼 이동된다.k가 정해졌을 때..

Root Locus(근궤적)

1. Root Locus근궤적(root locus)는 gain k값이 0부터 무한대까지 변화할 때 closed-loop pole의 위치를 open-loop pole과 zero를 이용해서 나타낸 그래프이다.pole의 위치를 통해 시스템의 특성을 알 수 있기 때문에 근궤적을 통해서 k 값을 조절해 시스템을 설계할 수 있다. closed loop 전달함수는 아래와 같이 표현된다.$$ \frac{Y(s)}{R(s)} = \frac{KH(s)}{1+KH(s)}$$ $$1+KH(s)=0$$ 1+KH(s)=0을 만족하는 s가 closed loop 전달함수의 pole이된다.여기서 H(s) = N(s)/D(s)라고 하면 아래처럼 정리된다.$$1+K\frac{N(s)}{D(s)}=0$$ $$D(s) + KN(s)=0$$ ..

PID Controller Design

위의 사진 처럼 Feedback system에서 pid 제어기는 controller의 역할을 할 수 있도록 input으로 error신호를 받고 output으로 plant에 가는 신호를 만든다. 에러 신호, e(t)를 받고 만들어지는 신호를 u(t)라고 하면 아래의 식으로 계산되고 우리는 각항의 계수를 조절해서 최적의 값을 찾는다. $$ u(t) = K_{p}e(t) + K_{i}\int e(t)dt + k_{d}\frac{de}{dt}$$위의 식을 그대로 해석하면 control signal인 u는 error의 크기의 propotioanl gain(Kp)배와 error의 적분의 integral gain(Ki)배 그리고 error의 미분의 derivative gain(Kd)배의 합이다.controller가 ..