Фазне регулювання навантаження змінного струму за допомогою FLProg

Видався вільний день і я вирішив нарешті випробувати блок швидкісного лічильника в режимі лінії затримки. Цей режим створювався в основному для реалізації фазного регулювання навантаження, але досі я не встигав обкатати його в реальному застосуванні. Думаю вже час. Обв'язування блоку я зробив за цією схемою:

змінного
На оптопарі PC814 зібраний детектор нуля. Оскільки блок працює на перериваннях, входом детектора нуля можуть служити тільки входи контролера до яких прив'язуються апаратні переривання. У разі UNO це входи D2 та D3. На оптосимісторі MOC3023 зібраний блок керування симістором. Для керування цим блоком можна вибрати будь-який вільний цифровий вихід контролера. Схема проекту

Res - Аналоговий вхід. На вході стоїть змінний резистор. Блок SCT2 - Блок швидкісного лічильника. (Бібліотека елементів -> Лічильники -> SpeedCounter)

змінного
регулювання
змінного
фазне
регулювання

Оскільки всі оптопари відрізняються, необхідно зробити налаштування блоку Scalе. Для цього на якийсь час модернізуємо проект.

змінного

Тепер значення затримки раз на секунду буде виводитись у Ком-порт. Для чого це потрібно? Оскільки передній фронт імпульсу з детектора нуля приходить трохи раніше за справжній момент переходу синусоїди через 0 (у момент згасання світлодіода оптопари), то нам необхідно визначити цей час для завдання його як 100% значення потужності на навантаженні. Ось параметри налаштування для блоку Scale.

навантаження

Заллємо програму в контролер і запустимо монітор компорту. При обертанні змінного резистора лампа або горітиме або мерехтітиме. Ось як це виглядає.

Добиваємось рівномірного максимального горіння. Значення отримане через компорт записуємо. Це значення будемо заносити в поле «Нижня межавихідного значення» Scale. Тепер відбудуємо другий кордон. Знову змінимо значення в блоці Scale

змінного
Тривалість напівперіоду напруги мережі становить 10000 мікросекунд. Але в нас імпульс зрушено 1102 мікросекунди раніше. Відповідно щоб встановити повний нуль потужності необхідно максимальну затримку збільшити на стільки ж. Можна звичайно просто виставити 11102, але краще перевірити. Заллємо програму в контролер і запустимо монітор компорту. Добиваємося моменту переходу з мерехтливого горіння на повне згасання. Значення із компорту записуємо. Ось як це виглядає.

Ну і тетер можна використовувати отримані значення. Заповнюємо блок Scale

регулювання
Ну ось що вийшло

Тепер можна прибирати блоки генератора та передачі компортних даних, а на вхід Scale подавати необхідне Вам регулювальне значення. Зверніть увагу в поле «Верхня межа вхідного значення» блоку Scale необхідно занести значення регулюючої величини, що відповідає 0 потужності на навантаженні, а в полі «Нижня межа вхідного значення» значення, що відповідає 100% потужності.