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

Контроллер для теплицы на STM32

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

?

Можете ли вы самостоятельно изготовить систему автоматики для теплицы?

  1. Да

    76,7%
  2. Нет

    16,3%
  3. Могу, но не работает так, как бы хотелось

    7,0%
  1. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Контроллер для теплицы на STM32
    Уважаемые коллеги!
    Хотелось бы немного дополнить уже имеющиеся на форуме публикации небольшой статьёй, дополняющей серию доступной автоматизации для дачных участков. STM32 как серия микропроцессоров вполне может дополнить группу устройств автоматики, построенных на Ардуино.
    Немного истории - почему вообще родилась такая сист ема. Совсем недавно я стал счастливым обладателем 140 кустов ремонтантной малины, и конечно же, сделал посадку. Несмотря на то, что убыли приложены старания - результат оказался плачевным. Посадка была с мульчирующим покрытием и оборудована капельным поливом - но более половины кустов к осени оказались нежизнеспособными. Причём что удивительно - ни вредителей, ни болезней замечено не было. Именно это и оказалось толчком для начала работ.
    В первую очередь, был проведён анализ воды - и оказалось, что вода имеет состав, который не очень хорошо воспринимается малиной. Грустная новость - это говорит о том, что без специальной системы подготовки применить воду, имеющуюся просто в избытке на участке, нельзя. Конечно, интернет мне в помощь - и результаты просто шокирующие... Цена на готовую систему превышает 270 тыс рублей, и просто так её не купить - изготавливается индивидуально, и для моих объёмов сони имеют слишком большую производительность. Стало обидно за державу - и вот, после года(!) работ, появилась на свет система, которая с успехом прошла испытания и в этом году будет управлять поливом и подкормкой моих посадок. Причём не только малины.
    Собственно, вы справедливо заметите - это же открытые посадки, а тут обсуждается закрытый грунт. Да - дело в том, что мой коллега, у которого имеется 3 теплицы, заинтересовался проектом. И вот уже для него сделаны малой серией контроллеры, фото которых вы видите ниже

    plc.JPG

    Немного технических подробностей - в качестве основной платы используется отладочная плата с установленным stm32f103c8t6. Питание 220В переменного тока, имеется гальванически изолированная шина стандарта RS485 и также гальванически изолированная шина стандарта 1-wire. Контроллер является свободно программируемым - по командам полностью совместим с контроллером FX2N Mitsubishi.
    Поддерживает протокол обмена Modbus RTU как мастер, так и слейв. Также имеет 2-й порт обмена последовательными данными - но поддержка только слейв modbus RTU.
    Благодаря наличию шины 1-wire, легко работает с распространёнными датчиками температуры DS18B20. Причём поддерживает до 128 штук.
    Также в данную публикацию хотелось бы добавить видео работы системы из 4-х контроллеров, работающих по шине модбус.



    Почему я решил провести такую публикацию? Да очень просто - ведь не каждый может взять в руки паяльник и собрать то, что ему необходимо. Этот контроллер даёт возможность реализовать любую идею или задумку фермера без особых знаний.
    Немного сумбурно описал систему - уж извините. Если будут вопросы - милости прошу, отвечу по возможности на все. Также, если этот пост пропустят, буду публиковать материалы о том, как эта система будет устанавливаться в теплице. Надеюсь, этот опыт будет полезным.
     
  2. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    День добрый.
    Насчёт новой темы - давайте рассмотрим принципиальные отличия.
    Используется аппаратная платформа, ранее на этом форуме не применявшаяся для построения систем автоматического управления. Микроконтроллер серии STM32 всё-таки достаточно интересная платформа.
    Применяется операционная система реального времени - это тоже новинка.
    Изделие уже готовое к применению - наверное повторюсь, что немногие могут самостоятельно изготовить печатную плату, спаять её и запрограммировать.
    Этот контроллер действительно является контроллером - программируется с использованием языков программирования стандарта IEC 61131 -3. Такой особенности нет ни у одной конструкции, здесь описанной. Эта особенность позволяет не кланяться изготовителю каждый раз, когда необходимо внести малейшую поправку в алгоритм, а сделать это либо самостоятельно, либо попросив знакомого программиста. Вообще, промышленные языки просты в освоении - потому что они визуальные.
    Далее - я обязательно расскажу про умные датчики освещённости, влажности воздуха и почвы. Они кстати подключаются по сети RS485 и значительно расширяют возможности системы.
     
  3. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628
    Адрес:
    Брянск
    Я считаю наиболее важные отличия должны заключаться в потребительских свойствах: что может, насколько легко пользоваться, изменять параметры, сколько стоит, габариты, лёгкость повторения, авторская поддержка, защищённость.
    В техническом уровне конструкции не сомневаюсь, чувствуется рука мастера, а вот с ценой как?
    И ещё, по содержанию поста можно сделать вывод что описываете как раз для тех, кто дружит с паяльником и не только с ним. Собираетесь ли выкладывать всю исчерпывающую информацию для повторения или просто пока не определились с формой подачи материала и рассчитываете на покупателей готового изделия?
     
  4. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Спасибо за комментарий, уважаемый Cofessor.
    Ваша ветка форума оказалась для меня крайне полезной - для себя почерпнул много интересного.
    Совершенно с Вами согласен - самое важное, это именно потребительские качества. Их опишу ниже:
    Габариты - 145х90х40. Исполнение корпуса IP20. Монтаж- шкафная установка.
    Напряжение питания -220 В переменного тока. Резервный источник питания - от 12 до 36 В постоянного тока. Применение резервного источника опционально.
    Имеет часы реального времени с батарейным резервированием. Установка и настройка времени - при помощи программного обеспечения GX Developer-FX точно так же, как и контроллера FX2N.
    Порт программирования - USB, работа через драйвер виртуального СОМ-порта.
    Имеет объём рабочей энергонезависимой памяти в 2000 шагов выполнения программы. Шаг программы - одна логическая операция, например, AND. Более сложные команды имеют большее количество шагов.
    Программирование возможно с использованием промышленных языков - IL (язык инструкций, текстовый вариант), LAD (язык лестничной логики, визуальный вариант), и SFC- язык последовательно выполняемых блоков. При программировании работа контроллера не прерывается - приостанавливается на время загрузки выполнение рабочей программы, затем возобновляется. Для программирования применяется GX Developer-FX.
    Имеется возможность проведения полноценной отладки без прерывания выполнения рабочей программы- режим онлайн-просмотра переменных и изменения значений любых переменных.Для отладки применяется GX Developer-FX.
    Можно не только загрузить, но и выгрузить из контроллера рабочую программу - при помощи программного обеспечения GX Developer-FX. Также можно установить парольную защиту алгоритма от считывания- стандартными средствами среды программирования GX Developer-FX .
    Для обеспечения обмена данными имеет встроенный блок обмена с поддержкой протокола modbus RTU. Может быть настроен для работы в режиме мастера или режиме слейва. В режиме мастера может выполнить до 64 запросов (32х2).
    Также имеется дополнительный блок modbus RTU, работающий только в режиме слейва. Предназначен для систем визуализации.
    Имеет модуль шины мастера 1-wire. Может опросить до 128 устройств - например, датчиков температуры.
    Также имеет 8 встроенных дискретных входов (низковольтные, на напряжение 5В с питанием от контроллера) и 8 дискретных выходов, из которых 2 шт - релейные, на ток 5 А 220В. остальные - выход с открытым коллектором.
    Имеет 2 аналоговых входа, на напряжение от 0 до 3.3В.
    Примерно такие характеристики. Чуть позже отвечу на остальные вопросы.


     
  5. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Часть вторая - так сказать, продолжение. Самый первый вариант, так сказать идея, была основана только на отладочной плате - минимальная обвязка и прошивка. Но как сами понимаете, это никому неинтересно.
    Поэтому было решено построить вот такой народный контроллер - максимум функциональности и ничего лишнего. Такой подход оказался оправданным -цена устройства конечная получилась от 5 до 6 тыс. рублей. В комплекте поставки - мы пишем и передаём вам программу до 250 шагов бесплатно, плюс систему архивирования и визуализации до 64 переменных (температура, влажность -что угодно) также бесплатно.
    А вот монтаж и разработка схем -уже по объекту.
    А что касается функциональности - вот сейчас, в данный весенний период, будет востребована система автоматического управления форточек по температуре и влажности, плюс управление поливом по поглощённой солнечной радиации. И вишенка на торт - подача питательных растворов по алгоритму.
     
  6. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628
    Адрес:
    Брянск
    Для меня управление поливом по поглощённой солнечной радиации - тоже вишенка. Точнее - загадка, ранее такой формулировки не встречал. Я самоучка, поэтому иногда встречаю незнакомые вещи. Правильно ли я понимаю что имеется в виду обычный датчик освещённости, или тут что-то посложнее?
     
  7. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Собственно, управление поливом по солнечной радиации вытекает из процесса питания растения. Для этого используется датчик освещённости, который оснащён микроконтроллером и сам рассчитывает дозу поглощённой солнечной радиации, полученной за сутки. Хотя вот такое применение более необходимо для правильной подачи питательного раствора как на малообъёмке, так и на различного рода грунтах. Тут главное не подать слишком много питания - растениям вредно, да и почва будет меньше засаливаться.
     
  8. Cofessor
    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628

    Cofessor

    Виталий

    Cofessor

    Виталий

    Регистрация:
    23.06.13
    Сообщения:
    9.584
    Благодарности:
    8.628
    Адрес:
    Брянск
    Если выращивание на обычном грунте, то количество полива должно зависеть от структуры грунта, от его влагоёмкости и от влаго-удерживающей способности: супесчаная или суглинистая почва, например. Поэтому полив (ИМХО) не может быть одинаковым. А ведь потребность растений в воде ещё и от температуры почвы и воды зависит?
     
  9. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Совершенно верно - что касается грунта, то тут нужен более датчик влажности почвы. Я не зря сделал акцент именно на питании растений, а не только на поливе. Это комплексная система, и она взаимосвязана. Примерно также, как система управления форточками по влажности и температуре воздуха уже для теплиц.
     
  10. timon2006
    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356

    timon2006

    Живу здесь

    timon2006

    Живу здесь

    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356
    STM32 (да еще и с ОСРВ) там, где и ATmega328 (с линейным алгоритмом) делать нечего - это сильно!
    Схему электрическую принципиальную покажете?
    И действительно, зачем кланяться изготовителю, когда можно попросить знакомого программиста? :)]
     
  11. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    День добрый, коллега. Конечно, на первый взгляд кажется, что тут всё просто. А вот теперь расскажу про типовое применение - прибор одним блоком обмена по modbus RTU опрашивает группу из 10-ти датчиков (1 датчик освещённости, 2 датчика влажности воздуха, 4 датчика влажности почвы, 3 ультразвуковых датчика уровня). На том же блоке обмена висит два блока подготовки раствора. Блок номер два работает со SCADA-системой, отдавая 460 параметров на визуализацию и архивирование. Программа состоит из 1965 шагов и выполняется за 12 мсек. Также опрашиваем 17 датчиков температуры. Собственно, ATmega328P тут уже не потянет - не хватит UART, нет DMA, да и 72МГц тоже немаловажно ... Продолжать не буду - 32 битные и 8 битные устройства сравнивать некорректно. Схема принципиальная не планируется (пока) в свободный доступ.
    Можно попросить и нас- нет разницы. Дело в том, что программистов, профессионально пишущих на промышленных языках - реально много. Посмотрите, какое разнообразие мы можем предложить-и IL, LAD, SFC. (FLprog не предлагать :no:)
     
  12. timon2006
    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356

    timon2006

    Живу здесь

    timon2006

    Живу здесь

    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356
    Ну, при желании можно и STM32F103 одним DS18B20 загрузить по полной:)].

    В конкретном применении - очень даже корректно.

    Угу, т. е. это не для "приятеля три штуки", а коммерческий проект? А тема - реклама? Я правильно понял?
     
  13. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    В конкретном применении ATmega328 просто не потянет - не будет работать. Я в своё время писал для Arduino Nano слейва modbus RTU с опросом 12 датчиков DS18B20 - без тайм-аута в 50 мсек были "проскоки" ответа. Писал на Atmel Studio - могу дать старые исходники. Кстати, с портом ОСРВ.

    То, что я показал на фото - это результат долгой эволюции схемотехники, которая прошла долгий и очень дорогой путь от прототипа до образца, готового для малой серии. И да - есть решения, которые интересны для копирования. Но мне их никто не дал просто так - всё получено тяжким трудом и большими затратами. Так что схему не раздаём именно по этим причинам.
    Коммерческим можно назвать любой проект, где происходит обмен денег на что-то. А я просто даю выбор - тем, кто не хотел бы тратить деньги и время на сборку самостоятельно, а сразу бы хотел бы работать с готовым изделием.
     
  14. timon2006
    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356

    timon2006

    Живу здесь

    timon2006

    Живу здесь

    Регистрация:
    09.03.15
    Сообщения:
    980
    Благодарности:
    1.356
    Потянет, от слова "запросто". Но слово "конкретное" - это для пользователя: управление Х - выходами 220В/5А, управление Y-выходами 12В/0,5А, чтение Z- датчиков по 1-wire, наличие N - аналоговых входов, работа по расписаниям и т. д., а не: DMA, ОСРВ и т. д.

    Нет, спасибо. Я уж как-нибудь сам, без тайм-аутов и портов ОСРВ:).

    Ох уж, эти сказочники (©):)]. Про долгий, тяжкий труд и большие затраты :super::)]:)]:)]. Два часа с подбором компонентов, час - без.
     
  15. Greeds74
    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112

    Greeds74

    Живу здесь

    Greeds74

    Живу здесь

    Регистрация:
    07.07.16
    Сообщения:
    113
    Благодарности:
    112
    Адрес:
    Новороссийск
    Весьма любопытное замечание! Прошу тогда повторить мою конструкцию с описанными параметрами - я понимаю, недели хватит вполне. И не забудьте про свободно программируемую логику)
    Кстати - реализуете аналог контроллера FX2N на Atmega328P? Всё просто в теории, друг мой.