How to communicate and control conventional inverters from Arduino Micro controllers?

Thread Starter

Arijeet

Joined Dec 27, 2019
85
I want to communicate and control the conventional inverters with the help of Arduino microcontrollers.
Suppose we will send PWM signals to the gates of MOSFETs or IGBT's, and control them by the microcontrollers.we just want to Turn on/off the gates through that we can on/off the inverters also. we want to make conventional inverter into automated (smart inverter).
I want to know how it can be done.
Any ideas are welcomed here.
I am searching for research papers and some reference books regarding the same topic, please if anyone can suggest/share for me that.
 
Last edited:

Irving

Joined Jan 30, 2016
3,843
This question pops up from time to time, the answer is almost always the same: Typical power inverters cycle at 30kHz up to 1.5MHz or so. An Arduino is simply not fast enough, which is why inverters use dedicated chips. There are inverter designs that use one or more DAC in the control loop so that a microcontroller can set output voltage/current limits (assuming that's what you mean by 'smart') and there are inverter chips that have I2C command and error status registers to allow microcontroller integration. But replacing a dedicated inverter chip with an Arduino isn't going to work... You might get some joy with a very fast processor, such as a top-range STM32, but there are many reasons why you don't see this done in practice...
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
@Irving Thank you, sir, for giving the genuine answer. I start working on that, to make the conventional inverter as a smart inverter (a smart inverter states that it can communicate with mobile or computer with the help of communication protocols and microcontroller).
I am searching for research papers and some reference books regarding the same topic , please if you can suggest/share for me that.
 

Irving

Joined Jan 30, 2016
3,843
Sorry, I don't know of any. I'd start by researching the inverter I'd want to modify and understanding the voltage/current regulation loops to see how I could break into them to provide external control and add monitoring for output volts/current... The rest is just conventional microcontroller interfacing.

I replaced the analogue pots on my bench supply with a rotary encoder, microcontroller and DAC to make it 'smart' in the sense I can set output voltage/current limit more accurately and via USB from the PC. I also added a DAC to measure output volts (0 - 60) and the output of the current sense amplifier to measure current load (0 - 6A), both accessible via USB. I can turn the output on and off via USB too.

It doesn't make it a better power supply, regulation is still only about 2%, but it makes it more useful.
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
Sorry, I don't know of any. I'd start by researching the inverter I'd want to modify and understanding the voltage/current regulation loops to see how I could break into them to provide external control and add monitoring for output volts/current... The rest is just conventional microcontroller interfacing.

I replaced the analog pots on my bench supply with a rotary encoder, microcontroller, and DAC to make it 'smart' in the sense I can set output voltage/current limit more accurately and via USB from the PC. I also added a DAC to measure output volts (0 - 60) and the output of the current sense amplifier to measure the current load (0 - 6A), both accessible via USB. I can turn the output on and off via USB too.

It doesn't make it a better power supply, regulation is still only about 2%, but it makes it more useful.
Thank you, sir, but I need to ask you did you worked on this
"
I replaced the analog pots on my bench supply with a rotary encoder, microcontroller, and DAC to make it 'smart' in the sense I can set output voltage/current limit more accurately and via USB from the PC. I also added a DAC to measure output volts (0 - 60) and the output of the current sense amplifier to measure the current load (0 - 6A), both accessible via USB. I can turn the output on and off via USB too.

It doesn't make it a better power supply, regulation is still only about 2%, but it makes it more useful."
if possible can you send me any study material on this or circuit diagram anything, where I can take reference?
 

BobTPH

Joined Jun 5, 2013
8,804
Why don’t you clue us in on what you mean by a “smart inverter”. You mentioned something about communicating with a computer, but to what end? What do you hope to accomplish via this communication?

Bob
 

Irving

Joined Jan 30, 2016
3,843
Thank you, sir, but I need to ask you did you worked on this
"
I replaced the analog pots on my bench supply with a rotary encoder, microcontroller, and DAC to make it 'smart' in the sense I can set output voltage/current limit more accurately and via USB from the PC. I also added a DAC to measure output volts (0 - 60) and the output of the current sense amplifier to measure the current load (0 - 6A), both accessible via USB. I can turn the output on and off via USB too.

It doesn't make it a better power supply, regulation is still only about 2%, but it makes it more useful."

if possible can you send me any study material on this or circuit diagram anything, where I can take reference?
Sorry, I don't have them to hand, but its all pretty conventional stuff. However, what I did for a 10y old linear bench supply is only of passing value to modifying a switch-mode PSU. If you don't have the knowledge to use the info I've already given you, then respectfully I suggest you're not ready to take on this sort of project.
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
@BobTPH sir,

A smart inverter is a kind of inverter that is using solar panels, the smart grid's utilities are using this technology. But due to highly expensive devices, so I want to develop a smart inverter from the conventional inverter as following as :
1) I would like to interface a microcontroller /raspberry pie with an inverter as like I will provide PWM signals from the microcontroller to the gate's of Igbt's of the inverter, from them I can control the inverter the on/off operation through the controller, which will be programmed in the computer from Arduino IDE.
2) my second objective is to make the two way of communication is just like that i will send the signals it will turn on /off (inverter), then Ask or gather the data (Data represents voltage & current )from the receiving side (Inverter side), but as we know conventional doesn't store any data, so how I can get the data it's a big question?
 
Last edited:

Thread Starter

Arijeet

Joined Dec 27, 2019
85
Sorry, I don't have them to hand, but its all pretty conventional stuff. However, what I did for a 10y old linear bench supply is only of passing value to modifying a switch-mode PSU. If you don't have the knowledge to use the info I've already given you, then respectfully I suggest you're not ready to take on this sort of project.
Thanks, sir, but I will try to extract the information that you have provided earlier. I am just finding some topics which are relevant to my project.
 

BobTPH

Joined Jun 5, 2013
8,804
So you are trying to make a grid-tied inverter? Good luck with that. The power company is not going to approve your DIY hack to connect to the grid.

Bob
 

Irving

Joined Jan 30, 2016
3,843
Then forget controlling the gates of the IGBTs - it isn't going to work. as I explained already.

My solar inverter gives me lots of info about what's happening, solar input volts/current, power output in kW, line volts, power factor, etc. If your inverter doesn't do that then I suggest you change it for one that does - they are very common. Adding those facilities to an existing inverter wouldn't be easy for me and I know my way around these things. It doesn't sound like you have the experience/expertise to attempt this - there is a high proobability you could kill your inverter and a significant non-zero chance you could kill yourself - there are voltages approaching 500V inside the box. Buy a new inverter...
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
yes you are right, but I will take all the precautions before doing anything, I am just finding all the possibilities, how I will start.

"Then forget controlling the gates of the IGBTs - it isn't going to work. as I explained already. " In this part can I use a transistor or solid-state relay for high switching to drive the gate, just like I will connect transistor NPN, the base will connect with Arduino PWM pin and the emitter part will connect to the ground and collector side (load side will connect to the gates of IGBT's ) to control the inverter and also I will pull down the base to emitter junction with the help of 2.2k resistor for preventing unwanted signals to turn on the base. Is it possible to conduct this type of experiment?
 

Irving

Joined Jan 30, 2016
3,843
Which bit of "Typical power inverters cycle at 30kHz up to 1.5MHz or so. An Arduino is simply not fast enough, " do you not understand? Arduino PWM is 490Hz as standard, and can get to a few kHz as long as you don't do anything else, but even 30kHz is way beyond its capabilities and most power inverters are switching at >50kHz.
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
Which bit of "Typical power inverters cycle at 30kHz up to 1.5MHz or so. An Arduino is simply not fast enough, " do you not understand? Arduino PWM is 490Hz as standard and can get to a few kHz as long as you don't do anything else, but even 30kHz is way beyond its capabilities and most power inverters are switching at >50kHz.
Totally agree with your point. I was reading about the raspberry pie controller PWM frequency it was 15 MHZ frequency .will it able to work switch the IGBT's. or I can use do the FPGA boards? please recommend me.
 
Last edited:

Irving

Joined Jan 30, 2016
3,843
The second issue is how fast can the Pi with all the Linux baggage vary the PWM? Probably not fast enough to handle load changes even with tight assembly language coding. And you'd still need to replicate what the control chip already does for voltage and current loop control - which is on a cycle by cycle basis. And even if it was possible, what benefit does that get you? None. There's no additional 'smart' functionality. And a high probability the magic smoke is going to come out of something sooner or later... the inverter, the load or you...

Smart functions, like measuring & controlling input and output parameters, do not require gate level control of the IGBTs. They need appropriate measurement (HV sampling, current transformers, ADC, etc) and control signals into the inverter (e.g. desired voltage/current limit settings, through DAC or filtered PWM), and on/off controls through relay/SSR on output or input.

It seems to me you've read some high-level article about how inverters use PWM to control the output voltage and are extrapolating from there with very little understanding of how an MPPT Solar Inverter actually works.

Here is a tutorial covering a simple microcontroller-based MPPT charger for a 10W, 17v DC solar panel to charge a 12v battery. I stress this is a simple low-frequency DC-DC converter design from the ground up. It in no way represents the complexity or inherent dangers in designing a system to convert a multi-kW array of 230W panels at typically 150-300v DC to a 240v AC output. Trying to modify an existing inverter just adds another level of complexity and uncertainty, even with years of experience.

If you insist on experimenting with your existing inverter - which I do not recommend you do - do not, under any circumstances, attempt to look at waveforms etc with an oscilloscope unless you have a proper isolated high voltage differential probe - there is a lot of energy in there with high voltages and currents which will kill you and/or your 'scope given a chance. And anything you connect must be through opto-isolators or something similar.

And on that note I'm out of here...
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
The second issue is how fast can the Pi with all the Linux baggage vary the PWM? Probably not fast enough to handle load changes even with tight assembly language coding. And you'd still need to replicate what the control chip already does for voltage and current loop control - which is on a cycle by cycle basis. And even if it was possible, what benefit does that get you? None. There's no additional 'smart' functionality. And a high probability the magic smoke is going to come out of something sooner or later... the inverter, the load or you...

Smart functions, like measuring & controlling input and output parameters, do not require gate level control of the IGBTs. They need appropriate measurement (HV sampling, current transformers, ADC, etc) and control signals into the inverter (e.g. desired voltage/current limit settings, through DAC or filtered PWM), and on/off controls through relay/SSR on output or input.

It seems to me you've read some high-level article about how inverters use PWM to control the output voltage and are extrapolating from there with very little understanding of how an MPPT Solar Inverter actually works.

Here is a tutorial covering a simple microcontroller-based MPPT charger for a 10W, 17v DC solar panel to charge a 12v battery. I stress this is a simple low-frequency DC-DC converter design from the ground up. It in no way represents the complexity or inherent dangers in designing a system to convert a multi-kW array of 230W panels at typically 150-300v DC to a 240v AC output. Trying to modify an existing inverter just adds another level of complexity and uncertainty, even with years of experience.

If you insist on experimenting with your existing inverter - which I do not recommend you do - do not, under any circumstances, attempt to look at waveforms etc with an oscilloscope unless you have a proper isolated high voltage differential probe - there is a lot of energy in there with high voltages and currents which will kill you and/or your 'scope given a chance. And anything you connect must be through opto-isolators or something similar.

And on that note I'm out of here...
Last question please, Can I use to do the FPGA boards? I will not go to the hardware directly , first, I will read , create logics then later I can do the experiment.
 

Thread Starter

Arijeet

Joined Dec 27, 2019
85
Totally agree with your point. I was reading about the raspberry pie controller PWM frequency it was 15 MHZ frequency .will it able to work switch the IGBT's. or I can use do the FPGA boards? please recommend me.
Which bit of "Typical power inverters cycle at 30kHz up to 1.5MHz or so. An Arduino is simply not fast enough, " do you not understand? Arduino PWM is 490Hz as standard and can get to a few kHz as long as you don't do anything else, but even 30kHz is way beyond its capabilities and most power inverters are switching at >50kHz.
sir I have read some documents about the PWM frequency of Arduino,490 Hz is the base frequency of certain pins, but we can change the frequency up to 65 kHz by doing some programming.
 

trebla

Joined Jun 29, 2019
542
Yes you can output this frequency if you control the output pin directly but you need stable PWM signal for control switching regulators. Imagine if your software will make some calculations or voltage and current measurements then the output signal will not be stable anymore and it means that your device may short or cut off power output. For such tasks are special controllers or if you want more flexibility then DSP-s or DSC-s. But i can tell you that digital signal processing routines is'nt easy piece of code to write - you must have knowledge about digital filtering, DMA, PWM switching deadbands, output fault detecting and so on. I suggest use existing inverters with telemetry and control interfaces so you can use Arduino or RPi for data mangling without any high-speed real time control needs.
 
Last edited:

Lo_volt

Joined Apr 3, 2014
316
Most inverters these days are smart enough to know when to turn on and off and where to set MPPT points to gain maximum efficiency. Short of building your own inverter, you are not going to improve on a finished product. There are no control operations that you can perform that will improve an off the shelf inverter.

That leaves monitoring the power production so that you can track and record output through the day and total energy production. This CAN be done with Arduino's and Raspberry Pi's. There are projects out there to do that. https://openenergymonitor.org/ is an open source system that uses both. Look around on the web, there are other similar projects out there.
 
Top