Заоконный датчик. Железо

Продолжение. Начало здесь.

О том, чем руководствоваться при выборе железа я писал здесь «Метеостанция на Arduino от А до Я. Часть 2. Выбор компонентов. Железо».

Забегая далеко вперёд, надо сразу признать, что первая версия заоконного (удаленного) датчика получилась не совсем удачной в плане электропитания и энергопотребления. Как я уже писал, у меня под рукой был только модуль Arduino Pro Mini на 5 В. И я использовал Ni-MH аккумуляторы, вот такие.

При том, что я подсоединил ещё и солнечную батарею вся конструкция у меня проработала автономно около 25 дней. Очень отрицательно на ёмкость аккумуляторов повлияли низкие, часто отрицательные температуры на улице конца зимы, начала весны.

Но в целом направление выбрано верно. Чтобы у вас всё работало гораздо дольше, произведите следующие замены:

  1. Купите Arduino Pro Mini на 3,3 В. Как отличить Arduino Pro Mini на 5 В и на 3,3 В я уже писал.
  2. Используйте Li-ion аккумулятор типа Panasonic NCR18650A на 3,7 В. Я покупал здесь 2 шт. за $14 на 3100mAh. Возможно это покажется дороговатым, но смотрите сами чтобы не было такого «Ужасы китайского городка». Можете попробовать CR123, CR123A батареи. И помните об «Arduino заблуждение. 9 В батарея хороший источник питания». Если у вас есть другие аккумуляторы, возможно в нестандартных корпусах, то для их зарядки можно использовать мой «Самодельный держатель для аккумуляторов».

Главное, что надо помнить, это то, что ваши аккумуляторы будут работать на улице, т.е. при отрицательных температурах, которые замедляют химические процессы происходящие внутри аккумов и, тем самым, сильно снижают их ёмкость.

Вышеописанные перестановки не повлекут переделки или замены других компонент, потому что мы серъезно подошли к делу в самом начале «Метеостанция на Arduino от А до Я. Часть 1. Проектирование».

Датчик DHT22 сможет работать и от 3,3 В, так что и тут всё путём.

 

Дополнительно

Как припаять разъемы к Arduino Pro Mini

Как прошить Arduino Pro Mini

 

Питание

Первоначально я использовал 4 шт. Ni-MH аккумулятора соединённых последовательно с отводом от 3-его, так что получилось два питающих напряжения: на 4,8 В для датчика DHT22 и 3,6 В для всего остального. Я не применял понижающие (точнее уничтожающие энергию) или повышающие электронные схемы, только экологически чистые напряжение и ток :)

Читать ещё :   5 open source инструментов для домашней автоматизации

remote-NiMh-power-schema

remote-NiMh-power

Дополнительно кое-что можно почерпнуть из «Arduino. «Кушать» подано».

Солнечная панель подключена как показано на рисунке. Надеюсь понятно. Solar панель  1.6W 5.5V 266mA покупалась за $6,64.

В схеме использован диод Шоттки типа 1N914, покупал на ebay по $1,5 за 10 штук. И электролитический конденсатор 50—100мкФ.

Схема подключения солнечной панели

Схема подключения солнечной панели

Распиновка  и соединение

Приступим к сборке.

Датчик температуры и влажности DHT22

humidity-and-temperature-sensor-dht22(AM2303)-530x476

Распиновка для подключения датчика температуры и влажности DHT22:

DHT22

лицевая сторона

слева направо

Arduino Pro Mini Примечание
VCC 3,3 — 5В Рекомендуется 5В, лучше внешнее питание
SDA D2 В скетче это DHTPIN
NC Не подсоединен
GND GND

Опционально можно подключить (подтянуть) SDA через 10K резистор к VCC.

Инициализация:

#define DHTPIN 2 // цифровой пин D2
DHT dht(DHTPIN, DHTTYPE);

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

weather-dht22-02

weather-dht22-03

weather-dht22-04

nRF24L01+

nRF24L01+

Распиновка модуля радио nRF24L01+ (смотреть сверху платы где чип, при этом штырьки пинов окажутся снизу):

(2) 3,3V (4) CSN (6) MOSI (8) IRQ
(1) GND (3) CE (5) SCK (7) MISO

Подключение nRF24L01+

Arduino Pro Mini nRF24L01+ Примечание
 3,3V  VCC (2) Лучше внешнее питание
pin D8 CE  (3) chip enable in
SS pin D10 CSN (4) chip select in
SCK pin D13 SCK (5) SPI clock in
MOSI pin D11 SDI (6) SPI Data in
MISO pin D12 SDO (7) SPI data out
IRQ 8 Interrupt output, не подсоединен
GND GND (1)

Инициализация:

NRF24 nrf24(8, 10);

Как советуют на форумах, к выводам питания nRF24L01+ сразу припаял электролитический конденсатор небольшой ёмкости (10мкФ).

Радио-модуль у меня с внешней дополнительной антенной, две стены «пробивает» надёжно.

remote-nrf24

remote-nrf24-02

Вольтметр

Заоконный датчик имеет вольтметр для измерения питающего напряжения батареи, подробно описан здесь «Arduino. Секретный вольтметр. Правильное измерение напряжения».

Данные считываются с аналогового пина A1.

voltmeter-divider

У меня резисторы делителя напряжения на 100 КОм и 10 КОм (у вас могут быть немного отличающиеся номиналы, их необходимо точно измерить омметром).

const float r1 = 100400; // 100KOm
const float r2 = 9960;   // 10KOm

Следующую константу необходимо откалибровать индивидуально как описано здесь.

const float typVbg = 1.082; // обычно в пределах 1.0 — 1.2 В

Вольтметр

Вольтметр

Вольтметр на макетке, тестирование

Вольтметр на макетке, тестирование

 

По мере того как наша аккумуляторная батарея будет разряжаться (в тёмное время суток) и заряжаться от солнечной батареи, график питающего напряжения будет выглядеть пилообразно, «проседая» в пасмурные дни:

voltmeter-graph

График реальный, взят с веб-морды нашего проекта.

Сборка

Для сборки блока в целом я опять использовал макетную плату под пайку. Где купить я писал здесь.

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

weather-dht22-01

remote-assembly-01

weather-remote-sensor-01

Продолжение следует…

 

От автора

Если что непонятно — спрашивайте в комментариях.

Чтобы не пропустить следующую публикацию подписывайтесь на канал.

Проект находится в постоянном развитии, так что здесь были и будут ошибки и неточности. Я надеюсь, что вы мне укажете на них в комментариях.

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

Лицензия Creative Commons
Произведение «Метеостанция на Arduino от А до Я» созданное автором по имени tim4dev.com, публикуется на условиях лицензии Creative Commons «Attribution-NonCommercial-ShareAlike» («Атрибуция — Некоммерческое использование — На тех же условиях») 4.0 Всемирная.