In this tutorial, we will calculate average power, RMS Voltage, RMS Current as well as power factor using Matlab.
Let’s say we have following values of voltage and current:
$\begin{align} & v(t)=10\cos (120\pi t+{{30}^{o}}) \\ & and \\ & i(t)=6\cos (120\pi t+{{60}^{o}}) \\\end{align}$
We use the following formula to calculate the RMS voltage and current:
${{V}_{rms}}=\sqrt{\frac{1}{T}\int\limits_{0}^{T}{{{v}^{2}}(t)dt}}$
And
${{I}_{rms}}=\sqrt{\frac{1}{T}\int\limits_{0}^{T}{{{i}^{2}}(t)dt}}$
And for power, we have the following relation:
$P=\frac{1}{T}\int\limits_{0}^{T}{v(t)i(t)dt}$
For power factor, we will use the following equation:
$PF=\frac{P}{{{V}_{rms}}{{I}_{rms}}}$
- You May Also Read: Power Factor and Power Factor Triangle
Now, let’s implement above mentioned formulas in Matlab:
clc;clear all;close all;clc % Power and Power Factor Calculations using Matlab T = 2*pi/(120*pi); % Sine Wave period (T=2*pi/Omega) where Omega=2*pi*f x = 0; %Integration Lower Limit for Voltage and Current y = T; %Integration upper Limit for Voltage and Current k = 0:0.2:1; t = k.*y; % Horizontal (x-axis) Scale for one complete cycle (which is from 0 to T=1/f) % quad command is used to compute integration. Write "help quad" in Maltab GUI for % detailed understanding %% Calculating Voltage, Current, and Power using Formulas given in text v_integ = quad('Voltage1', x, y); % See the formula in text for computing RMS Voltage v_rms = sqrt(v_integ/y); % RMS Voltage i_integ = quad('Current1',x,y); % See the formula in text for computing RMS Current i_rms = sqrt(i_integ/y); % RMS Current p_integ = quad('Inst_pr', x, y); % See the formula in text for computing Average Power p_average = p_integ/y; % Average Power power_factor = p_average/(i_rms*v_rms); % See the formula in text for computing Power Factor %% Printing the Results fprintf('Average Power:%f \n',p_average) fprintf('RMS voltage: %f \n',v_rms) fprintf('Power Factor %f \n', power_factor) fprintf('RMS Current %f \n', i_rms)
Function Voltage1.m
function vsq = Voltage1(t) % we just defined the voltage as mentioned in the text vsq = (10*cos(120*pi*t + 60*pi/180)).^2; end
Function Current1.m
function isq = Current1(t) % % we just defined the voltage as mentioned in the text isq = (6*cos(120*pi*t + 30.0*pi/180)).^2; end
Function Inst_pr.m
function pt = Inst_pr(t) % This function is used to compute instantaneous power as mentioned in the % text it = 6*cos(120*pi*t + 30.0*pi/180); vt = 10*cos(120*pi*t + 60*pi/180); pt = it.*vt; end
Results:
Average Power: 25.980762
RMS voltage: 7.071068
Power Factor 0.866025
RMS Current 4.242641