arduino передача по 2 проводу 12 в

rgbutov
Offline
Зарегистрирован: 01.03.2016

Добрый день

В общем задача в следующем:

Есть светильники диодные висят они на 12 вольтовой линии, хотелось бы управлять ими по отодельности и всем сразу - менять яркость это основная задача

Для реализации светильников хочется использовать дешевый Attiny13 или что-то другое тоже дешевое и маленькое

485 протокол не очень т.к. там 32 устройства а мне не нужна обратная связть - точнее она не обязательная

Нужно только передатчик - 1 штука и приемники чтобы штук 100 хотябы было

Спасибо

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

можно, конечно, изобретать велосипед, но "всё уже украдено до нас", в том смысле, что придумано.

Для светодиодов есть всякие WS2811 и 2812.  А WS2801 продается, как отдельная микросхема.

Городить собственное устройство встанет дороже. Причем в разы.

Я бы, на Вашем месте, подумал, как переделать светильники с просто диодов на LED модули с управлением (они разные, есть на WS2801 или на аналогичных).

Под такие модули написано тонны управляющих программ для ардуинки и для компа. Да и самому ее написать, даже с небольшим опытом, это пара часов работы.

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Можно использовать аппаратный UART. Если светильники находятся на большом расстоянии, можно использовать драйвера CAN. При небольшой скорости передачи информации, устройств может быть и гораздо больше 100.

Гриша
Offline
Зарегистрирован: 27.04.2014

Figure 30. Typical CAN Bus

один из самых дешевых вариантов пример 1, пример 2

это если раздельное управление в отличии от WS2801

но это НЕ дешево, НЕ легко. А как планируете адресное пространство реализовывать???? шить каждый чип своим адресом???

 

 

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Ну дешево или дорого пусть решает человек который создал тему. По поводу нелегко, ну я не вижу здесь ничего сложного, тем более протокол мы используем UARTовский, а аппаратно передатчик реализован на CAN драйвере. Адреса можно по разному задавать: и прошиванием каждого чипа с уникальным адресом, и перемычками, и прошивать передатчиком каждый приемник отдельно, и так далее.

Гриша
Offline
Зарегистрирован: 27.04.2014

Alex_Ferrum пишет:
По поводу нелегко, ну я не вижу здесь ничего сложного...

справедливо для случаев, когда сам уже это делал - эта  задача не для новичка и не на 5 минут. 100штук не  парочка на столе... ИМХО

это не si9200 подключить... ИМХО

UPD может быть... ТС проще парочку заказать с исходниками.

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

Чой-то вы мудрите. Тут RS485 идеально - затрат 2х75 р. и помехозащищенность бонусом.

Гриша
Offline
Зарегистрирован: 27.04.2014

Tomasina, сдается вы не поняли или я вас не понимаю "затрат 2х75 р"... задача: контроллер управления и 40 клиентов на одной шине (пост 1).

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

MAX487 - 60 руб.
ATtiny13A с двумя PWM-выходами - 43 р.
IRF7313PBF, двухканальный ключ, max 30В, 6.5А - 24 руб. (не факт что этот, надо знать какие именно LED).
SMD-резисторы на 2 р.
разъем 14 р.

Итого 143 р. на каждые два светильника.
Из 31 канала у тебя еще останется 11 свободных, т.е. резерв на 22 светильника.

Если контроль яркости не нужен (только вкл/выкл), то все еще компактнее: DS2413/DS2406/DS2408 и MOSFET-ключи. В этом случае управление не по RS-485, а по 1-Wire.

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

Или речь о том что доступно всего 2 провода, они же питание и по ним же надо управлять (пересылать команды)?
Тогда бюджетно не выйдет.

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Если планируется односторонняя связь (а в изначальном варианте так и планировалось), можно использовать аппаратный uart контроллера, можно взять например attiny2313a или atmega8a, uart можно усилить транзистором, например bss138 (чтобы уменьшить сопротивление приемника и тем самым увеличить помехоустойчивость). Поскольку связь односторонняя (uart работает в режиме полудуплекса), то для передачи данных нужен один провод, ну вернее их 2, один сигнальный, другой земля. Соответственно уменьшив сопротивление приемников, уменьшив скорость передачи, и возможно,поставив конденсатор емкостью несколько сотен пикофарад между землей и входом приемника, можно добиться очень хорошей помехоустойчивости при передаче на расстояния до нескольких десятков метров.