Интеллектуальный счетчик электроэнергии

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

На практическом примере рассмотрим блок, который подключается к телеметрическому выходу электросчетчика и позволяющий передавать текущие показания электросчетчика по протоколу MODBUS и отключать потребителей электроэнергии по потреблению заданного объема кВатт*часов.

Рассмотрим схему:

Основой блока является микроконтроллер ATTiny2313. Связь между блоком и компьютером организована через микросхему MAX487, организующую канал стандарта RS-485. Более подробно про стандарт RS-485 я писал в своей статье «Контроллер температуры и влажности, счетчик импульсов с протоколом MODBUS». С помощью любой терминальной программы на компьютере производится установка адреса блока и передача параметров подключенного электросчетчика в микроконтроллер. Какие параметры и их формат можно увидеть в файле «Формат команд». Кнопка BUT1 предназначена для сброса параметров в значения по умолчанию. Практически она не нужна и предусмотрена на будущее. Пока же с её помощью можно сбросить адрес устройства в &hFF. Кнопка BUT2 имитирует телеметрический выход электросчетчика. Кстати, в большинстве современных счетчиков телеметрический выход представляет из себя транзистор оптопары. Поэтому надо подключать с соблюдением полярности — эмиттер оптопары на общий провод, коллектор — на вход PB6 микроконтроллера. К порту PA2 микроконтроллера подключена оптопара U3, через которую включена обмотка реле/пускателя для подключения нагрузки к электрической сети. Сам блок запитан от любого источника питания, обеспечивающего постоянное напряжение на выходе не менее 7 Вольт при токе не более 100 мА. Большинство китайских импульсных зарядок для сотовых телефонов соответствует этим требованиям. В блоке счета все параметры и подсчитанные значения сохраняются в энергонезависимой памяти микроконтроллера, что исключает пропадание данных при отключении устройства от электросети.

Общая схема соединений представлена ниже:

А вот и фото собранного устройства:

Электросчетчик типа DDS232, реле применено типа МКУ-48, блок питания размещен внутри синей коробочки, блок счета — маленькая платка в правом нижнем углу. Нагрузка представляет из себя лампу накаливания (для индикации) и розетку, куда подключается более мощная нагрузка (обогреватель, электрочайник) для проверки и настройки.При желании можно разместить блок питания, блок счета и малогабаритное реле с контактами на ток до 25 Ампер внутри электросчетчика. Понятно, что эту систему можно реализовать и для 3-х фазного подключения.

Печатная плата блока счета прилагается. Дополнительно на плате предусмотрены места для установки снаберов на 5.5 — 6.8 Вольт, предназначенных для защиты входов MAX487 от бросков напряжения. В то же время, судя по описаниям, микросхемы с буквой «Е» в конце обозначения имеют уже встроенную защиту. А других микросхем (т.е. без буквы «Е») я в продаже не встречал. В принципе схема не критична к номиналам деталей и позволяет изменять значения резисторов и конденсаторов в широких пределах.

Прошивка для микроконтроллера прилагается с ограничением до 254 кВатт*часов.

Для желающих промоделировать в Proteus прилагается файл в архиве. Правда, скорее всего, придется немного поправить схему (убрать реле, заменить оптопару светодиодом и прочее).

Порядок задания параметров:
1. Первоначально блок счета имеет адрес &hFF.
2. Запускаем любую терминальную программу, позволяющую работать с HEX-кодами.
3. Задаем новый адрес «02» и показания счетчика 5 кВатт командой FF 06 02 00 00 00 05 00
4. Передаем в микроконтроллер коэффициент пересчета 02 06 02 FF 10 00 00 00 (&h10 = 16 в десятичной системе).
6. При необходимости, передаем в микроконтроллер порог потребления 02 06 02 F0 00 05 00 00 (для примера ограничим в 5 кВатт)
7. При необходимости можно проверить, сколько киловатт*часов осталось до отключения: запрос — 02 06 02 F1 00 00 00 00, ответ 02 06 02 F1 05 00 00 00 00 — осталось 5 кВатт*часов

Все эти команды показаны ниже:

При программировании микроконтроллера необходимо выставить фьюзы: работа от внутреннего осциллятора на 8 МГц, деление на 8 — отключено, порт PA2 работает как порт ввода-вывода, а не как RESET (по умолчанию во фьюзах установлено, что работает как RESET).

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

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
U1 МК AVR 8-бит ATtiny2313 1
U2 ИС RS-422/RS-485 интерфейсов MAX487E 1 MAX485E
U3 Оптопара MOC3052M 1
U4 Линейный регулятор LM7805 1
С1-С4 Конденсатор 0.1 мкФ 4
R1, R3 Резистор 330 Ом 2
R2 Резистор 10 кОм 1
RL1 Реле МКУ-48 1 В зависимости от нагрузки