Может применяться для подсчёта импульсов с счётчиков воды, электросчётчиков, счётчиков газа
Сделан на основании примера http://www.mysensors.org/build/pulse_water но сильно переработан
2 канала
Подключать можно только к ножкам с обработкой прерывания во сне.
Для MSMD, Arduino Pro mini, Arduino Nano - это 2, 3 ножка
Если нужно включить 2 счётчик импульсов, раскомментируйте #define ENABLE_S2
От батарейки (режим сна)/Полного питания
Для использования без батареи закомментируйте #define SLEEP_MODE
В режиме сна не работает подсчёт потока.
Для правильного подсчёта потока нужно исправить Sx_PULSE_FACTOR и Sx_MAX_FLOW
Считывание напряжение батареи и температуры
Считывание напряжение батареи (через внутренний осциллятор)
Считывание температуры (Температура процессора)
Чтобы измерения были точнее, нужно произвести калибровку, переменных tGain - множитель, tOffset - Смещение
Если хотите чтобы напряжение передавалось в % и через системное сообщение sendBatteryLevel, нужно раскомментировать #define SYSBAT и поправить MIN_V, MAX_V уровень напряжения батареи. (Не рекомендую использовать этот метод, по причине не информативности и проблемы подстройки)
Сброс настроек
Если при включении, на пин A0 подать напряжение VCC, произойдёт сброс адреса устройства, после чего оно запросит у гейта новый адрес
Данные которые передаются на гейт
- [1] V_VAR1 - Импульсы 1 датчика
- [1] V_VOLUME - Поток 1 датчика
- [2] V_VAR1 - Импульсы 2 датчика
- [2] V_VOLUME - Поток 2 датчика
- [254] V_TEMP - Температура устройства
- [254] V_VOLTAGE - Напряжение источника питания
- [1] V_VAR1 - Импульсы 1 датчика
- [2] V_VAR1 - Импульсы 2 датчика
- Отключение ненужных систем процессора, для экономии батареи. ADC, analog comparator
- Проверка сброса
- Проверка и запуск NRF24
- Презентация ноды и датчиков
- Настройка прерываний
- Запрос предыдущих счётчиков импульсов у гейта
- СОН
- При срабатывании прерывания подсчёт импульсов
- Если накопились данные (время для сброса данных о потоке) - передать данные в гейт
- СОН
(IR барьер TCRT5000). Подключается на D2
Датчик хола. Подключается на D2
Геркон. Подключается на D2
Геркон с фильтором
- Включить ноду чтобы она определилась в системе.
- Добавьте сенсор 1 V_VAR1 и привяжите его к объекту счётчика (Это поле нужно при запросе предыдущих данных). Если не сделать этот пункт, нода будет постоянно запрашивать данные и не уйдёт в режим считывания (сон)
- Данные передаются только по истечению времени SEND_FREQUENCY. При импульсе они только сохраняются в переменную
- Нода не будет передавать данные пока не получит предыдущие значения импульсов
Примеры