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 км от Краснодара
    Ок, так и сделаю.
     
  2. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Всё просто: берёте голую мегу, подтыкаете на I2C часы DS3231, запускаете ConfigCreator. exe (в папке SOFT архива) - создаёте файл конфигурации железа под ваши хотелки. Потом - устанавливаете все библиотеке (в папке Libraries архива) в среду Arduino IDE (надо использовать версию 1.8.5) - открываете в среде файл Main. ino, выбираете плату Arduino Mega 2560 - и заливаете на неё прошивку. Далее - открываете конфигуратор и подключаетесь к меге - вот там и можно посмотреть, как создавать правила, как работать с дельтами показаний датчиков и т. п.

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

    Наворочено очень много, сходу объяснить - сложновато ;)

    З. Ы. Да - ещё рекомендуется на SPI подоткнуть SD-карточку, всё равно она нужна для многих модулей, взять тот же MQTT - там хранятся настройки топиков и т. п.
     
    Последнее редактирование: 08.11.18
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Обновил на гитхабе, сделал revert крайнему коммиту, как ненужному. Теперь остался штатный код работы с I2C, который и должен был быть с самого начала. Загрузил на плату - работает :|:
     
  4. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    В чистом виде - нет, но: архитектура проекта расширяема, и всегда можно лёгким движением руки добавить модуль, который будет реагировать на команды по изменению мощности на выходе. Возьмём как пример - ШИМ: можно написать модуль, который реагирует на команды вида CTSET=PWM|10|50, где 10 - номер пина для ШИМ, 50 - скважность.

    Как пример - можно посмотреть, как организован MCPModule. cpp ;) По итогу получаем то, что надо: и из правил можно управлять таким модулем, и откуда угодно. Единственное "но", что касается правил - в интерфейсе пользователя пока не предусмотрено введение произвольных команд при срабатывании правила, поэтому, при желании управлять мощностью из правил - придётся править конфигуратор и веб-морду мал-мала. Но в целом - команды контроллера описаны (дока на оф. сайте gardenboss. ru в разделе "Загрузки") - и можно и ручками на первое время перебиться, что называется.

    Прошу понять правильно: лично у меня не возникало потребностей управлять мощностью, поэтому этот вопрос тупо обойдён стороной.
     
  5. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Брось пока nRF, это дело, во-первых - китайское, и всегда разное (как показала практика), во-вторых - диапазон пересекается с Wi-Fi и зашумлён очень (как следствие - гемор с подбором канала, а программный хоппинг реализовывать - не, точно не буду, это покруче Марлезонского балета будет). Если радиоканал - то уж лучше LoRa юзать. Да и, тащемта, под Wi-Fi уже есть прошивка модуля с датчиками, который даже не надо регистрировать на контроллере ;) И прошивка эта давно валяется в архиве с проектом. И даже настраивается через командную строку:
    И усё ;) Подерживает Si7021, BH1750, DS18*20. Собрать можно на любом ESP. Короче, при желании радиоканала - помимо nRF уже есть варианты.

    Но лично я - за RS-485, как одно из самых лучших решений, пмсм.
     
  6. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Я так и сделал, выдернул и не стал заморачиваться. :no: Тем более что расстояние вообще мизерное.
    Под LoRa в плате предусмотрено место. Кому нужно (сомневаюсь) можно установить.
     
  7. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    а к форточкам так можно? в исполнительном
    ЗЫ гоняю на стороннем проекте лору, на полтора км лупит без проблем, красота вообщем
     
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Короче, всё реализуемо технически. Вот только я не понял - зачем?
     
  9. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    Вообщем спаял я мост к мотору на ir2104, а даташитом полностью не проникся, в общем оказалось что работает только от шима, не более 95 скважности, от постоянки не желает. Сергей подсказал как это дело победить, заработает и без шима. Спросил, на всякий случай, мало ли есть скрытые возможности
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Dutchman

    Живу здесь

    Dutchman

    Живу здесь

    Регистрация:
    17.11.11
    Сообщения:
    254
    Благодарности:
    314
    Адрес:
    Барнаул
    Все понял! Спасибо! Как раз от наших азиатских друзей пришли платы под готовый проект, там как раз есть все, что нужно: и мега, и часы, и разъемы на датчики. Буду пробовать...

    З. Ы. Номера пинов меги при работе с ConfigCreator нужно переводить в номера пинов ардуины, правильно?
     
  12. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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

    Если делаете свою плату - то за основу можно брать официальный референсный дизайн, чтобы посмотреть, какой вывод какого порта каком пину соответствует. Гуглится на раз по словам "arduino meg pinout", в картинках гугля ;)

    Если просто используете Мегу - то всё сходится: указали в софте пин 10 - он соответствует пину, обозначенному под номером 10 на плате Arduino Mega 2560 ;)
     
  13. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Сегодня улетаю в Москву, вернусь на связь только 15-го. Надеюсь, за это время ничего не сломается :)
     
  14. Raf13800
    Регистрация:
    18.07.13
    Сообщения:
    8
    Благодарности:
    0

    Raf13800

    Участник

    Raf13800

    Участник

    Регистрация:
    18.07.13
    Сообщения:
    8
    Благодарности:
    0
    Адрес:
    Тверь
     
  15. Raf13800
    Регистрация:
    18.07.13
    Сообщения:
    8
    Благодарности:
    0

    Raf13800

    Участник

    Raf13800

    Участник

    Регистрация:
    18.07.13
    Сообщения:
    8
    Благодарности:
    0
    Адрес:
    Тверь
    Не совсем понял этот момент. Что делать с созданными файлом? Куда его закинуть, как переменить?
     
Статус темы:
Закрыта.