Управление низковольтной нагрузкой: различия между версиями

Удалено перенаправление на Supported devices
(Удалено перенаправление на Supported devices)
Метки: удалено перенаправление ручная отмена
 
(не показана 51 промежуточная версия 6 участников)
Строка 1: Строка 1:
==Описание==
Для управления низковольтной нагрузкой (с напряжением вплоть до напряжения входного питания) в Wiren Board предназначены так называемые "транзисторные выходы", они же FET. С их помощью можно управлять включением низковольтных ламп, светодиодных лент, внешних блоков реле и т.д.
[[Файл:Эквивалентная схема клеммника.JPG|thumb|400px|Эквивалентная схема]]


В Wiren Board 2.8 есть 7 каналов управления низковольтной нагрузкой по схеме "открытый коллектор".
Всеми транзисторными выходами можно управлять из [[Веб-интерфейс Wiren Board | веб-интерфейса]], там они называются соответственно клеммам, например A1_OUT.
Это клеммы 2-7 и 19.
В каждом канале находится N-канальный полевой транзистор.


==Технические детали==
[[Файл:Ax.png|thumb|400px|Эквивалентная схема выходов Ax для WB4]]
Для сокращения общего числа клеммников каналы управления низковольтной нагрузки совмещены с каналами АЦП - смотрите [[Мультиплексирование портов]]. Поэтому выходы имеют большое, но конечное сопротивление (30-100кОм). Это может вызывать, например, слабое свечение светодиодных лент ''(решение проблемы: добавить резистор на питание)''


Клеммы 2-7:
'''Примечание для Wiren Board версий 2.8 и 3.5:'''
* при подключении индуктивных нагрузок (реле) не забудьте поставить защитный диод - всплеск напряжения от катушки реле может повредить контроллер. Максимальный ток на канал - 3А, напряжение до 24В.
'''Примечание для Wiren Board версии 4:'''
В Wiren Board 4 защитный диод встроен, и максимальное напряжение не должно превышать напряжения питания контроллера (Vin).
Максимальный ток также 3 А.
Если используется несколько каналов, и '''суммарный ток больше 5 А, подключите несколько клеммников GND к "минусу" источника питания.'''


Максимальное напряжение - 30 В, ток до 3 А.
==Примеры использования==
[[Файл:Led.png|thumb|400px|Пример подключения светодиода]]
[[Файл:Relay.png|thumb|400px|Пример подключения реле]]


Управляющие транзисторы - [http://www.irf.com/product-info/datasheets/data/irlml6344pbf.pdf IRLML6344]
Нагрузка подключается следующим образом: "плюс" нагрузки подключается к источнику питания, "минус" подключается к транзисторному выходу. Чтобы нагрузка начала работать, нужно подать высокий уровень на затвор транзистора.  


Для сокращения общего числа клеммников, каналы управления низковольтной нагрузки совмещены с каналами мультиплексора АЦП.
На иллюстрациях приведены схемы подключения светодиода и реле.


На каждом канале мультиплексора стоит защита по перенапряжению, поэтому при напряжении большем 3,8В на клемме течет небольшой ток (I = (V1 - 3.8V) / 12kOhm ).
Также можно легко подключить готовый модуль реле, [http://dx.com/p/4-channel-5v-relay-module-black-blue-171144 например такой]


На клемме 19 стоит более мощный транзистор с рабочим напряжением до 60В. Он управлется GPIO с возможностью аппаратного ШИМа.
==Пример работы в Linux==
===Примеры использования===
Смотрите [[GPIO]].
Примеры даны на картинке.


При управлении реле не забудьте поставить защитный диод. Иначе всплеск напряжения от катушки реле убьет если не все, то многое.  
# Находим номер GPIO, соответсвующий нужному клеммнику в таблице [[Список GPIO|WB2.8]]/[[WB SH 3.5: Список GPIO|WB3.5]]/[[Wiren Board 4: Список GPIO|WB4]]/[[Wiren Board 5:Список GPIO|WB5]]. Для клеммника номер 2 в версии 2,8 это GPIO 32.
 
# Экспортируем GPIO в sysfs
Также можно легко подключить готовый модуль реле, [http://dx.com/p/4-channel-5v-relay-module-black-blue-171144 например такой]
#:<pre>root@wirenboard:~# echo 32 > /sys/class/gpio/export</pre>
[[Файл:Пример светодиод.JPG|thumb|300px|Пример подключения светодиода]]
# Устанавливаем GPIO в режим вывода для управления транзистором. Это обязательно, т.к. GPIO может находится в режиме ввода и иметь высокий импенданс, оставляя транзистор в неопределённом состоянии.
[[Файл:Пример реле.JPG|thumb|500px|Пример подключения реле]]
#:<pre>root@wirenboard:~# echo out > /sys/class/gpio/gpio32/direction</pre>
# Открываем транзистор, подавая логический высокий уровень на затвор:
#:<pre>root@wirenboard:~# echo 1 > /sys/class/gpio/gpio32/value</pre>
# Закрываем транзистор, подавая логический ноль на затвор:
#:<pre>root@wirenboard:~# echo 0 > /sys/class/gpio/gpio32/value</pre>