Управление низковольтной нагрузкой/en: различия между версиями
(Новая страница: «==The example of work in Linux==») |
|||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 31: | Строка 31: | ||
==The example of work in Linux== | ==The example of work in Linux== | ||
Смотрите [[GPIO|GPIO]]. | |||
# | # Находим номер GPIO, соответсвующий нужному клеммнику в таблице [[Special:MyLanguage/Список 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 | ||
#:<pre>root@wirenboard:~# echo 32 > /sys/class/gpio/export</pre> | #:<pre>root@wirenboard:~# echo 32 > /sys/class/gpio/export</pre> | ||
# | # Устанавливаем GPIO в режим вывода для управления транзистором. Это обязательно, т.к. GPIO может находится в режиме ввода и иметь высокий импенданс, оставляя транзистор в неопределённом состоянии. | ||
#:<pre>root@wirenboard:~# echo out > /sys/class/gpio/gpio32/direction</pre> | #:<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 1 > /sys/class/gpio/gpio32/value</pre> | ||
# | # Закрываем транзистор, подавая логический ноль на затвор: | ||
#:<pre>root@wirenboard:~# echo 0 > /sys/class/gpio/gpio32/value</pre> | #:<pre>root@wirenboard:~# echo 0 > /sys/class/gpio/gpio32/value</pre> |
Версия 17:39, 16 мая 2019
There are the so-called "transistor outputs", also FET, to control the low-voltage load (with voltage up to the input voltage) in the Wiren Board controllers. They can control the switching of low-voltage lamps, led strips, external relay blocks, etc.
All transistor outputs can be controlled from the web interface, where they are called according to the terminals, for example A1_OUT.
Technical detail
To reduce the total number of terminals, the low-voltage load control channels are combined with ADC channels - seeMultiplexing ports. Therefore, the outputs have a large, but the final resistance (30-100k). This can cause, for example, a weak glow of led strips (The solution is: add a resistor to the power supply).
Note for Wiren Board versions 2.8 and 3.5:
- when connecting inductive loads (relay) do not forget to put a protective diode - a surge of voltage from the relay coil can damage the controller. Maximum current per channel - 3A, voltage up to 24V.
Note for Wiren Board version 4: A protective diode is built-in in Wiren Board 4 controller and the maximum voltage must not exceed the controller supply voltage (Vin). The maximum current is also 3 A. If multiple channels are used and the total current is greater than 5 A, connect multiple GND terminals to the "minus" of the power supply.
The examples of use
The load is connected as follows: "plus" load is connected to the power supply, "minus" is connected to the transistor output. For the load to start working, you need to apply a high level to the gate of the transistor.
The illustrations show the wiring diagrams of the led and relay.
You can also easily connect a ready relay module, such as
The example of work in 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