Управление низковольтной нагрузкой: различия между версиями
Fizikdaos (обсуждение | вклад) Метка: отменено |
Fizikdaos (обсуждение | вклад) Метка: отменено |
||
Строка 29: | Строка 29: | ||
<!--T:10--> | <!--T:10--> | ||
Также можно легко подключить готовый модуль реле, [http://dx.com/p/4-channel-5v-relay-module-black-blue-171144 например такой] | Также можно легко подключить готовый модуль реле, [http://dx.com/p/4-channel-5v-relay-module-black-blue-171144 например такой] | ||
==Пример работы в Linux== <!--T:11--> | ==Пример работы в Linux== <!--T:11--> |
Версия 19:50, 9 мая 2020
Для управления низковольтной нагрузкой в Wiren Board предназначены так называемые "транзисторные выходы", они же FET. С их помощью можно управлять включением низковольтных ламп, светодиодных лент, внешних блоков реле и т.д.
Всеми транзисторными выходами можно управлять из веб-интерфейса, там они называются соответственно клеммам, например A1_OUT.
Технические детали
Для сокращения общего числа клеммников каналы управления низковольтной нагрузки совмещены с каналами АЦП - смотрите Мультиплексирование портов. Поэтому выходы имеют большое, но конечное сопротивление (100кОм). Это может вызывать, например, слабое свечение светодиодных лент (решение проблемы: добавить резистор на питание) В контроллерах WB6 выходы защищены от импульсных перенапряжений, короткого замыкания, от перегрева.
Примеры использования
Нагрузка подключается следующим образом: "плюс" нагрузки подключается к источнику питания, "минус" подключается к транзисторному выходу. Чтобы нагрузка начала работать, нужно подать высокий уровень на затвор транзистора.
На иллюстрациях приведены схемы подключения светодиода и реле.
Также можно легко подключить готовый модуль реле, например такой
Пример работы в Linux
Смотрите GPIO.
- Находим номер GPIO, соответсвующий нужному клеммнику в таблице WB2.8/WB3.5/WB4/WB5. Для клеммника номер 2 в версии 2.8 это GPIO 32.
- Экспортируем GPIO в sysfs
root@wirenboard:~# echo 32 > /sys/class/gpio/export
- Устанавливаем GPIO в режим вывода для управления транзистором. Это обязательно, т.к. GPIO может находится в режиме ввода и иметь высокий импенданс, оставляя транзистор в неопределённом состоянии.
root@wirenboard:~# echo out > /sys/class/gpio/gpio32/direction
- Открываем транзистор, подавая логический высокий уровень на затвор:
root@wirenboard:~# echo 1 > /sys/class/gpio/gpio32/value
- Закрываем транзистор, подавая логический ноль на затвор:
root@wirenboard:~# echo 0 > /sys/class/gpio/gpio32/value