Arduino-Output pin expansion

This switched: http://www.geek-workshop.com/thread-196-1-1.html
original author: Ansifa

When using Arduino, it is often necessary to control large current or high voltage loads. But Arduino only has a maximum 5v, 20mA pin output. Must pass the expansion circuit. There are many ways to expand the stream. Several methods are introduced below, which are suitable for use in different situations.

Note: The loads in the following circuit diagrams are all replaced by resistance symbols. The symbol mark is the electronic load symbol RL, which means R (load).

1. Low-power NPN transistor expansion current (applicable to the expanded load voltage below 5v, the load current is recommended to be <1A).

The output pin of Arduino is directly connected to the resistor to drive the base of the transistor.

Write picture description here

Complexity: ★★☆☆☆; cost: ★☆☆☆☆; expandable flow multiple: ★☆☆☆☆;
advantages: simple and convenient, low cost. The upper limit of the switching frequency is directly determined by the transistor, which can be made very high;
Disadvantages: The controlled high current is directly connected to the Arduino, so the external drive power supply is not recommended to exceed 5v, so as to prevent the voltage of the external power supply from flowing back to the Arduino pin through Q1 to cause the Arduino Burn out.
Material selection: The transistor Q1 can be a low-power NPN transistor. Recommended models are 2SC1815, 2N2222, 8050, 2SD882, etc. (Refer to the corresponding data sheet for component names, the same below); the base resistor R1 is essential, otherwise it will cause the Arduino to heat up or even burn out due to excessive pin load. The resistance of R1 can be between 100Ω~10k, and the recommended value is 1kΩ. All resistance power is not required, SMD 0805 or more, in-line 1/8w or more will do, all the following circuits use this resistance specification.

2. Solid state relay (optocoupler) expansion (suitable for 220V AC direct control, or high-power DC control, recommended for load current between 0.2A~40A)

It can be easily controlled by Arduino using ready-made solid state relays. For Arduino, driving a solid state relay is as simple as driving an LED.

Control DC DC
Write picture description here
DC control AC
Write picture description here
Complexity: ★ ☆☆☆☆; Cost: ★★★★★; expansive flow multiples: ★★★★★;
advantages: use the simplest, the strongest interference, no electromagnetic interference. Can control AC/DC, and can control a large current load.
Drawbacks: high cost
selection: Note that there are two solid-state relays: DC control AC SSR / DC control solid state relay. Their controlled ends are essentially different and cannot be mixed. The AC of the DC-controlled AC is switched by a silicon controlled rectifier, while the DC-controlled DC is switched by a triode or a field effect tube. The following will introduce two kinds of relay imitation (see 3).

3. With optocoupler isolation NPN transistor for current expansion (applicable to a wide range of load voltages, recommended for load currents between 1A~5A)

A controlled/controlled isolated DC controller is made by optocoupler and expansion current. It is completely equivalent to a DC solid state relay.

Write picture description here

Complexity: ★★★★☆; cost: ★★☆☆☆; expandable current multiple: ★★★★★;
advantages: small control current, equivalent to driving an LED. The controlled high current is completely electrically isolated from the Arduino control board. Even if the controlled part is burnt down in an accident, it will not affect the Arduino board.
Disadvantages: The circuit is more complicated than direct current expansion, and the cost is slightly higher.
Material selection: Transistor can choose 2SD882, 2SD669A, TIP122 (5A Darlington), etc. The optocoupler can be a cheap optocoupler such as PC817.

4. Relay expansion (applicable to low-speed occasions where the resistance of the controlled end switch is required, and it is recommended to use the load current between 0~3A)

Use a small power transistor to expand the current, and then control a 5v relay.

Write picture description here

Complexity: ★★★★☆; cost: ★★★☆☆; expandable current multiple: ★★★★★;
advantages: the expansion current is large, and since the relay is a mechanically closed contact, the closing resistance is basically zero. Unlike solid state relays or triodes, there is a forward voltage drop; it is suitable for occasions that require high closing resistance, such as the controlled end is a switch 0~0.7v signal. The use of transistors or solid state relays will not work, only relays can be used.
Disadvantages: low speed, only a few times per second at the fastest; mechanical switches have short service life, and high switching frequency will quickly break down. The cost is high, and the circuit is not simple; the switching current is large, and sufficient power is needed to supply the relay to pull in. There is strong spatial electromagnetic interference (EMI), which will cause interference to high-speed digital circuits (USB, serial ports, video, etc.) or small-signal analog circuits (audio signal lines, instrument measurement input lines). Shielding measures must be taken; and reverse high voltage will be generated when the relay is disconnected, and the back pressure must be handled.
Material selection: The relay must be controlled by 5v, because Arduino only has 5v. And the pull-in current of the relay must be less than 200mA, which cannot affect the Arduino to make its working voltage unstable. If you can't meet the requirements, you can try relay cascade, that is, small relays drag large relays.

5. Field effect tube expansion (suitable for large load DC current, recommended for load current between 5A~100A)

Use field effect tube instead of triode to expand flow. Since the field effect tube is a voltage controlled device, the input current is extremely small. Compared with the transistor expansion current, it can get faster switching speed and smaller input current, and can control a large DC current (such as 10~50A). If driven by Arduino. The drive circuit is almost the same as 1 and 3, except that the field tube is changed.

Write picture description here

Complexity: ★★★★☆; Cost: ★★★★☆; Scalable flow multiple: ★★★★★;

Advantages: The control current is small, which is equivalent to driving an LED. The controlled high current is completely electrically isolated from the Arduino control board. Even if the controlled part is burnt down in an accident, it will not affect the Arduino board. It has the highest control speed, and the current can also be very large.
Disadvantages: The circuit is more complicated, and the cost of the field effect tube is higher than that of the triode.
Material selection: FET can use ordinary N-Channel Enhancement Mode Field Effect Transistor. The models I have used are: CEP80N75 (75V, 80A, 75W), IXGQ240N30P (IGBT tube, 240A, 300V, 500W), IRF630 (9A, 200V, 75W) and so on.

Guess you like

Origin blog.csdn.net/sdlgq/article/details/60756459