간단한 모터 모델링을 시도했습니다.
모터의 역학적 모델
모터의 토크는 전류값에 비례하고 점성 저항에 의해 감쇠하기 때문에 다음과 같은 식이 된다
J\frac{d^2\theta}{dt^2} = - D\frac{d\theta}{dt} + K_\tau i
여기에서
$J$: 관성 모멘트
$D$: 점성 저항률
$K_\tau$: 토크 상수
모터의 전기적 모델
모터의 역기전력은 각속도에 비례하므로 다음과 같다.
v = L\frac{di}{dt} + Ri + K_e\frac{d\theta}{dt}
여기에서
$v$: 입력 전압
$L$: 인덕턴스
$R$: 저항값
$K_e$: 역기전력 상수
모터의 블록 다이어그램
simulink에서 모터 모델을 만들려고했습니다.
다양한 전달 함수
전압에서 각속도
G_{v2\omega} = \frac{K_\tau}{(J\cdot L)s^2 + (J\cdot R+L\cdot D)s + K_\tau\cdot K_e+R\cdot D}
전압에서 토크
G_{v2\tau} = \frac{(J\cdot s+D)K_\tau}{(J\cdot L)s^2 + (J\cdot R+L\cdot D)s + K_\tau\cdot K_e+R\cdot D}
전압에서 전류
G_{v2\omega} = \frac{J\cdot s+D}{(J\cdot L)s^2 + (J\cdot R+L\cdot D)s + K_\tau\cdot K_e+R\cdot D}
상태 방정식
상태 변수를 $x =\left[i,\dot\theta\right]^T$로 하면 모터의 상태 방정식은 다음과 같이 쓸 수 있다
\frac{dx}{dt} = \begin{bmatrix}
-\frac{R}{L} & -\frac{K_e}{L} \\
\frac{K_e}{J} & -\frac{D}{J} \\
\end{bmatrix}x
+ \begin{bmatrix}
\frac{1}{L} \\ 0\\
\end{bmatrix}v
MATLAB을 사용한 시뮬레이션 샘플 코드
위의 모델을 바탕으로 현실에 가까운 파라미터를 모터의 데이터 시트도 참고하면서 구해 갔습니다.
샘플 코드
%%%
パラメーターの宣言
%%%
v2omega_tf = tf(K_tau,[J*L,J*R+L*D, K_tau*K_e+R*D]);
v2tau_tf = tf([K_tau*J, K_tau*D], [J*L,J*R+L*D, K_tau*K_e+R*D]);
v2i_tf = tf([J, D], [J*L,J*R+L*D, K_tau*K_e+R*D]);
subplot(1,3,1);
step(v2omega_tf);
title('電圧に対する角速度のステップ応答');
subplot(1,3,2);
step(v2tau_tf);
title('電圧に対するトルクのステップ応答');
subplot(1,3,3);
step(v2i_tf);
title('電圧に対する電流のステップ応答');
더 현실적인 응답을 재현하기 위해 ...
열에 의한 저항값의 변화나 인덕턴스의 히스테리시스 손실도 생각하는 것이 좋을지도 모릅니다
Reference
이 문제에 관하여(간단한 모터 모델링을 시도했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sacomy/items/e5f3bc7aa601b557d013텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)