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.888

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888
    Адрес:
    80 км от Краснодара
    В принципе так и задумывалось, что всё будет на внешней флешке, так что вы всё правильно делаете ;)
     
  2. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

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

    Зачем это? Да всё просто: юзер может поменять время полива на канале. Например, если было выставлено 2 минуты, полив отработал, настройки сохранились в EEPROM, а потом юзер выключил мегу, включил опять и добавил минуту (сделав 3 минуты), то мега допольёт ещё одну минуту, что совершенно логично.

    Код по сравнению валидности сохранённых в EEPROM данных я привёл, как там может помочь ваша единица - не вижу, от слова "совсем".
     
  3. olegmak3
    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442

    olegmak3

    Живу здесь

    olegmak3

    Живу здесь

    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442
    Адрес:
    Санкт-Петербург
    Думаю, что нет.
    У меня Мега питается от компьютерного БП. Кроме Меги по 12 вольтам питаются шторы (мах 3 А)
    Для него это не нагрузка.
    На днях подключу бесперебойник от автоаккумулятора. Давно хочу это сделать. Зарезервирую вытяжку (30 ватт) и шторы (тент).
    У меня ESP стоит включенная с того момента, когда Дмитрий выпилил ее из прошивки.
    Иногда, когда случайно включаю wi-fi на телефоне, он видит надпись"Теплица". Глубже не копал.
     
  4. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888
    Адрес:
    80 км от Краснодара
    Ну я её не выпиливал, строго говоря :) Просто в настройках по умолчанию этот модуль выключен, как и SMS-модуль. Так-то всё работает, и можно пользоваться.
     
  5. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888
    Адрес:
    80 км от Краснодара
    Ок, считаем, что это не нагрузка. Однако, как вы могли увидеть по ссылкам выше - проблема с EEPROM возникает при проблемах с питанием, именно это я иногда наблюдаю у себя. Почему считаю, что проблема именно с EEPROM? Потому что раньше, когда не было сохранения статуса полива за день в EEPROM - при перезагрузке меги полив включался повторно. Т. е. если мы наблюдаем такую же картину - значит, из EEPROM статус не вычитался по каким-то причинам. Не вычитаться он может только при соскакивании значений ячеек на дефолтные 0xFF. Именно поэтому мне кажется, что копать надо именно в сторону питания.

    Я пересмотрел весь код модуля полива - криминала не увидел нигде.
     
  6. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    Приходилось, довольно часто, ремонтировать БП компьютеров. При не большой нагрузке на осциллографе наблюдались очень короткие, но довольно сильные выбросы напряжения. Попробуйте запитать чисто от аккумулятора и посмотрите результат.
     
  7. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    Лет 18 назад подключали автоаккумулятор к бесперебойнику, питал ПК на котором стояла система записи телефонных переговоров, ПК работал без питания часов 10. Может эта система и до сих пор работает, года три там на был.
     
  8. Anatoly8853
    Регистрация:
    21.07.13
    Сообщения:
    94
    Благодарности:
    45

    Anatoly8853

    Живу здесь

    Anatoly8853

    Живу здесь

    Регистрация:
    21.07.13
    Сообщения:
    94
    Благодарности:
    45
    Адрес:
    Пятигорск
    Я конечно не программист, и может задаю глупые вопросы, но при каких условиях if (лож)?
     
  9. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

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

    Я выше приводил ссылки на обсуждение соскакивания EEPROM. Если вкратце, причина, по сути, одна - питание.
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

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

    К слову сказать, думаю, что работать через вебморду будет удобней, т. к. уже сейчас реализовано то, что в конфигураторе не существует: например, выгрузка только выбранных списков составных команд: создали набор таких команд, сохранили их в БД, потом загружаем в контроллер те списки, которые нужны. Единственное "но": при создании правил придётся вручную вводить индекс такого списка, поскольку то, что хранится в контроллере - никак не связано с тем, что хранится в БД: во всяком случае - по индексам. Впрочем, это уже мелочи, которые можно проверить и в тестовом режиме, скажем - например, нажав кнопочку "протестировать правило" (надо будет подумать о такой).

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

    Сейчас любые данные, хранящиеся в БД - привязаны к ID контроллера. Считаю, что это правильно, т. к. позволяет отделить мух от котлет. Да, для составных команд или правил, возможно, такой привязки и не надо - чтобы набор правил и команд был доступен для загрузки на любой контроллер. Поэтому - давайте обсудим этот вопрос: переделать несложно, просто надо понять целесообразность этого.

    Жду комментариев :)
     
  11. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888
    Адрес:
    80 км от Краснодара
    Выпилил, речь шла о DHT22 и о том, что он сдох. Не сдох, а сглючил, и дело точно не в контактах. Всё это не добавляет ему надёжности, конечно.

    Решилось отрезанием датчика от провода и втыканием прямо в макетку. Надолго ли - не знаю.
     
    Последнее редактирование: 21.05.16
  12. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.888
    Адрес:
    80 км от Краснодара
    И вообще - кто-нибудь кроме нас с @Shelllonn пробует вебморду? Там делов-то - поставить свежий AppServ под винду, раскомментировать пару строчек в php. ini, да закачать файлы вебморды в папку C:\AppServ\www (если не хочется возиться с настройками апача) - и всё.

    Конечно, поддержка ESP должна быть в прошивке, и ESP настроена через конфигуратор. Вот вроде и все фокусы, как видите - всё довольно просто. Очень бы хотелось видеть новых щупателей вебморды :)
     
  13. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    а лучше или vbox с openwrt и погонять на нем
     
  14. Voron74
    Регистрация:
    29.01.16
    Сообщения:
    411
    Благодарности:
    227

    Voron74

    Живу здесь

    Voron74

    Живу здесь

    Регистрация:
    29.01.16
    Сообщения:
    411
    Благодарности:
    227
    Адрес:
    Магнитогорск
    Не могу привязать esp 12 к меге. Толи сгорела, толи пришла дохлая. А другой нету, поэтому я пока без веб-морды.
     
  15. YRA26
    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71

    YRA26

    Живу здесь

    YRA26

    Живу здесь

    Регистрация:
    09.01.16
    Сообщения:
    160
    Благодарности:
    71
    @DIYMan, для меня, например, это пока" темный лес", я запутался уже что в систему ставить и как все это воедино связать.
    На гитхабе папка ESP8266 firmware, что делать с ее файлами.
     
Статус темы:
Закрыта.