РадиоКот :: Снимаем показания квартирных электро и водосчетчиков
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Автоматика >

Теги статьи: Добавить тег

Снимаем показания квартирных электро и водосчетчиков

Автор: Кодер
Опубликовано 20.02.2017
Создано при помощи КотоРед.

 

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

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

Устройство предназначено для:
- водосчетчиков в которых имеется геркон, без каких-либо дополнительных резисторов и прочих элементов, который замыкается и размыкается при вращении крыльчатки счетчика.
-электросчетчиков, в которых есть светодиод, подсчитав количество вспышек которого, можно получить количество киловаттчасов (например СЭО-1.15.402).

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

 

 

 

 

 

 

 

 

 

 

 

 

Устройство построено на микроконтроллере Atmega 328p. В качестве фотодатчика, использован обычный фотодиод BPW34. Основная проблема, с которой пришлось столкнуться, это высокое энергопотребление. Например, использованный bluetooth модуль HC-05 потребляет 40 миллиампер в режиме передачи и не сильно меньше в режиме ожидания. Для батарейного питания это абсолютно неприемлемо. Из-за этого пришлось сделать bluetooth модуль отключаемым по питанию (ключ Q1). В отсутствии импульсов на входе контроллер находится в режиме глубокого сна, bluetooth выключен потребление всей схемы менее 1мка. Когда приходит импульс на вход контроллер просыпается, увеличивает значение счетчика и засыпает снова. В этом режиме схема потребляет примерно 7ма. Если импульсов накопилось выше определенного значения (по умолчанию 100литров или 1квтчас) то включается bluetooth модуль и данные передаются на PC. Сеанс передачи данных длится примерно 10-15сек. Это самый энергозатратный режим (до 45 милиампер). Если не удалось соединиться с PC за 30сек, то контроллер снова засыпает. Контроллер учитывает время нахождения в последних 2-х режимах, а также количество успешных и неуспешных сеансов связи.

Импульсы от счетчиков через фильтрующие RC цепочки поступают на триггер Шмитта, выполняющий роль формирователя. Потенциометр RV1 нужен для настройки постоянной времени RC фильтра. Дело в том, что при высокой потребляемой мощности (>4 квт), частота вспышек светодиода на электросчетчике может достигать 30Гц. Если сделать очень большую постоянную времени, то фильтр начнет давить полезный сигнал, а если очень маленькую, то начнет пролезать 50Гц помеха. При настройке нужно первоначально поставить на RV1 минимальное сопротивление и, если наблюдаются ложные срабатывания формирователя, нужно постепенно увеличивать RV1. Для канала электросчетчика лучше использовать экранированный 2-х проводный кабель и делать его как можно более коротким.

Устройство использует режим SPP bluetooth. Т.е. при соединении с PC появляется виртуальный com порт, через который можно посылать в устройство текстовые команды и принимать данные. Под линуксом это делается при помощи команды rfcomm, которая дождавшись входящего соединения, запускает указанный скрипт. Пример скриптов обмена и описания команд, можно найти в прилагаемом архиве. Скрипт просто сбрасывает всю принимаемую информацию в системный лог в таком примерно виде:

Feb 16 20:10:48 localhost root: xx:xx:xx:xx:xx:xx #0:22687.2(kwh) 00016 #1:00000.000(m3) #2:00000.600(m3) CPUtime:6949(s) BTtime:6614(s) Vbat:4412(mv)
Feb 16 20:10:48 localhost root: xx:xx:xx:xx:xx:xx FreeRam:[528]
Feb 16 20:10:48 localhost root: xx:xx:xx:xx:xx:xx Sess:124/55
Feb 16 20:10:49 localhost root: xx:xx:xx:xx:xx:xx
Feb 16 20:10:49 localhost root: xx:xx:xx:xx:xx:xx quit
Feb 16 20:10:49 localhost root: xx:xx:xx:xx:xx:xx byebye :)

 

 Прошивка контроллера

 

Для прошивки был использован обычный китайский программатор с переходником на 6 пиновый ISP разъем. Разрабатка прошивки делaлась под Ubuntu linux 16.04 LTS. Использовался только свободный софт из состава дистрибутива. Были установлены пакеты arduino-mk, arduino-core, gcc-avr, avrdude из штатного репозитория

Сборка прошивки из исходника

make

Заливка прошивки в контроллер

make ispload

Установка фузов

make set_fuses

По сравнению с дефолтными изменены следующие фузы
CHDIV8 отключен - соответственно частота контроллера установлена 8МГц 

EESAVE включен - не очищать EEPROM при перепрошивке

Выбор bluetooth HC-05 модуля

На ebay и aliexpress продается огромное количество различных вариаций HC-05 модуля. Примерная цена 1000р за пару. Нужно искать именно с такой распиновкой как на картинке (VCC,GND,TXD,RXD,KEY,LED). Другие варианты работать не будут, ну разьве что подпаяться проводами напрямую к дочерней плате. Внимание: HC-06 работать не будет в принципе (она умеет только слейв режим)

 

 

 

 

 

 

 

 

 

 

 

Печатная плата

Схема и PCB разработаны в пакете KiCad 4.0.2. Габаритные размеры платы 89х60мм. (вид со стороны разъемов) 

 

Компоновка 3D модели в KiCad и готовая PCB. На фотографии платы (rev 1) есть ошибка в разводке - переполюсовано питание у триггера Шмитта. На чертежах я это исправил (rev 2), но плату переделывать не стал, поленился, пришлось припаять пару проводов.

 

 
 
 
 
 
 
 
 
 
 
 
 
 

 

 

 



 

 

 

 

 

 

 

 

 


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

 

Собранное устройство в корпусе


И, напоследок, для эстетов, счетчик с приколхоженным  фотодатчиком

 


 


Файлы:
Прошивка, Схема, Плата


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

11 11 16
0 0 1