Find the voltage from a PWM signal

23 次查看(过去 30 天)
I want to use Simulink to calculate the Average voltage from a PWM Signal. Although I'm not entirely sure how should do it so it works robustly.
The eventual use is to have it working in real time using xpc target but I wondered if anyone could explain even a way to calculate it in a continuous way even.
To anyone that does not know a PWM signal is a Pulse signal that width can be modulated , hence the name.
The voltage of a PWM is the Peak voltage * duty cycle
The duty cycle is the percentage of that the signal is "ON" in any one period
so if the period (of the signal) is 5 seconds and the signal is "ON" for 2 seconds the duty cycle is 40 %
So if we look at the picture above we see 5 examples.
Lets say my on voltage is 20 Volts and my off voltage is 0 Volts
So with a duty cycle of 100 %
Average volt = 20 * 1 = 20 Volts
80 % = 16 Volts
50% = 10 Volts
20 % = 4 Volts
0 % = 0 Volts
___________________________________________
So Basically what I want is a way to calculate the:
Peak Voltage of the signal being sent (reseting after every new period)
Duty Cycle of the Signal
and possibly the frequency of the signal
Thanks any advice welcome

采纳的回答

Suneesh
Suneesh 2014-1-9
编辑:Suneesh 2014-1-9
The following example shows how to calculate duty cycle (requires Signal Processing toolbox):
You can use:
[D,INITCROSS,FINALCROSS,NEXTCROSS]= dutycycle(x)
to find out period(frequency), and then use this information for Peak Voltage.
You may use this function in a MATLAB Function block so that you can use it in a Simulink model. Also, a comon method of determining period od a function is by calculating its auto-correlation for which a Simulink block is available in the DSP System toolbox.

更多回答(1 个)

paranandi lakshmi narayana
hello sir i am doing project on wind energy conversion system using pmsg. i used diode bridge rectifier with boost converter. but when i am applying gate pulses to the boost converter the output of the pmsg got totally changed.i don't know whats happening there but intially without applying gate pulses i got right answer but now its completely changed. please suggest what to do

社区

更多回答在  Power Electronics Control

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by