Showing results for 
Search instead for 
Did you mean: 

for an inverter PWM -ADC -feedback -synching

Associate III

What is the best meathd to of feedback method In sineinverter (like commercial) ?
is it good by a forumal appling instead using look up rable .It saves the memory
If i use look up table
const unsigned char sin_table[416]={
0, 16, 32, 47, 62, 77, 91, 103, 115, 126, 136, 144, 151, 156, 160, 162, 163, 162, 160, 156, 151, 144, 136, 126, 115, 103, 91, 77, 62, 47, 32, 16, //65%

0, 17, 33, 49, 65, 80, 94, 107, 120, 131, 141, 149, 156, 162, 166, 168, 169, 168, 166, 162, 156, 149, 141, 131, 120, 107, 94, 80, 65, 49, 33, 17, //67.5%

Like wise if i use 25% ,26% 27% 100% with having array value 256
there require a lot of memory (aproximately 256 *75 bytes )

is it good or any idea behind it ?

My second Question is
My PWM siganls drive an H-Bridge with a 16khz frequency ,where i get a sine wave with 50 hz after filtering .
I am trying to impliment a feedback with adc to correct the output voltage of the PWM.
How much speed require to variying the PWM dutycycle ? (adc conversion how to synch with pwm and adc)
which mean ADC reads in 1 micro second and changing the duty cycle is so fast
How can i calculate it ?

consider the above values are just taken for only example to understand the question .

Need to synchronize my sample rate with my switching rate to alias the high switching frequency component to DC and also compensate the whole filtering-adc-processing-spwm delay path in my digital implementation , if yes How to achive it .

Plseas excuse me my english

ST Employee

Hello @thannara123

>>How can i calculate it ?

To calculate the required speed for varying the PWM duty cycle, you need to consider the settling time of your system. which means the time it takes for the output voltage to be stable after a change in the PWM duty cycle.

Assuming that your system has a settling time of 1 ms, you would need to vary the duty cycle at a rate of at least 1 MHz to keep up with the feedback loop. This means that you would need to perform an ADC conversion at a rate of at least 1 MHz to provide feedback...

I think this is quite complicated, maybe consider using a sinusoid inverter


To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.