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.

 Akzeptierte Antwort

madhan ravi
madhan ravi am 1 Nov. 2018
Bearbeitet: madhan ravi am 1 Nov. 2018

1 Stimme

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 Kommentare

madhan ravi
madhan ravi am 1 Nov. 2018
use the same method like last time
madhan ravi
madhan ravi am 1 Nov. 2018
if something is not clear let me know
Ain Athirah
Ain Athirah am 1 Nov. 2018
Bearbeitet: Ain Athirah am 1 Nov. 2018
Thank you so much... I will learn how you do that. :) sure will let you know.
madhan ravi
madhan ravi am 1 Nov. 2018
Anytime :)
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 am 1 Nov. 2018
Bearbeitet: madhan ravi am 1 Nov. 2018
They are markers , read the below link for more explanation https://www.mathworks.com/help/matlab/ref/linespec.html
Ain Athirah
Ain Athirah am 1 Nov. 2018
Do you have a link for me to get to know about that?
madhan ravi
madhan ravi am 1 Nov. 2018
See the previous comment
Ain Athirah
Ain Athirah am 1 Nov. 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 am 1 Nov. 2018
You’re welcome
Ain Athirah
Ain Athirah am 1 Nov. 2018
sorry, i didnt update your answer, thanks a lot!
Ain Athirah
Ain Athirah am 1 Nov. 2018
Bearbeitet: Ain Athirah am 1 Nov. 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 am 1 Nov. 2018
Please ask a separate question
Ain Athirah
Ain Athirah am 1 Nov. 2018
okay

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by