智能电动汽车交叉口通行过程仿真
简介
电动汽车在交叉口通行过程中,需要根据信号灯状态、信号灯剩余时长、车速和与交叉口之间距离等信息确定车辆的通行方式,常见的通行方式包括匀速不停车通过、减速不停车通过和停车等待通过,在减速过程中,电动汽车可以实现动能量回收。
使用说明
一、实验目的
- 建立电动汽车交叉口通行距离数学模型
- 建立电动汽车交叉口行驶能耗数学模型
- 绘制电动汽车交叉口停车等待过程行驶曲线并计算行驶能耗
- 绘制电动汽车交叉口减速不停车通行过程行驶曲线并计算行驶能耗
二、仿真数据
电动汽车交叉口通行过程仿真所需参数见表7-9-1。
| 整车质量/kg | 迎风面积/ /m² | 空气阻力系数 | 滚动阻力系数 |
|---|---|---|---|
| 1575 | 2.05 | 0.3 | 0.012 |
| 重力加速度/(m/s²) | 电机效率 | 传动系统效率 | 电池充电效率 |
| 9.8 | 0.85 | 0.9 | 0.3 |
| 旋转质量换算系数 | 再生制动强度 | 车辆与交叉口的距离/m | 起步加速度/(m/s²) |
| 1.1 | 0.1 | 200 | 2 |
| 最高车速/(m/s) | 低速行驶速度/(m/s) | 停车等待过程时间设置/s | 不停车过程时间设置/s |
| 16.67 | 4.17 | 30 | 18 |
三、实验步骤
1.建立电动汽车交叉口通行距离数学模型
原理参见教材第7章实例9
2.建立电动汽车交叉口行驶能耗数学模型
原理参见教材第7章实例9
3.绘制电动汽车交叉口停车等待过程行驶曲线并计算行驶能耗
编写绘制电动汽车交叉口停车等待过程行驶曲线并计算行驶能耗的MWORKS仿真程序如下。
A = 2.05;C = 0.3;f = 0.012;g = 9.8;m = 1575;nt = 0.9;p = 1.1;#设置汽车参数
nmo = 0.85;#设置电机效率
nin = 0.3;#设置电池充电效率
Lt = 200;#设置与交叉口之间的距离
time = 30;#设置交叉口需要等待时间
z = 0.1;#设置再生制动速度
aa = 2;#设置起步加速度
v0 = 16.67;#设置行驶初速度
ab = z * g;#计算再生制动减速度
tb = v0 / ab;#计算减速时间
tu = (Lt - 0.5 * ab * tb^2) / v0;#计算匀速行驶时间
tw = time - tb - tu;#计算停车等待时间
t = zeros(Float64, 501)#设置t数组
E = zeros(Float64, 501)#设置E数组
d = zeros(Float64, 501)#设置d数组
v = zeros(Float64, 501)#设置v数组
t[1] = 0#设置初始时刻为0
E[1] = 0#设置初始时刻能耗为0
for i = 1:500#时间循环开始
if t[i] < tu#匀速行驶过程判断
v[i] = v0#车速为初速度
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v0^2) / 1.632) * v0 * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
elseif t[i] >= tu && t[i] < tu + tb#减速过程判断
v[i] = v0 - ab * (t[i] - tu)#计算车速
E[i+1] = E[i] - p * m * z * g * v[i] * nt * nin * 0.1 / 3600 + 0.1 * ((m * g * f + C * A * (v[i]^2) / 1.632) * v[i] * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
elseif t[i] >= tu + tb && t[i] < tu + tb + tw#停车等待过程判断
v[i] = 0#车速为0
E[i+1] = E[i]#行驶能耗不变
elseif t[i] >= time && t[i] < time + v0 / 2#起步加速过程判断
v[i] = 0 + (t[i] - time) * aa#计算车速
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v[i]^2) / 1.632 + p * m * aa) * v[i] * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
else#起步到最高车速判断
v[i] = v0#车速恢复到初始速度
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v0^2) / 1.632) * v0 * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
end#判断结束
d[1] = -Lt#设置初始与交叉口距离
d[i+1] = d[i] + 0.1 * v[i]#计算实时距离变化
t[i+1] = 0.1 * i#设置仿真步长为0.1s
end#时间循环结束
plot(t, d);#绘制曲线
xlabel("时间/s"), ylabel("车辆与交叉口之间距离/m");#设置横纵坐标
@printf("行驶能耗 Et=%.2f W·h\n", E[501])#输出行驶能耗
在MWORKS编辑器中输入这些程序,点击运行按钮,就会得到电动汽车交叉口停车等待过程行驶曲线,如图7-9-2所示。通过分析可以得到,0~3.5s过程中,车辆处于匀速行驶阶段;3.0~20.7s过程中,车辆以0.1的制动强度减速;20.7~30s过程中,车辆处于停车等待阶段;30~38.5s过程中,车辆处于起步加速阶段,车辆在等待时间后通过;38.5s以后,车辆继续以初始速度匀速行驶。最终得到车辆行驶总能耗为114.39W·h。
4.绘制电动汽车交叉口减速不停车通行过程行驶曲线并计算行驶能耗
编写绘制电动汽车交叉口减速不停车通行过程行驶曲线并计算行驶能耗的MWORKS仿真程序如下。
A = 2.05;C = 0.3;f = 0.012;g = 9.8;m = 1575;nt = 0.9;p = 1.1;#设置汽车参数
nmo = 0.85;#设置电机效率
nin = 0.3;#设置电池充电效率
Lt = 200;#设置与交叉口之间的距离
time = 18;#设置交叉口需要等待时间
z = 0.1;#设置再生制动速度
aa = 2;#设置起步加速度
v0 = 16.67;#设置行驶初速度
vmin = 4.17;#设置低速行驶速度
ab = z * g;#计算再生制动减速度
tb = (v0 - vmin) / ab;#计算减速时间
tu1 = (200 - (vmin * tb + 0.5 * ab * tb^2) - vmin * (time - tb)) / (v0 - vmin);#计算高速匀速行驶时间
tu2 = time - tb - tu1;#计算低速匀速行驶时间
t = zeros(Float64, 301)#设置t数组
E = zeros(Float64, 301)#设置E数组
d = zeros(Float64, 301)#设置d数组
v = zeros(Float64, 301)#设置v数组
t[1] = 0#设置初始时刻为0
E[1] = 0#设置初始时刻能耗为0
for i = 1:300#时间循环开始
if t[i] < tu1#高速匀速行驶过程判断
v[i] = v0#高速车速不变
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v0^2) / 1.632) * v0 * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
elseif t[i] >= tu1 && t[i] < tu1 + tb#减速过程判断
v[i] = v0 - ab * (t[i] - tu1)#计算车速
E[i+1] = E[i] - p * m * z * g * v[i] * nt * nin * 0.1 / 3600 + 0.1 * ((m * g * f + C * A * (v[i]^2) / 1.632) * v[i] * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
elseif t[i] >= tu1 + tb && t[i] < tu1 + tb + tu2#低速匀速行驶过程判断
v[i] = vmin#低速车速不变
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (vmin^2) / 1.632) * vmin * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
elseif t[i] >= time && t[i] < time + (v0 - vmin) / aa#起步加速过程判断
v[i] = vmin + (t[i] - time) * aa#低速车速不变
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v[i]^2) / 1.632 + p * m * aa) * v[i] * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
else#起步到最高车速判断
v[i] = v0#车速恢复到初始速度
E[i+1] = E[i] + 0.1 * ((m * g * f + C * A * (v0^2) / 1.632) * v0 * 3.6) / (0.377 * 9.55 * 3600 * nmo * nt)#累加计算行驶能耗
end#判断结束
d[1] = -Lt#设置初始与交叉口距离
d[i+1] = d[i] + 0.1 * v[i]#计算实时距离变化
t[i+1] = 0.1 * i#设置仿真步长为0.1s
end#时间循环结束
plot(t, d);#绘制曲线
xlabel("时间/s"), ylabel("车辆与交叉口之间距离/m");#设置横纵坐标
@printf("行驶能耗 Et=%.2f W·h\n", E[301])#输出行驶能耗
在MWORKS编辑器中输入这些程序,点击运行按钮,就会得到电动汽车交叉口减速不停车通行过程行驶曲线,如图7-9-3所示。其中,0~3.7s过程中,车辆处于高速匀速行驶阶段;3.7~16.5s过程中,车辆以0.1的制动强度减速行驶;16.5~18s过程中,车辆处于低速匀速行驶阶段;18~24.4s过程中,车辆处于加速行驶阶段,车辆在等待时间后通过;24.4s以后,车辆继续以高速匀速行驶。行驶总能耗为99.57W·h。
登录账号即可下载资源、参与讨论。