DC의 경우 MOSFET을 사용하고 언제든지 닫거나 열 수있는 PWM을 사용하여 전원을 제어하는 것이 훨씬 쉽습니다.
Howerver, AC의 경우 Triacs를 다루어야합니다. TRIAC는 또한 그것을 제어 할 게이트가 있지만 Triac이 켜지면 AC 전압이 0 볼트로 내려갈 때까지 꺼질 수 없습니다. 우리가 220V 및 50Hz의 AC 전기를 고려하면, 사인의 50 기간과 100 개의 반 기간 (50 전압 양성 50 전압 음성)이 있습니다.
전력을 관리하는 가능한 방법 중 하나는 위상 전환입니다.
작동하기 위해서는 AD 제로 크로스 검출기가 필요하고 필요한 단계의 이동을 위해 TRIAC를 켜야합니다. 그것은 잘 작동하지만 큰 단점은 많은 전자기 간섭 (EMI)이며 4 Kwatt와 같이 큰 전력을 통근해야 할 때 상황이 나빠집니다. 당신은 많은 EMI를 얻을 수 있으며 트리 아는 스트레스 모드에 있습니다.
전압이 낮을 때 (0 볼트에 가까운) 트라이크를 켜는 것이 훨씬 좋습니다. 또 다른 방법은 특정 기간 동안 트리릭을 켜는 것입니다.이 경우 EMI에 문제가 없습니다. Howerver, 전력을보다 우선 순위로 평가하는 방법은 무엇입니까? 예를 들어, 발전 속도 = 40%가 필요합니다. 처음 40 반 기간 동안 만 트리릭을 켜야합니까? 이 문제를보다 정확한 방식으로 해결하기 위해 Bresenham 알고리즘을 사용할 수 있으므로 특정 기간 동안 전원을 확산시키는 데 도움이됩니다.
50Hz-> 100 절반 기간에 대한 예를 보자. - Triac이 꺼져 있고, # - Triac이 켜져 있습니다.
또한이 방법의 경우 제로 크로스 검출기가 필요하며 트리릭은 내부에 제로 크로스 감지가있는 MOC3041 (또는 유사한 IC)으로 관리해야합니다. 대안으로서, 고체 상태 릴레이도 Fotek SSR-40 DA와 같이 (내부에서 제로 크로스 감지)를 사용할 수 있습니다.
그러나이 접근법은 더 높은 주파수가 필요한 광 디밍에 사용할 수 없습니다. 50Hz AC의 경우 트리 아는 초당 0 ~ 100 회로 켜질 수 있습니다. 저항 부하 (히터)의 경우 매우 정상이지만 전구가 깜박일 것입니다.
Bresenham 알고리즘을 처리하려면 검출기가 필요합니다. 제로 크로스 탐지기 개략도
이 회로의 오실로그램 :
전압이 0 볼트에 해당하는 펄스의 피크.
Arduino SketchBook 폴더의 "라이브러리"라는 폴더 아래에서 "Bresenhamtriacdriver"라는 새 폴더를 만듭니다. 아직 존재하지 않는 경우 폴더 "라이브러리"를 만듭니다. 모든 파일을 "Bresenhamtriacdriver"폴더에 배치하십시오.
자신의 스케치에서 라이브러리를 사용하려면 Sketch> 가져 오기 라이브러리 에서 선택하십시오.
testscketch.ino