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

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

Тема в разделе "Теплицы и парники", создана пользователем Анкор Плюс, 19.05.18.

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

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Приведённая формула больно похожа на ФНЧ, кстати. По ходу, это он и есть :)

    Можно и с ним попробовать, в принципе ;) Только суть ФНЧ в сглаживании, что не спасает от резких колебаний, сиречь "болтанки":

    1. Показание 100, расчитанное по ФНЧ значение - 1 (первый проход, H1 изначально было равно нулю, ессно);
    2. Показание 1000, рассчитанное по ФНЧ значение - 10.99 (!);
    3. Показание 10000, рассчитанное по ФНЧ значение - 110.88 (!).

    Что, соответственно, при РЕЗКОМ изменении картины, в данном случае, роста показаний вверх - даст различие соседних показаний на порядок (т.е. порядки при таком сглаживании - сохраняются, а именно этого нам надо избежать).
     
    Последнее редактирование: 26.08.18
  2. olegmak3
    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442

    olegmak3

    Живу здесь

    olegmak3

    Живу здесь

    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442
    Адрес:
    Санкт-Петербург
    Вот я и спрашивал, где взять мгновенные показания датчика для сравнения с усредненными (пусть даже Экселем) ,дабы блукать не на ощупь.
     
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Короче, засада :)
     
  4. olegmak3
    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442

    olegmak3

    Живу здесь

    olegmak3

    Живу здесь

    Регистрация:
    14.08.11
    Сообщения:
    524
    Благодарности:
    442
    Адрес:
    Санкт-Петербург
    Дима!
    Раскомментировал. Ничего не пишет про полив.
    Что делаю не так?
     

    Вложения:

  5. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Так что сейчас реально не могу предложить ничего конкретного по записи действий контроллера в файл. В будущем - можно будет заняться этим делом, но когда конкретно - хз.
     
  6. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

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

    Но, как я говорил выше - данный функционал пока находится на экспериментальной стадии ;)
     
  7. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Пять плюсиков вот тут: https://www.forumhouse.ru/posts/22242690/

    Ну что же - пока тему с семидюймовым Nextion закрываем - не срослось, значит не срослось ;)
     
  8. tchernyavsky
    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160

    tchernyavsky

    Живу здесь

    tchernyavsky

    Живу здесь

    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160
    Дорогое получается удовольствие...:( Хотя - интересное! :super:
    Вот, если-бы с DUE вопрос решить, чтобы, блин, не висла - было бы ОК! :)
     
  9. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Китайские платы, они такие :( Можете попробовать на мини-версии Due, но, опять же - это с али. Виснет по железной части, других вариантов просто не вижу - уже кучу всего перерылось.
     
  10. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

    Разработка контроллеров

    promavto

    Разработка контроллеров

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Собрано 4 контроллера нового варианта (GreenhouseDUE_Base_Maxi) с применением микроконтроллера как на Ардуино DUE. Сейчас контроллеры в отладке. В предыдущей версии проблема с зависанием была решена. Надеюсь в этой версии этой проблемы так же не будет.
    Сейчас в разработке контроллеры на микроконтроллерах STM32F407ZET6 и STM32F103ZCT6.
    Изучается адаптация с дисплеями TFT. С остальными функциями управления pin проблем не должно быть. Загрузчик Ардуино на этом микроконтроллере работает.
     
  11. tchernyavsky
    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160

    tchernyavsky

    Живу здесь

    tchernyavsky

    Живу здесь

    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160
    А как была решена эта проблема? Что вы сделали? :faq:
     
  12. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

    Разработка контроллеров

    promavto

    Разработка контроллеров

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Насколько мне удалось установить, проблема зависания связана с работой протокола I2C и микросхемой часов DS3231 и TFT дисплея. При этом в других проектах с применением SAM3X8E (DUE) и немного другого TFT дисплея этой проблемы не наблюдаем.

    Решение проблемы. В микроконтроллере SAM3X8E есть встроенные часы. Отказываемся от применения DS3231 и применяем встроенные. Но здесь есть небольшой нюанс - нельзя применять стандартный сброс (он сбрасывает и показания часов). Для этого в микроконтроллере есть другой вариант сброса, который не сбрасывает часы и несколько других регистров. Здесь опять засада, сброс выполняется не полностью и для полного спроса лучше кратковременно отключать питание. Этим у меня занимается сторожевой таймер, настроенный на 30-50 секунд. А что бы таймер не сбрасывал контроллер при загрузке программ, добавлен сигнал сброса таймера от контроллера USART (Atmega16U вывод RX).
    Немного сложно, но работает стабильно.
    В новой версии платы (GreenhouseDUE_Base_Maxi) предусмотрены режимы работы как внутренних часов, так и от DS3231.
    Сейчас модуль на тестировании, посмотрим как будет работать.

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

    Есть хороший вариант для тестирования, в нем уже установлены основные микросхемы. осталось подключить периферию.

    https://ru.aliexpress.com/item/STM32F407-development-board-learning-board-MCU-development-board-CAN-Bluetooth-485wifi/32893391801.html?spm=a2g0s.9042311.0.0.3da233edbNKYc9
     
  13. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Возможен ли теоретически такой вариант, что именно при инициализации данного конкретного контроллера дисплея что-то там идёт не так и по факту получаем высокий на шине I2C?
     
  14. tchernyavsky
    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160

    tchernyavsky

    Живу здесь

    tchernyavsky

    Живу здесь

    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160
    А что не так с TFT 7" ? Вроде он не связан с I2C ?
    Неуже-ли всётаки придётся раззоряться на Nextion? :(
     
  15. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

    Разработка контроллеров

    promavto

    Разработка контроллеров

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    При всем уважению к Дмитрию, я сторонник недорогих, но хороших дисплеев. Nextion все таки иногда намного дороже самого контроллера. Я уверен, что проблема с DUE будет решена. Иногда бывают какие либо условия применения контроллеров, на которые мы не заостряем внимание, считая что так устроены все микроконтроллеры. И применяем стандартные программы. Возможно применение STM32 вообще решит эти проблемы (если не добавить новых). :nono:

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

    Микроконтроллер это не компьютер, поэтому сам должен обслуживать свой встроенный дисплей, какой бы он не был.
     
Статус темы:
Закрыта.