这个例子展示了如何用Simulink®建模汽车传动系统。金宝appstatflow®通过传输控制逻辑的表示增强了S金宝appimulink模型。金宝appSimulink为动态系统和过程的建模和仿真提供了一个强大的环境。然而,在许多系统中,像改变模式或调用新的增益计划这样的监控功能必须对可能发生的事件和随时间发展的条件做出响应。因此,环境需要一种能够管理这些多种模式和开发条件的语言。在下面的例子中,statflow通过在自动变速器中执行齿轮选择功能来展示其在这方面的实力。通过在Simulink块图中合并statflow块,该函数以一种自然和直观的方式与传动系统动力学相结合。金宝app
下图显示了一个典型的汽车动力系统的功率流。非线性常微分方程模型的发动机,四速自动变速器,和车辆。本例中讨论的模型直接将图中的模块实现为模块化的Simulink子系统。金宝app另一方面,在传输控制单元(TCU)中所作的逻辑和决定并不适合于公式完善的方程。TCU更适合statflow表示。statflow监视与系统中重要关系对应的事件,并在事件发生时采取适当的行动。
节气门开度是发动机的输入参数之一。发动机与液力变矩器的叶轮相连,液力变矩器将发动机与变速器相连(见公式1)。
方程1
液力变矩器的输入输出特性可以表示为发动机转速和涡轮转速的函数。在本例中,功率流动的方向始终假定为从叶轮到涡轮(见公式2)。
方程2
传动模型是通过静态齿轮传动比实现的,假设换挡时间很小(见公式3)。
方程3
最终驱动、惯性和动态变化的负载构成了车辆动力学(见方程4)。
方程4
负载转矩包括路面负载和制动转矩。道路荷载是摩擦损失和空气动力损失之和(见公式5)。
方程5
模型根据下图所示的时间表规划变速器的换挡点。对于给定的节气门在给定的档位,有一个独特的车辆速度发生升档。对降档的模拟操作类似。
当您打开模型时,在模型工作区中设置了初始条件。
模型的顶层关系图如下图所示。要运行模拟,请在simulation选项卡上单击运行.注意,模型将相关数据记录到名为MATLAB Workspace的数据结构中sldemo_autotrans_output
.记录信号有蓝色指示灯。在运行模拟之后,可以通过输入查看数据结构的组件sldemo_autotrans_output
在MATLAB命令窗口。还要注意,这些单元出现在子系统图标和信号线上。
以上所示金宝app的Simulink模型由代表发动机、变速器和车辆的模块组成,外加一个换挡逻辑块来控制传动比。用户输入到模型的形式是油门(给出的百分比)和制动扭矩(给出的英尺-磅)。用户使用机动gui界面输入油门和刹车扭矩。
发动机子系统由一个二维表组成,该表内插发动机扭矩与油门和发动机转速。下图显示了复合Engine子系统。双击模型中的这个子系统以查看其结构。
变速器子系统由torque econverter和Transmission ratio模块组成,如下图所示。在模型窗口中双击Transmission子系统以查看其组件。
TorqueConverter是一个屏蔽子系统,它实现了方程2。要打开这个子系统,右键单击它并选择面具>看下面具从下拉菜单。遮罩需要一个速度比矢量(Nin /不
)和k因子向量(f2
)及转矩比(f3
).图中显示了TorqueConverter子系统的实现。
传动比块确定表1所示的比值,并计算出传动输出转矩和输入转速,如式3所示。下图显示了实现转矩和速度比值的子系统的框图。
表1:传动齿轮比率
齿轮Rtr = Nin/Ne 1 2.393 2 1.450 3 1.000 4 0.677
标记为ShiftLogic的Stateflow块实现变速箱的齿轮选择。双击模型窗口中的ShiftLogic以打开状态流图。Model Explorer用于定义输入为油门和车辆速度,输出为所需的齿轮数。两个虚线和状态保持跟踪齿轮状态和齿轮选择过程的状态。整个图表作为一个离散时间系统执行,每40毫秒采样一次。下面显示的状态流图说明了块的功能。
通过在statflow调试器中启用动画,可以在模拟期间观察移位逻辑行为。的selection_state
(总是活动的)首先执行其中指示的计算在
函数。该模型计算升挡和降挡速度阈值作为齿轮和油门瞬时值的函数。当处于稳态时,该模型将这些值与当前车速进行比较,以确定是否需要换挡。如果是,则进入一种确认状态(上移
或降低速度
),记录入境时间。
当车速不再满足换挡条件时,在确认状态下,模型忽略换挡,并切换回steady_state
.这防止了由于噪音条件而产生的额外的移位。如果移位条件在持续时间内保持有效TWAIT
滴答声,模型通过较低的连接点进行转换,并根据当前齿轮广播其中一个移位事件。随后,模型再次激活steady_state
在通过一个中心交叉点的过渡之后。转移事件,它被广播到gear_selection
状态,启动过渡到合适的新装备。
例如,如果车辆以二档和25%的油门前进,状态第二个
活跃在gear_state
,steady_state
活跃于selection_state
.的在
后者的功能,发现上升应该发生时,车辆超过30英里每小时。当这成为现实时,模型进入上移
状态。在这种状态下,如果车速保持在每小时30英里以上TWAIT
Ticks,模型满足向下到右下方连接的过渡条件。这也满足[|齿轮== 2|]从这里到steady_state
,因此该模型现在从上移
来steady_state
并广播这个事件向上
作为过渡行动。因此,从第二名到第三名的过渡被采纳了gear_state
这就完成了移位逻辑。
根据方程4和方程5,Vehicle子系统使用净扭矩来计算加速度,并将其积分来计算车辆速度。车辆子系统被屏蔽。要查看Vehicle块的结构,右键单击它并选择面具>看下面具从下拉菜单。在掩模菜单中输入的参数是最终传动比、阻力摩擦和空气动力阻力的多项式系数、车轮半径、车辆惯性和初始传输输出速度。
发动机扭矩图和液力变矩器特性在仿真中使用如下所示。
获取FactorK(第二行)和TorqueRatio(第三行)vs speeratio(第一行)
第一个模拟(通过机动)使用表2中给出的节流阀进度表(该数据是线性插值的)。
表2:第一次模拟(通过机动)节气门进度表
时间(秒)节流(%)0 60 14.9 40 15 100 100 0 200 0
第一列表示时间;第二列对应节流开度百分比。在这种情况下没有制动(制动力矩为零)。车辆速度从零开始,发动机转速为1000转/分。下图显示了使用默认参数的基线结果图。当司机踩到60%的油门时t = 0
这时,发动机立即做出反应,速度提高了一倍多。这带来了一个低的速比通过液力变矩器,因此,大的转矩比。车辆加速很快(没有轮胎打滑模型),发动机和车辆都获得速度,直到大约T = 2秒
,这时会出现1-2的上升。发动机的速度突然下降,然后又恢复加速。2-3和3-4的上升分别发生在4秒和8秒左右。请注意,由于大的惯性,车辆的速度保持得更平稳。
在t = 15秒
,驾驶员将油门提高到100%,这可能是典型的过路操作。变速器降档至第三档,发动机从大约2600转/分跃升至大约3700转/分。发动机的扭矩因此有所增加,同时也增加了传动装置的机械优势。随着持续的重油门,车辆加速到大约每小时100英里,然后切换到超速行驶大约T = 21秒
.车辆沿第四齿轮巡航为模拟的其余部分。双击机动gui块,并使用图形界面来改变油门和刹车历史。
关闭模型,清除生成的数据。
您可以以模块化的方式增强这个基本系统,例如,用更复杂的模型替换引擎或变速器。通过逐步细化,您可以在这个结构中构建大型系统。statflow控制逻辑与Simulink信号处理的无缝集成使得构建一个高效且直观的模型成为可能。金宝app