高圧燃料システムにおいて、燃料の供給と噴射の非連続性は管内圧力の変動を引き起こし、エンジン効率に影響を与える。本稿では、数学的モデリングと数値計算により、圧力を目標値に安定させる制御手法を提案する。
問題1:単向弁開口時間の最適化
内径10mm、長さ500mmの油管に対し、入口孔径1.4mm、初期圧力100MPa、ポンプ圧力160MPaの条件下で、圧力を100MPaに維持するための弁開口時間を探索する。また、2秒・5秒・10秒で150MPaへ遷移させる動的調整も検討。
% 圧力-密度変換関数
function p = density_to_pressure(rho)
p = 17284 * rho^2 - 27111 * rho + 10656;
end
% 噴射流量関数(周期100ms)
function rate = injection_rate(time)
phase = mod(time, 100);
if phase <= 0.2
rate = 100 * phase;
elseif phase <= 2.2
rate = 20;
elseif phase <= 2.4
rate = 240 - 100 * phase;
else
rate = 0;
end
end
% 弁状態関数(開口時間T_open, 閉鎖時間10ms)
function state = valve_state(t, T_open)
cycle = T_open + 10;
phase = mod(t, cycle);
state = (phase <= T_open);
end
% 主ループ:時間ステップ0.02msで2000ms間シミュレーション
optimal_time = 0;
min_error = inf;
for test_time = 0.01:0.01:5
pressure_log = zeros(1, 100001);
current_pressure = 100;
fuel_mass = 0.85 * pi * 2500 * 500; % 初期質量
for step = 0:0.02:2000
in_flow = valve_state(step, test_time) * ...
0.85 * pi * 0.49 * sqrt(2*(160 - current_pressure)/0.8725) * 0.02;
out_flow = injection_rate(step) * 0.02;
fuel_mass = fuel_mass + (in_flow - out_flow) * 0.85;
density = fuel_mass / (pi * 2500 * 500);
current_pressure = density_to_pressure(density);
pressure_log(floor(step/0.02)+1) = current_pressure;
end
error = sum((pressure_log - 100).^2);
if error < min_error
min_error = error;
optimal_time = test_time;
end
end
fprintf('最適開口時間: %.2f ms\n', optimal_time);
問題2:カム角速度の最適化
柱塞ポンプと針弁式噴射器を組み合わせたシステムにおいて、カムの回転速度を調整して圧力を100MPaに安定させる。柱塞径5mm、残存容積20mm³、針弁径2.5mm、噴孔径1.4mm、円錐角9°の構造を考慮。
% カム形状関数(極座標)
function radius = cam_profile(angle)
radius = -0.06315*angle^4 + 0.7934*angle^3 - 2.647*angle^2 + 0.9696*angle + 7.09;
end
% 針弁リフト高さ
function lift = needle_lift(t)
phase = mod(t, 100);
if phase < 0.45
lift = 2.016 * exp(-((phase - 0.4551)/0.1661)^2);
elseif phase <= 2
lift = 2;
elseif phase < 2.45
lift = 2.016 * exp(-((2.45 - phase - 0.4551)/0.1661)^2);
else
lift = 0;
end
end
% 柱塞位置計算
function height = plunger_position(omega, t)
angles = 0:0.1:2*pi;
positions = arrayfun(@(a) cam_profile(a)*sin(omega*t + a), angles);
height = max(positions) - 2.143;
end
% 最適角速度探索
best_omega = 0;
min_variance = inf;
for omega_test = 0.0001:0.0001:0.05
pressure_series = simulate_system(omega_test);
variance = sum((pressure_series - 100).^2);
if variance < min_variance
min_variance = variance;
best_omega = omega_test;
end
end
fprintf('最適角速度: %.4f rad/ms\n', best_omega);
function pressures = simulate_system(omega)
% システムシミュレーションの詳細実装(省略)
pressures = ones(1, 100001) * 100; % ダミー
end
問題3:二重噴射と減圧弁制御
噴射器を2系統に増設し、D点に内径1.4mmの単向減圧弁を追加。供給タイミングと減圧弁開放タイミングを協調制御することで、より精密な圧力管理を実現する。
減圧弁は管内圧力が設定閾値を超えた場合に自動開放し、外部低圧ラインへ燃料を戻す。供給側は噴射タイミングに応じて流量を前倒し補正し、過渡応答の遅れを補償する。