73

Теплица на Ардуино-Мега. Часть 7.

Серия "Умная" теплица на Ардуино-Мега

Для тех, кто интересуется моим рассказом о создании умной теплицы - продолжение.

20 мая. Теплица обзавелась передачей данных о своем состоянии. Что сделано:

1. На Raspberry-Pi установлены веб-сервер Apache, MySQL, PHP. Спасибо за помощь коллеге по работе - Евгению.

2. Raspberry-Pi подключено дома к роутеру, интернет имеет статический IP-адрес.

3. Сын написал программу, которая будучи запущенной на Распберри-Пи, принимает UDP пакет, содержащий массив из 16 элементов с данными по теплице и записывает его в базу данных.

4. К Ардуино Мега по Serial порту подключен ESP8266 LoLin NodeMCU, который также прошивается из Arduino-IDE. Скетч пока тестовый, самый простой: http://ideone.com/q3GpDC

5. К скетчу теплицы добавлена функция отправки данных, измененный скетч для теплицы: http://ideone.com/EUS6W5
6. @MDIMAN, спасибо за написанную страницу, на которой отображаются данные о теплице, получаемые из базы данных.

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

Страница, на которой отображаются данные выглядит просто, но информативно:
Собственно, данные с датчиков, статус бака, окон и обогревателей с датой и временем изменения состояния.

Теперь "приключения электроника" с подключением ESP 8266:

1. Я полагал, что сериал порт надо подключать так: Rx-Tx. Ан нет, оказалось, что клемма Rx ESP должны быть подключены к клемме Rx Меги. То же и с Тх.

2. Поскольку плата ESP8266 LoLin NodeMCU подключается для программирования по USB, а на плате присутствует стабилизатор трехвольтовый, я решил подключить 5в для питания устройства к клемме Vin. К тому же в разных статьях, которые я читал, так и советовали. Опять не то. Процессор греется, плата не работает. Подал 5в через разъем USB, все хорошо. Может с платой что-то не то? Так и поставил, отрезал кусок от шнура USB и запитал от 5в через него.

3. Несмотря на многократное тестирование, на месте плата отказалась цепляться к вайфаю. Включаю точку доступа на смартфоне - цепляется, а к роутеру ни в какую. Предположил, что дело в названии точки доступа. Что-то вроде TP_Link-600 (точно цифры не помню). Изменили название точки доступа в роутере, все заработало. Я подумал, что виновато тире, сын говорил, что нижнее подчеркивание, но, поскольку избавились сразу и от того и от этого, сказать точно не могу, в чем причина была.

4. Интернет там не очень, DSL-модем при плохой телефонной линии, пинги теряются. Соответственно и UDP пакеты тоже, иногда несколько подряд. Но поскольку они идут раз в 10 сек, то даже одного из 10 пакетов достаточно, чтобы получать актуальную информацию, зато никаких зависаний.


Какие вскрылись проблемы за это время: Включение обогревателя в 1200Вт оказалось непосильной ношей для Ардуиновского реле. И вовсе оно не 10А. Временно поставил каскадом еще реле, на 30А. Сейчас пытаюсь сколхозить управление на симисторе.

Arduino & Pi

1.5K поста20.9K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

1
Автор поста оценил этот комментарий

мне б такого сына =))))

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Ну у него и недостатков полно).

показать ответы
0
DELETED
Автор поста оценил этот комментарий

Коротко комментарий о коде для меги - не понимаю, почему для флагов надо использовать integer? Есть же bool. Так же не понял, почему вроде как один дефайн есть, а дальше const int опять полетели. На меге с ее хералиардом памяти в принципе ок, да и для себя ок, но если уж делать, то делать хорошо, как мне кажется.

#define DHT11_PIN 3 // Установка пина 3 для датчика температуры и влажности воздуха
int const MotorTyl_1 = 4; // номер пина мотора открывания форточки тыла 1

Так же интересно почему время закрытия и открытия одного окна идут по разным переменным, а другого - по одной. Ошибка или фича? 151 и 156 строки кода. Дальше не понял, зачем выставленное время умножать на 10, когда можно это время сразу указать нужным, так же в принципе можно считать не в условных попугаях инкрементом, а в миллисекундах (секундах), если надо или интересно - могу поперелопачивать.


UPD такие вещи можно упростить для понимания
if ((digitalRead(Enter) == 1) && (digitalRead(KontsFasOtkr) == 0))


и написать так:
if (digitalRead(Enter) && !digitalRead(KontsFasOtkr))

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Конечно интересно, я же самоученный программист), заниматься стал программированием вот, почти к 50 годам, так что интересно. Тем более, что с временем открытия окна - это ошибка. Должно быть

156. NParam = Parametr[8]; // Время закрытия окна фасада

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

зачем выставленное время умножать на 10
Там цикл по 0,1с - поэтому *10.

Я, конечно, понимаю, что программирование у меня, мягко говоря, нестандартное, но это от того, что бессистемно учусь. Знаю один случай, когда левша научился играть на гитаре, держа ее кверху ногами, потому что сам пытался научиться. Аккорды его выглядели просто дико.)

За перелопачивание буду признателен.

показать ответы
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Гм. Я бы присобачил еще одну ардуину, уно например, или нано, прицепил бы по сериал порту к этой ардуине и пусть друг-друга контролируют и перезагружают. А еще бы все равно прицепил бы связь ко второй ардуине - модем хотя бы, ну или хоть по смс - отдачу данных по запросу. А тут - ну не понимаю как там и что. Как бы она от этого кода висеть не начала.)

показать ответы
0
Автор поста оценил этот комментарий

Помогите пожалуйста код в скетч вставить:

int pulsePin = 8;

unsigned long lastHeartbeat = 0;


unsigned long lastUptimeReport = 0;



void heartbeat() {


// Sink current to drain charge from watchdog circuit


pinMode(pulsePin, OUTPUT);


digitalWrite(pulsePin, LOW);


delay(300);


// Return to high-Z


pinMode(pulsePin, INPUT);


lastHeartbeat = millis();


Serial.println("Heartbeat sent");


}



// the setup routine runs once when you press reset:


void setup() {


// initialize serial communication at 9600 bits per second:


Serial.begin(9600);


Serial.println("Arduino reset");



// Send an initial heartbeat.


heartbeat();


}



// the loop routine runs over and over again forever:


void loop() {


// Check for serial inputs. If found, send heartbeat.


if (Serial.available()) {


// Clear input buffer


while (Serial.available()) {


Serial.read();


}


heartbeat();


}


unsigned long uptime = millis();


if ((uptime - lastUptimeReport) >= 5000) {


// It has been at least 5 seconds since our last uptime report.


Serial.println("Uptime: " + String((uptime - (uptime % 5000)) / 1000) + " seconds (" + String((uptime - lastHeartbeat) / 1000) + " seconds since last heartbeat)");


// Pretend we did it exactly on the 5 second mark so we don't start slipping.


lastUptimeReport = (uptime - (uptime % 5000));


}


// delay in between loops


delay(100);


}

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

А это для чего? Оно, кажется пишет чего-то в буфер сериал порта, потом считывает. И чего-то с 8 пином делает. Это для перезагрузки? Если плата повиснет,  то и это работать не будет, как мне кажется. Ну и тут используется сериал порт 0, значит нельзя будет его для другого использовать - например отладкой заниматься. Чтобы этот код встроить, надо использовать другой пин, этот у меня занят. Ну и сериал порт другой, 2-й, что-ли. На 1-м у меня отправка данных на ESP (типа Serial2.read(), Serial2.available() и т.д.). А в остальном - вроде все. Только мне непонятно, как там переменные объявляются и т.д. Попробуйте этот код сам по себе. Он вообще работает? Если работает, значит встроится. То что в void setup() - в конец void setup(), то что до void setup() - перед void setup(), то что в void loop(), в конец void loop().
Правда, на мой взгляд, это бред.

показать ответы
0
Автор поста оценил этот комментарий

И у них есть ещё косяк - они иногда "залипают".. те которые не сильно дорогие..

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
И залипают и неконтачат, если подгорят контакты.
показать ответы
0
Автор поста оценил этот комментарий

человек дело говорит, бери твердотельное реле, сажай на минимальный радиатор(пластины хватит) и он прекрасно будет управлять обогревателем, и не нужно мудрить с симисторами, стоят не так дорого, съэкономит время

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
бери твердотельное реле

Я, конечно, не беден, но не настолько, чтобы твердотельными реле пользоваться.

0
Автор поста оценил этот комментарий

Реле нужно брать не копеечные а качественных фирм, например Omron

http://www.ebay.com/itm/1PCS-NEW-OMRON-G2R-1A-E-POWER-RELAY-...



Можно ещё  попробовать ssr реле ампер так на 75 (китайских)

http://www.ebay.com/itm/1pcs-FOTEK-Soild-State-Relay-SSR-75A...



Чтобы подружить esp и мегу есть либо шилды для удобства

http://www.ebay.com/itm/ESP-12E-ESP8266-UART-WIFI-Wireless-S...


Либо можно купить industrial Мегу, у неё по 1.5 ампера на питание, запитать сразу от меги.  

А сериал вешать на tx3 rx3 меговский.  У меня так давно работает контроллер света.


Нашел сейчас только дорогую.

http://www.ebay.com/itm/MEGA-ADK-2560-R3-Enhanced-USB-CH340G...


Но сам покупал на али баксов за 8 кажется.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

"Чтобы подружить esp и мегу есть либо шилды для удобства"
Шилд - неудобно. У меня все в ящике железном, а внутри ящика сигнал хуже.

А сериал вешать на tx3 rx3 меговский
А почему именно на третий? Я повесил на первый.

"запитать сразу от меги."

Я ничего от меги не стал питать. Все равно БП стоит. Те же 5в. Почему на Vin родключить не получилось - не знаю. Неохота разбираться было, да и некогда. Все равно теперь работает.

показать ответы
0
Автор поста оценил этот комментарий

Снега не было. Холодно было, котел на +70 гоняю каждую ночь и сейчас. Это не хобби, это работа такая на селе.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну мы-то так, для собственного удовольствия. А вы круглый год выращиваете?

показать ответы
0
Автор поста оценил этот комментарий

Сегодня девчата собрали 10 ящиков огурца по 12 кг в каждом. Думаю надо мне такую арудину к девочкам прикрутить или обойдутся пока.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Странное у Вас хобби, хотя огурцы в таком количестве, наверное, и не хобби уже.
ПС у вас тоже 17-18 мая шел снег и было -2 градуса?

показать ответы
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий
Чтобы не делать подвесной монтаж и легко заниматься дополнениями к проекту, я решил делать маленькие платки, которые проще переделать. Эти платки я вставляю торцом в разъемы ардуино. Когда, наконец, добавлю освещение, можно задуматься о готовой единой плате, первом, так сказать, релизе. Но все равно, на ней нужно таки оставить штуки 4 пина под подключение чего-то. Ну и количество кнопок нужно уменьшить, переведя управление в меню. Хотя, дисплея уже не хватит, чтобы отражать выбранные настройки по управлению. Светодиоды, что-ли, задействловать?
показать ответы
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

На Северном полюсе живешь что-ли? У меня в теплице сегодня +35 при открытых окнах было. А ведь это Сибирь.
У меня, кстати, другой подход. Я сперва все проверю, потом плату нормальную запилю.)

показать ответы
0
Автор поста оценил этот комментарий

На днях заменил ВТ139 на ВТА41, первый был установлен на слабом радиаторе и сильно грелся, потом через сутки работы отопитель на 2КВт перестал включаться. Замена ничего не дала. Без мультиметра трудно было определить причину поэтому думая что накрылась еще и МОС заменил и ее. Результат тот же. Съездил в город за прибором, меряю, а на входе силовой нет управляющего с ардуино. В теплице +6 в настройках диапазон работы от +18 до +23 а на выходе тишина. Снял ардуинку, пропаял разъемы, воткнул на место и заметил такую фигню: с периодичностью в три секунды менялось Р  OFF на A  ON. Есть идеи? Сам пока думаю на неисправность ардуино, но другой на зпмену пока нет.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Весь день занят был, не видел сообщения.

Р и А - это включен или отключен автоматический обогрев. Если А - включен автоматический обогрев, Р - обогрев отключен.  Возможно (и очень вероятно), что плавает "единица" на входе с соответствующего тумблера. А такое обязательно будет происходить, если вход не соединен с "землей" резистором. То есть в данном случае - проверьте, может непропай//неконтакт в цепи этого резистора.

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

Эм, это Вы к чему написали? Сам пост написан о хобби, которое состоит в выдумывании всяких механизмов и их автоматизация. Комментарий о пацане, которого отец заинтересовал программированием практической направленности, и подростку удалось сделать что-то, приносящее пользу. Ваш комментарий о чем? О достижениях науки и техники в Липецкой области? Ну что ж, я рад за них.
П.С. А Вы какую теплицу строите? Я надеюсь, с полностью замкнутым циклом? Я бы с удовольствием почитал Ваш рассказ об этом.

Автор поста оценил этот комментарий

Еще одну ардуину цеплять ради того чтобы оня следила за зависанием другой... мне кажется это не альтернатива копеечному таймеру. Схемка простенькая, я ей уже дополнил плату в программе layout, кому интересно ссылку обновил https://yadi.sk/d/CX-qLkIo3JcM5j. Осталось только с кодом разобраться. А рассылку по СМС можно и на основной ардуинке сделать... может я ошибаюсь

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

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

Еще одну ардуину цеплять ради того чтобы оня следила за зависанием другой... мне кажется это не альтернатива копеечному таймеру.

Ну, если выпускать прибор серийно - возможно стоит побороться за копейку. Но для себя - не жалко. Плата на микросхеме - это всего лишь таймер и более ничего. Целая ардуино  - это гибкая система, которой можно не только поручить исполнение широкого спектра второстепенных задач, но и даже резервирование важных функций. А стоимость - 200р за уно - не такая уж и высокая.

показать ответы
0
Автор поста оценил этот комментарий

Дайте пожалуйста ссылку на такие лампочки)

раскрыть ветку (1)
Автор поста оценил этот комментарий

Я повторю - я не специалист в выращивании - я автоматизацией занимаюсь. Поэтому об эффективности этих лампочек только читал, но не пробовал. Не для рекламы -

Купил вот такие https://www.aliexpress.com/item/Full-Spectrum-E27-LED-Grow-L...

показать ответы
0
Автор поста оценил этот комментарий

Вчера был первый пуск в теплице, холодная ночь выявила слабые места. На подогреве воздуха стоял обогреватель на 2кВт. При его работе симистор грелся очень сильно хотя был установлен на небольшой радиатор, думал до утра не доживет, но при утреннем осмотре оборудования порадовал своей живучестью ) При включении один раз экран заполнился крокозябрами, но при перезагрузке все нормализовалось. Вывод: для надежной работы нагревателя буду менять симистор на триак ВТА41-600. У меня вопрос: можно ли в скетче как-то предусмотреть перезагруз ардуино при зависании?

раскрыть ветку (1)
Автор поста оценил этот комментарий
При включении один раз экран заполнился крокозябрами

Ни разу такого не видел. Может проблемы питания? Типа бросок при включении.

можно ли в скетче как-то предусмотреть перезагруз ардуино при зависании?

Несмотря на то, что зависания ни разу не случилось, (да и с чего бы ему взяться?), я думал об этом. Если плата зависла, то программа стоит, и плата сама себя не перезагрузит. Что-то другое должно за зависанием следить. Поэтому я предусмотрел такую возможнось, чтобы ESP следило за Ардуино. В крайнем выложенном мной скетче, в программе для ESP это предусмотрено - если долго не будут приходить данные по сериал порту от ардуино - то ESP нажмет ресет. Правда я провод еще не подключал и не тестировал. Нужно рассмотреть все варианты.

показать ответы
0
Автор поста оценил этот комментарий

Газовый котел на 40 кв.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Хорошо с газом. У нас в Сибири газа нет - говорят есть уголь и дрова - пользуйтесь. Газ в европейской части Родины нужен. Только отопление углем - почти на порядок дороже. Да и автоматизация процесса чрезвычайно сложна.

показать ответы
0
Автор поста оценил этот комментарий

Белгородская область. Балаган пленочный 8 на 40 м. Внутри еще одну пленку подбиваем. Трубы пластиковые в земле и на земле. Водяное от котла.

раскрыть ветку (1)
Автор поста оценил этот комментарий
Чем котел топите?
показать ответы
0
Автор поста оценил этот комментарий
раскрыть ветку (1)
Автор поста оценил этот комментарий

Нет, я же пенсионер, а сын тоже уж давно не школьник. Но мне понравилось, как пишут СМИ:

"Лично я делал программу, которая буду этим управлять. Отец придумал всю механику. установили стеклоподъемники, микрокомпьютер, все это связали через интернет. У меня была идея управлять телефоном, через мессенджер", — Никита Долбак, автор проекта «Умная теплица». Далее: https://news.rambler.ru/scitech/36963040/?utm_content=news&a...

Отец придумал... - пишет автор проекта. А он-то что, кроме проги придумал?
Программировать Ардуино, например, интересно, но чтобы использоваь это на практике, нужно много руками изготовить. Вот в нашем случае целую теплицу построить, причем хорошо построить, и шарниры и прочее чтобы не перекашивало. Механику приспособить. А программирование - это меньшая, хоть и наиболее интересная, часть.

0
Автор поста оценил этот комментарий

Не круглый год, только в весенне-летне-осенний оборот. Пораньше начать и выйти на высокие цены. Летом при низких ценах солить излишки и продавать на высоких ценах зимой. Осенью если получится дотянуть его живым, опять на высоких ценах взять.  Зимой же огурец без солнца не растет и ему топить много надо. Тепло дал, а если света нет то и огурца нет. Освещение и газ уж больно дорого выходят. Если как дачники выращивать и не считать расходы то вырастить можно и зимой. Если посчитать затраты на выращивание, то можно выяснить, что купить можно на эти деньги огурца больше и ничего при этом не делать.

раскрыть ветку (1)
Автор поста оценил этот комментарий
Это да, тепла много требуется. А освещение - я заказал лампочки ультрафиолетовые. Народ пишет, что можно в шкафу выращивать с ними. И они светодиодные - 9-15 Вт, в зависимости от. Посавлю для пробы. Вчера они пришли, но время появится только через пару недель. Подключу включение по освещенности, а выключение часов в 24-00. И утром в 5-00 включение, а отключение - по освещенности на улице.
Вы, наверное, в более теплом климате?
показать ответы
Автор поста оценил этот комментарий

>пихать толстожопый гопач на rpi

М-да. Родина им дала звездочкиnginx, носи - нет не хочу, хочу говно жрать.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Ну хочешь - жри, твое право.

0
Автор поста оценил этот комментарий
На али я находил твердотельные , цена вопроса на одну фазу до 50 долларов. Но нужно было три фазы и не одно реле, то товарищ спаял самодельное. Могу уточнить у него схему
раскрыть ветку (1)
Автор поста оценил этот комментарий
1
Автор поста оценил этот комментарий
Есп можно 5 вольтами и спалить. Там питание и логика 3.3.
раскрыть ветку (1)
Автор поста оценил этот комментарий
Ну регулятор-то на плате стоит и подключается от USB - а там 5в. Посмотрите, у меня вариант платы Lolin Node Msu.
0
Автор поста оценил этот комментарий
Vin у еспшки 3.3в, проверьте. Когда питаете через юсб там проходит через регулятор на 3.3в как раз
раскрыть ветку (1)
Автор поста оценил этот комментарий
Блин, везде пишут, что там - на вход регулятора, типа хоть 12в вешай. Причем схемы приводят.
0
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
Автор поста оценил этот комментарий
Это интересная мысль, правда в этом варианте уровень измерять не надо, он либо полон, либо неполон.
0
Автор поста оценил этот комментарий

зависит от частоты переключения. Если раз в день то можно. А если сто раз в сутки - то либо залипнет либо заискрит.  Только для опытов годятся :)

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

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

В целом, дефайн - это макросы, как правило основные дефайны идут в самом начале программы, могут быть выписаны в отдельный файл, но это детали. И да, обычно имена пишут в верхнем регистре, читать намного удобнее. Например, следующий код:


#define LEFT = 8; // Кнопка настроек влево

#define ESC = 9; // Кнопка настроек выход

digitalRead(LEFT);

digitalRead(RIGHT);


Будет в итоге скомпилирован в


digitalRead(8);

digitalRead(9);


Чем упростит жизнь как тому, кто пишет, так и тем, кто читает, да ещё и память сэкономит. В принципе можно даже по-русски дефайнить, но по-моему не на C++.


Там цикл по 0,1с - поэтому *10.

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


Попробовал скомпилить  - ругается на библиотеку DHT и Sodaq, скачал все что есть из предлагаемого - не работает, скидывайте свое.

раскрыть ветку (1)
Автор поста оценил этот комментарий
не работает, скидывайте свое.

Не компилится что ли?

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

Это в целом мне понятно, но я решил так развести действия по нагрузке на блок питания. Одновременно у меня не могут открываться окна и набираться бак. Ну и окно каждое по очереди только. Так проще показалось, чем обеспечивать им многозадачность, а потом условие вводить, чтобы одновременно не работали.

показать ответы
0
Автор поста оценил этот комментарий

SSR реле и есть симисторы, в корпусе.  Греются они сильно - нужен теплоотвод.



А почему именно на третий? //

  Третий, можно и второй,  просто первый обычно используется для вывода при отладке. Принципиальной разницы нет.


Я ничего от меги не стал питать

Меги по умолчанию не хватает мощи,  вроде бы еспшка до 700ма на пике потребляет, может не завестись.   Я потому и брал специальные, чтобы понадежнее, хочется сделать один раз и забыть а не перебирать каждую неделю :)


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

раскрыть ветку (1)
Автор поста оценил этот комментарий
чтобы понадежнее, хочется сделать один раз и забыть

Я от меги ичего питать и не стал - все от отдельного БП

Поставил подороже, покачественнее.

А какие?

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества