1 2 3 4 5 6 7 8 9 10 5.5/10 5,50оценок: 4

Контроллер для теплицы на Arduino - 2

Тема в разделе "Теплицы и парники", создана пользователем Cofessor, 27.04.18.

  1. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Не, я тут поторопился. Я наоборот, прошиваю по Wi-Fi, а управлять задачу не ставил.
    Но в принципе, то же самое - в обоих случаях передаёшь данные на контроллер, так что раз управляющие сигналы передаются, то наверное и удалённая прошивка пройдёт. Жаль 2-й комп сдох.

    У меня вот какой вопрос. По времени чем-нибудь управляешь или нет?
    Если да, то синхронизация через что - RTC или NTP?
     
  2. ask33
    Регистрация:
    06.11.13
    Сообщения:
    1.551
    Благодарности:
    3.372

    ask33

    Живу здесь

    ask33

    Живу здесь

    Регистрация:
    06.11.13
    Сообщения:
    1.551
    Благодарности:
    3.372
    Адрес:
    Ногинск
    Управляю, как же. И таймеры, и события всякие по времени. В устройствах стоят RTS DS3231. Дешево и сердито и уход небольшой. Хотел сделать синхронизацию с NTP раз в месяц, но не дошли руки.

    А вот в инкубатор как мне кажется и синхронизацию с NTP вредно делать. Мало ли че собьётся у них там в сети :)
     
  3. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Согласен полностью, мало того, что зависим от электричества, так ещё и от сетки.
    Но если я облака и сеть только для отладки собираюсь использовать, то мне NTP подходит. У меня время на графике неправильно отображается, после каждого включения стартует с 2020 г 20ч 15 мин.
    А на практике использовал включение по времени только для капельного полива, но отключил - не устроило, что полив получается точечный, вернулся к сплошному поливу вручную. Хочу этим летом попробовать выращивать в контейнерах, тогда наверное вернусь к поливу по времени.
    Жаль конечно, придётся всё самому крыжить. Позавчера попробовал пример NTP из Arduino IDE - всё сразу пошло, вставил только свой логин и пароль, 3 строчки для передачи по воздуху и несколько строчек вывода на дисплей LCD1602 даты и времени.
    А скетч вывода на графики срисовал у мужика, в нём есть синхронизация, только у меня не действует, придётся сидеть, разбираться. Пока некогда - вчера на даче был, делал систему электрообогрева грядки, дней 10 назад выкопал только котлован, вчера выравнивал фундамент болгаркой с алмазной чашкой, укладывал ЭППС, сегодня продолжу.
     
  4. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Потратил дней 5 наверное, пытаясь соединить вместе скетч, запрашивающий время через NTP-сервер и скетч запроса визуализации графика через Google Charts.
    Там куча непонятных вызовов функций из библиотек, HTML и Java-скриптов, смысл которых поначалу был совсем непонятен. Пришлось немало скормить поисковику названий этих функций и прочитать то, что выдавал поисковик, прежде чем что-то стало вырисовываться в сознании.
    Проблема в том, что скетч синхронизации и скетч визуализации используют одинаковые функции времени, так что простое суммирование скетчей в единое целое приводит к тому, что они нарушают работу друг друга.
    С языком оказалось просто - вставил в HTTP-запрос строчку принудительного перевода на кодировку <meta charset='utf-8'>\, и всё стало писаться по русски:
    upload_2022-12-7_14-7-56.jpeg
    Кстати, хорошая демонстрация особенности регулирования влажности. Она реагирует на внешние факторы намного интенсивней температуры. В среднем влажность была на уровне примерно 17%, чего даже в жару летом на улице никогда не бывает. Скачок в начале графика - это жена мыла пол.
    Понижение примерно в 11.15 - небольшое приоткрытие форточки, в результате влажность упала аж до 8,76% и, после закрытия форточки, стала снова расти.
    То, что приоткрытие форточки практически не повлияло на температуру в комнате, говорит о практически полном отсутствии движения воздуха (форточка чуть-чуть приоткрыта и на ней натянута москитная сетка), а влажность меняется сильно даже при отсутствии вентиляции за счёт разности парциальных давлений паров воды внутри и снаружи.

    В довершение к тому код перестал записываться в ECP по воздуху, видимо при очередной модификации кода где-то закомментил функции вызова обмена по воздуху или затёр или какая-то из них попала куда-то в скобки. Нужно искать, как когда-то я загружал скетчи через CH340.
    Расстроился, решил сделать перерыв на сутки-двое, а потом подумал, может это и к лучшему.
    Дело в том, что при загрузке через WiFi монитор порта не действует, поэтому я не имел возможности отслеживать на мониторе, что делает каждая строчка скетча, что сильно бы облегчило понимание. Правда я им не пользовался вообще никогда, но в данном случае, когда в скетче изобилие функций, текст которых неизвестен, потому что они вызываются из библиотек, монитор порта был бы очень кстати.

    Короче, сделаю перерыв день-два для восстановления сил и продолжу сборку скетча через СОМ-шнур с отладкой через монитор.
     
  5. EljaB
    Регистрация:
    01.08.22
    Сообщения:
    17
    Благодарности:
    2

    EljaB

    Участник

    EljaB

    Участник

    Регистрация:
    01.08.22
    Сообщения:
    17
    Благодарности:
    2
    Народ, подскажите, для ардуино существуют датчики влажности способные работать при образовании росы (100% влажность)? Все что нашел на али - даже если и заявлено до 100%, то в реальности до 90-95%.
     
  6. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
  7. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Автоматизация дачи. История неудачных применений

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

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

    Проект № 1. Автоматизация полива

    Это самый старый проект, который я начал лет 9 назад. Для этого купил контроллер ProLine, вот фото его паспорта:
    upload_2024-12-25_16-43-45.png

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

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

    И я стал сомневаться, стоит ли шкурка выделки, действительно ли избирательный полив настолько эффективнее ручного, с гидро розетками в местах ответвлений?
    В общем, хорошего решения я тогда не нашёл и проект замер до лучших времён.

    Проект № 2. Автоматизация гроубокса

    Года через два, я услышал о проекте Ардуино, и мне пришла в голову идея у каждого отвода от магистрали поставить свой самодельный контроллер. Впрочем, я быстро понял, что это очередная идея фикс, но в голову крепко засело, и я решил: почему бы не сделать контроллер для теплицы?

    Фактически, это тоже была идея фикс, потому что добиться, чтобы в дачной теплице температура и влажность всегда были в норме – это что-то типа черпать воду решетом. Я это уже тогда предчувствовал, но великий творческий зуд не привык считаться с реальностью.
    Проще всего было купить готовый контроллер и сразу начинать оптимизацию климата в теплице. Однако готовые контроллеры тогда стоили 12-13 тыс., что для пенсионера было дорого. К тому же я бы не имел доступа к коду и мог бы только довольствоваться теми функциями, которые заложил разработчик. Меня это не устраивало уже потому только, что там чего только было ни навешено и всё совершенно мне не нужное, только меню захламляло. Короче, решил всё делать сам.
    Первую конструкцию сделал на модуле Arduino Uno, фото конструкции не сохранил, есть только на макетной плате:

    upload_2024-12-25_16-45-55.png

    По ходу работ знакомился с данной сферой и обнаружил, что покупать Arduino Uno не было никакого смысла, имелись в продаже платы Arduino Nano, функционально идентичные, но при этом размерами меньше в 4 раза.
    Тут же решил переключиться на Arduino Nano и, в результате, вторая конструкция, включающая кроме модуля контроллера ещё модуль RTC и модуль из 4-х реле, получилась уже намного компактней:

    upload_2024-12-25_16-46-49.png

    upload_2024-12-25_16-47-22.png

    upload_2024-12-25_16-47-34.png

    upload_2024-12-25_16-47-57.png

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

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

    Параллельно я занимался расширением сезона эксплуатации теплицы, чтобы получать огурцы и помидоры раньше. Для этого натянул над средней грядкой вторую плёнку, получилась как бы теплица в теплице длиной 7, шириной 1,5 и высотой 2 метра.
    Результаты превзошли все ожидания. В теплице под двойной плёнкой тёплый период увеличился практически на месяц, в результате чего надобность в гроубоксе и подсветке исчезли – под двойной плёнкой оказалось настолько тепло, что я мог вывозить из дома проклюнувшиеся семена чуть не с начала апреля.
    Итак, на изготовление контроллера ушло немало времени, средств и интеллекта, а сфера применения контроллера исчезла, и я вернулся к прежней проблеме: как отлаживать программу под объект, находясь далеко от него?

    Фактически, я достиг отличных результатов и решил вопрос без солидных затрат на гроубокс и светильники, которые, к тому же, сильно раздражали бы, ведь свет от них попадал в комнату. Ещё и контроллер дома для рассады тоже становился ненужным – дополнительная экономия, однако сфера применения контроллера и в этот раз накрылась, и было неприятно.

    Ну всё, на сегодня иссяк, завтра или на днях продолжу честное признание в своих неудачах.
     
  8. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Немного Лирики

    Новый год уже на носу и постепенно всех охватывает весёлая предновогодняя суматоха. Приехали гости и спать ложимся поздно, но мне с утра не спится - не хочется оставлять экскурс в прошлое на новый год.
    На самом деле, хотя и описываю случаи неудачного применения контроллеров, эта эпопея не была грустной, в ходе её было немало достижений: начал с нуля, разобрался в электронике и в программировании. Поначалу многое чего не заказал в Китае, так что пришлось позже ещё заказывать, а там уж был Китайский новый год, комплектующие шли 75 дней. Короче с конца осени и до середины весны был некомплект, не позволявший мне ничего собрать до конца.
    К счастью, я нашёл выход программной симуляции. Есть такое средство проектирования Proteus, который позволяет не только рисовать принципиальные схемы и печатные платы, но и проверить, как ваша схема и программы будут работать в виртуале. Поэтому, когда, наконец, я смог реализовать всё в металле, у меня уже были работоспособные схемы и программы.
    Было и много других достижений, полагаю, всё это ещё пригодиться. Ну всё, заканчиваем с лирическим отступлением и возвращаемся к нашим баранам.

    Проект № 3. Увлажнитель воздуха

    На следующем этапе я решил отказаться от модулей и собирать контроллер полностью из рассыпных SMD-деталей, включая микросхемы и изготовление печатных плат, что должно сильно снизить габариты и затраты на конструкцию и увеличить надёжность. В итоге простейшая конструкция с одним реле получилась всего за 500 руб. Я собирался применить контроллеры на участке где только можно и ещё иметь запасные для горячей замены, поэтому цена имела значение.
    Кроме того, конструкции без модулей получались предельно компактными:

    upload_2024-12-29_8-42-48.png

    Для прошивки использовал программатор USBASP, чтобы обойтись без загрузчика, поскольку память в микросхеме Atmega 328P очень ограничена. Затем я долго не мог добиться, чтобы загрузка выполнялась - что только ни делал, ничего не помогало. А причина оказалась в том, что программатор просто был неисправен, заработал он только после того, как дважды пропаял все контакты.

    Для увлажнителя воздуха нужны были три блока питания: 5 V для контроллера, 12 V для вентилятора и 24 V для питания головок ультразвуковых распылителей. Тем не менее, всё прекрасно уместилось в коробке под контроллер гроубокса, который стал ненужным, только для увлажнителя кнопки нужны не были, поэтому на фото там дырки.

    upload_2024-12-29_8-43-39.png

    upload_2024-12-29_8-43-54.png

    Жаль, что фото увлажнителя не сохранилось. Он прекрасно работал, хоть и поднимал влажность всего на 10-15%, но это было легко исправить, просто добавив излучатели. Единственный недостаток – туман был не совсем настоящий, скорее всего мелкая водяная пыль, и через полчаса на полу перед генератором образовывалось мокрое пятно. Само по себе, это пустяк, для устранения достаточно просто положить перед генератором на пол кусок клеёнки.
    Печаль оказалась в ином - стоило приоткрыть окно, как влажность падала до прежнего значения и эффект от увлажнителя исчезал полностью. Причина этого явления в том, что воздух на улице, даже при высокой относительной влажности, содержит очень мало паров воды. Попадая в комнату, воздух нагревается, и его относительная влажность оказывается ниже влажности воздуха в квартире и далее быстро вытесняет более влажный воздух квартиры в вентиляционную шахту.

    Короче, этот проект также себя не показал, хотя к контроллеру никаких претензий не было, и генератор полетел в помойку.

    Проект №4. Контроллер теплицы

    Последний контроллер был сделан для теплицы и включал 2 микросхемы – контроллер и систему реального времени, 4 реле, 3 экрана меню и две кнопки для навигации и установки параметров:

    upload_2024-12-29_8-45-9.png

    upload_2024-12-29_8-45-35.png

    upload_2024-12-29_8-45-55.png

    upload_2024-12-29_8-46-9.png

    upload_2024-12-29_8-46-33.png

    На последнем фото этот контроллер уже установлен в теплице.
    Проблема была всё та же – контроллер показывал температуру воздуха в теплице, открывал и закрывал форточки, включал и выключал вентиляторы, в общем, всё делал, как положено. Он мог даже хорошо регулировать температуру и влажность но только до определённых пределов. Но стоило только погоде поменяться, как он регулировал из рук вон плохо или же даже вообще вредил.
    Поясню свою мысль на примере.
    Согласно требованиям агротехники, оптимальная температура не должна превышать 28*С. Если в качестве органа регулирования температуры вы используете форточки или вентиляторы, то, сколько их не ставьте, когда на улице больше 30*С, температуру внутри снизить ниже этого значения невозможно.
    Другой пример – ночью форточки закрываются, чтобы тепло не уходило из теплицы, но тут же начинает расти влажность, потому что испарениям выходить некуда.

    И таких нестыковок было множество. Стало ясно, что эффективность всей системы в целом сильно зависит от адекватности (ума) алгоритма и от исполнительных механизмов (ИМ) и что основное - отлаживать программу не в отрыве от объекта регулирования, а в процессе его работы.

    Выводы

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

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

    В это время в продаже уже появились недорогие контроллеры ESP8266 с Wi-Fi, как будто специально предназначенные для этой цели, купил два модуля NodeMCU для экспериментов и даже успел кое-что сделать перед тем, как произошёл инцидент со зрением. С тех пор прошло 4 года и вот теперь хочу возобновить работу на новом уровне. Сейчас у меня уже есть более реалистичные проекты, где контроллеры будут использоваться более эффективно, но об этом уже после праздников.

    Всех с Новым Годом!
     
  9. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Постановка задачи 2-го этапа

    Праздники закончились, а я весь в раздумьях – что нужно изменить, чтобы новый этап тоже не закончился ничем? Я уже видел целый ряд проектов, в которых авторы, добившись, что всё механизмы срабатывают, как задумано, считают, что цель достигнута и дело закончено. В подтверждение этого уже нередко приводят график суточного хода температуры и влажности, где видны моменты срабатывания исполнительных механизмов (ИМ).
    Только вот график каким был до внедрения автоматики, таким примерно и оставался, разве что колебания дневной и ночной температуры немного сглаживались. Эффективность такого регулирования оставалась низкой и вряд ли растения вообще замечали, что теперь климат что-то регулирует. Может, кого-то такая регуляция и устраивает, но я не хочу заниматься самообманом, и цель нового этапа состоит как раз в том, чтобы повысить качество регулирования климата в теплице.

    Но что для этого нужно сделать? Контроллеры ESP8266 и ESP32 конечно более продвинутые, имеют Wi-Fi и теперь обновлять прошивку можно, не снимая контроллер с места установки. Можно также отслеживать суточный ход температуры и влажности на экране компьютера. Это большой плюс, но это всё было сделано и испытано мною ещё 4 года назад (см. пост #934). Повторю его здесь:

    upload_2025-1-11_19-28-48.jpeg

    Дата на графике, правда, отображается неправильно, но она не нужна, нужно только время. Схема реализована на контроллере с Wi-Fi - NodeMCU (ESP2866-12). Испытывал систему дома на макетной плате. Перелом на графике влажности соответствует моменту открытия форточки.

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

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

    Именно из-за того, что ИМ малоэффективны, программу невозможно отладить в отрыве от реального объекта. Обязательно нужно проверять каждый ИМ в работе и, изменяя программу, добиваться того, чтобы выжать из него всё, на что он способен, а если это не удаётся, заменить его другим, более эффективным.

    Также нужно разобраться, в каких пределах конкретный ИМ работает хорошо и, когда он становится не эффективным, включать вместо него другой ИМ, который в этих пределах работает хорошо.
    Таким образом, вся отладка должна производиться на работающем объекте, поэтому так важно, чтобы загрузка новых версий происходила молниеносно и без проводов, по воздуху.

    А поскольку я не программист и для меня это задача не лёгкая, поэтому я не могу сказать, сколько это займёт времени, но считаю, что иного способа нет, поэтому дальше буду двигаться этим путём.
     
  10. Бриг62
    Регистрация:
    05.05.08
    Сообщения:
    3.064
    Благодарности:
    1.604

    Бриг62

    Живу здесь

    Бриг62

    Живу здесь

    Регистрация:
    05.05.08
    Сообщения:
    3.064
    Благодарности:
    1.604
    Адрес:
    Россия
    По моему у вас телега впереди лошади. Автоматизировать можно только то, что успешно работает в ручном режиме. А не при помощи контроллера экспериментально выявлять технические косяки оборудования.
    ИМ должны рассчитываться под выполнение задачи. Контроллеры и их прошивки в этом не помогут.
    Но труд проделанный вами вызывает уважение. Все это надо рассматривать как хобби. Ведь было получено много новых знаний и различных эмоций. Часто и положительных.
     
  11. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Согласен, что один из способов - сделать расчёт ИМ под конкретный объект. Для этого нужно сделать полноценный теплотехнический расчёт теплицы - работа, достойная института, вы можете это сделать? Другой способ - определить это на практике, но вы этот вариант отвергаете.
    Есть и третий вариант - сделать оценочный расчёт по упрощённой методике. Что касается обогрева, я такие расчёты делал много раз и в разных темах, и в своём дневнике - в нём целых 10 тем посвящёно этому.
    На практике же, даже точный расчёт не настолько точен, чтобы обойтись без практических испытаний. Да и почему вы подбор ИМ опытным путём отвергаете напрочь? Был бы результат достигнут.
    А насчёт автоматической системы управления, так обратите внимание, что то, что я пытаюсь разработать, и есть система ручного управления. Вначале я делаю пробные действия, например, в мороз, чуть-чуть приоткрыть форточку и наблюдать, как это отразится на температуре и влажности. Если они мало меняются - увеличиваю створку до тех пор, пока параметры не проседают ниже, чем следует. И всё это делаю простой перезагрузкой из дома.
    Таким образом, можно собрать переходные характеристики объекта управления и исполнительных механизмов, подобрать оптимальные, что здесь неправильного? И только потом, когда алгоритм управления отлажен для разных сочетаний температур и влажности снаружи и внутри, можно переводить всю систему на автомат. Это не устранение косяков, это настройка системы автоматического управления.
     
    Последнее редактирование: 12.01.25
  12. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Простите, не заметил сразу, но вы сделали мне комплимент, сказав, что у меня телега впереди лошади.
    Да, именно так, лошадь - это более высокий уровень и при разработке нужно начинать с телеги, и только добившись успешной работы более низкого уровня, переходить к отладке следующего.
    В терминах автоматизации телега у нас - это сам объект управления (теплица). В принципе, она может работать и без более высокого уровня, потому, что в любом проекте всегда присутствует человек, заполняющий все отсутствующие уровни.
    Но лошадь в терминах автоматики - это не управляющее устройство, а силовой механизм, приводящий телегу в действие. В нашем случае лошадь - это исполнительные механизмы, так что в начале я конструирую теплицу так, чтобы потом ею могла управлять автоматическая система управления. Например, если теплица под помидоры высотой всего 2 м, то очень сомнительно, что её можно автоматизировать - растениям просто некуда расти и верхушки окажутся в самых неблагоприятных условиях.
    Далее мне нужно подобрать адекватные ИМ, способные справляться с климатом в теплице и распределить их работу так, чтобы работа одного не нарушала работу другого и чтобы все они работали эффективно.
    Т. е. на втором этапе я занимаюсь лошадью. Вообще, если продолжить эту аналогию, то лошадь в дальнейшем была заменена на автомобиль. Но принципиально это схему не изменило: автомобиль, как и лошадь - это всего лишь исполнительный механизм, а система управления, хоть и несколько автоматизированная, как была, так и осталась на ручном управлении.
    И только на третьем этапе появляется автоматическая система управления, исключающая человека из процесса - беспилотник. В нашем случае, когда мы добиваемся, чтобы ИМ гарантированно справлялись с климатом в любых систуациях, мы можем переходить к 3-му этапу. Т. е. всё правильно, последовательность разработки должна быть именно такая:
    телега
    телега -> лошадь
    телега -> лошадь - > автомат.
    Но поскольку при строительстве теплицы я об автоматизации не думал, то естественно, теплица не оптимизирована под последующую автоматизацию и этап "телега" поневоле оказывается пропущенным (не строить же новую теплицу). Вследствие этого, на ИМ действительно выпадает лишняя нагрузка - компенсировать все косяки, допущенные при строительстве теплицы, т. е. алгоритмы, управляющие исполнительными механизмами, поневоле должны быть более совершенными. В следующем посте я опишу, как я собираюсь это сделать.
     
  13. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Новый этап, как я планирую, уже не будет посвящён только контроллерам, он будет посвящён автоматической системе управления в целом.
    Собственно, эту тему я вообще продлевать намерен не был, её продлили за меня, не спросив моего мнения, о чём я писал ещё в самом её начале: Ну вот, продлили тему, хотя я не намерен был. Ладно, пусть будет, мне убытку то нет, а тему "Регулирование температуры и влажности в теплице" всё равно открою... позже.
    Т. е. здесь я намерен освещать все проблемы, связанные с автоматизацией теплицы, включая конструкцию теплицы, инженерное оборудование теплиц и взаимодействие регулирующих механизмов.
    И тут новые контроллеры с Wi-Fi, прошивка по воздуху, интерфейс с компьютером - только часть этой системы, хотя и очень важная.
    В данный момент я как раз думаю, как увеличить информативность интерфейса с компьютером. Сперва я сделал его на основе временной диаграммы, но быстро убедился, что такая форма представления данных мало информативна и очень неудобна. На ней каждый параметр отображается в виде отдельного графика и непонятно как ими управлять во взаимодействии, чтобы они не нарушали работу друг друга.

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

    upload_2025-1-17_17-11-57.jpeg

    Поработав немного с координатами, я представил эту же таблицу в несколько изменённом виде, более подходящую для своих задумок:

    upload_2025-1-17_17-14-6.jpeg

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

    Теперь проблема свелась к тому, как эту программу создать, учитывая, что для этого нужно знать довольно хорошо и язык С+ и HTML-5, и Javascript, да ещё несколько структур, созданных для их поддержки. Я конечно не знаю, но... была бы задача поставлена. Вобщем, буду пытаться. будут успехи - выложу тут.
     
    Последнее редактирование: 17.01.25
  14. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.070
    Благодарности:
    8.373
    Адрес:
    Брянск
    Ревизия и конфигурация системы

    К созданию диаграммы всё ещё не приступил. Разбор «авгиевых конюшен» 5-летней давности огорчил. Я тогда практически ничего не видел из-за травмы зрения, так что мне пришлось переносить все свои авуары на новый компьютер, глядя на буквы компьютера и на экран через лупу. В общем, перенёс кое-как, но не проверил. Proteus встал криво - футпринты и последние разработанные печатные платы потерял. Proteus хорош, но создавать на нём свои элементы, которых нет в библиотеке - геморрой, так что, наверное, возобновлять работу на нём уже не буду, перейду на более простую программу трассировки.

    Ещё и программатор USBAVR - он и так ранее глючил, и вот окончательно дал дуба, так что перепрограммировать конструкции на AT328P теперь невозможно, нужно заказывать новый. А жаль, есть задумки, где можно поставить контроллеры, AT328P – микро мощный, в отличие от ESP, так что может работать от батарейки, там, где Wi-Fi не нужен, лучше ставить AT328P.

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

    upload_2025-1-27_20-3-55.png

    Модули без кнопок и экрана. Их можно добавить, но думаю, может это и не понадобится. А программатор для них так и так нужен, так что заодно и вопрос с AVR решится.

    Зрение тогда ещё и данные нормально перенести помешало, в таком состоянии был, что забыл библиотеки перенести. В общем, пришлось искать и ставить заново. Ещё дисплей LCD 1602 на AVR подключал параллельно по 6-проводной схеме, на ESP8266 это роскошь – мало выводов. Ставил через I2C. Заодно вместо часов реального времени RTC запустил синхронизацию через NTP. Предполагаю, что модуль RTC возможно ставить и не понадобится.
    Вообще, МК ESP много потребляют, так что от батарейки и аккумулятора они не потянут, но ведь и AVR без питания работать не будут, так что бесперебойность работы – это непременное условие. Но если это всё равно нужно сделать и придётся вопрос решать, то и проблему потери времени, тем самым, разрешится. Например, максимально использовать режимы сна.

    Короче – модули ESP32, минус дисплей, минус кнопки, минус модуль RTC.
    В общем, NodeMCU сейчас дату, время синхронизирует, подключил датчик HTU21D, экран LCD1602 через I2C– всё работает, выводит на экран линейную диаграмму (температуру и влажность), можно приступать к точечной диаграмме, как и планировал.
     
  15. ask33
    Регистрация:
    06.11.13
    Сообщения:
    1.551
    Благодарности:
    3.372

    ask33

    Живу здесь

    ask33

    Живу здесь

    Регистрация:
    06.11.13
    Сообщения:
    1.551
    Благодарности:
    3.372
    Адрес:
    Ногинск
    В общем както все сумбурно.
    То протеус, то USBAVR, то "Вообще, МК ESP много потребляют," Ну хорошо что не P-CAD.

    Тут определиться надо, или шашечки или ехать.

    Если по порядку
    1. Есть замечательный продукт, бесплатный, EasyEda. Достоинства расписывать не буду, это за меня уже давно сделано в интернете, так же у них есть канал на ютубе. Эмуляцию работы схем в нем не пробовал, все равно все делаю на макете, из последних косяков эмуляторов и даташитов это перепутанные выводы у энергометра BL0942. Везде перепутаны MISO и MOSI местами, целый день не мог понять что не так.
    Nак что смотрим пол дня обучающее видео, до просветления и потом быстренько набрасываем схемы, разводим печатные платы. Заказ правда на JLPSB щас не работает но есть пара других производителей плат, которые работают с Россией.
    Ну если не устроит EsyEda то ставим Altium, ну там не так все интуитивно просто, но тоже понятно, с него к стати китайцы и делали EasyEda.

    2. Где писать код, ну или ардуино IDE 2, он в принципе не плох. Но я привык к VisualStudio с плагином vMicro, в последней версии которого есть сильно раздражающий визуальный косяк :-(Это под МК.
    Можно конечно освоить ESP-IDF, тогда буду завидовать белой завистью! У меня быстро с наскоку не получилось, но мне нужно было ехать, а не шашечки.
    Для web интерфейса, если нужен, то Visual Studio Code. Там и JS и стили и странички. От Ajax отказался в пользу WebSocket, удобненько. И конечно для интеграции "устройства<->SQL<->Telegram<->Dashboard" используется NodeRed.

    С софтом определились. Тот еще зоопарк, но мне кажется для оптимизации в выборе софта это надо на профильные форумы. Для меня главные факторы это "бесплатность" и интуитивная понятность программы.
    А делать что то в протеусе это утопия, при условии что комплектующие копеечные и можно все собрать для теста в железе.

    3. Про потребление. Много ESP потребляют? Вот тут старая статья - https://habr.com/ru/articles/525032/ там автор добился потребления 0,5ма. Много? Думаю если поискать можно найти и более новые, ну конечно меньше чем заложил производитель ESP потреблять не будет. Но я скажу так, у меня в тепличке управление на ESP8266 с использованием исполнительных механизмов (2 актуатора и 4 крана полива) живет 2 дня от 2х LiOn аккумуляторов 18650. Правда схема зарядки не очень, полная зарядка идет часа 2-3, сейчас есть более продвинутые зарядки. Поэтому не совсем понял про потребление, чего хочется получить при батарейном питании и зачем? Если лень тянуть 20 метров провода, ставим солнечную панель, и аккумуляторы, и вопрос с питанием снова решен.
    Опять же, чтобы не упереться в количество выводов например и проект в самом начале, то сразу берем ESP32. разница в цене 100р, а в аппаратных возможностях колоссальная. Так понимаю 100р на одном поректе погоды не сделают. Потому как если выводов не хватит придется колхозить расширитель портов, а это всяко дороже обойдется и к тому же с кучей ограничений.
    Причем если надо без WiFi есть варианты ESP и без WiFI, но непонятно зачем?

    4. зачем нужен USBAVR?
    Модули типа NodeMCU уже на борту имеют - usbuart причем не плохой. Вот например и модуль и макета - https://aliexpress.ru/item/1005004337178335.html цена вопроса 440р Сразу скажу я такие не люблю, о низком энергопотреблении забываем, но для макетирования пойдет.
    Мне больше нравится такой комплект
    Ну это мое видение. С таким подходом 2 устройства на атмегах трудятся уже 6 лет, это брудер и инкубатор, но если помрут даже не буду прошивки искать и восстанавливать, перейду на esp32.
    на esp8266+atmega1284p работают курятник и тепличка, курятник 4 года или больше, тепличка отработала 3 сезон. Тепличкой очень доволен, можно заняться стройкой, не надо бегать открывать закрывать поливать. Только пасынкую и пропалываю, но это мелочи...

    Да к стати! Чуть не забыл! нужно посмотреть в сторону ESPHome и HomeAssistant. Очень многие работают с этими платформами, программирования минимум, огромная база поддерживаемых датчиков, сенсоров и тд.
    У меня не взлетело, то работает то нет, в общем помучался неделю, почитал форумы, у всех работает у меня нет :)
    Но внимание обратить надо обязательно, многие используют и очень довольны! Говорят не надо изобретать велосипед.