Реклама ⓘ
Главная » Arduino
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Дисплей для отображения частоты сети электропитания

Идея проекта

Я давно планировал сделать нечто подобное. Идея состоит в том, чтобы на дисплее отобразить частоту сети электропитания. Значение частоты должно быть 50 Гц, однако на самом деле частота колеблется вокруг этого значения в результате изменения питания и энергопотребления.

Если частота падает, то это происходит из-за повышения энергопотребления и/или падения питания. Поэтому генераторы должны работать больше. Это немного снижает их скорость и системам управления необходимо некоторое время, чтобы поднять скорость назад.

Если частота поднимается, то это происходит из-за снижения энергопотребления и/или получения дополнительного питания. Поэтому генераторы должны работать меньше. Это немного увеличивает их скорость и системам управления необходимо некоторое время, чтобы снизить скорость назад.

В связи с этим частота постоянно то увеличивается, то уменьшается. Вы можете посмотреть график в реальном режиме времени последних 60 минут на веб-сайте государственной энергетической системы, и эту же информацию в аналоговом виде на веб-сайте динамического запроса.

Я захотел сделать дисплей, который будет отображать частоту сети электропитания до 3-х цифр после точки. Я буду использовать те же семисегментные дисплейные модули, как и для моих UNIX часов. Поэтому все, что мне нужно сделать, так это разработать схему, которая будет контролировать частоту.

Как контролировать частоту

Существует несколько способов как это сделать. Я выбрал следующий: необходимо подсчитать фиксированное число периодов частоты электропитания и время, в течение которого выполнялся подсчет.

Вот чертеж этой идеи: Синусоидальные колебания отображают сигнал сети электропитания. Высокочастотный сигнал идет параллельно и используется в качестве счетчика. Подсчитанное число после фиксированного количества циклов обратно пропорционально частоте.

Концепция измерения изменяющегося сигнала низкой частоты.

Например, если частота имела точное значение 50.000 Гц, я насчитал 200 периодов, на что потребовалось ровно 4 секунды. Если значение частоты равнялось 50.001 Гц, 200 периодам потребуется только 3.99992 секунд.

Но это совсем небольшая разница! Для точного определения времени необходимо использовать высокостабильный источник временных интервалов. RC-генератор в микроконтроллере не может это сделать. Я буду использовать микроконтроллер ATTINY84, который имеет погрешность только +/- 10%, или +/- 1% после пользовательской калибровки. Также я не могу использовать внешний кварцевый резонатор, не заплатив за высокостабильный резонатор МНОГО денег.

К счастью, есть один класс дешевых (очень дешевых) ИС, которые имеют высокоточные, и высокостабильные встроенные генераторы, и это генераторы импульсов времени. Часы реального времени – интегральная схема DS3231, которую я также использовал в UNIX часах, имеет на выходе частоту 32.768 кГц с погрешностью +/- 2 ppm (миллионная часть). Подсчитывая импульсы таким способом, я смогу очень точно определить время.

Математические вычисления

После небольших математических вычислений я смог выполнить расчет для 100 циклов питания (2 секунды на 50 Гц) и получить необходимую точность.

Формула для преобразования количества циклов в частоту сети электропитания имеет следующий вид:


где N подсчитанное число циклов электропитания и C подсчитанное число циклов на частоте 32768 Гц.

Я преобразовал формулу, добавив множитель 1000x, чтобы использовать только целые числа, поэтому 50.000 Гц будет действительно храниться как 50000. Это намного лучше для выполнения на микроконтроллере.

Поскольку мы используем целочисленные вычисления, то нам необходимо выполнять округление значений. Поэтому окончательная формула выглядит следующим образом:

Например, подсчитанное число 65724 будет равняться частоте 49.857 Гц, хранимой как значение 49857. Подсчитанное число 65723 будет равняться частоте 49.858 Гц, хранимой как значение 49858.

Следовательно, изменение одного числа представляет изменение одной значащей цифры (пересчитанной частоты). Это как раз то, что я и хотел получить.

Значение частоты передается напрямую на дисплей. Отображаемая на дисплее частота обновляется каждые две секунды.

На плате управления также установлены два светодиода для отображения изменения частоты: выше/ниже. Частота сохраняется в кольцевом буфере один раз в минуту. Скользящее среднее значение вычисляется за десять минут и разница между первым и последним значением используется для вычисления тренда. Разница более чем +/- 0.02 Гц считается существенным трендом.

Чтобы найти “наилучший” алгоритм для этого, данные государственной электроэнергетической системы, отображаемые в режиме реального времени, анализировались модулем, использующим библиотеку Python Beautiful Soup. Я только экспериментировал с различными приближенными оценками, пока не получил правильный результат.

Собираем все вместе

Перед разработкой окончательного варианта схемы я проверил код на Arduino с оптоизолированным входом сети электропитания. Электронный проект позаимствован из множества моих предыдущих работ. В него входит:

  • Входное устройство частоты сети из моего проекта Счетчик безопасных дней.
    • (Он срезает AC сигнал напряжением 9 В (от небольшого трансформаторного блока питания) до 5 В шин питания)
  • Соединение дисплея и часов реального времени DS3231 из UNIX часов.
  • Стандартный микроконтроллер ATTINY84 от хост-машины других проектов.

Блок-схема.

Я смог уменьшить размер платы до размера семисегментного дисплея. Я заказал платы в компании Ragworm, и все заработали с первого раза.

Единственной модификацией, которую я сделал, так это добавил небольшой “радиатор” на стабилизатор питания 5 В. Входное питание для системы величиной 9 В AC подавалось от небольшого адаптера. Поскольку регулятор управляет всеми 5 дисплейными индикаторами, он рассеивает мощность 1 Ватт, хотя сам имеет довольно маленький корпус. Он сильно нагревается, поэтому я добавил радиатор, который сделан из большого количества припоя на кусочке платы. Немного кустарно, но этот радиатор помогает регулятору охлаждаться.

Печатная плата, светодиоды, микроконтроллер, источник питания и “радиатор”.

И наконец, я вырезал лазером корпус (практически это стандартно для каждого моего проекта). Это была адаптация корпуса от UNIX часов. Для светодиодов контроля тренда частоты я использовал восковой карандаш, который расплавил, а затем с помощью лазера выгравировал две стрелки. Получилось совсем неплохо. Думаю, что смогу использовать данную технику в своих будущих проектах.

Собранный дисплей, на котором в данный момент отображается “нисходящий” тренд частоты.

Оригинал статьи

Теги:

Опубликована: 06.01.2014 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (5) | Я собрал (0) | Подписаться

0
hardbar #
Только текст и все ну плюс еще формулы. Никакой новизны, и полезности. Только игрушка. Ещё и на готовой плате.
Ответить
0
zeconir #
Пожалуй поддержу, так как по сути это обыкновенный частотомер.
Интересное решение с использование микросхемы (тактового генератора из часов). Но, если сделать замер равный 10 с, с обычным кварцем на 8-16 МГц, то точность можно увеличить до тысячных долей Гц. Автор, подумай над этим - стоит ли эта игрушка стольких затрат, и будут ли это повторять?
Ответить
0
demo1420 #
Самая первая проблема которая перечеркивает всю эту "теорию": где в сети синус??
Ну и как говорили другие, а зачем это нужно? Тебе не всё равно ли 50 или 500 Гц. В 90% нового оборудования ИИП, на входе которого стоит диодный мост и ему абсолютно по барабану частота на входе.
Ответить
0
Smelter #
Данный "игрушечный" девайс способен предсказывать отключения электропитания в энергосистеме. При некоторых критичных значениях частоты силовых цепей срабатывает защитная автоматика, без участия человека. При повышении нагрузки частота падает, и если не принять дополнительных мер (дрова в топку не подбросить) автомат тупо вырубит пару городских районов, разгрузив т.о. генератор. Но самые стрёмные вещи творятся при повышении частоты, генератор идёт в разнос поэтому автоматика также вырубает всё и вся и сбрасывает, например в реактор графитовые стержни, ну или тушит котлы... это кому как больше нравится
Ответить
0
Дмитрий #
"Пожалуй поддержу, так как по сути это обыкновенный частотомер.
Интересное решение с использование микросхемы (тактового генератора из часов). Но, если сделать замер равный 10 с, с обычным кварцем на 8-16 МГц, то точность можно увеличить до тысячных долей Гц. Автор, подумай над этим - стоит ли эта игрушка стольких затрат, и будут ли это повторять?" - на самом деле, грамотный прибор для контроля одного из важнейших параметров электросети. "частотомер"?..., да, но с весьма оригинальным решением, способным измерять частоту до тысячных долей герц...
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Модуль измерения тока на ACS712 (30А)
Модуль измерения тока на ACS712 (30А)
Металлоискатель MD3010II USB осциллограф DSO-2090
вверх