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

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

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

Статус темы:
Закрыта.
  1. HANTER333
    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156

    HANTER333

    Живу здесь

    HANTER333

    Живу здесь

    Регистрация:
    21.12.15
    Сообщения:
    1.617
    Благодарности:
    1.156
    Серега, поздравляю с днем рождения! Желаю тебе здоровья и что бы все получилось;)
     
  2. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
    Возвращаюсь к этой теме. В контроллерах теплицы мы применяем метеостанции из серии Misol или аналогичных.

    Я применяю такие.
    2020-12-01_21-30-43.png

    Внутри у этой станции установлен передатчик на 433 мГц.
    Осталось получить сигнал и расшифровать его.
    Мне удалось это сделать и принять на Ардуино
    Фрагмент сообщения:
    Temperature: 25.3
    C; Humidity: 33
    %; Wind: 0.46
    m/s; Direction: E

    То есть достаточно установить в контроллер приемник на 433 мГц (50 - 80 руб) и не нужно ничего "лепить" типа LoRa или каких то проводов. Выход приемника подключается по 1 проводу к входу микроконтроллера. Передача информации фиксируется по прерыванию, далее массив обрабатывается программой.
     
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Нормально! Значит, в будущем можно будет внедрить это дело.
     
  4. Ден65
    Регистрация:
    15.07.19
    Сообщения:
    165
    Благодарности:
    53

    Ден65

    Живу здесь

    Ден65

    Живу здесь

    Регистрация:
    15.07.19
    Сообщения:
    165
    Благодарности:
    53
    :hello:Я такую-же в корзину закинул месяц назад и все думаю надо-не надо:)
     
  5. ANovi
    Регистрация:
    04.10.11
    Сообщения:
    81
    Благодарности:
    19

    ANovi

    Живу здесь

    ANovi

    Живу здесь

    Регистрация:
    04.10.11
    Сообщения:
    81
    Благодарности:
    19
    Адрес:
    Москва
    Здравствуйте. Не могли бы вы ссылочку отправить на метеостанцию. Спасибо.
     
  6. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
  7. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
    Закончил тестирование кода метеостанции. Часть информации не расшифрована, возможно не применяется в этой метеостанции. Но необходимую информацию получить можно:
    1) Температура наружного воздуха
    2) Влажность наружного воздуха
    3) Направление ветра (8 направлений)
    4) Скорость ветра
    5) Накопительный счетчик дождя.

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

    Код адаптирован под AVR Mega и DUE. Для этого достаточно в setup раскомментировать соответствующую строчку. Необходимо учитывать какие pin AVR работают на прерывание.
    В данном примере применяется пин номер 2. Для DUE может быть определен любой пин.

    Постарался в коде написать подробные комментарии.

    Образец посылки метеостанции в КОМ порте.
    ID: F5
    calc_CRC: 127
    received CRC: 127

    Temperature: 25.9C
    Humidity: 28%
    Wind: 0.00m/s
    Direction: S
    Rain pulse: 6.00

    Лишнее можно удалить (ID, CRC).

    Файл программы прилагаю.

    Тестировал этот передатчик 2020-12-03_12-52-42.png
     

    Вложения:

    Последнее редактирование: 03.12.20
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Ок, пока сохраним на будущее ;)
     
  9. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Обновления

    Обновилась прошивка и конфигуратор расширенной версии. Приделал черновую версию опроса метеостанции типа Misol. Всё, что можно было взять от метеостанции в проект - взято, а именно: наличие дождя, скорость и направление ветра. Температура и влажность - мимо кассы, потому что в рамках проекта - их некуда девать просто. @promavto, Саша: сразу КАТЕГОРИЧЕСКОЕ "НЕТ" температуре и влажности с метеостанции, потому что надо обеспечить обратную совместимость с самопальным модулем метеостанции, а там - нету немпературы и влажности. Поэтому этот вопрос - закрыт, точка.

    Теперь о том, что надо сделать, если хочется протестировать:

    1. Весь код, предоставленный Александром Васильевичем - находится в файле WeatherStation. cpp прошивки. Если что - правим там, там есть комментарии;

    2. В "Привязках железа" в конфигураторе, на вкладках "Датчик дождя" и "Датчик ветра" выбираем "Тип управления" как "Метеостанция типа Misol". Это надо сделать на обеих вкладках, также на вкладке "Датчик ветра" в поле "Пин" (оно будет единственным активным при выбранной опции) указываем номер пина, куда подключаем сигнал с приёмника. В прошивке проверяется, что номер пина не должен быть больше 65 (кол-во цифровых пинов у Due - 66, нумерация с нуля) - иначе, без этой проверки, прошивка виснет в недрах pinMode и attachInterrupt.

    3. Сохраняем привязки, выключаем контроллер, подсоединяем приёмник, включаем контроллер. Данные должны пойти. Если что не так - то можно в Serial повыводить отладочную информацию, дописав, что нужно, в WeatherStation. cpp.

    Естественно, у себя я не пробовал, за отсутствием метеостанции и приёмника. @promavto - Саша, твой ход ;) Пиши в скайп, если что.

    Пока анонса на сайте не даю, надо отладить код и проверить его работоспособность.

    З. Ы. Да, забыл: есть ограничения по направлению ветра: у нас используется 4 основных, нет всяких северо-востоков и пр. Поэтому данные с метеостанции приводятся к четырём основным направлениям.
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Категорическое "нет" отменяется :)]:aga: Нашёл способ добавить в систему температуру и влажность с метеостанции. Для этого в привязках железа на вкладке "Датчики влажности" будет спецтип датчика, вроде "Т и влажность метеостанции Misol".

    Работаю над этим, по результатам - отпишусь.
     
  11. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Обновления

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

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

    Резюмируя: для того, чтобы получать данные с метеостанции через приёмник, надо:

    1. Подключить приёмник к какому-либо свободному цифровому пину;
    2. На вкладке "Датчик дождя" выбираем тип управления "Метеостанция типа Misol";
    3. На вкладке "Датчик ветра" выбираем тип управления "Метеостанция типа Misol" и указываем номер пина, куда подключен приемник;
    4. На вкладке "Влажность воздуха" прописываем нужный датчик как "Т-ра и влажность метеостанции Misol", т. е. датчик - композитный, с температурой и влажностью.

    Всё - теперь все данные с метеостанции будут заведены в контроллер.
     
  12. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
    МЕТЕОСТАНЦИЯ. Выпаял приемник на 433 мГц со старой автомобильной сигнализации. В Китае заказал, но ждать еще долго. Подключил к Меге. Приемник шумит изрядно, но сигнал забивает шумы и пакет определяется без проблем. Не сомневаюсь в успехе этой новой "примочки" (не смог подобрать подходящего слова - пора отдыхать).
     
  13. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
    Ну что сказать? Стахановцы (если еще кто то помнит кто это). От идеи до внедрения считанные часы. :)]:hello:
     
  14. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.963
    Благодарности:
    1.959
    Адрес:
    г. Москва, Зеленоград.
    МЕТЕОСТАНЦИЯ. Опыт применения. Штатный дисплей метеостанции, устанавливаемый в доме или другом помещении. На дисплее в первую очередь вызывает интерес информация о наружной температуре и атмосферном давлении. Наличие дождя и так можно увидеть в окне. Сила ветра и направление интересует только в том случае если большой ветер. Но относительно управления теплицей приоритеты кардинально меняются. Наружная температура и атмосферное давление практически не имеют значение. А вот наличие дождя и сила ветра приобретает первостепенное значение для управления фрамугами. Направление ветра важно, но в меньшей степени. Управление фрамугами от направления актуально если флюгер показывает направление стабильно. Нужно понимать что наружный ветер это не ветер от вентилятора и "колбасить" флюгер может значительно. Программно Дима эту проблему попытался сгладить, но желательно поработать с формой флюгера, что бы он не был очень чувствителен к смене направления. Предполагаю, что флюгер коротковат. Может удлинение немного стабилизирует положение флюгера. Нужно не забывать о центре и балансе веса, что бы не разбить место крепления оси.
    Сначала я немного расстроился, что есть много направлений (восемь), а мы используем только четыре. Хотелось бы в полной мере использовать возможности метеостанции. Но после раздумий пришел к мнению, что для управления теплицей нужно не более четырех сторон. У нас у всех в подавляющем большинстве теплицы имеют четыре стены. Правда один клиент построил теплицу в виде купола из деревянных рам. Но практика показала, что дерево в теплице продержится не более 10 лет даже при тщательном уходе. Где то подмочит, где то подгниет. Короче говоря четырех сторон для управления вполне достаточно и оптимально.

    ПРИЕМНИК 433 мГц.
    Извлеченный мною приемник из автомобильной сигнализации имеет большое усиление. Поэтому на выходе эфирный шум отображается в виде беспорядочных импульсов. Конечно, при приходе посылки весь шум пропадает и информация четко детектируется. Но дело в том что пакет определятся прерыванием на пине. Поэтому микроконтроллер будет занят только тем что будет обрабатывать по прерыванию все импульсы от шума и помех. Это не есть хорошо. Отсюда вывод - нужно проверять, что на выходе приемника. Если импульсов много, нужно уменьшить усиление выходного усилителя. Вот получу с Китая приемники, посмотрю что у них на выходе. Свой тестовый приемник я сегодня попытаюсь перенастроить. На этом по этой теме все. Ну и на конец - будьте здоровы. :hello:
     
  15. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.891
    Адрес:
    80 км от Краснодара
    Обновления

    Обновилась прошивка и конфигуратор расширенной версии. Теперь в правилах доступно реагирование на температуру системы - это раз. Два - температура системы убрана с часов реального времени, и заведена на температуру микроконтроллера. Три - пока это дело ещё не отстроено, в файле Configuration_DUE_HARDWARE.h в самом низу есть блок "настройки для получения температуры кристалла МК", настройки которого должен будет причесать Александр Васильевич @promavto

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

    На гитхабе - обновил ;)
     
Статус темы:
Закрыта.