본문 바로가기
반응형

전자/제어197

스텝 응답 특성 스텝 응답은 다음과 같다. Trise : Rising Time Tsettle : Settling Time 시스템 특성에 따라 다음과 같은 스텝 응답이 발생할 수 있다. ☞ Rising Time 정의 2023. 6. 24.
영상성분이 0일 때 알파베타 변환 영상성분이 0일 때 알파베타 변환식은 다음과 같다. 영상성분이 0일 때 식은 다음과 같다. 위 식을 대입하여 정리하면 다음과 같다. 영상성분이 0일 때는 a와 b 값만으로 알파베타 변환값을 구할 수 있다. ☞ 알파베타 변환 정의 2023. 6. 20.
PID 제어기 코드 (TI) TI의 ControlSUITE 라이브러리에 정의된 PID 제어기 코드는 다음과 같다. PID_MACRO(v) 매크로로 정의되어 있다. /* proportional term */ v.data.up = _IQmpy(v.param.Kr, v.term.Ref) - v.term.Fbk; /* integral term */ v.data.ui = _IQmpy(v.param.Ki, _IQmpy(v.data.w1, (v.term.Ref - v.term.Fbk))) + v.data.i1; v.data.i1 = v.data.ui; /* derivative term */ v.data.d2 = _IQmpy(v.param.Kd, _IQmpy(v.term.c1, (_IQmpy(v.term.Ref, v.param.Km) - v.te.. 2023. 6. 5.
PI 제어기 코드 (TI) TI의 ControlSUITE 라이브러리에 정의된 PI 제어기 코드는 다음과 같다. PI_MACRO(v) 매크로로 정의되어 있다. /* proportional term */ v.up = _IQmpy(v.Kp, (v.Ref - v.Fbk)); /* integral term */ v.ui = (v.Out == v.v1)?(_IQmpy(v.Ki, v.up)+ v.i1) : v.i1; v.i1 = v.ui; /* control output */ v.v1 = v.up + v.ui; v.Out= _IQsat(v.v1, v.Umax, v.Umin); //v.w1 = (v.Out == v.v1) ? _IQ(1.0) : _IQ(0.0); 파일 위치는 다음과 같다. C:\ti\controlSUITE\libs\app_lib.. 2023. 6. 4.
PI 제어기를 이용한 전류제한 기법 PI 제어기를 이용한 전류제한 방법은 다음과 같다. imax는 플러스 최대 전류이고 imin은 마이너스 최대 전류이다. ☞ 전류제한 알고리즘 2023. 6. 3.
모터 역기전력 추정 알고리즘 모터 방정식은 다음과 같다. 여기서, e는 역기전력이다. 모터의 R와 L을 알고 전압 v와 전류 i를 측정하면 역기전력 e을 계산할 수 있다. 역기전력 e를 추정하는 관측기는 다음과 같다. 위 블록다이어그램에서 측정된 전류(imea)와 추정된 전류(iest)의 차이는 PI 제어기를 이용하여 역기전력을 추정한다. R과 L이 실제 값과 다르면 e는 실제와 다른 값으로 추정된다. ☞ 모터 상태 관측기 2023. 5. 29.
장난감 소형 DC 모터 스펙 다음 사진은 장난감 등에 사용되는 소형 DC 모터이다. 이와 같은 모터의 일반적인 특성은 다음과 같다. 종류 특성 정격전압 3V 무부하 전류 0.4A 무부하 속도 16,000 rpm 정격토크 11.9 gxcm 정격전류 1.5A 정격속도 12,400 rpm 출력 1.23W 소음 30cm 거리에서 68dB 이하 2023. 5. 14.
알파베타 변환/역변환 (영상성분이 0일때) 영상성분이 0일때 알파베타 변환은 다음과 같다. 영상성분이 0일때 알파베타 역변환은 다음과 같다. 영상성분이 0일 때 α 성분과 u 성분은 동일하다. 2023. 5. 6.
스텝모터 정밀도 스텝모터에 마이크로 스텝을 사용하면 이론적으로 1회전에 51200 스텝 정밀도를 얻을 수 있다. 하지만, 실제 사용하면 그 정도 정밀도가 나오지 않는다. 무부하일때 스텝과 실제각는 다음 그림과 같다. 이론적인 스텝 정밀도와 거의 유사한 결과를 가진다. 부하가 10% 정도일때 스텝각과 실제각은 다음과 같다. 중간의 마이크로 스텝이 적용되지 않는다. 부하가 90% 정도일 때 스텝각과 실제각은 다음과 같다. 많은 마이크로 스텝이 적용되지 않는다. 스텝모터를 정밀하게 사용하기 위해서는 부하보다 매우 높은 모터를 사용해야 한다. 2023. 5. 5.
싸인 엔코더 뜻 싸인 엔코더(Sine Encoder) 또는 싸인-코싸인 엔코더(Sine-Cosine Encoder)는 다음 그림과 같이 90도 위상차를 가지는 싸인 파형을 출력되는 엔코더이다. 싸인 엔코더와 달리 디지털 인크리멘탈 엔코더의 파형은 다음과 같이 90도 위상차를 가지는 구형파이다. 싸인 엔코더는 아날로그 출력이기 때문에 디지털 인크리멘탈 엔코더에 비해 더 높은 해상도를 가질 수 있다. 2023. 4. 30.
PMSM 방정식과 역기전력 PMSM 방정식은 다음과 같다. 역기전력은 q 축 방정식의 마지막 항에 있다. 역기전력은 q축에서만 발생한다. 하지만, BLDC 모터와 같이 역기전력 파형이 정현파가 아니라면 역전력 성분이 d축에도 나타날 수 있다. PMSM에서는 정속도일 때 역기전력 크기는 일정한 값을 가지지만 BLDC 모터에서는 속도가 일정해도 역기전력 성분이 진동할 수 있다. 2023. 4. 23.
모터 드라이버의 구성과 데이터 모터 드라이버의 구성은 다음과 같다. 모터 드라이버의 주요한 데이터는 다음과 같다. 1) 모터 전압 2) 모터 전류 3) 모터 위치 4) 지령(Command) 위의 4가지 데이터를 처리하고 조합하여 다양한 정보를 생성할 수 있다. DC 모터는 전압와 전류 데이터가 각각 1개씩이지만 3상 모터는 전압과 전류가 각각 3개이기 때문에 처리할 데이터 양이 매우 많아진다. 위치 데이터를 이용하여 위치, 속도, 위상각 등의 정보를 구할 수 있다. 2023. 4. 17.
모터 드라이버 PH/EN 신호 풀브릿지 모터 드라이버 IC에서 PH/EN 신호는 Phase/Enable을 의미하고 다음과 같이 동작한다. EN=1일 때 PH에 인가되는 PWM의 듀티가 50%일 때는 모터가 정지하고 100%일 때는 정방향으로 회전하고 0%일 때는 역방향으로 회전한다. 이와 같은 방식의 PWM을 Bipolar Q4라고 한다. 이 방식은 PWM 신호를 한개만 사용할 수 있고 션트 저항 1개를 사용할 때 션트 저항에 전류가 항상 흐르는 장점이 있다. ☞ PWM 방식 2023. 4. 16.
BLDC 모터 컨트롤러 IC - AMT49413 Allegro의 BLDC 모터 컨트롤러 IC AMT49413의 구조는 다음과 같다. MOSFET은 내장되어 있지 않다. PWM - PWM 입력은 홀센서 신호에 따라 3상 중 하나의 MOSFET으로 출력된다. - PWM 신호는 외부에서 줄 수도 있고 내부 PWM을 사용할 수도 있다. 둘다 사용할 수도 있다. - 내부 PWM은 RC 핀에 연결된 RC에 따른 주파수의 PWM 신호를 사용한다. REF - REF에 인가되는 전압에 따라 전류 제한이 된다. CSOUT - CSOUT 핀에 모터에 흐르는 전류에 비례하는 전압이 출력된다. COAST - COAST 핀이 Low가 되면 모든 MOSFET이 OFF가 된다. TACHO / DIRO - TACHO와 DIRO은 모터 속도와 방향에 따른 펄스를 출력한다. MODE .. 2023. 4. 14.
PMSM 모터 토크 계산식 표면부착형 PMSM인 SMPM의 토크는 다음 식과 같다. 매입형 PMSM인 IMPM의 토크는 다음 식과 같다. SPMSM은 q 전류에만 비례하지만 IPMSM은 q와 d 전류 모두의 영향을 받는다. 2023. 4. 7.
PMSM 동기모터의 방정식 PMSM 동기모터의 회전좌표계에서의 방정식은 다음과 같다. 위 방정식에서 d 축과 q 축에는 상호간섭 성분과 역기전력 성분이 있다. 역기전력 성분은 q 축에만 있다. 전류제어기에서 위 두 성분을 Feedforward로 제어할 수 있다. 이 때 전류를 실제 측정한 값을 사용할 수도 있고 지령값을 사용할 수도 있는데 실제 측정값을 사용하면 측정 노이즈에 민감해진다. 2023. 4. 5.
스텝모터 구동 파워 IC (DRV8412/DRV8432) DRV8412/DRV8432는 풀브릿지 회로 2개가 내장된 IC로 스텝모터 1개 또는 DC 모터 2개를 구동할 수 있다. DRV8412는 방열패드가 IC 밑면에 있고 1개 브릿지 회로의 최대 출력전류는 3A이다. DRV8432는 방열패드가 IC 윗면에 있고 1개 브릿지 회로의 최대 출력전류는 7A이다. 브릿지 회로를 병렬로 사용한다면 DRV8412는 최대 6A이고 DRV8432는 최대 14A이다. 단락 보호, 과전류 보호, 과온 보호, 저전압 기능을 내장하고 있다. 외부 저항으로 값을 조절할 수 있는 CBC(Cycle-by-cycle) 전류 제한 기능을 내장하고 있다. 2023. 4. 4.
모터 상태 관측기 모터의 이산시간 상태방정식은 다음과 같다. 여기서, 상태 관측기(Luenberger observer)는 다음과 같다. 위 식을 정리하며 다음과 같다. ☞ 이산시간 상태방정식 관측기 2023. 3. 20.
모터의 연속시간/이산시간 상태방정식 1. 모터 연속시간 상태방정식 모터의 연속시간 상태방정식은 다음과 같다. 여기서, K : 토크상수 B : 마찰계수 R : 모터 저항 L : 모터 인덕턴스 J : 관성 모멘트 2. 모터 이산시간 상태방정식 위 식을 이산시간 상태방정식으로 변환하면 다음과 같다. 위 식에서 Ad와 Bd는 다음과 같다. 위 식을 정리하면 다음과 같다. 위 식을 정리하면 다음과 같다. ☞ 연속시간 → 이산시간 상태방정식 변환 2023. 3. 20.
연속시간 상태방정식을 이산시간 상태방정식으로 변환 연속시간 상태방정식은 다음과 같다. 위 식을 이산시간 상태방정식으로 변환하면 다음과 같다. 여기서, 각 계수는 다음과 같다. Ad는 다음과 같이 Laplace 역변환으로 구할수도 있다. 오일러 방법을 사용하여 근사적으로 다음과 같은 계수를 사용할 수도 있다. 2023. 3. 20.
Closed-loop 스텝모터 제어 방법 Closed-loop 스텝모터 제어 블록다이어그램은 다음과 같다. ☞ 스텝모터 Closed-loop 제어 방법들 2023. 3. 1.
스텝모터 Closed-loop 제어 스텝모터를 Closed-loop 제어하는 방법에는 다음의 종류가 있다. 1. Step-loss Compensation - 스텝모터의 이동이 끝난 후 위치 오차 만큼 이동하는 방법 - 가장 많이 사용하는 방법 - 이동 후 다시 한번 더 이동하는 단점이 있음 2. Load position control - 이동 중 실시간으로 위치 오차를 보상 3. Servo control - 스텝모터를 3상 서보 모터와 비슷한 방식으로 제어 (마이크로 스텝과 같은 방식아님) - 전류제어, 속도제어, 위치제어 - 폴수가 많기 때문에 제어 실행 주파수가 높아야 함 - 효율이 높음 - 공진이 없음 ☞ 스텝모터 closed-loop 제어 - 실시간 오차 보상 방법 2023. 2. 28.
Sensorless BLDC 모터 시동 방법 BLDC 모터를 Sensorless 방식으로 구동할 때 다음의 3단계를 순차적으로 실행한다. 1. Alignment - 모터 상에 전류를 흘려 영구자석을 일정 방향으로 정렬 - 영구자석이 초기에 180도 위치에 있으면 1번 전류를 인가해서는 정렬안될 수가 있음 - 다른 상으로 2번 전류를 인가하여 정렬 2. Starting - 전압과 속도를 증가시킴 - V/f 제어 - 전류 제한 필요 - Back EMF가 발생하는 속도까지 증가시킴 (예를들면 최대속도의 10% 정도까지) 3. Running - Back EMF을 이용하여 영구자석 위치 검출 및 제어 Sensorless BLDC 모터 제어에서는 정지된 상태에서 시동할 때가 가장 까다롭다. 부하가 크면 시동에 실패할 수도 있다. 2023. 2. 26.
3상 모터 벡터 제어 블록 다이어그램 상전류는 DQ 변환하여 전류벡터를 구한다. 전류벡터의 2개 성분은 각각의 PI 제어기에서 처리된다. 전류 제어기에서는 2개의 전압벡터가 출력된다. 전압벡터는 DQ 역변환하여 상전압을 구한다. 전류와 전압은 벡터로 변환되어 처리한다. 벡터의 실수와 허수성분은 각각 D와 Q 성분이다, 2023. 2. 26.
DQ 변환식 DQ 변환은 Clarke 변환 후 Park 변환을 하는 것으로 다음 식과 같다. DQ 변환은 다음 식과 같다. DQ 역변환은 다음 식과 같다. 2023. 2. 26.
2상 3상 벡터 변환 벡터제어는 상 신호를 벡터로 변환하여 제어하는 방식으로 벡터제어를 위해서는 신호를 벡터로 변환해야 한다. 벡터는 다음과 같이 복소수 평면으로 나타낼 수 있다. 실수부와 허수부 또는 크기와 위상각을 가진다. 90도 위상차를 가지는 2상 신호를 벡터로 변환하는 식은 다음과 같다. iγ는 영상성분이다. 120도 위상차를 가지는 3상 신호를 벡터로 변환하는 식은 다음과 같다 (알파베타 변환). iγ는 영상성분이다. ☞ 알파베타 변환 2023. 2. 25.
3상 드라이버로 2상 스텝모터 구동 3상 드라이버로 2상 스텝모터를 구동할 수 없다고 생각하고 있었는데 이것이 가능하다는 자료를 발견했다. 3상 드라이버로 2상 스텝모터를 구동하는 회로는 다음과 같다. 스텝모터에 인가되는 전압 벡터는 다음과 같다. SVPWM과 비슷한 방식으로 스텝모터에 90도 위상차가 나는 전압을 인가한다. 2상을 독립적으로 제어하기는 어렵고 벡터 제어를 해야 될 것 같다. ☞ 참고 자료 ☞ SVPWM 2023. 2. 24.
모터 회생 전류 해석 (브릿지 회로) 아래 브릿지 회로에서 왼쪽으로 PWM가 입력된다. 모터로 동작할 때 전류는 다음과 같다. 전류는 PWM이 1일 때 증가하고 0일 때 감소한다. 모터로 동작하기 때문에 PWM이 0일 때 외부로 에너지가 빠져나가 free-wheeling 전류가 감소한다. 발전기로 동작할 때 전류는 다음과 같다. 전류는 PWM이 1일 때 증가하고 0일 때 감소한다. 발전기로 동작하기 때문에 PWM이 0일 때 외부의 에너지가 공급되어 free-wheeling 전류의 크기가 증가한다. 2023. 2. 21.
동기모터 벡터제어의 새로운 관점 PMSM 동기모터의 벡터 제어기의 일반적인 구성은 다음과 같다. 위의 벡터 제어기는 다음과 같이 볼 수 있다. 그림 1은 DQ 변환을 사용하는 방식이다. DQ 변환은 알파베타 변환 후 회전변환을 한것이다. 하지만, 그림 2는 DQ 변환 대신 알파베타 변환만 하고 회전하는 전류벡터를 지령으로 넣는다. 전류 지령 I*은 벡터값이다. I*의 크기는 출력하려는 토크에 비례하고 위상각은 모터 엔코더에서 입력되는 각도에 회전 방향에 따라 π/2을 더하거나 뺀다. 모터가 회전하면 θm이 회전하고 θe도 회전한다. 따라서, 다음 그림의 전류벡터 I*는 회전한다. 제어기는 벡터 제어기이다. 지령 전류 I*와 실제 전류 I의 차이로 PI 제어를 한다. 출력되는 V도 벡터이다. 2023. 2. 18.
3상 PWM의 특성 이해 3상 PWM은 다음 그림과 같다. 여기서 T1과 T2 시간이 같다면 입력을 받는 모터에서는 동일한 전압으로 인식한다 (고조파 특성은 다름). 다음 그림과 같이 PWM 신호 위치를 이동해도 T1과 T2가 동일하다면 모터에는 동일한 전압이 입력된다. 다음과 같이 3상 중 2개만 PWM를 해도 동일한 전압이 모터에 인가된다. 아래와 같은 방식을 DPWM이라고 한다. SVPWM은 3상 PWM을 항상 중앙에 위치시키는 방식이고 DPWM은 3상 중 2상만 인가하는 방식이다. 2023. 2. 18.
반응형