Hi, I was stuck here.. can someone help me out? How do I make the Pbat1 and Pbat2 smooth?
P_load = [0,8000,10000,11000,20000,25000,25000,21000,30000,20000,12000,45000,12000,45000,23300,12000,15000,17000,20000,16000,12200,1000,2000,100];% Watts
plot(P_load,'linewidth', 2)
P_gen = ones(1,24).*29000; % Watts
P_lowerlimit = ones(1,24).*10000; % Watts
hold on
plot(P_gen, 'linewidth', 2)
plot(P_lowerlimit, 'linewidth', 2)
grid
xlim([1,24])
xlabel('Time (hours)')
ylabel('Power (Watts)')
hold on
Pnet1 = [];
Pbat1 = [];
Pnet2 = [];
Pbat2 = [];
for h = 1:24
Pnet1(h) = P_gen(h) - P_load(h);
Pnet2(h) = P_lowerlimit(h) - P_load(h);
if Pnet1(h) > 0
Pbat1(h) = 0;
else
Pbat1(h) = P_load(h) - P_gen(h);
end
if Pnet2(h) < 0
Pbat2(h) = 0;
else
Pbat2(h) = [P_gen(h) - P_load(h)]/3;
end
end
plot(Pbat1, 'linewidth', 3)
plot(Pbat2, 'linewidth', 3)
legend('Load','Generator','Lower limit','Battery energy(Discharge)','Battery energy(Charge)')
If possible, i need with spline code. Help appreciated, thank you.

 Respuesta aceptada

madhan ravi
madhan ravi el 1 de Nov. de 2018
Editada: madhan ravi el 1 de Nov. de 2018

1 voto

P_load = [0,8000,10000,11000,20000,25000,25000,21000,30000,20000,12000,45000,12000,45000,23300,12000,15000,17000,20000,16000,12200,1000,2000,100];% Watts
x=1:numel(P_load)
xx=linspace(1,numel(x),1000)
yy=interp1(x,P_load,xx,'pchip')
plot(x,P_load,'*g',xx,yy,'-k','linewidth', 2)
P_gen = ones(1,24).*29000; % Watts
P_lowerlimit = ones(1,24).*10000; % Watts
hold on
xx=linspace(1,numel(x),1000)
yy=interp1(x,P_gen,xx,'spline')
plot(x,P_gen,'og',xx,yy,'-m','linewidth', 2)
xx=linspace(1,numel(x),1000)
yy=interp1(x,P_lowerlimit,xx,'spline')
plot(x,P_lowerlimit,'or',xx,yy,'-b','linewidth', 2)
grid
xlim([1,24])
xlabel('Time (hours)')
ylabel('Power (Watts)')
hold on
Pnet1 = [];
Pbat1 = [];
Pnet2 = [];
Pbat2 = [];
for h = 1:24
Pnet1(h) = P_gen(h) - P_load(h);
Pnet2(h) = P_lowerlimit(h) - P_load(h);
if Pnet1(h) > 0
Pbat1(h) = 0;
else
Pbat1(h) = P_load(h) - P_gen(h);
end
if Pnet2(h) < 0
Pbat2(h) = 0;
else
Pbat2(h) = [P_gen(h) - P_load(h)]/3;
end
end
xx=linspace(1,numel(x),1000)
yy=interp1(x,Pbat1,xx,'spline')
plot(x,Pbat1,'ok',xx,yy,'-y','linewidth', 3)
xx=linspace(1,numel(x),1000)
yy=interp1(x,Pbat2,xx,'spline')
plot(x,Pbat2,'oc',xx,yy,'-r','linewidth', 3)
legend('Load','Generator','Lower limit','Battery energy(Discharge)','Battery energy(Charge)')

14 comentarios

madhan ravi
madhan ravi el 1 de Nov. de 2018
use the same method like last time
madhan ravi
madhan ravi el 1 de Nov. de 2018
if something is not clear let me know
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
Editada: Ain Athirah el 1 de Nov. de 2018
Thank you so much... I will learn how you do that. :) sure will let you know.
madhan ravi
madhan ravi el 1 de Nov. de 2018
Anytime :)
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
In the previous one,
plot(x,P_load,'or',xx,yy,'-m', 'linewidth', 2)
What is the us of 'or' and '-m', and also this one:
plot(x,P_load,'*g',xx,yy,'-k','linewidth', 2)
'*g' and '-k'. What is the use of this symbol ' . Thanks :D
madhan ravi
madhan ravi el 1 de Nov. de 2018
Editada: madhan ravi el 1 de Nov. de 2018
They are markers , read the below link for more explanation https://www.mathworks.com/help/matlab/ref/linespec.html
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
Do you have a link for me to get to know about that?
madhan ravi
madhan ravi el 1 de Nov. de 2018
See the previous comment
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
Oh, i already know, it is for colour and line for the points. THHANKS.. yoou give me the hint, i change the code.
madhan ravi
madhan ravi el 1 de Nov. de 2018
You’re welcome
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
sorry, i didnt update your answer, thanks a lot!
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
Editada: Ain Athirah el 1 de Nov. de 2018
I have a new problem now on how to label them? by using legend code, seems it be different between points and line.. see the picture:
How to make them be one? as they need to be. Thanks :D
madhan ravi
madhan ravi el 1 de Nov. de 2018
Please ask a separate question
Ain Athirah
Ain Athirah el 1 de Nov. de 2018
okay

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Aún no se han introducido etiquetas.

Preguntada:

el 1 de Nov. de 2018

Comentada:

el 1 de Nov. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by