EnternetShild 5100 в качестве GateLAN-RS485

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Аватара пользователя
shemnik69
Сообщения: 590
Зарегистрирован: Пн дек 24, 2012 3:01 pm
Откуда: Саратов Saratov
Благодарил (а): 67 раз
Поблагодарили: 63 раза

EnternetShild 5100 в качестве GateLAN-RS485

Сообщение shemnik69 » Вс ноя 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 не проблемма она есть в библиотеке. Печатная плта в архиве. Будут вопросы --- будут поясняющие ответы. :D
Вложения
плата GAteShild.zip
(65.52 КБ) 298 скачиваний
Последний раз редактировалось shemnik69 Ср дек 30, 2015 4:41 pm, всего редактировалось 1 раз.
За это сообщение автора shemnik69 поблагодарил:
kiptim (Пт янв 13, 2017 9:07 am)
Рейтинг: 1.16%
aurodionov
Сообщения: 87
Зарегистрирован: Пн янв 27, 2014 2:50 pm
Откуда: Россия, Тюмень
Благодарил (а): 12 раз
Поблагодарили: 14 раз

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение aurodionov » Ср ноя 04, 2015 10:20 pm

shemnik69, прикрепи пожайлуста импорт платы в формате картинки.
в федоре нечем открыть, а ком с виндой сейчас недоступен
Аватара пользователя
foxvlad
Сообщения: 287
Зарегистрирован: Пн сен 22, 2014 3:18 pm
Откуда: Сочи
Благодарил (а): 78 раз
Поблагодарили: 78 раз
Контактная информация:

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение foxvlad » Ср ноя 04, 2015 10:48 pm

http://okbit.ru/blog/umnyij-dom/shlyuz- ... oraya.html

Правда сейчас, перевожу полностью на modbus

То есть шлюз будет между modbus TCP/IP <-> modbus rtu (RS485)
Аватара пользователя
shemnik69
Сообщения: 590
Зарегистрирован: Пн дек 24, 2012 3:01 pm
Откуда: Саратов Saratov
Благодарил (а): 67 раз
Поблагодарили: 63 раза

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение shemnik69 » Чт ноя 05, 2015 9:11 am

В виде картинки? Попробую только скан копия будет. Пойдет? Могут наложится огрехи да и качество для ЛУТ будет хуже. Остальные варианты поапробовал но для печати этот самый лучший.
Вложения
Плата.rar
(48.2 КБ) 245 скачиваний
5 Ноябрь 2015 г..rar
(36.01 КБ) 241 скачивание
Аватара пользователя
shemnik69
Сообщения: 590
Зарегистрирован: Пн дек 24, 2012 3:01 pm
Откуда: Саратов Saratov
Благодарил (а): 67 раз
Поблагодарили: 63 раза

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение shemnik69 » Чт ноя 05, 2015 9:19 am

По технологии.
Вырезаете. Накладываете (тонером) на текстолит.
Утюгом (3 позиция регулятора. прогрет) плавно проглаживаете страницу.
Затем, после остывания, теплой водой, размачиваете бумагу (бумагу можно типовую принтерную)
Затем акуратно, "скатываете" катышками размокшую бумагу под водой. Остается покрытие из тонера принтера.
Внимательно осмотрите плату перед травлением, огрехи, исправляются тонким "CD Pen" (тонкий, такой фломастер, желательно черный, для того чтобы писать на CD, он не размывается хлорным железом)
Далее травим и сверлим. Все.
Вся процедура (с учетом травления в хлорном железе) занимает примерно 30 мин.

По поводу ссылки.. видел этот сайт. Там автор по сути тоже самое творит но толи там такой убогий движок сайта, толи задумка автора такая, ну типа "смотреть пожалуйста", а ухватить (копирование) тот же скажем скетч, не получается. А преписывать!!!! так проще самому написать.
aurodionov
Сообщения: 87
Зарегистрирован: Пн янв 27, 2014 2:50 pm
Откуда: Россия, Тюмень
Благодарил (а): 12 раз
Поблагодарили: 14 раз

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение aurodionov » Чт ноя 05, 2015 9:57 am

shemnik69, нормальная платка, сам думал учудить такую, ток на смд да руки не доходят и железки с китая пока в пути
А скетч какой пользуешь, гейт просто перегоняет tcp<->rs485 или заточен под modbus
Аватара пользователя
shemnik69
Сообщения: 590
Зарегистрирован: Пн дек 24, 2012 3:01 pm
Откуда: Саратов Saratov
Благодарил (а): 67 раз
Поблагодарили: 63 раза

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение shemnik69 » Чт ноя 05, 2015 11:48 am

Скетч пока в отработке.
Поскольку есть еще несколько идей, под данную плату. В основном пробовал, да, по такой схеме Gate-RS485 т.е читаем послание TCP и его содержимое перегоняем в сериал.
Да такой вариант работает, но уж больно много затыков разных... Еще хочу реализовать схему где, по сути будет мастер сети на 4 контроллера, а вот обмен мастер-контроллер (слейв), будет только, либо на передачу, либо на прием, т.е например в надворной постройке (типа летняя мастерская ) стоит контроллер, который читает 4 контакных датчика (дверь и люк, а также фрамуги) а также несколько (пока 4) DS18b20 т.е информация только на отдачу. Что либо просить (status) тут по сути бессмысленно, хотя и возможно.
А вот уже мастер, анализируя полученные данные (простое сравнение двух вариантов) при изменении, по HTTP изменит статус объекта в системе. По температуре, то же, так-же, зачем постоянно гонять сведения если по факту нам нужна только их разница и если она скажем отлична (дельта) пусть на 0,5 градуса то последнее значение можно записать.
Еще добавлю, что например температура в помещении и тем более в погребе очень статична. а вот на улице да......гуляет. как в плюс так и в минус постоянно. Вот на такие контроллеры я планирую запрос не слать, зачем, просто на определенное время читаем сериал и выбираем данные и все. Это можно также и унифицировать, например к контроллерам идет витая пара. Это для обмена, а для выбора RX отдельным проводом (витая пара) даем скажем 1 на какой либо порт, в ответ МК "сыпет" свои данные. Такой вариант прост и самое главное убирает в скетче целые слой кода ответсвенного за протокол обмена. А поскольку витая пара это по сути стандарт де факто то такой вариант мне очень привлекает. Или Модбус он практически решает вопрос, но проблема переноса данных в систему из контроллеров так по сути и не решилась. Еще вариант на контроллер ставим простой роутер (любимый всеми TPLink 3020) и на него Ser2net, а MD читает не порт, а Socet на 3020, но опять же это не оперативная (данные сами изменяют свойства системы. HTTP) сиcтема, а опросная.
Аватара пользователя
foxvlad
Сообщения: 287
Зарегистрирован: Пн сен 22, 2014 3:18 pm
Откуда: Сочи
Благодарил (а): 78 раз
Поблагодарили: 78 раз
Контактная информация:

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение foxvlad » Сб сен 10, 2016 11:10 pm

aurodionov
Сообщения: 87
Зарегистрирован: Пн янв 27, 2014 2:50 pm
Откуда: Россия, Тюмень
Благодарил (а): 12 раз
Поблагодарили: 14 раз

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение aurodionov » Пн сен 26, 2016 4:32 pm

Здорово, а скетч можете показать для modbus шлюза как выглядит?
Аватара пользователя
foxvlad
Сообщения: 287
Зарегистрирован: Пн сен 22, 2014 3:18 pm
Откуда: Сочи
Благодарил (а): 78 раз
Поблагодарили: 78 раз
Контактная информация:

Re: EnternetShild 5100 в качестве GateLAN-RS485

Сообщение foxvlad » Пн сен 26, 2016 8:22 pm

К сожалению нет, скоро выложу его в HEX. Как доделаю возможность настройки через web-интерфейс.
Ответить