Суточный термостат для газового котла

druzik
Offline
Зарегистрирован: 27.01.2016

Добрый день отличный скейтч только вот немогу разобраться как подключить термодатчики? какие вы использываете и где прописаны пины для их подключения? буду благодарен за помощь, кстати часы поставил DS1307 работает хорошо

klbsss
Offline
Зарегистрирован: 16.07.2015

druzik

DS18B20

#define ONE_WIRE_BUS A1
 
Vladis_a
Offline
Зарегистрирован: 13.12.2015

Я выше даже схему выкладывал в картинках. Но имейте ввиду, что резистор на Ds18b20 я не рисовал, а он там нужен.

NoEl
Offline
Зарегистрирован: 28.03.2016

Vladis_a пишет:

Добрый вечер! Перепробовал кучу библиотек, пайку проверил, датчик рабочий. Все равно температуру показывает вот так:

Подскажите, куда копнуть?

Доброго времени суток). Vladis_a, а где вы брали такой корпус и есть ли там еще?

Vladis_a
Offline
Зарегистрирован: 13.12.2015

В любом магазине электротоваров. :) Называется коробка распределительная.

ziuck1
Offline
Зарегистрирован: 11.07.2016

Помогите, повторил схему на макетной плате, залил скетч, всё работает, показывается температура, работает энкодер, но не идут часы, время стоит.Залил скетч для проверки часов, на мониторе порта видно что часы идут.Поменял плату часов, результат тотже.На какие ноги выведена шина i2c?  У меня А4 А5.   Часы на ds1307 и ардуино нано.

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Все правильно.Часы подключаются на А4 и А5. На других скетчах попробуйте часы проверить.

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Отличный проект! Автору спасибо. Просто и функционально.Собрал проект, работает отлично. Хочу ещё такой же собрать, но использовать lcd 1602 c  i2c портом (поменьше проводов будет), который подключается  к А4 и А5, но прошу помощи))) Что в скетче изменить?Заранее благодарен всем ответившим.

vlad219i
Offline
Зарегистрирован: 05.03.2014

dwk26111974 пишет:

Отличный проект! Автору спасибо. Просто и функционально.Собрал проект, работает отлично. Хочу ещё такой же собрать, но использовать lcd 1602 c  i2c портом (поменьше проводов будет), который подключается  к А4 и А5, но прошу помощи))) Что в скетче изменить?Заранее благодарен всем ответившим.

Вместо библиотеки LiquidCrystal.h использовать библиотеку LiquidCrystal_I2C, изменить инициализацию LCD и , возможно, поправить строки с обращениями к LCD. Вообще - откройте в ардуинской оболочке три окна (окно с проектом и два окна с тестовыми примерами для LCD и i2c_LCD) - там всё очевидно будет. Я собирался переделать проект на I2C (хотел ещё радиомодуль в коробочку добавить для связи с остальным умным домом, а свободные пины закончились :), но руки не доходят и вряд ли в ближайшем будущем дойдут...

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Все получилось!Подключил дисплей по i2c.РаботаетЕще раз спасибо за практичный проект.

idtmark
idtmark аватар
Offline
Зарегистрирован: 04.06.2016

dwk26111974 пишет:
Все получилось!Подключил дисплей по i2c.РаботаетЕще раз спасибо за практичный проект.

Выложите свой скетч плиз, тоже хочу собрать этот проект.

2i99i5
Offline
Зарегистрирован: 05.09.2016

У меня как ошалелый мигает LCD и пищит пьезоэлемент. Было у кого-нибудь так же?

Для i2c код со второй страницы от vlad219i, номера выходов под себя менял:

 

Vitaly-V
Offline
Зарегистрирован: 14.09.2016

Всем привет и хорошего дня.

Я только знакомлюсь с ардуино и радиоэлектроникой прошу не судить строго. 

Есть 3 вопроса. 

1. Где можно найти схему проекта? Боюсь, не поставлю какой-нибудь резистор и все будет работать неправильно. Если схемы нет, то обясните пожалуйста как вы понимаете, что-куда.

2. Хочу сделать датчик с радио-модулем на базе модулей nRF24L01+, чтобы можно было его поставить в любой комнате. Может подскажете где копать и что допилить чтобы связвть ардуинкуи по радио?

3. Как организовать автономное питание для ардуинки-датчика и сколько это штука с такой обвязкой и таким скетчем сможет прожить автономно?

PS: В наличии есть UNO, Nano и Mini Pro 328, котёл baxi rocco neobit )

Заранее всем спасибо.
 

bester
Offline
Зарегистрирован: 25.06.2016

Что изменить я скетче, чтобы использовать часы DS3231? У меня DS3231 почему то не идут. Подключены sda-a4, scl-a5, +, gnd

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Моим скетчем  это назвать нельзя))) Это сектч уважаемого автора, я только добавил ЛСД 1602 с  i2c. Вот что нужно сделать в скетче автора:

//#include <LiquidCrystal.h> // LCD 16*2 старая библиотека
#include <LiquidCrystal_I2C.h> // новая библиотека для 

далее вводим:

//LiquidCrystal lcd(7, 6, 5, 10, 9, 8);// удаляем старый дисплей
LiquidCrystal_I2C lcd(0x27,16,2);// вводим новый с i2c
 
Вот и всё. Очень удобно.
 
Vitaly-V
Offline
Зарегистрирован: 14.09.2016

Всем привет. Собрал эту схему, но возникло желание отказаться от провода соединяющего датчик с котлом. Для этой цели присматриваюсь к nrf24l01+ Будет нано со всей обвязкой и передатчиком на базе nrf24l01+ и уно с приемником nrf24l01+ и реле чтобы включать-выключать котел. Вопрос в следующем - можно ли подключить все что описано выше (lсd 16*2 мэлт) и модуль nrf24l01+ к нано? Не хватит пинов для подключения или я чего-то не понимаю? Уважаемые знатоки - растолкуйте новичку.

Vitaly-V
Offline
Зарегистрирован: 14.09.2016

Вопрос снят. Нужно покупать i2c модуль. Но подключиться ли он к lcd 16*2 мэлт?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V пишет:

Вопрос снят. Нужно покупать i2c модуль. Но подключиться ли он к lcd 16*2 мэлт?

вопрос не понятен...
ардуина и 16х2 по I2C - нужен преобразователь (цена у китайцев = 50р.)

ардуина и 16х2 с I2C - подключится !

 

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V пишет:

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

контроллер с котлом , может быть ?
а зачем менять два провода на +ардуина и два nrf24 ?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V пишет:

Всем привет. Собрал эту схему, но возникло желание отказаться от провода соединяющего датчик с котлом. Для этой цели присматриваюсь к nrf24l01+ Будет нано со всей обвязкой и передатчиком на базе nrf24l01+ и уно с приемником nrf24l01+ и реле чтобы включать-выключать котел. Вопрос в следующем - можно ли подключить все что описано выше (lсd 16*2 мэлт) и модуль nrf24l01+ к нано? Не хватит пинов для подключения или я чего-то не понимаю? Уважаемые знатоки - растолкуйте новичку.

чо за котёл-то ?
делаю свой проект (не себе) , сюда посматриваю , но делаю свой проект....

котёл тупой - уставка T подачи ручная , может работать от радиоТермометра...
у тибя такой ? есть наработки... нано ?

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V пишет:

Нужно покупать i2c модуль.

мне хватило (пока) :
- 6 пинов для экрана 20х4
- 3 пина для датчиков Т : подача , обратка , улица (не хочЮ вешать датчики Т на один пин)
   или 1 пин , если делать гирлянду из DS18
- 3 пина для кнопок управления уставками котла
- 1 пин для запуска котла (реле)

Vitaly-V
Offline
Зарегистрирован: 14.09.2016

SU-27-16 пишет:

мне хватило (пока) :
- 6 пинов для экрана 20х4
- 3 пина для датчиков Т : подача , обратка , улица (не хочЮ вешать датчики Т на один пин)
   или 1 пин , если делать гирлянду из DS18
- 3 пина для кнопок управления уставками котла
- 1 пин для запуска котла (реле)

Дело в том, что не имею возможности запитать модуль к котлу по проводам. Так как в доме сделан ремонт и не хочеться ничего сверлить и т.п. Для этого решил cделать датчик с радио-модулем на базе модулей nRF24L01+, чтобы можно было его поставить в любой комнате. Cтолкунля с тем, что мне не хватает пинов и для их освобожднеия думаю использовать i2c . Возможно я в чем-то ошибаюсь.

@SU-27-16 для какой цели вы используете 3 датчкика (подача, обратка, улица) ?  На мой взгляд главное иметь комфортную температуру в помещении. Для этого достаточно одного датчика в комнате. 

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V , сначала тоже хотел радиопульт для котла , заказчик перехотел.
Желает устройство иметь в "кочегарке" около котла.

Датчики - ВСЕ для контроля температур котла и улицы
1 и 2-ой - для управления котлом
2-ой - для компенсации "мороза"
например , в диапазоне -10..-30гр на улице добавляет пропорционально 10гр на подачу
при -20 подача будет на 5 больше чем при -9 , а при -40 - на 15

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

Vitaly-V , у заказчика уже есть EUROSTER 2006TX = 6300р. , круто !
если котёл с электроникой - то классно !
если котёл тупой как холодильник_СССР - то 
есть проблема... рассказать ?
https://www.teplo-serv.com/ru/prod3861
с точки зрения котла - это выходы реле ( два провода ) : греть / не греть :)
на моей схеме это "RF-приёмник КТВ"

никакой обратной связи !

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

тут цена погуманнее , но техОписание :(
https://www.teplo-serv.com/ru/prod3874

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

про "линию Деда Мороза"

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

ой-ой-ой !
Ldelta - получилось 20гр.... НЕ ПРАВИЛЬНО нарисовал :(
это значение на графике НЕОТОБРАЖАЕМО... ступил :(
Ldelta - можно прикрутить к нижнему "графику" , но сложнова-то....

Vitaly-V
Offline
Зарегистрирован: 14.09.2016

SU-27-16 спасибо за советы. Котёл у меня - тупой (Baxi Roca Neobit) Делаю термостат ради интереса и для себя. Понимаю, что можно было купить готовый и дешевле, но мне хочеться разобраться и сделать самому. 

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

а на вопрос - ответ
http://anydevices.ru/modules/i2c-serial-interface-adapter-board-module-f...
у "братьев" = 50р. :)

SU-27-16
SU-27-16 аватар
Offline
Зарегистрирован: 13.08.2012

а не хочется ли иметь визуальный контроль за работой тупого котла ?
у заказчика - стрелочные-мембранные датчики Т подачи и обратки....
неудобно и нефейшуйно :)
заказчик - брат в другом городе , т.е. делаю как сибе !

AleXis6
Offline
Зарегистрирован: 04.10.2016

а похожий девайс с недельным программированием?

bagotu
Offline
Зарегистрирован: 15.10.2016

[quote=rekrut007]

Доброго времени суток

При проверке кода выдает следующее:

(как лечить?)
 
 
C:\Users\Ihor\Documents\Arduino\sketch_oct21_main_code\sketch_oct21_main_code.ino: In function 'void poluchenie_wremeni()':
 
C:\Users\Ihor\Documents\Arduino\sketch_oct21_main_code\sketch_oct21_main_code.ino:298:8: warning: unused variable 'DoW' [-Wunused-variable]
 
   byte DoW = Wire.read();   //??? РЅРµ фига РЅРµ понимаю ???
 
        ^
 
C:\Users\Ihor\Documents\Arduino\sketch_oct21_main_code\sketch_oct21_main_code.ino: In function 'void problem_datch_room()':
 
C:\Users\Ihor\Documents\Arduino\sketch_oct21_main_code\sketch_oct21_main_code.ino:496:38: warning: statement has no effect [-Wunused-value]
 
   time_snach_progi_problem_datch_room;
 
                                      ^
 
 
Скетч использует 17 940 байт (55%) памяти устройства. Всего доступно 32 256 байт.
Глобальные переменные используют 704 байт (34%) динамической памяти, оставляя 1 344 байт для локальных переменных. Максимум: 2 048 байт.
 
Staryjdub
Offline
Зарегистрирован: 08.04.2016

Доброго времени суток! Очень интересный проект! Только вот при компиляции сразу выдает ошибку :

001In file included from C:\Documents and Settings\123\Мои документы\Arduino\sketch_oct24c\sketch_oct24c.ino:12:0:
002 
003C:\Documents and Settings\123\Мои документы\Arduino\libraries\EEPROMex-master/EEPROMex.h:159:22: error: conflicting declaration 'EEPROMClassEx EEPROM'
004 
005 extern EEPROMClassEx EEPROM;
006 
007                      ^
008 
009In file included from C:\Documents and Settings\123\Мои документы\Arduino\libraries\EEPROMex-master/EEPROMex.h:23:0,
010 
011                 from C:\Documents and Settings\123\РњРѕРё документы\Arduino\sketch_oct24c\sketch_oct24c.ino:12:
012 
013C:\Program Files\Arduino\hardware\arduino\avr\libraries\EEPROM\src/EEPROM.h:145:20: note: previous declaration as 'EEPROMClass EEPROM'
014 
015 static EEPROMClass EEPROM;
016 
017                    ^
018 
019C:\Documents and Settings\123\Мои документы\Arduino\sketch_oct24c\sketch_oct24c.ino: In function 'void setup()':
020 
021sketch_oct24c:119: error: 'doEncoderA' was not declared in this scope
022 
023sketch_oct24c:120: error: 'doEncoderB' was not declared in this scope
024 
025sketch_oct24c:122: error: 'timerIsr' was not declared in this scope
026 
027sketch_oct24c:123: error: 'struct EEPROMClass' has no member named 'setMaxAllowedWrites'
028 
029sketch_oct24c:133: error: 'struct EEPROMClass' has no member named 'updateBlock'
030 
031sketch_oct24c:135: error: 'struct EEPROMClass' has no member named 'updateFloat'
032 
033sketch_oct24c:136: error: 'struct EEPROMClass' has no member named 'updateByte'
034 
035sketch_oct24c:137: error: 'struct EEPROMClass' has no member named 'updateFloat'
036 
037sketch_oct24c:138: error: 'struct EEPROMClass' has no member named 'updateFloat'
038 
039sketch_oct24c:139: error: 'struct EEPROMClass' has no member named 'updateFloat'
040 
041sketch_oct24c:150: error: 'struct EEPROMClass' has no member named 'readByte'
042 
043sketch_oct24c:151: error: 'struct EEPROMClass' has no member named 'readFloat'
044 
045sketch_oct24c:152: error: 'struct EEPROMClass' has no member named 'readFloat'
046 
047sketch_oct24c:153: error: 'struct EEPROMClass' has no member named 'readFloat'
048 
049sketch_oct24c:154: error: 'struct EEPROMClass' has no member named 'readFloat'
050 
051sketch_oct24c:157: error: 'struct EEPROMClass' has no member named 'readBlock'
052 
053C:\Documents and Settings\123\Мои документы\Arduino\sketch_oct24c\sketch_oct24c.ino: In function 'void loop()':
054 
055sketch_oct24c:215: error: 'PrintRTC' was not declared in this scope
056 
057sketch_oct24c:264: error: 'struct EEPROMClass' has no member named 'readFloat'
058 
059sketch_oct24c:265: error: 'struct EEPROMClass' has no member named 'updateFloat'
060 
061sketch_oct24c:275: error: 'struct EEPROMClass' has no member named 'updateFloat'
062 
063sketch_oct24c:404: error: 'TimerXSetup' was not declared in this scope
064 
065sketch_oct24c:434: error: 'SetTime' was not declared in this scope
066 
067sketch_oct24c:491: error: 'struct EEPROMClass' has no member named 'updateFloat'
068 
069sketch_oct24c:538: error: 'struct EEPROMClass' has no member named 'updateFloat'
070 
071sketch_oct24c:544: error: 'struct EEPROMClass' has no member named 'readFloat'
072 
073sketch_oct24c:580: error: 'struct EEPROMClass' has no member named 'updateByte'
074 
075sketch_oct24c:583: error: 'struct EEPROMClass' has no member named 'readByte'
076 
077sketch_oct24c:621: error: 'struct EEPROMClass' has no member named 'updateFloat'
078 
079sketch_oct24c:627: error: 'struct EEPROMClass' has no member named 'readFloat'
080 
081C:\Documents and Settings\123\Мои документы\Arduino\sketch_oct24c\sketch_oct24c.ino: In function 'void SetTime(char, char)':
082 
083sketch_oct24c:649: error: 'PrintRTC' was not declared in this scope
084 
085sketch_oct24c:675: error: 'PrintRTC' was not declared in this scope
086 
087sketch_oct24c:702: error: 'PrintRTC' was not declared in this scope
088 
089C:\Documents and Settings\123\Мои документы\Arduino\sketch_oct24c\sketch_oct24c.ino: In function 'void TimerXSetup(int)':
090 
091sketch_oct24c:847: error: 'struct EEPROMClass' has no member named 'updateBlock'
092 
093sketch_oct24c:879: error: 'struct EEPROMClass' has no member named 'updateBlock'
094 
095sketch_oct24c:885: error: 'struct EEPROMClass' has no member named 'readBlock'
096 
097sketch_oct24c:897: error: 'struct EEPROMClass' has no member named 'readBlock'
098 
099sketch_oct24c:899: error: 'struct EEPROMClass' has no member named 'updateBlock'
100 
101exit status 1
102'doEncoderA' was not declared in this scope

 

bagotu
Offline
Зарегистрирован: 15.10.2016

по I2C часы и LCD работают. 

добавил 4-й таймер. типа: утро, день, вечер, ночь.

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Не затруднит поделиться скетчем? )))) или скиньте плиз на почту: dwk26111974@gmail.com буду признателен.

bagotu
Offline
Зарегистрирован: 15.10.2016

 

R2PM
Offline
Зарегистрирован: 28.12.2015
bagotu
Offline
Зарегистрирован: 15.10.2016

надо воспользоваться этим:

 //#define serialenabled // раскомментировать для выдачи в порт отладочной инфы

и в мониторе порта проверить показания датчика

 

R2PM
Offline
Зарегистрирован: 28.12.2015

bagotu пишет:

надо воспользоваться этим:

 //#define serialenabled // раскомментировать для выдачи в порт отладочной инфы

и в мониторе порта проверить показания датчика

 

Доброе время суток!!!!

Спасибо за ответ! Какую команду подавать  в мониторинге порта?

Что на экране при работающем модуле. Спасибо.

Виктор

bagotu
Offline
Зарегистрирован: 15.10.2016

ни какую. Там либо будут показания датчика температуры либо нули.

R2PM
Offline
Зарегистрирован: 28.12.2015

[quote=bagotu]

ни какую. Там либо будут показания датчика температуры либо нули.

[/quote

ПОДСКАЖИТЕ - ЧТО НА ЭКРАНЕ В ШТАТНОМ РЕЖИМЕ??

dwk26111974
Offline
Зарегистрирован: 11.07.2016

У меня на одним из термостатов была такая же проблема - оказалось энкодер был бракованный...сменил-заработало.

В штатном режиме на ЛСД- показания: часы, температура с датчика 

                                                  Р1Р2Р3Р4 (программы) , заданная температура

dwk26111974
Offline
Зарегистрирован: 11.07.2016
#include <hd44780.h>
0003 #include <hd44780ioClass/hd44780_I2Cexp.h>

Выдает ошибку..а какую библиотеку использовали?

 

dwk26111974
Offline
Зарегистрирован: 11.07.2016

Ошибочка))) не Р1, а Т1Т2Т3Т4

R2PM
Offline
Зарегистрирован: 28.12.2015

dwk26111974 пишет:

#include <hd44780.h>
0003 #include <hd44780ioClass/hd44780_I2Cexp.h>

Выдает ошибку..а какую библиотеку использовали?

 

Доброе время суток!!!!

Спасибо за отвкт!!!! библиотека стандартная из среды 1.6.13, остальные погружал

Так у меня часы то тикают - нет промблем, в нижней строчке правом углу с энкодера идёт изменение величины температуры, а вверху одни нули

Сейчас дома запускаю мониторинг порта.

Виктор

R2PM
Offline
Зарегистрирован: 28.12.2015

Всем привет!!!

Мониторинг порта выдаёт 0.0 - что и вижу на экране.

Вот блин дела - не пойму что не так, с датчика с вывода данных резистор подтягивающий есть, сам вывод подключен к А1, может что ешё надо подключить, да и реле не срабатывает, что с Д12, нет надо с "бубном". Кто знает "пните" в нужном направлении.

С уважением Виктор R2PM

bagotu
Offline
Зарегистрирован: 15.10.2016

по дисплею

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

в идеале надо с ним отдельно поиграться через примеры в программе ардуино до появления заветного Hello World,

а затем внести их в скетч.

по датчику.

в общим он не работает. по этому и нули на дисплее. может где-то обрыв. питание на него приходит? заменить его на такой же вместе с исправными проводами... )))

вам там по месту виднее

R2PM
Offline
Зарегистрирован: 28.12.2015

bagotu пишет:

по дисплею

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

в идеале надо с ним отдельно поиграться через примеры в программе ардуино до появления заветного Hello World,

а затем внести их в скетч.

по датчику.

в общим он не работает. по этому и нули на дисплее. может где-то обрыв. питание на него приходит? заменить его на такой же вместе с исправными проводами... )))

вам там по месту виднее

Так весь прикол, что в другой кострукции он работает, он же , фикус да и только, Объясните пожалуста LCD  здесь причём он всё отображает, или я что то "не догоняю"

Виктор

bagotu
Offline
Зарегистрирован: 15.10.2016

это к этому:

dwk26111974 пишет:

 

#include <hd44780.h>
0003 #include <hd44780ioClass/hd44780_I2Cexp.h>

Выдает ошибку..а какую библиотеку использовали?

LCD к градуснику не причем.

надо внимательно просмотреть и прозвонить цепи. бывает.

может отвалилось чего...