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.

 채택된 답변

madhan ravi
madhan ravi 2018년 11월 1일
편집: madhan ravi 2018년 11월 1일

1 개 추천

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

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Spline Postprocessing에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

질문:

2018년 11월 1일

댓글:

2018년 11월 1일

Community Treasure Hunt

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

Start Hunting!

Translated by