ARDUINO Часы-метеостанция. Обсуждение проекта

Mynickden

✩✩✩✩✩✩✩
11 Апр 2019
1
1
Добрый день!

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

Посмотреть вложение 2854

Дальше спаиваем все компоненты как на картинке. Мосфет я использовал IRF3205, но подойдут любые, которые размыкаются от 5V.
Потом заливаем скетч из вложения. Два раза в секунду (во время мигания точками) снимаются показания с фоторезистора и на их основе регулируется подсветка LCD и сигнального светодиода.
Все изменения, которые внес в скетч отметил комментариями // !!!!!!!!!!!!!!!!!!!!!!!11111111111111!!!!!!!!!!!!!!!!!!!!!!!!
Если компоненты будете заказывать на Али, вот ссылки
Мосфеты
Фоторезисторы

Так же прикрепляю модельки своего корпуса, мож… кому и пригодится.
Здравствуйте, скажите как внести изменения прошивку от Роман Новиков v1.3b7. Спасибо.
 
  • Лойс +1
Реакции: abyss2004

osy13

✩✩✩✩✩✩✩
28 Апр 2019
6
0
Добрый день!
Повторил проект, все заработало.
Пока RGB светодиод не стал подключать. Я вот смотрю на схему, все ножки светодиода подключены к пинам D ардуино, а гдеже земля? Всегда же ведь общий на землю?
 

blackbernblack

✩✩✩✩✩✩✩
10 Апр 2019
4
0
Протестровал каждый датчик в отдельности из библеотеки что дает нам Алекс в архиве. Но столкнулся с неприятностью. Датчик MHZ-19B 5000 ни в какую не был виден ардуинкой, че я токо не делал(статс сенсора всегда возвращало -1, запускал пример из либы). Выкачал либу которую предлагала студия, и все сразу же взлетело, при чем оттестировал как RX TX так и PWM выходы. Алекс, не знаю где ты выкачал MHZ либу но она кривая и не у всех будет взлетать, Предлагаю добавить заметку на сайт, что если CO2 данные не поступают в ардуинку то попробуйте выкачать официальную библиотеку и протестировать датчик.
P.s. Убил целый день с этой либой и уже хотел заказывать новый датчик так как думал что мой нерабочий
 

PandoraB0x

✩✩✩✩✩✩✩
6 Апр 2019
1
1
Никто не пробовал вместо диода поставить адресную ленту?
 
  • Лойс +1
Реакции: Jevega

yenn

✩✩✩✩✩✩✩
21 Май 2019
2
3
Протестровал каждый датчик в отдельности из библеотеки что дает нам Алекс в архиве. Но столкнулся с неприятностью. Датчик MHZ-19B 5000 ни в какую не был виден ардуинкой, че я токо не делал(статс сенсора всегда возвращало -1, запускал пример из либы). Выкачал либу которую предлагала студия, и все сразу же взлетело, при чем оттестировал как RX TX так и PWM выходы. Алекс, не знаю где ты выкачал MHZ либу но она кривая и не у всех будет взлетать, Предлагаю добавить заметку на сайт, что если CO2 данные не поступают в ардуинку то попробуйте выкачать официальную библиотеку и протестировать датчик.
P.s. Убил целый день с этой либой и уже хотел заказывать новый датчик так как думал что мой нерабочий
Можете кинуть прошивку? или код где и что поменять, такая же проблема, по индикации при запросах видно что работает, но на дисплеи -1 ppm. При просмотре порта на ардуинке получаю ошибку error can t get mh z19 response
 
  • Лойс +1
Реакции: AtemTem

81Slim

✩✩✩✩✩✩✩
26 Май 2019
2
0
Отличный проект! Все заработало сразу... Вот только в часах вместо двоеточия мигают буквы "и". Alex, где поправить?
 

Вложения

  • 59.8 KB Просмотры: 296

81Slim

✩✩✩✩✩✩✩
26 Май 2019
2
0
В прошивке 1.5 нашел строки -

void drawdots(byte x, byte y, boolean state) {
byte code;
if (state) code = 165;
else code = 32;
заменил на код 42 - "*", вроде, как снежинки мигают...
 

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
Никто не пробовал добавить ещё один датчик температуры (проводной выносной или беспроводной), для возможности измерения температуры воздуха на улице? Интересно, как доработать
 

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
Добрый день. Подскажите, какая связь светодиода и дисплея? Проблема в каком то из контактов.
Поведение метеостанции следующее: На дисплее отображаются квадраты, светодиод не горит. Перепаял SDA, SCL контакты на дисплее. Перепаял 4 контакта светодиода (у самих ножек). Дисплей стал показывать, все работало.
Далее перенёс станцию и тут же погас дисплей и светодиод. Спустя 10 перезапусков, снова работает...
Но спустя минут 20 работы - потускнел и завис экран, первые 2 перезапуска показывал иероглифы с бегущей строкой, потом ложное время и другие показатели + дефекты в символах, после очередного перезапуска - самопроизвольные ложные нажатия сенсорной кнопки.

Пытаюсь найти слабое место. Вижу в данном случае связь светодиода и вывода информации на дисплей, но не понятно, как локализовать причину. По сканеру все 3 адреса (как в примерах) отображаются, следовательно i2c модуль исправен.
Может ли быть проблема в проводниках (слишком тонкие, провода вытащил из кабеля для телефона).

И еще пару вопросов:
1. Для чего в модули времени батарейка, если время отстает при отключении питания (время сохраняется то, которое было при прошивке, следовательно если перезагрузить по питанию то время откатится назад. RESET_CLOCK 0 возвращал).
2. Если запретить управление яркостью в скетче - надо убирать из схемы фоторезистор и возвращать перемычку на управление подсветкой?
 
Изменено:

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
У меня такая проблема. Через какое то время экран перестает обновлять информацию ~через 15 -30 минут после включения(такое чувство что зависает) и еще вопрос : почему время выставляется постоянно не верное, как мне время поменять в ручную (на пк время синхронизировано с инетом). Спасибо.
Вот у меня одна из проблем такого характера. Зависает экран.
Удалось ли найти причину?
 

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
Припаял microUSB к плате arduino. Почти все вышеперечисленные проблемы ликвидированы. Уж не знаю повлияло ли питание напрямую или просто совпадение, время покажет. Но проблема с временем так и осталась, хотя делаю по инструкции RESET_CLOCK 1 - прошиваю и после этого RESET_CKOCK 0 и прошиваю. БОЛЕЕ ТОГО время возвращается в прошлое в процессе работы! Допустим у меня время после прошивки 20:54, доходит до 20:59 и вместо 21:00 перескакивает на 20:54. Таких аномалий я не встречал.
 
Изменено:

DarkFman

✩✩✩✩✩✩✩
2 Апр 2019
2
1
1. Для чего в модули времени батарейка, если время отстает при отключении питания (время сохраняется то, которое было при прошивке, следовательно если перезагрузить по питанию то время откатится назад. RESET_CLOCK 0 возвращал).
Эти часы рассчитаны на работу с аккумулятором , но обычно все ставят туда батарейку которая быстро выходит из строя. Можно выпаять диод или резистор или перерезать дорожку и тогда будет все ОК. У меня тоже после отключения питания устанавливалось время и дата прошивки. Отгрыз диод и теперь все нормально, правда батарея которая стояло до этого момента сдохла. Уже пару месяцев нормально работают, часы отстали всего на 1 минуту.
 

FlyTortoise

✩✩✩✩✩✩✩
14 Мар 2019
4
0
Приветствую.

Хочу дополнить проект датчиком пыли PMS 7003.
Прошу подскажите куда подключить RX, TX?

scheme4.jpg
Заранее СПС
 

Ground

✩✩✩✩✩✩✩
9 Июн 2019
2
1
У меня датчик углекислого газа не работает. Когда заливаю скетч из примеров библиотеки, выдает такое сообщение
C++:
error: can't get MH-Z19 response.
MH-Z19 now warming up...  status:error: can't get MH-Z19 response.
-1
вот все настройки в скетче
C++:
const int rx_pin = 2;  //Serial rx pin no
const int tx_pin = 3; //Serial tx pin no
Помогите пожалуйста решить проблему.
 
  • Лойс +1
Реакции: Семен

FlyTortoise

✩✩✩✩✩✩✩
14 Мар 2019
4
0
Я подключил RX Aрдуины на ТХ датчика и ТХ Ардуины на RX датчика. Сигналы Ресет и Селект датчика подключил к +3,3 V.
Mогу командами усыплять датчик и будить его, но читать даннае не получается.
Интересен тот факт, что в режиме "не сна" датчик постоянно отправляет что-то, об этом сигнализирует (мигает) красный светодиод RX на Ардуино. Когда датчик засыпает диод естественно перестает мигаеть.
Почему-то при чтении с датчика выводится на экран сообщение: "can't get MH-Z19 response." Это я так понимаю относится к датчику СО2 с ним проблем нет, работает как надо.
 
Изменено:

FlyTortoise

✩✩✩✩✩✩✩
14 Мар 2019
4
0
Спасибо. Я читал эту статью. Если датчик все время выбрасывает по своему ТХ данные как их читать?
И почему появляется сообщение "can't get MH-Z19 response" при чтении PMS7003?
 
Изменено:

Wan-Derer

★★★★★✩✩
Команда форума
31 Июл 2018
2,038
406
Москва
wan-derer.ru
@FlyTortoise, понятия не имею. М.б. потому что ты используешь библиотеку для MH-Z19, пытаясь работать с PMS7003?
Можно подключить к датчику переходник USB-UART и посмотреть терминалом что он там вещает
 

FlyTortoise

✩✩✩✩✩✩✩
14 Мар 2019
4
0
@FlyTortoise, понятия не имею. М.б. потому что ты используешь библиотеку для MH-Z19, пытаясь работать с PMS7003?
Можно подключить к датчику переходник USB-UART и посмотреть терминалом что он там вещает
Я подключал библиотеку от PMS "PMS.h"
Cхему переделал на альтернативный Serial (ушел от основного Serial-а Ардуино, подключил к D11 и D12 )
Из "+" то, что теперь PMS датчик не мешает заливать скетч в Ардуино, принимает команды "спать" и "проснуться".
Однако данные с него я так и не могу прочесть.
 

Вложения

Изменено:

yenn

✩✩✩✩✩✩✩
21 Май 2019
2
3
У меня датчик углекислого газа не работает. Когда заливаю скетч из примеров библиотеки, выдает такое сообщение
C++:
error: can't get MH-Z19 response.
MH-Z19 now warming up...  status:error: can't get MH-Z19 response.
-1
вот все настройки в скетче
C++:
const int rx_pin = 2;  //Serial rx pin no
const int tx_pin = 3; //Serial tx pin no
Помогите пожалуйста решить проблему.
Точно такая же проблема...
 

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
Эти часы рассчитаны на работу с аккумулятором , но обычно все ставят туда батарейку которая быстро выходит из строя. Можно выпаять диод или резистор или перерезать дорожку и тогда будет все ОК. У меня тоже после отключения питания устанавливалось время и дата прошивки. Отгрыз диод и теперь все нормально, правда батарея которая стояло до этого момента сдохла. Уже пару месяцев нормально работают, часы отстали всего на 1 минуту.
Уточните пожалуйста:
1. О каком именно диоде, дорожке, резисторе идёт речь?
2. Если речь идёт о батарейке модуля времени (у меня DS3231 RTC со встроенной батарейкой, версия "микро"), то как она могла выйти из строя, если модуль новый. Если только это брак.

Припаял к модулю времени конденсатор электролитический 100мкФ, 16В, а также запитал модуль времени напрямую от microUSB - результат пока отрицательный.
 

Monty

✩✩✩✩✩✩✩
30 Апр 2019
35
5
В очередной раз пропаял все контакты связанные с модулем времени. Reset_clock 0 не работает, время сохраняется на момент прошивки. Но теперь заметил, что время у меня сбрасывается именно при переходе на новый час, откатывается назад на время прошивки. С 23:21 до 23:59 доходит и сбрасывается, в предыдущих опытах (до установки конденсатора) время также сбрасывалось при переходе на новый час, только я думал что сбрасываются они по таймауту, во время опроса какого то из датчиков.
Получается, что сбой программного характера?