A simple yet useful Microprocessor based Arduino full-bridge inverter circuit can be built by programming an Arduino board with SPWM and by integrating a few mosfets with in H-bridge topology, let's learn the details below:

 In one of our earlier articles we comprehensively learned how to build a simple Arduino sine wave inverter, here we will see how the same Arduino project could be applied for building a simple full bridge or an H-bridge inverter circuit.

Using P-Channel and N-Channel Mosfets

To keep things simple we will use the P-channel mosfets for the high side mosfets and N-channel mosfets for the low side mosfets, this will allow us to avoid the complex bootstrap stage and enable direct integration of the Arduino signal with the mosfets.

 Usually N-channel mosfets are employed while designing full bridge based inverters, which ensures the most ideal current switching across the mosfets and the load, and ensures a much safer working conditions for the mosfets.

However when a combination of and p and n channel mosfets are, the danger of a shoot through across the mosfets becomes eminent during the transition periods.

 Having said that, if the transition phases are appropriately safeguarded with a small dead time, the switching can be perhaps made as safe as possible and blowing of the mosfets could be avoided.

Arduino H-Bridge (H-Bridge) Inverter Circuit

How it Works

As shown in the above figure, the working of this Arduino based full bridge sinewave inverter can be understood with the help of the following points:

 The Arduino is programmed to genearte appropriately formatted SPWM outputs from pin#8 and pin#9. While one of the pins is generating the SPWMs, the complimentary pin is held low.

 The respective outputs from the above mentioned pinouts are processed through Schmidt trigger NAND gates (N1---N4) from the IC 4093.

The gates are all arranged as inverters with a Schmidt response, and fed to the relevant mosfets of the full bridge driver network.

 While pin#9 generates the SPWMs, N1 inverts the SPWMs and ensures the relevant high side mosfets responds and conducts to the high logics of the SPWM, and N2 ensures the low side N-channel mosfet does the same.

 During this time pin#8 is held at logic zero (inactive), which is appropriately interpreted by N3 N4 to ensure that the other complimentary mosfet pair of the H-bridge remains completely switched OFF. 

The above criteria is identically repeated when the SPWM generation transits to the pin#8 from pin#9, and the set conditions are continuously repeated across the Arduino pinouts and the full bridge mosfet pairs.

Battery Specifications

The battery specification selected for the given Arduino full bridge sinewave inverter circuit is 24V/100Ah, however any other desired specification could be selected for the battery as per the user preference.

 The transforer primary voltage specs should be slightly lower than the battery voltage to ensure that the SPWM RMS proportionately creates around 220V to 240V at the secondary of the transformer.

The Entire Program Code is Provided in the following article: Sinewave SPWM Code

4093 IC pinouts


IRF540 pinout Detail (IRF9540 will also have the same pinout config)

IRF540 mosfet pinout details gate, drain, source

Need Help? Please send your queries through Comments for quick replies!