added to report, added resources
BIN
final report/dendrite.jpg
Normal file
After Width: | Height: | Size: 47 KiB |
BIN
final report/hotel-load.png
Normal file
After Width: | Height: | Size: 202 KiB |
BIN
final report/tophat.png
Normal file
After Width: | Height: | Size: 468 KiB |
BIN
maths/Dyn. Pos. Sea State 7.png
Normal file
After Width: | Height: | Size: 192 KiB |
BIN
maths/Dynamic Positioning Sea State 7.png
Normal file
After Width: | Height: | Size: 218 KiB |
BIN
maths/final_report_res/dynpos1.fig
Normal file
BIN
maths/final_report_res/dynpos1.png
Normal file
After Width: | Height: | Size: 199 KiB |
BIN
maths/final_report_res/dynpos2.fig
Normal file
BIN
maths/final_report_res/dynpos2.png
Normal file
After Width: | Height: | Size: 208 KiB |
BIN
maths/final_report_res/dynpos3.fig
Normal file
BIN
maths/final_report_res/dynpos3.png
Normal file
After Width: | Height: | Size: 229 KiB |
BIN
maths/final_report_res/mission1.fig
Normal file
BIN
maths/final_report_res/mission1.png
Normal file
After Width: | Height: | Size: 326 KiB |
BIN
maths/final_report_res/mission2.fig
Normal file
BIN
maths/final_report_res/mission2.png
Normal file
After Width: | Height: | Size: 336 KiB |
BIN
maths/final_report_res/mission3.fig
Normal file
BIN
maths/final_report_res/mission3.png
Normal file
After Width: | Height: | Size: 323 KiB |
BIN
maths/final_report_res/mission4.fig
Normal file
BIN
maths/final_report_res/mission4.png
Normal file
After Width: | Height: | Size: 333 KiB |
BIN
maths/final_report_res/mission5.fig
Normal file
BIN
maths/final_report_res/mission5.png
Normal file
After Width: | Height: | Size: 330 KiB |
BIN
maths/final_report_res/mission6.fig
Normal file
BIN
maths/final_report_res/mission6.png
Normal file
After Width: | Height: | Size: 337 KiB |
BIN
maths/mission.png
Normal file
After Width: | Height: | Size: 327 KiB |
@ -109,7 +109,7 @@ figure('Renderer', 'painters', 'Position', [10 10 1000 800])
|
|||||||
|
|
||||||
line_width = 1;
|
line_width = 1;
|
||||||
subplot(3, 1, 1);
|
subplot(3, 1, 1);
|
||||||
%sgtitle('Mission Power Usage');
|
sgtitle('Mission Power Usage');
|
||||||
% sgtitle(TITLE);
|
% sgtitle(TITLE);
|
||||||
hold on;
|
hold on;
|
||||||
grid on;
|
grid on;
|
||||||
@ -124,7 +124,7 @@ plot(x, power_out / 1e6, 'r', 'LineWidth', 1);
|
|||||||
|
|
||||||
% yline(P_IN / 1e6, '--m', 'LineWidth', line_width * 0.5);
|
% yline(P_IN / 1e6, '--m', 'LineWidth', line_width * 0.5);
|
||||||
|
|
||||||
legend('P In', 'P Out');
|
legend('Power In', 'Power Out');
|
||||||
ylabel('Power (MW)')
|
ylabel('Power (MW)')
|
||||||
xlim([0 inf])
|
xlim([0 inf])
|
||||||
ylim([0 ceil(max(max(power_in/1e6), max(power_out/1e6)))])
|
ylim([0 ceil(max(max(power_in/1e6), max(power_out/1e6)))])
|
||||||
|
@ -27,7 +27,7 @@ P_IN_LOAD = 0.3; % most efficient load percent
|
|||||||
%%%%% DP (SS7)
|
%%%%% DP (SS7)
|
||||||
MAX_P_OUT = 3842e3; % W
|
MAX_P_OUT = 3842e3; % W
|
||||||
MIN_P_OUT = 362e3; % W
|
MIN_P_OUT = 362e3; % W
|
||||||
TITLE = 'Dyn. Pos. Sea State 7';
|
TITLE = 'Dynamic Positioning Sea State 7';
|
||||||
SIMULATION_DAYS = 2; % days
|
SIMULATION_DAYS = 2; % days
|
||||||
|
|
||||||
cable_drum = get_extra_p(SIMULATION_DAYS*day_to_seconds, 3*hours_to_seconds, 1.5*hours_to_seconds, 946.26e3);
|
cable_drum = get_extra_p(SIMULATION_DAYS*day_to_seconds, 3*hours_to_seconds, 1.5*hours_to_seconds, 946.26e3);
|
||||||
@ -84,7 +84,7 @@ figure('Renderer', 'painters', 'Position', [10 10 1000 800])
|
|||||||
|
|
||||||
line_width = 1;
|
line_width = 1;
|
||||||
subplot(3, 1, 1);
|
subplot(3, 1, 1);
|
||||||
%sgtitle(TITLE);
|
sgtitle(TITLE);
|
||||||
hold on;
|
hold on;
|
||||||
grid on;
|
grid on;
|
||||||
|
|
||||||
@ -98,7 +98,7 @@ plot(x, power_out / 1e6, 'r', 'LineWidth', 1);
|
|||||||
|
|
||||||
%yline(p_av / 1e6, '--m', 'LineWidth', line_width * 0.5);
|
%yline(p_av / 1e6, '--m', 'LineWidth', line_width * 0.5);
|
||||||
|
|
||||||
legend('P In', 'P Out', 'Max P Out', 'Min P Out', 'Average P In');
|
legend('Power In', 'Power Out', 'Max P Out', 'Min P Out', 'Average P In');
|
||||||
ylabel('Power (MW)')
|
ylabel('Power (MW)')
|
||||||
xlim([0 inf])
|
xlim([0 inf])
|
||||||
% ylim([0 ceil(max(max(power_in/1e6), max(power_out/1e6)))])
|
% ylim([0 ceil(max(max(power_in/1e6), max(power_out/1e6)))])
|
||||||
|
@ -30,9 +30,12 @@ batt_capacity = CELL_TOTAL * cell_capacity * cell_voltage / 1e3; % Wh
|
|||||||
|
|
||||||
% P_IN = MAX_P_IN * P_IN_LOAD; % W, efficient load
|
% P_IN = MAX_P_IN * P_IN_LOAD; % W, efficient load
|
||||||
P_IN = (MIN_P_OUT + MAX_P_OUT) / 2; % W, Average power out
|
P_IN = (MIN_P_OUT + MAX_P_OUT) / 2; % W, Average power out
|
||||||
|
P_IN_EFF = 200e3; % W per cell of efficiency
|
||||||
|
|
||||||
sim_seconds = SIMULATION_DAYS * 24 * 60 * 60;
|
sim_seconds = SIMULATION_DAYS * 24 * 60 * 60;
|
||||||
|
|
||||||
|
twenty_minutes = 20 * 60; % s
|
||||||
|
|
||||||
%%%%%%% unit conversions
|
%%%%%%% unit conversions
|
||||||
batt_capacity = batt_capacity * 3600; % J
|
batt_capacity = batt_capacity * 3600; % J
|
||||||
|
|
||||||
@ -138,24 +141,29 @@ for SECOND=1:sim_seconds
|
|||||||
|
|
||||||
batt_percent = (battery_level(SECOND)/batt_capacity);
|
batt_percent = (battery_level(SECOND)/batt_capacity);
|
||||||
|
|
||||||
% BATTERY LOW, INCREASE POWER IN
|
if mod(SECOND, twenty_minutes) == 0
|
||||||
% if battery_net < 0 && batt_percent < BATT_WARN_LEVEL
|
% BATTERY LOW, INCREASE POWER IN
|
||||||
if batt_percent < BATT_WARN_LEVEL
|
% if battery_net < 0 && batt_percent < BATT_WARN_LEVEL
|
||||||
percent_diff = (BATT_WARN_LEVEL - batt_percent) / BATT_WARN_LEVEL;
|
if batt_percent < BATT_WARN_LEVEL
|
||||||
current_p_in = min(current_p_in + percent_diff * P_IN_INTERVAL, MAX_P_IN);
|
% percent_diff = (BATT_WARN_LEVEL - batt_percent) / BATT_WARN_LEVEL;
|
||||||
|
%current_p_in = min(current_p_in + percent_diff * P_IN_INTERVAL, MAX_P_IN);
|
||||||
% BATTERY HIGH, DECREASE POWER IN
|
current_p_in = current_p_in + P_IN_EFF;
|
||||||
elseif batt_percent > BATT_FULL_LEVEL && batt_percent < 1
|
|
||||||
percent_diff = 1 - (abs(BATT_FULL_LEVEL - batt_percent) / (1 - BATT_FULL_LEVEL));
|
% BATTERY HIGH, DECREASE POWER IN
|
||||||
current_p_in = max(current_p_in - percent_diff * P_IN_INTERVAL, MIN_P_IN);
|
elseif batt_percent > BATT_FULL_LEVEL
|
||||||
|
% percent_diff = 1 - (abs(BATT_FULL_LEVEL - batt_percent) / (1 - BATT_FULL_LEVEL));
|
||||||
% NEITHER, RELAX TO EFFICIENT STATE
|
% current_p_in = max(current_p_in - percent_diff * P_IN_INTERVAL, MIN_P_IN);
|
||||||
else
|
|
||||||
delta_to_efficiency = P_IN - current_p_in;
|
current_p_in = max(current_p_in - P_IN_EFF, 0);
|
||||||
if delta_to_efficiency > 0
|
|
||||||
current_p_in = min(current_p_in + P_IN_INTERVAL, P_IN);
|
% NEITHER, RELAX TO EFFICIENT STATE
|
||||||
else
|
else
|
||||||
current_p_in = max(current_p_in - P_IN_INTERVAL, P_IN);
|
delta_to_efficiency = P_IN - current_p_in;
|
||||||
|
if delta_to_efficiency > 0
|
||||||
|
current_p_in = min(current_p_in + P_IN_INTERVAL, P_IN);
|
||||||
|
else
|
||||||
|
current_p_in = max(current_p_in - P_IN_INTERVAL, P_IN);
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
BIN
maths/res/Dyn. Pos. Sea State 7.1.png
Normal file
After Width: | Height: | Size: 239 KiB |
BIN
maths/res/Dyn. Pos. Sea State 7.2.png
Normal file
After Width: | Height: | Size: 232 KiB |
BIN
maths/res/Dyn. Pos. Sea State 7.3.png
Normal file
After Width: | Height: | Size: 231 KiB |
BIN
maths/res/Dyn. Pos. Sea State 7.4.png
Normal file
After Width: | Height: | Size: 245 KiB |
BIN
maths/res/Outbound Steaming1.png
Normal file
After Width: | Height: | Size: 229 KiB |
BIN
maths/res/Outbound Steaming2.png
Normal file
After Width: | Height: | Size: 228 KiB |
BIN
maths/res/dynpos.png
Normal file
After Width: | Height: | Size: 71 KiB |
BIN
maths/res/dynpos2.png
Normal file
After Width: | Height: | Size: 80 KiB |
BIN
maths/res/dynpos3.png
Normal file
After Width: | Height: | Size: 76 KiB |
BIN
maths/res/dynpos4.png
Normal file
After Width: | Height: | Size: 84 KiB |
BIN
maths/res/dynpos5.png
Normal file
After Width: | Height: | Size: 74 KiB |
BIN
maths/res/mission.png
Normal file
After Width: | Height: | Size: 194 KiB |
BIN
maths/res/mission2.png
Normal file
After Width: | Height: | Size: 199 KiB |
BIN
maths/res/mission2annotated.png
Normal file
After Width: | Height: | Size: 228 KiB |
BIN
maths/res/mission3.png
Normal file
After Width: | Height: | Size: 196 KiB |
BIN
maths/res/mission4.png
Normal file
After Width: | Height: | Size: 223 KiB |
BIN
maths/res/mission5.png
Normal file
After Width: | Height: | Size: 208 KiB |
BIN
maths/res/mission6.png
Normal file
After Width: | Height: | Size: 809 KiB |
BIN
maths/res/outbound.png
Normal file
After Width: | Height: | Size: 81 KiB |
BIN
maths/res/outbound2.png
Normal file
After Width: | Height: | Size: 81 KiB |
BIN
maths/res/outbound3.png
Normal file
After Width: | Height: | Size: 81 KiB |