이 매뉴얼에서는 DC 모터 스위칭 모드를 위한 DC-DC 컨버터 및 제어 시스템 컨트롤러의 설계, 시뮬레이션, 구성 및 테스트에 대해 자세히 설명합니다.
그런 다음 컨버터는 부하 션트 DC 모터의 디지털 제어에 사용됩니다.
회로는 여러 단계에서 개발되고 테스트됩니다.
첫 번째 단계에서는 40V에서 작동하는 컨버터를 구축합니다.
이는 고전압에서 드라이버를 손상시키는 전선 및 기타 회로 구성 요소의 기생 인덕턴스가 없는지 확인하기 위해 수행됩니다.
두 번째 단계에서 컨버터는 최대 부하에서 400V의 전압으로 모터를 작동합니다.
마지막 단계는 Arduino를 사용하여 PWM 파동을 제어하여 전압을 조정하고 가변 부하로 모터의 속도를 제어하는 것입니다.
구성 요소가 항상 저렴한 것은 아니므로 가능한 한 저렴하게 시스템을 구축하도록 노력하십시오.
본 유틸리티의 최종 결과는 dc-DC 컨버터 및 제어 시스템 컨트롤러를 구축하는 것이며
, 모터 속도는 정상 상태 설정점에서 1% 이내로 제어되며, 가변 부하에서 속도는 2초 이내로 설정됩니다.
기존 모터의 사양은 다음과 같습니다.
모터 사양: 전기자: 380 Vdc, 3. 6 A여기(분로): 380 Vdc, 0.
속도: 1500 r/min전력: 약 1.
1 kWDC 모터 전원 공급 장치 = 380 V옵토커플러 및 드라이버 전원 공급 장치 = 21 V 이는 모터에 연결되거나 제어되는 구성 요소의 최대 전류 및 전압 정격이 더 높거나 동등한 정격을 갖음을 의미합니다.
회로도에서 D1로 표시된 드라이 휠 다이오드는 모터의 역전위로의 흐름 경로를 제공하여 전원이 꺼졌을 때 전류가 역전되어 어셈블리가 손상되는 것을 방지하는 데 사용됩니다.
모터는 여전히 회전 중입니다(발전기 모드).
정격 최대 역방향 전압은 600V이고 최대 순방향 DC 전류는 15입니다.
따라서 플라이휠 다이오드는 이 작업에 충분한 전압 및 전류 수준에서 작동할 수 있다고 가정할 수 있습니다.
IGBT는 광 커플러와 IGBT 드라이버를 통해 Arduino로부터 5V PWM 신호를 수신하여 매우 큰 380V 모터 공급 전압을 전환하여 모터에 대한 전원 공급을 전환하는 데 사용됩니다.
사용된 IGBT의 최대 연속 컬렉터 전류는
접합 온도 100°c에서 4.5A 입니다.
최대 이미터 전압은 600V입니다.
따라서 플라이휠 다이오드는 실제 적용에 충분한 전압 및 전류 수준에서 작동할 수 있다고 가정할 수 있습니다.
IGBT에 라디에이터를 추가하는 것이 중요하며, 가급적이면 대형 라디에이터를 추가하는 것이 좋습니다.
고속 스위치 MOSFET은 IGBT 없이 사용할 수 있습니다.
IGBT의 게이트 임계값 전압은 3.75V에서 5.75V 사이
이며 이 전압을 제공하려면 드라이브가 필요합니다.
회로는 10kHz의 주파수에서 작동하므로 IGBT의 스위칭 시간은 100us, 즉 전파 하나의 시간보다 빨라야 합니다.
IGBT의 스위칭 시간은 15ns로 충분하다.
선택된 TC4421 드라이버의 스위칭 시간은 PWM 파동의 최소 3000배입니다.
이는 드라이버가 회로 작동을 위해 충분히 빠르게 전환할 수 있도록 보장합니다.
드라이버는 Arduino가 제공할 수 있는 것보다 더 많은 전류를 제공해야 합니다.
드라이버는 Arduino가 아닌 전원 공급 장치에서 IGBT를 작동하는 데 필요한 전류를 얻습니다.
이는 정전으로 인해 Arduino가 과열되어 연기가 나고 Arduino가 파괴될 수 있으므로 Arduino를 보호하기 위한 것입니다(
시도 및 테스트됨).
드라이버는 광 커플러를 사용하여 PWM 파동을 제공하는 마이크로 컨트롤러로부터 격리됩니다.
광전 커플러는 회로에서 가장 중요하고 가치 있는 부분인 Arduino를 완전히 분리합니다.
매개변수가 다른 모터의 경우 IGBT를 모터와 유사한 특성을 가진 IGBT로 변경하기만 하면 필요한 역전압과 연속 수집 전류를 처리할 수 있습니다.
WIMA 커패시터는 모터 전원 공급 장치의 전해 커패시터와 함께 사용됩니다.
이는 안정적인 전원 공급 장치의 전하를 저장하고 가장 중요하게는 시스템의 케이블과 커넥터의 인덕턴스를 제거하는 데 도움이 됩니다. 부품 간 거리를 최소화하기 위해 회로 레이아웃에 불필요한 인덕턴스를 나열합니다
. 특히 IGBT 드라이버와 IGBT 사이의 루프에 나열됩니다.
Arduino, 광 커플러, 드라이버 및 IGBT 사이의 접지에서 노이즈 및 링잉을 제거하려는 시도가 이루어졌습니다.
어셈블리는 Veroboard에 용접됩니다.
회로를 만드는 쉬운 방법은 용접을 시작하기 전에 베로보드에 회로도의 구성 요소를 그리는 것입니다.
통풍이 잘되는 곳에서 용접하십시오.
Scrath 파일의 전도성 경로를 사용하여 연결해서는 안 되는 구성 요소 사이에 간격을 만듭니다.
DIP 패키징을 사용하면 구성 요소를 쉽게 교체할 수 있습니다.
이는 부품을 용접하거나 고장이 났을 때 교체 부품을 해결할 필요 없이 도움이 됩니다.
나는 바나나 플러그(
검은색과 빨간색 소켓) 를 사용하여
전원 공급 장치를 베로보드에 쉽게 연결하기 위해 이것을 건너뛸 수 있으며 와이어는 보드에 직접 용접됩니다.
Arduino PWM 라이브러리를 포함합니다(
ZIP 파일로 첨부됨).
비례적분 제어기의 파이 제어기는
회전자의 속도를 제어하는데 사용됩니다.
충분한 정착 시간과 오버슈팅을 얻기 전에 비율과 적분 이득을 계산하거나 추정할 수 있습니다.
PI 컨트롤러는 Arduino ()loop와 동시에 구현됩니다.
타코미터는 로터의 속도를 측정합니다.
AnalogRead를 사용하여 Arduino의 측정값을 아날로그 입력 중 하나에 입력합니다.
오류는 설정점 회전자 속도에서 현재 회전자 속도를 빼서 계산되고 오류와 동일하게 설정됩니다.
시간 통합은 각 루프에 샘플 시간을 추가하고 이를 동일한 시간으로 설정하여 루프가 반복될 때마다 증가함으로써 수행됩니다.
Arduino가 출력할 수 있는 듀티 사이클 범위는 0부터 255까지입니다.
PWM 라이브러리의 pwmWrite를 사용하여 듀티 사이클을 계산하고 선택한 디지털 출력 PWM 핀으로 출력합니다.
PI 컨트롤러의 구현 이중 오류 = ref-rpm;
시간 = 시간 20e-6;
이중 pwm = 초기 kp * 오류 ki * 시간 * 오류;
PWMdouble 센서 구현 = AnalogRead(A1); pwmWrite(3, pwm-255);
ArduinoCode에서 전체 프로젝트 코드를 볼 수 있습니다. rar 파일.
파일의 코드는 드라이버를 반전시키도록 조정됩니다.
역방향 드라이브는 회로 듀티 사이클에 다음과 같은 영향을 미칩니다. 이는 new_dutycycle = 255-dutycycle을 의미합니다.
비반전 드라이브의 경우 위의 방정식을 반대로 하여 이를 변경할 수 있습니다.
마지막으로 원하는 결과가 달성되었는지 확인하기 위해 회로를 테스트하고 측정했습니다.
컨트롤러는 두 가지 다른 속도로 설정되어 Arduino에 업로드됩니다.
전원이 켜져 있습니다.
모터는 예상보다 빠르게 가속한 다음 선택한 속도에서 안정화됩니다.
이 제어 모터의 기술은 매우 효과적이며 모든 DC 모터에서 작동할 수 있습니다.