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

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

Тема в разделе "Умный дом", создана пользователем Анкор Плюс, 27.04.17.

Статус темы:
Закрыта.
  1. Shelllonn
    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300

    Shelllonn

    Живу здесь

    Shelllonn

    Живу здесь

    Регистрация:
    04.02.16
    Сообщения:
    759
    Благодарности:
    300
    @DIYMan, все прочитал, и не один раз, проникся полностью. При таком раскладе получается нет места без проводному варианту, верно? Может как вариант, один модуль - одна форточка или две на рядом расположенные, но она же управляет мотором? Может еще один как прокся? Ну не хочется таскать кучу проводов.
     
  2. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Пока я склонен оставаться в рамках RS-485, в этом случае нет секса с регистрацией модуля в системе, всё просто и прозрачно ;)

    Очень сложно миксовать это дело, но для исполнительного модуля, теоретически, можно дописать функционал отдачи пакета обратной связи по RS-485, но только после того, как этот функционал будет отлажен на отдельной прошивке. Лично я бы - не миксовал, потеряемся в модулях. Хотя, конечно, было бы неплохо по исполнительному модулю иметь такой функционал, но: у нас привязки настраиваемые, вот в чём вопрос. Настроите вы все привязки на каналы полива - и что? Обратная связь-то - по окнам, речь идёт сейчас об этом только. Нет удобного решения с исполнительным модулем, проблема.

    Может, две прокси? Три? Нет совершенства. Я понимаю, что хочется всего-всего, но - пока только так, как есть.
     
    Последнее редактирование: 22.12.17
  3. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Нет, ну можно и 16х1, не вопрос - по модулю на окно. Вопрос адресации модулей в системе - как решать будем? Памятью I2C? Чтобы не заставлять перелистывать страницы в поисках описания, продублирую, что у нас занято по пинам:

    1. I2C (A4 и A5);
    2. UART (0 и 1);
    3. Пин 4 (переключение приёма/передачи RS-485).

    Что нам нужно в минимальном варианте (1 модуль обратной связи - 1 форточка):

    1. Адресация (16 адресов от 0 до 15), чтобы модуль понимал, что пакет запроса обратной связи - к нему пришёл;

    2. Два пина от концевиков;

    По одному окну на модуль - пинов хватает, даже с учётом адресации переключателями (2^4 = 16, надо 4 пина).

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

    DIYMan

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

    DIYMan

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

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

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Мысли по усовершенствованию прошивки универсального исполнительного модуля.

    Заняты:

    1. Переключение приём/передача RS485 - 1 пин;
    2. UART;
    3. I2C;
    4. 8 пинов привязки каналов;
    5. если юзается nRF - заняты 9, 10, 11, 12, 13 пины;

    Подытожим:

    1. A4 A5 (если делаем обратную связь - тут датчики положения);
    2. 9,10,11,12,13 - под nRF, если не используем nRF - свободны;
    3. 0, 1, 2 - UART и пин для 1-Wire;
    4. 3,4,5,6,7,8, А2, А3 - слоты привязки.

    И остаётся у нас два пина в максимальном фарше - А0 и А1, что позволит подключить два концевика на адын окно. Т. е. модуль получается куцым. Так что видится вариант, когда в случае использования исполнительного модуля ещё как модуль обратной связи - не юзать nRF, а просто по RS485, тогда высвобождаем ещё 5 пинов, а это уже - ещё два окна. Т. е. получается один модуль - на 3 окна максимум.

    Конечно, можно ещё покрутить так и эдак, подумать. Но мысль мне нравится.

    З. Ы. Естественно, прошивка будет настраиваться по всякому, просто в случае использования nRF нельзя будет использовать функционал обратной связи по RS485 ;)

    Что скажет общественность?
     
  6. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Представляю две схемы модуля расширения для управления окнами с применением измерителя углов на I2C. Первая схема управляет 1 окном, вторая 4 окна. Я сторонник не применения I2С (достаточно и 3 сигналов, которые заложены в основном модуле). Но может кто то захочет применить. Постарался изучить программу Дмитрия, но не все получилось синхронизировать. Кажется пора заканчивать с модернизацией. :faq:
     

    Вложения:

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

    DIYMan

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

    DIYMan

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

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

    Короче, остались мелочи ;)
     
  8. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    При этом MPU6050, указанный на первой схеме - I2C :) Также как HMC5883L.
     
  9. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Я сам удивляюсь! Перепроверил - вывода совпадают. Можно вообще применить один разъем.
    Дома посмотрю в натуре MPU6050 :um:
     
  10. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889
    Адрес:
    80 км от Краснодара
    Вторая мне нравится больше - выкинуть nRF и 1-Wire - и будет полноценная схема для RS485. Но это не исполнительный модуль, подчеркну - мы сейчас говорим о модуле обратной связи. Для исполнительного модуля я не буду переписывать прошивку под поддержание MCP* - просто тупо устал. Исполнительный модуль - на 8 каналов (т.е. на 4 окна максимум), всё прекрасно работает и отлажено, пинов хватает. Универсальность делать идолом - тоже не вариант.

    Если удастся без секса с железной частью добавить в исполнительный модуль 4 канала обратной связи - будет супер, он как раз заточен максимум под 4 окна. Выше я написал - как: если не юзать nRF (отключается директивой условной компиляции) - то пинов высвобождается порядком, по первым прикидкам - не хватает всего одного пина, но с концевиками как раз можно решить с MCP - хоть я и писал выше, что не буду, но новый функционал - это не переписывание, добавить можно. Старый (привязка канала к конкретному пину) останется как есть, 8 пинов будут заняты железно.

    Можно MCP на I2C использовать, тогда и с nRF вроде прокатывает ;) И опрашивать концевики через I2C.
     
    Последнее редактирование: 22.12.17
  11. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Вариант без МСР - управление 4 окнами или измерение углов на 8 окнах.
     

    Вложения:

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

    DIYMan

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

    DIYMan

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

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

    Вопрос только в том - нам надо 74HC125, для разрыва SCL линий инклинометров, тут - без вариантов. Т. е. 4 свободных пина, или - канала MCP - должны быть.

    Давайте определимся, через какие железки работаем с концевиками и разрывом каналов SCL - и всё. Всё просто: я напишу код, там комментариев достаточно, и каждый сможет собрать на макетке и проверить, как оно себя ведёт. Ну и срисовать с настроек в коде плату - тоже дело посильное, считаю.

    Ну и с адресами модулей решить - каким образом модуль будет узнавать свой адрес для обратной связи. Если максимум 16 адресов - это 4 входа нужно прочитать, откуда их читать - напрямую с пинов или с каналов MCP - вопрос. Я - за второе, если что.

    Итог подведём? Мне нужна конкретика на данном этапе: решили, что модуль будет на 4 канала максимум - значит решили. Меньше - можно, больше - низзя.

    Наведите критику, ниже - как вижу я, на примере платы исполнительного модуля с дополнением в виде обратной связи:

    1. Всё, что написано - остаётся без изменений;
    2. Как расширители - используем MCP23017;
    3. Линии SCL датчиков рвём с помощью 74HC125 через MCP23017;
    4. Концевики и адрес модуля - читаем через MCP23017.

    Всё получается довольно просто и удобно - не надо лезть в существующий код, волноваться, что что-то сломается. При этом возможность юзать nRF в исполнительном модуле - остаётся. Функционал работы в части обратной связи я сначала сделаю на прошивке модуля чисто обратной связи, потом дополню прошивку исполнительного модуля.

    Принимается?
     
  13. promavto
    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958

    promavto

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

    promavto

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

    Регистрация:
    27.02.16
    Сообщения:
    1.960
    Благодарности:
    1.958
    Адрес:
    г. Москва, Зеленоград.
    Что с основной работой?
     
  14. tchernyavsky
    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160

    tchernyavsky

    Живу здесь

    tchernyavsky

    Живу здесь

    Регистрация:
    27.03.16
    Сообщения:
    473
    Благодарности:
    160
    Похоже, что пора делать несколько вариантов: "Light", "Full" ,"Бюджетный", "Hi-End" И Т. П.,
    Сколько людей, столько и хотелок. Лично я, уже начинаю путаться в настройках, А если подпустить к теплице женщину! :love: Коллапс обеспечен! :)]
     
  15. DIYMan
    Регистрация:
    19.05.13
    Сообщения:
    8.309
    Благодарности:
    6.889

    DIYMan

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

    DIYMan

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

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