EnternetShild 5100 в качестве GateLAN-RS485
Добавлено: Вс ноя 01, 2015 1:12 pm
Всем доброе время суток!!! Пришел мне Ардуиновсий InternetShild (далее 5100) поиграв в связке UNO-5100 и получив полжительные эмоции от результатов хочу предложить на обозрение вариант как я использовал данный девайс.
Поскольу сам 5100 не представлет собой завершеный сервер то под него потребовалось что: это либо пата Arduino UNO (была в наличии) либо это Mega которой нет. Приобретать, не захотелось, а поскольку UNO, у меня еще и как програмаматор и своего рода стенд для отладки, то выбрал самый простой вариант, спаял небольшую плату на которой с минимальной обвязкой установил стандартную Atmega 328 и MAX485 (487) а также контакные клеммы и крепежные детали. В итоге получился простой преобразователь команд с MajorDomo на основе Raspberry (которая самодостаточна и имеет теперь только питание и LAN) и внешних контроллеров имеющих основную сеть для взаимодействия на основе микросхем протокола RS485.
Поскольку данная сеть уже работает (тот же модбус) то схемные решения не потребуют изменений, если только изменния прошивок.
Почему такой вариант? да просто потому что, это самый простой и минимально энергозатратный, а также относительно надежный. Работает так: контроллер (с 5100) переодически дергает данные с остальых контроллеров и если произошли какие либо изменииия например конткных датчиков то уже тогда отсылает команды HTTP на Raspberry Тем самым сама Raspbery не нагружает запросами сеть, а просто уже реагирует т.е например при ситуации опроса скажем датчиков где небходима именно скорость (это например датчики подвижных механизмов (ворота. шторы. какие либо актуаторы (например окна или двери) замки дверей, выключатели освещения и пр..) где скажем время реакции должно быть минимальным то в таких местах работают МК по своим алгоритмам, а опрос их, идет либо Modbus (захаили как медленный) либо анлогичный по смыслу но упрощенный и где центральный МК только и собирает статус удаленных контроллеров. И уже при изменении даннго статуса передает измениие статуса обекта уже в систему. По сути ничего нового я не предлагаю, просто например связка 5100-UNO для опроса скажем 1-2 датчиков наверное избыточна. а вот уже что либо серьезное навесить не хватет памяти МК. Mega практически решает этот вопрос там портов много, но тогда опять появляется центральный блок к которому идут сигналы разные по свойствам и порой по уровням, а это уже резко снижает надежность.
Поясню например контроллер установленый в удаленном помещении он по сути собирает данные и передает их по запросу, причем датчиков может быть достаточно для Megi 328 это 14 причем мощности хватает. А связь с "центром" всего 2 провода (RS485) в случае центрального блока нужно тянуть пучек проводов к датчикам либо актуаторам либо еще городить сеть типа !ware. И как правило компания силовй сети и 1 ware и прочих при некоторых условиях не совсем желательна. Для квартир данный вариант конечно не обязателен но для домов приемлем. Или вот еще ворота. Тут тоже это либо пром вариант либо аналог и там и там разделение по уровням напряжения и импульсные помехи (двигатель). А время реакции на контакные датчиики и кнопки это доли секунды.. Или свет на обособленгм контроллере .. короче вориантов много и этот один из них. Теперь детали:
Стандартная схема Ардуино и MAX485 не проблемма она есть в библиотеке. Печатная плта в архиве. Будут вопросы --- будут поясняющие ответы.
Поскольу сам 5100 не представлет собой завершеный сервер то под него потребовалось что: это либо пата Arduino UNO (была в наличии) либо это Mega которой нет. Приобретать, не захотелось, а поскольку UNO, у меня еще и как програмаматор и своего рода стенд для отладки, то выбрал самый простой вариант, спаял небольшую плату на которой с минимальной обвязкой установил стандартную Atmega 328 и MAX485 (487) а также контакные клеммы и крепежные детали. В итоге получился простой преобразователь команд с MajorDomo на основе Raspberry (которая самодостаточна и имеет теперь только питание и LAN) и внешних контроллеров имеющих основную сеть для взаимодействия на основе микросхем протокола RS485.
Поскольку данная сеть уже работает (тот же модбус) то схемные решения не потребуют изменений, если только изменния прошивок.
Почему такой вариант? да просто потому что, это самый простой и минимально энергозатратный, а также относительно надежный. Работает так: контроллер (с 5100) переодически дергает данные с остальых контроллеров и если произошли какие либо изменииия например конткных датчиков то уже тогда отсылает команды HTTP на Raspberry Тем самым сама Raspbery не нагружает запросами сеть, а просто уже реагирует т.е например при ситуации опроса скажем датчиков где небходима именно скорость (это например датчики подвижных механизмов (ворота. шторы. какие либо актуаторы (например окна или двери) замки дверей, выключатели освещения и пр..) где скажем время реакции должно быть минимальным то в таких местах работают МК по своим алгоритмам, а опрос их, идет либо Modbus (захаили как медленный) либо анлогичный по смыслу но упрощенный и где центральный МК только и собирает статус удаленных контроллеров. И уже при изменении даннго статуса передает измениие статуса обекта уже в систему. По сути ничего нового я не предлагаю, просто например связка 5100-UNO для опроса скажем 1-2 датчиков наверное избыточна. а вот уже что либо серьезное навесить не хватет памяти МК. Mega практически решает этот вопрос там портов много, но тогда опять появляется центральный блок к которому идут сигналы разные по свойствам и порой по уровням, а это уже резко снижает надежность.
Поясню например контроллер установленый в удаленном помещении он по сути собирает данные и передает их по запросу, причем датчиков может быть достаточно для Megi 328 это 14 причем мощности хватает. А связь с "центром" всего 2 провода (RS485) в случае центрального блока нужно тянуть пучек проводов к датчикам либо актуаторам либо еще городить сеть типа !ware. И как правило компания силовй сети и 1 ware и прочих при некоторых условиях не совсем желательна. Для квартир данный вариант конечно не обязателен но для домов приемлем. Или вот еще ворота. Тут тоже это либо пром вариант либо аналог и там и там разделение по уровням напряжения и импульсные помехи (двигатель). А время реакции на контакные датчиики и кнопки это доли секунды.. Или свет на обособленгм контроллере .. короче вориантов много и этот один из них. Теперь детали:
Стандартная схема Ардуино и MAX485 не проблемма она есть в библиотеке. Печатная плта в архиве. Будут вопросы --- будут поясняющие ответы.
