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

Arduino Mega. Контроллер теплицы. Хроники

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

Статус темы:
Закрыта.
  1. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    1. Модуль SD-карты есть - самой карты нет, ещё идёт. Мыслей, для чего можно юзать этот модуль - пока не очень много.

    2. Ветра как в Белореченске, если нет таких данных, то можно ориентироваться на Майкоп.

    3. Не решил, но по логике вещей, наверное, надо внутри теплицы ставить, если контролировать затемнение раскатывающимися шторками. Если контролировать досветку - понятное дело, что лучше снаружи. Этот вопрос пока не пробивал, в общем. Поэтому буду рад любым мыслям.
     
  2. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Обновил на гитхабе, поправил некоторые ошибки в работе модуля LOOP, заодно обновил документацию.

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

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

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

    Скрин новой версии конфигуратора:

    screen.png

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

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

    Как обычно - комментарии, пожелания, багрепорты - всё будет в жилу.
     
    Последнее редактирование: 30.01.16
  3. YRA26
    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71

    YRA26

    Живу здесь

    YRA26

    Живу здесь

    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71
    DIYMan Поклон низкий за проделанную работу.
    Пытаюсь скомпилировать на 1.7.8 получаю:

    Arduino: 1.7.8 (Windows 7), Плата"Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

    In file included from Main. ino: 5:0:

    K:\arduino-1.7.8_DIYMan_Teplichka\libraries\libraries\Mega/ModuleController.h:12:20: fatal error: DS3231.h: No such file or directory

    #include <DS3231.h>

    ^

    compilation terminated.

    Ошибка компиляции.

    Это сообщение будет содержать больше информации чем
    "Отображать вывод во время компиляции"
    включено в Файл > Настройки

    Жалоба на библиотеку
     
  4. stasalt
    Регистрация:
    26.10.11
    Сообщения:
    5.000
    Благодарности:
    14.987

    stasalt

    Живу здесь

    stasalt

    Живу здесь

    Регистрация:
    26.10.11
    Сообщения:
    5.000
    Благодарности:
    14.987
    Адрес:
    Ростовская обл.
    Дмитрий все это конечно интересно, но хотелось бы собрать для начала простое
    определение влажности земли на глубине 15см…
     
  5. 2mike
    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415

    2mike

    Живу здесь

    2mike

    Живу здесь

    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415
    Адрес:
    Россия
    Простое определение влажности - купите себе простой китайский термометр садовода и будет вам счастие. он вам заодно и температуру и Рн почвы покажет.
    У автоматики будет сплошная проблема с постоянно окисляющимися электродами.
     
  6. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Надо установить библиотеку DS3231, она есть в архиве на гитхабе, в папке LibrariesUsed. Вытащите архив ds3231.zip на диск, в Arduino IDE выберите пункт меню "Установить ZIP-библиотеку" и укажите путь до этого архива.

    Если не используете часы реального времени на микросхеме DS3231 - то можно в файле Globals. h закомментировать строку

    #define USE_DS3231_REALTIME_CLOCK

    Но при этом стоит учесть, что перестанет работать управление поливом по дням недели, будет работать только ручной режим. Также правила слежения за температурой, у которых выставлено время начала работы - тоже не будут работать (правда, эти правила надо ручками прописывать, в конфигураторе нет сложных правил - всё спрятано внутри :)). Так что единственное, что потеряется при отсутствии модуля часов - автоматическое управление поливом.

    На предмет "посмотреть, как оно вообще" - закомментируйте указанную строчку, скомпилируйте прошивку, закачайте в мегу и запустите конфигуратор.

    А вообще - на главной странице проекта на гитхабе сказано, что надо установить входящие в комплект библиотеки ;)

    З. Ы. Проект на гитхабе: https://github.com/Porokhnya/GreenhouseProject - лучше качать оттуда, там постоянно свежие обновления выкладываю.
     
    Последнее редактирование: 31.01.16
  7. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Если подскажете надёжный долговременный способ - будет. Пока к китайским щупам доверия никакого - окислятся через пару месяцев. Я могу, конечно, но смысл возиться с изначально убогим поделием? Сам озадачен этим вопросом, но пока всё, что нашёл - не вызывает никакого отклика в душе: это либо упомянутые щупы, либо предложения юзать гвозди. Со вторым вариантом вообще чума - калибровать показания-то как?

    Мне тоже хочется определять влажность унутре. Но чтобы это были нормальные показания от нормального надёжного калиброванного источника, а не "бабушка надвое сказала, какая там сейчас влажность".

    Давайте подумаем вместе.

    З. Ы. Мне несложно - могу заказать этот дешёвенький щуп да приделать его поддержку, вот только смысл...
     
  8. 2mike
    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415

    2mike

    Живу здесь

    2mike

    Живу здесь

    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415
    Адрес:
    Россия
    Может народу проще популярно обьяснить суть житхаба ? пусть ставят пакет под винду и непарятся отсутствующими файлами :)
     
  9. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    В принципе согласен, но: там порог вхождения чуть более высокий, чем "просто взял - и начал". Единственное, на что я уповаю - что есть кнопка "Скачать ZIP-архив" :) А так да - ясное дело, что Gthub Desktop позволяет не париться и всегда получать последние обновления с нужных репозиториев. Да и форкнуть при случае всегда можно, если захочется чего-нибудь самому допилить.

    З. Ы. И вроде у меня нет отсутствующих файлов - всё в репозитории есть. Просто библиотеки сторонние надо ручками в Arduino IDE доставлять - считаю некошерным выкладывать их прямо в папку проекта, поскольку не мной они писаны. Вот дойдут руки - напишу сам, и выкину стороннее. Но это дело, как вы понимаете, небыстрое.
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    А вот возьму-ка я и начну отказываться от сторонних библиотек :) Для начала напишу под модуль освещенности - она простенькая :) А то как-то действительно неаккуратненько получается :)]:aga:
     
  11. 2mike
    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415

    2mike

    Живу здесь

    2mike

    Живу здесь

    Регистрация:
    14.03.10
    Сообщения:
    596
    Благодарности:
    415
    Адрес:
    Россия
    Хехе, а у меня мой жит клиент отказался от урла и клиент который висит под кнопкой Save project просто аварийно закрылся при установке :(
     
  12. stasalt
    Регистрация:
    26.10.11
    Сообщения:
    5.000
    Благодарности:
    14.987

    stasalt

    Живу здесь

    stasalt

    Живу здесь

    Регистрация:
    26.10.11
    Сообщения:
    5.000
    Благодарности:
    14.987
    Адрес:
    Ростовская обл.
    мне такой щуп приехал буду пытаться собирать а там в процессе возможно что нибудь новое появится...От окисления можно попробовать чем нибудь покрыть...да и наделать их можно немеренно самим.

    https://ru.aliexpress.com/item/Free-shipping-soil-moisture-sensor-soil-moisture-module-for-arduino/1878960308.html

    http://arduino-diy.com/arduino-gigrometr
     
    Последнее редактирование: 31.01.16
  13. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Бывает. Не совсем стабильный софт, к сожалению.
     
  14. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    А чем покрыть, чтобы не нарушить точность показаний - вот в чём вопрос. Я же говорю - единого мнения нет, вернее, оно есть, но неутешительное: датчики эти - так себе.

    Я его закажу на пробу, но чуть позже, как более актуальные вещи закуплю.
     
  15. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

    Любопытный рукосуй :)

    DIYMan

    Любопытный рукосуй :)

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Тем временем малясь обновил - выкинул нафик библиотеку BH1750, да написал свой класс для опроса датчика освещенности. Весь функционал реализовывать не стал - нам достаточно в постоянном режиме опрашивать датчик, не надо никаких Sleep и Reset. Если вдруг когда-нибудь надо будет - допишу.

    Немного поправил конфигуратор: несколько багов прибил, сколько добавил - не знаю :) В прошивке исправил несколько ошибок незначительных, на работу никак не влияющих, но, тем не менее - ошибок. Одна из них - в SMS со статистикой неправильно отображался статус полива. Теперь всё норм. А всё почему? Да потому, что на ходу не надо менять формат команд (это я себя ещё раз убеждаю): добавил в хвост ответа лишний параметр - и модуль SMS смотрел уже не на тот параметр, на который смотрел до этого. Мелочь, а кровь выпивает. Вот именно поэтому нужны юнит-тесты, но это не про МК, к сожалению. Поэтому приходится постоянно тестировать весь функционал по кругу.

    Всё, пошёл вздремну.
     
Статус темы:
Закрыта.