3 Phase Inverter using Arduino:-
Build your own and simple 3 phase low watts square wave inverter. The 3-phase inverter circuit using Arduino and MOSFET. Here iam using single phase transformer 3 number per phase.
Required Components:-
1. Resistor 4.7k = 3 Nos.
2. BC557 Transistor = 3 Nos
3. BC558 Transistor = 3 Nos
4. MOSFET IRF9540 = 3 Nos.
5. MOSFET IRF540 = 3 Nos.
6. 0 – 9V Step Down Transformer/ 2 Amps = 3 Nos.
7. Arduino Uno =1 No
8. 12v/7Ah Battery = 1 No
Circuit Diagram:-
Circuit Description:-
The circuit consists of an Arduino which generates the 3 phase waveform in electrical phase difference between each individual waveform.
The Transistors and MOSFETs are configured in push-pull configuration; three push-pull stages are utilized for three individual phases.
Three single phase step-down transformers (used in reverse) are connected in delta and star connection at primary and secondary winding respectively; this will replicate a three phase transformer.
At the output we have three phases and one neutral line derived by using star connection at secondary side.
We have used three 0-9V / 5 Amps transformer.
Waveforms generated by Arduino:
All three phases are shifted 120 degree electrically with each individual phase and yes, this is not a pure sine wave type.
3 phase square wave output
So we can in the simulation how each waveform are 120 degree electrically shifted from each other. The generated three phase signal cannot be applied directly to the transformer to step-up; to do this the three phase signals are applied to a buffer stage which consists of Transistors and MOSFETs
Push-Pull MOSFET Driver Stage:-
The feeble three phase signals are pre-amplified by a couple of low power BJTs per phase signal. The BJT is configured in push-pull configuration so that it can amplify both LOW and HIGH signals; now three such push-pull stages are implemented in the circuit.
The output signal from BJT is inverted by 180 degree from the applied signal (for all three phases). The 5V signal from Arduino is now amplified to 12V signal which is sufficient for a MOSFETs to turn ON and OFF(fully). If we directly apply the 5V signal from Arduino to gate of the MOSFET, the MOSFET will still switch ON and OFF (partially) but there will be huge resistance between source and drain terminal which will not allow maximum current to flow and cause MOSFETs to overheat.
Now the 12V (from BJTs) signal is applied to MOSFETs which is also configured in push-pull. The output at the MOSFET is now a strong which can drive the three phase transformer. The output signal from the MOSFET is 180 degree inverted (again) from the BJT’s output, now we got zero degree phase shift with respect to Arduino’s output. The weak signal from the Arduino is now on the steroid with exactly same phase difference etc.
Simplest design, even a beginner to intermediate hobbyist can replicate this circuit.
No need to purchase expensive three phase transformer, three “single phase step-down transformers” are enough.
The output is square wave which is not suitable for many inductive loads.
Arduino Code:
const int Phase_1 = 9;
const int Phase_2 = 10;
const int Phase_3 = 11;
const int time = 3300;
void setup()
pinMode(Phase_1, OUTPUT); // Phase 1
pinMode(Phase_2, OUTPUT); // Phase 2
pinMode(Phase_3, OUTPUT); // Phase 3
void loop()
digitalWrite(Phase_1, LOW);
digitalWrite(Phase_2, HIGH);
digitalWrite(Phase_3, LOW);
digitalWrite(Phase_1, HIGH);
digitalWrite(Phase_2, LOW);
digitalWrite(Phase_3, HIGH);

About the Author


Hello! My Dear Friends. I am Subramanian. I am writing posts on androiderode about Electronics testing and equipments.

View All Articles