분류 전체보기 259

제어기[controller]

1. 폐루프 제어(Closed-Loop Control) : 피드백 제어 제어 대상값 Y(s)를 입력으로 피드백(Feedback)해서 그 목표 값 R(s)와 비교하여 그 오차가 작아지도록 제어 입력 값 U(s)를 변경하는 제어 방법이다. 이 경우 피드백을 위한 제어 대상 값의 검출용으로 센서가 필요하다. 폐루프 제어에서는 오차를 감소시켜주는 피드백 제어기 Gc(s)의 역할이 매우 중요하다. (1) 비례(Proportional, P) 제어기 비례 제어기는 현재 오차 e(t)(=r(t) - y(t))에 비례한 제어 입력값 u(t)를 출력한다. 따라서 오차가 크면 제어 입력 값이 커지고, 작으면 제어 입력 값이 작게 된다. 그 정도는 비례 이득(Gain) Kp에 의해 다음처럼 결정된다. 비례 제어기는 오차의 크..

Study/Motor Control 2023.03.08

#6 BLDC(PMSM) [PI-IP controller] Gain(freq) Tuning

0. Modeling 교수님께서 전류 제어기는 PI-IP로 설계하지 않아도 된다 하셨기에, 속도 제어기만 PI-IP로 설계하고 전류 제어기는 PI제어기로 설계하였다. 1. 기본 Parameter 설정 대역폭 Wcs는 속도 샘플링 주파수의 1/20~1/25 정도로 대역폭 Wcs를 선정하는 것이 바람직하다. 예를들어 전류 제어기의 대역폭 Wcc가 500Hz이고 속도 검출 주기가 2ms인 경우 속도 제어기의 대역폭 Wsc는 Wcc/5인 최대 100Hz(628 rad/s) 정도까지 선정하는 것이 가능하다. 그러나 속도의 샘플링 주파수가 500Hz(=1/2ms) 이므로, 대역폭 Wsc는 속도 샘플링 주파수의 1/20인 25Hz 이하로 선정하는 것이 바람직하다. => Wcc = 500Hz -> Wsc = 25Hz ..

#5 BLDC(PMSM) [PI-IP controller] Gain 변경 실험

1. [a=1] PI controller Kps=0.04, Kis=0.5, Kas=25 [Monitiring] https://youtu.be/5d-6eaFx-IY PI monitoring 기존에 set된 PI controller를 돌렸을 때. motor는 부드럽게 돌아가고, 지령속도에 금방 도착한다. 2. [a=0.5] PI-IP controller Kps=0.04, Kis=0.5, Kas=25 [Monitiring] https://youtu.be/Du3dw3A-lkM PI-IP monitoring [Lab] https://youtu.be/8_bVu_Diom8 PI-IP Lab 실제 motor 회전. 육안상의 차이는 알수없다. Oscilloscope로 확인해야한다. 3. [a=1] PI-IP contro..

#4 BLDC(PMSM) [PI-IP controller] Gain 값 Tuning

0. Study (1) Kp오차(error)에 순수하게 비례하여 들어가는 feedback - 적절히 크게 설정하여 bandwidth를 확보해야 한다. - 입력과 출력의 단위를 비교하여 Scale을 결정한다. - 초기 오차가 클 경우 너무 큰 비례 이득은 peaking을 유도한다. - Error가 비례이득 만큼 커져서 입력으로 들어 가는 것으로 Oscillation이 유도 될 수 있다. - 비례 이득이 클수록 빠른 응답을 확보할 수 있다. (2) Ki오차(error)의 적분 항 feedback - Steady-state오차를 없애준다. - 오차가 지속적으로 과도하게 적분 된 경우 응답 성능도 떨어트릴 수 있다. - 적분항을 reset하거나 적분항이 적용되는 trigger를 주거나 이렇게 조건부로 활용된다...

#3 BLDC(PMSM) [PI-IP controller] Simulation

1. Controller a = 1 : PI controller a = 0 : IP controller a = 0.5 : PI-IP controller 2-(1). [a=1] PI controller 지령속도 도달 [Simulation] [조건] 0~0.5s 동안, 1000rpm 일 때 PI controller [a=1] PI-IP controller [a=0.5] IP controller [a=0] Wrpm[rpm] 1000.7 542.4 113.3 Iqs[A] 1.6 0.4 -0.5 Va[V] 4.0 0 3.6 [결론] PI controller은 0.05806s에 이미 지령 속도에 도달하였다. 하지만 PI-IP(0.5)와 IP controller은 PI controller보다 지령속도 도달까지 시간이..

#2 BLDC(PMSM) [PI controller] Simulation

2023.02.23 - [Project/#3 PI-IP controller] - #1 직류전동기 기계 시스템 Simulink 구현 (PI controller) #1 직류전동기 기계 시스템 Simulink 구현 (PI controller) 2023.02.22 - [Project/#2 Motor Lab] - #1.5 23/2/21 세미나 0. 영구자석 직류 전동기 구동시스템 (전체적인 구성) 위 사진은 영구자석 직류 전동기 구동시스템의 블록도이며 구동 시스템은 크게 직류 전동기 jgewjsrhdms.tistory.com 이전 글에서 BLDC(PMSM) 모터를 PI controller를 사용한 Simulink로 만들어서 속도(RPM)지령을 넣고 PI controller를 사용한 값을 뽑아 내었다. 시간과 파형..

#1 직류전동기 기계 시스템 Simulink 구현 (PI controller)

2023.02.22 - [Project/#2 Motor Lab] - #1.5 23/2/21 세미나 2022.08.02 - [Study/Feedback System] - PID control PID control *PID control 1.PID 제어란? P만 사용하면 steady state의 에러가 생긴다. 정상 상태 오차를 없애려면 적분기(과거항)를 비례기와 나란하게 설치해야 한다. 적분기는 누적 합계를 유지하면서도 시간 경과 jgewjsrhdms.tistory.com 0. 영구자석 직류 전동기 구동시스템 (전체적인 구성) 위 사진은 영구자석 직류 전동기 구동시스템의 블록도이며 구동 시스템은 크게 직류 전동기와 구동 대상인 기계적 부하 시스템, 또한 직류 전동기를 제어하는 제어기와 이 제어기로부터 지령..

#0 Motor Default Value & Initial Set

2023.02.22 - [Project/#2 Motor Lab] - #1.5 23/2/21 세미나 #1.5 23/2/21 세미나 jgewjsrhdms.tistory.com => 동일 set 사용 1. Motor 사용하고 있는 모터는 K6LS30N2 BLDC모터이다. 모터는 DC 링크 전압 24V PMSM (Back EMF : 사인파 형식) 사용한다. 정격 전력[W] 30 정격 속도[rpm] 2,500 정격 전류[A] 2.1 Stator 저항[Ohm] 0.5 실제측정 Stator 인덕턴스[mH] 0.7 실제측정 Back emf constant 0.03749 실제측정(@2500rpm) 1-(1). Parameter 2. Encoder 엔코더 종류 : E40HB8-5000-6-L-5 소스 전압 : 5VDC P..

[LAB #2] Motor 전류 지령 실험

교육실험세트 M-G set 실험 #1.5 세미나 내용 Q에 대한 실험2023.02.22 - [Project/#2 Motor Lab] - #1.5 23/2/21 세미나 [세팅] speed code를 PI 제어기에서 PI-IP제어기로 변경시키고 알파 값을 0.5로 세팅 했다.1. Speed를 인버터 OFF없이 변화시킬 수 있는지 확인2. 변하는 시간에 따라 값을 볼 수 있는지 확인3. 전류 변화시키며 실험2023/02/22 1. M1_speed uphttps://youtu.be/g_eMvf0M9_c1. M1 speed 1000rpm2. M1 speed 2000rpm=> Inverter끄지 않고 속도지령 했더니 돌아감3. M1 vf => 179rpm으로 천천히 돈다. 2. M1_current change =>..

[LAB #0] Motor Tool

2023.02.23 - [Project/#3 PI-IP controller] - #0 Motor Default Value & Initial Set 동일 set 사용 1. Motor 사용하고 있는 모터는 K6LS30N2 BLDC모터이다. 모터는 DC 링크 전압 24V PMSM (Back EMF : 사인파 형" data-og-host="jgewjsrhdms.tistory.com" data-og-source-url="https://jgewjsrhdms.tistory.com/entry/0-Schedule" data-og-url="https://jgewjsrhdms.tistory.com/entry/0-Schedule" data-og-image="https://scrap.kakaocdn.net/dn/bg1uR4/h..

[LAB #1] M-G set 동작 테스트

교육실험세트 M-G set 실험 2023/2/181. M1_speed & M2_currenthttps://youtu.be/JjvbwrCnYp0M1 speed를 1000으로 올리고 M2 current를 1A를 주었을 때 소리가 커졌고 더 빨라진 기분?이었다.=> 속도가 변화한 것이 아니라 M2가 부하로 작용하면서 소리만 커지고 전류가 커진 것 2. M1_speed & M2_speed https://youtu.be/WsVWs15fbc4 M1 speed를 1000rpm 으로 설정하고 M2 speed를 1000rpm으로 설정했더니 모터가 멈추었다.=> 모터 M1과 M2는 반대 방향으로 작동한다. 3. M1_Forback mode https://youtu.be/xgj4noenOAE1. Forback만 켜면 안돌아..

역기전력(Back-Elevtro Motive Force)

1. 역기전력 정의 역기전력은 전류와 역방향, 즉 전류를 방해하는 방향으로 발생하는 전압 기호로는 e (순시값), E (실효값)로 표현한다. 2. 역기전력 기본 개념 자기장 B 내에 놓여있는 도체에 전압을 인가하여 전류 I 를 흐르게 하면 그림처럼 힘 F 가 발생하여 회전을 시작한다. (왼손 법칙) 자기장 B 내에서 도체가 힘 F 방향으로 움직이기 시작했기 때문에 처음 전류 I 와는 반대 방향으로 전류 I' 가 발생한다. (오른손 법칙) => 처음 전류 I 를 방해하는 I' 를 흐르게 하는 전압이 역기전력이다. 3. 모터와 발전기 모터는 모터이면서 발전기이며, 즉 모터와 발전기 동시에 작동 가능하다. 그래서 모터를 에너지 변환 장치라고 하며 전기 에너지를 일로 변환하면 모터, 역으로 일을 전기 에너지로 ..

Study/Motor Control 2023.02.16

SPMSM vs IPMSM 비교

1. SPMSM(Surface mounted PMSM) SPMSM은 영구자석이 회전자 주변으로 일정한 두께로 배치되어 있어 d축, q축 인덕턴스가 동일하다. SPMSM의 토크는 위 식 처럼 마그네틱 토크만 고려하면 된다. SPMSM은 설계시, 원호 형태의 자석이 필요하고, 표면에 부착하기 때문에 원심력에 의해 튕겨져 나갈 수 있어 어려움이 많다 하지만 자기회로가 간단해 비교적 간단한 제어 알고리즘으로 토크/속도 제어를 수행할 수 있다. 2. IPMSM(Interior Permanent Magnet Synchronous Motor) IPMSM은 영구자석이 회전자 주변으로 자석이 균일하지 않아 d축, q축 인덕턴스가 다르다. d축으로 봤을 때는 자석과 air gap이 동시에 존재하지만, q축으로 봤을 때는 ..

Study/Motor Control 2023.02.14

[code analysis] 3상 인버터 보드 M1_inverter.c

1. 변수 설정 float 형 설정 후 뒤에 'F' 를 붙여서 float인 것을 표시 extern : 외부 변수 사용 -> SelEncoder 라는 외부 변수 사용 : SelEncoder은 인버터 보드1의 J5 커넷터에 에코더 케이블이 연결되어 있을 경우 Expressions 창에서 "SelEncoder" 값을 "0"으로 설정. Uint16 같은 type은 표와 같이 사용 cc : Curent Control sc : Speed Control ul : unlimmit fb : feedback ff : feedfoward M2_inverter에 없는 부분 Uint16 align_mode = 1; // 초기값 1 Uint16 Forback_mode = 1; //초기값 0 2. M1_Inverter 3. M1_..

Study/Motor Control 2023.02.13

Motor generator set(M-G set)

1. 모터 제너레이터란 모터 제너레이터 (M-G) 세트는 공통 축을 통해 기계적으로 결합 된 모터 및 발전기로 구성된 복합 장치를 나타낸다. 실질적으로 모터 발전기 세트는 모터와 발전기가 연결된 오히려 단일 회로에 배치한다. 전력을 한 형식에서 다른 형식으로 변환하는 데 사용되는 장치입니다. 그것은 주로 전력을 다른 유형의 전력으로 변환한다. 모터 제너레이터 세트는 전원의 전압, 위상 및 주파수를 변환하는데도 사용된다. 또한 공급 라인에서 전기 부하를 분리하여 응용할 수 있다. 그림의 M-G세트에서 모터와 발전기는 단일 샤프트를 사용해 함께 연결된다. 그들은 단일 회 전자 주위에 감겨 있고 커플 링에 필요한 조건은 모터와 발전기의 정격 속도가 같아야한다는 것이다. 2. 모터 제너레이터 세트의 작동 원리 ..

Study/Motor Control 2023.02.13