CarSim和TruckSim中的制动系统基于驾驶员和主动干预系统(例如防抱死制动系统(ABS)和电子稳定控制系统(ESC))的控制,在车轮上提供制动扭矩。制动扭矩受到非簧载部件的反作用,并始终与车轮的旋转方向相反.
制动系统模型
使用本文档中描述的界面设置制动系统的参数,并在为每个仿真生成的Echo文件的“制动”部分中列出了这些参数(图1)。注意,制动模型中使用的可配置函数的名称也在Echo文件的注释中给出(411-413行).
最上层控制
制动系统的顶级控制被指定为踏板力或来自主缸的液压。参数OPT_BK_PEDAL确定输入形式。如果设置为0,则不需要有关制动踏板力的信息,系统的输入只是主缸压力。如果OPT_BK_PEDAL = 1,则将踏板力定义为输入,并将其直接转换为主缸压力。如果OPT_BK_PEDAL = 2,则踏板力将由向主缸提供压力的助力器作用。如果使用了闭环速度控制器,它将根据速度控制器的设置来调节踏板力或主缸压力。
图1. Echo文件的一部分,列出了制动参数和可配置的函数名称
即使使用内部闭环速度控制器,也始终会应用开环制动控制。如果在闭环控制和开环控制之间遇到复杂的情况,请确保在激活闭环速度控制器时将开环制动控制设置为零。
主缸压力控制
当OPT_BK_PEDAL = 0时,任何涉及踏板力的参数或可配置函数都将被忽略;制动模型的输入是主缸压力。开环制动是使用可配置函数PBK_CON定义的,该函数是通过库“Control: Braking MC Pressure (OpenLoop).”中的数据集设置的。
制动踏板力控制
当OPT_BK_PEDAL为1或2时,制动模型的输入为踏板力。开环制动是使用可配置函数F_BRAKE_PEDAL定义的,该函数是通过库“Control: Braking Pedal Force (Open Loop):控制:制动踏板力(开环)”中的数据集设置的。在这种情况下,不使用函数PBK_CON.
制动压力控制
用于跟踪控件和流体压力的变量遵循图2所示的顺序。对于每个车轮,来自主缸的管路压力都受到比例阀的作用,从而产生输送压力。可选的控制器向执行器提供控制器压力,执行器可能具有影响提供给执行器压力的动力学特性。执行器产生制动扭矩。
图2.产生制动扭矩的液压压力流程图
传统的制动系统通常使用比例阀或其他流体控制装置将不同的压力传递给前后制动器。在模型中,使用管路压力和瞬时轮胎垂直载荷的可配置函数计算输送压力。对于具有ABS控制器的现代系统,通常不包括此比例。在这些情况下,可配置函数应设置为系数1.0。CarSim和TruckSim包含一个简单的内置ABS控制器,可用于调节输送压力以提供受控压力.
执行器动态特性
模型中有三个选项可用于表示执行器的瞬态行为。使用参数OPT_BK_DYN为每个制动器指定选择。如果OPT_BK_DYN = 0,则没有动态:执行器压力与控制器压力完全相同。当OPT_BK_DYN = 1时,制动执行器的瞬态特性由一阶延迟时间常数表征,该常数用于后述的执行器压力微分方程中。当OPT_BK_DYN = 2时,将根据卡钳中的流体量对制动执行器的瞬态行为进行建模,如下所述。
制动扭矩,包括锁止行为
应用于非旋转车轮的制动器与应用于旋转车轮的制动器的行为不同。纺车具有动态自由度;锁止轮没有。当将制动转矩施加到纺车上时,制动转矩主要是所施加的液压的函数,并通过耗散能量来抵抗旋转。然而,当应用于非旋转车轮时,制动扭矩会根据需要做出反应,以防止车轮打滑,而不会耗散能量或进行任何工作。车轮旋转时,制动扭矩定义为液压和温度的可配置函数。稍后将描述热模型的详细信息。在不包含热效应的模型中,扭矩直接从执行器压力中计算得出。CarSim / TruckSim制动器模型通过用扭转弹簧和减震器代表锁定的制动器来解决非旋转状态,该扭转弹簧和减震器根据需要缠绕以对轮胎/地面力作出反应。当转速达到零时,模型方程式就会发生这种变化。那时,扭转弹簧和阻尼器的方程被激活,以使车轮在锁定状态下达到真正的静态平衡。根据频率和阻尼参数LOCK_BK_R_FREQ和LOCK_BK_ZETA(请参见图1,第415 – 417行),数学模型会自动确定在此步骤中应用的弹簧和阻尼器的属性,以满足数值稳定性的要求。这些参数未在GUI中表示。但是,高级用户可以使用其他黄色字段来设置它们。只要来自弹簧/减震器系统的扭矩大小小于施加的制动扭矩的当前值,制动器就保持锁定状态。如果弹簧/阻尼器扭矩超过所施加的扭矩,则弹簧/阻尼器将被禁用。
制动模型的配置函数
可配置函数用于描述系统中的非线性关系。表1列出了用于指定具有标准编辑和查看控件的可配置函数的数据集的库,如VehicleSim BrowserReference Manual中所述。根据表中列出的根名称,通过关键字为求解器程序标识表格数据集。这些也可以在Echo文件中标识(请参阅第2页的图1的389-391行)。
制动系统界面
CarSim中的主制动系统界面名为Brakes: Four-Wheel System。在TruckSim中,使用库Brakes: Two-Wheel System中的数据集,按轴指定制动特性。CarSim中提供了另一个名为Brakes: TrailerTwo-Wheel System的库。它与其他两个相似,但是没有用于设置顶级控件的用户控件。
表1.制动系统表库
库界面 | 根关键字 | 描述 |
Brakes: Booster Force | F_BRAKE_PEDAL_BOOST | 制动主缸输出压力V制动踏板力 |
Brakes: Caliper Pressure vs. Volume | PBK_CALIPER | 制动钳压力与制动钳体积 |
Brakes: Cooling Coefficient | BRAKE_COOL | 转子冷却系数与车速的关系 |
Brakes: Proportioning/Limiting Valve | PBK_DL | 比例阀的压力输出与输入压力和轮胎Fz的关系 |
Brakes: Torque | MY_BRAKE | 制动扭矩与执行器压力 |
Brakes: Torque vs. Rotor Temperature | MY_BRAKE_TEMP | 制动扭矩与执行器压力和温度的关系 |
四轮制动系统和两轮制动系统
CarSim库中的Brakes: Four-Wheel System(图3)主要用于车辆,该车辆始终有四个车轮。它也用于四轮拖车的制动器。TruckSim库“ Brakes: Two-Wheel System”的界面与四轮界面几乎相同,但是正如名称所期望的那样,它仅具有两个车轮的设置。
踏板制动力公式
当选择踏板力作为顶层控制时,主缸压力Pbk_Con使用简单的几何来计算:
公式中 Fmc 输入制动主缸的力,D 制动主缸的有效半径(参数D_MC).如果没有制动助力, 则
公式中 Fpedal 是踏板力, Rlever 杠杆比例 (参数R_BK_PEDAL).另一方面,如果有动力提升,则进入主缸的力会因具有瞬态响应的提升力而增加。在这种情况下,杠杆比率定义了可配置函数fboost的输入(关键字= F_BRAKE_PEDAL_BOOST)。主缸输入力由一个微分方程定义,该方程使用不同的系数作为时间常数,具体取决于制动器是被施加还是被释放。
图3. Brakes:四轮系统界面.
踏板力用户设置
应在定义前轴制动特性的数据集中提供顶级控制的规范(压力或踏板力)。在没有拖车的CarSim模型中,没有歧义,因为单个数据集定义了所有四个车轮的属性。但是,在TruckSim中,可以从用于任何车轴的数据集中设置顶级控件。应注意提供一致的数据集,以使后轴的数据不会更改预期的设置。
① 用于设置顶级制动控制类型的下拉控制(关键字= OPT_BK_PEDAL)。该控件提供了四个选项(图4)。如果选择了第一个或最后一个选项,则将隐藏与踏板力有关的所有信息,并显示一个或两个字段以指定管路压力的传输延迟⑥。
如果选择了第二个或第三个选项,则会显示两个字段,这些字段将踏板力与主缸压力相关联(图3中的③和④)。如果选择了第三个选项,则会显示到库Brakes:Booster Force②的链接,并且显示两个带有制动主缸⑤时间常数的字段。如果选择了最后一个选项,则Parsfile不包含对关键字的任何引用。
图4.设置顶级制动控制类型的选项
② 链接到库Brakes:BoosterForce。 仅当下拉控件①指定启用功率提升时才显示此链接。 链接的数据集提供助力后的力,该力是踏板力乘以杠杆比③的函数(请参见方程式3和4)。
③ 踏板杠杆比,用于计算施加到主缸上的力(公式2-4,关键字= R_BK_PEDAL)。值1.0表示施加在液压缸上的力与踏板力相同。通常,连杆机构会产生更大的力,从而使传动比大于1.0.
④主缸直径,用于计算施加到主缸上的力(请参见公式1,关键字= D_MC)。
⑤公式中用于增强力的时间常数(公式3和4,关键字= TC_BK_APP和TC_BK_REL)。
⑥ 传输延迟(关键字= TLAG_BK)。这些是每个制动钳或轮缸中制动执行控制信号与压力响应之间的时间延迟。仅当顶层控制是通过使用可配置功能PBK_CON进行开环制动控制施加主缸压力时才应用传输延迟,该功能通过“Control: Braking MC Pressure (Open Loop)控制:制动MC压力(开环)”库定义。
在所有其他情况下,这些参数将被忽略:如果使用内部速度控制器施加制动,如果通过踏板力施加控制,或者使用VS Commands定义了控制,或者从外部代码导入了制动控制信号。
索引参数
特定车轮的所有参数和可配置函数都已索引到车轴号,如系统参数IAXLE的当前值所示。对于带有挂车的车型,它们也被索引到车辆单元,如系统参数IUNIT的当前值所示。大多数属性可以应用于左侧或右侧。上下文是在parsfile中使用系统参数ISIDE指定的(1 =左,2 =右).
内部 ABS控制
CarSim和TruckSim包含一个简单的内置ABS控制器,该控制器通过使用下拉控件③(图3)自动装配,以启用车桥的ABS。启用系统会使命令INSTALL_ABS_CONTROLLER写入数据集的Parsfile中,然后车内装配内置控制器。控制器的参数显示在Echo文件的不同部分中(图5).
图5. Echo文件的ABS部分.
ABS旨在防止在猛烈制动过程中车轮完全抱死。当车轮开始抱死时,其纵向滑移从0减小并接近-1。当滑差减小到规定水平以上时,阀门将释放对轮缸的供应压力,从而使车轮回旋。然后,当滑差再次接近零时,阀门使压力再次致动制动器。在低速行驶时,即在车辆停车之前,ABS被禁用并且允许车轮抱死。ABS控制器处于活动状态的极限停止期间的循环频率通常约为10 Hz。频率不仅取决于此界面上的设置,还取决于轮胎/车轮惯性(在轮胎和悬架屏幕上指定)和轮胎纵向松弛长度(在轮胎界面上指定).⑦下拉控件选择内置的ABS功能。对于每个车轴,可以将ABS控制指定为单通道控制,两个通道控制或禁用(图6)。在单通道模式下,当该轴上任一车轮的滑移超过“滑入关闭”字段中设置的值时,将释放该轴上的两个制动器。当两个车轮的滑移率都低于“滑入”字段中指定的水平时,将再次应用它们。在两通道模式下,分别控制轴上的每个制动器,当滑差超过滑行关闭水平时释放,并在滑行降到滑行打开水平以下时再次应用。禁用ABS时,将绕过内部ABS逻辑,并且用于设置ABS属性(⑧和⑨)的字段被隐藏。
图6.在轴上使用内置ABS的选项
⑧ ABS参数:用于打开和关闭制动器的纵向滑移(关键字= ABS_SLIP_OFF,ABS_SLIP_ON)。ABS_SLIP_OFF是制动器被关闭时的车轮打滑状态(0|自由滚动,1 |锁定)。典型值将在0.1到0.3之间。
ABS_SLIP_ON是车轮打滑状态,在该状态下再次打开制动器。它应该小于ABS_SLIP_OFF的值。典型值将介于0.05和0.3。
尽管制动时的滑移率具有负号,但为方便起见,将绝对值用于这两个参数。 ⑨ ABS最低速度(关键字= ABS_VMIN)。这是ABS起作用的最低车速。当绝对车速降至该水平以下时,ABS控制将关闭,并允许车轮锁定。典型值在2至10 km / h的范围内.
制动系统温度
车轮产生的制动扭矩可以选择对温度敏感。如果启用此选项⑭,则会显示用于指定制动系统模型热部分中使用的初始温度的字段。稍后将介绍该模型的详细信息。⑩ Initial Rotor Temperature 初始轮毂温度. 热模型具有转子或滚筒温度的状态变量,该变量会影响执行器压力和制动扭矩之间的关系。在此设置状态变量的初始值。变量的关键字为SV_TROT_id,其中id标识车轮:L1,L2,R1等.⑪ 热模型使用的空气温度 (关键字= T_AIR).
制动液压力
⑫ 用于计算输送压力的设置是主缸压力和轮胎垂直载荷的可配置功能。 可配置功能的根关键字是PBK_DL。下拉控件指定函数是使用线性系数(关键字= PBK_DL_COEFFICIENT)还是从“Brakes: Proportioning / Limiting Valve制动器:比例/限制阀”库中链接到表格数据。如前所述,如果系统没有比例阀,则应将线性系数指定为1.0。⑬ 执行器动力学。下拉控件提供了四个选项,用于指定执行器的瞬态行为(图7).
图7.设置执行器动力学的选项
如果选择第一个选项,则将参数OPT_BK_DYN设置为1,并显示一个时间常数参数Tbk (关键字= TC_BK)的字段。在这种情况下,使用制动执行器压力Pbk和受控压力Pctl的微分方程来计算制动执行器的瞬态行为。
如果选择了第二个选项,则将参数OPT_BK_DYN设置为2,并链接到库Brakes:Caliper Pressure vs Volume,在下一节中介绍。
第三个选项指定没有动态延迟。执行器压力等于控制压力。第四个选项指定此处未指定动态行为。
制动力矩
⑭ 用于计算制动扭矩的设置,作为液压和温度的可配置函数。下拉控件指定函数是使用线性系数还是使用来自Brakes:Torque库的表格数据的链接,或者使用Brakes:Caliper和Rotor Properties库中的数据集的热模型的链接。如果不考虑温度,则使用可配置函数MY_BRAKE.⑮ 车轮的轴承摩擦(关键字= MY_FRICTION)。这是始终存在的摩擦扭矩,可抵抗车轮打滑。在多体模型中,将指定的扭矩添加到制动扭矩之前,将其施加到车轮上。
可以分别设置左右轮属性
⑯ 复选框,用于指定是否应为车辆的左侧和右侧指定不同的制动特性。取消选中时(如图所示),指定的设置将两次写入数据集中以供双方使用。选中后,左侧和右侧的屏幕上将显示单独的设置.
制动系统卡钳压力与体积
可以将参数OPT_BK_DYN设置为在三种处理制动执行器瞬态行为的方法之间进行选择。选项包括:
无瞬变现象(执行器压力与控制器压力相同)。
指定要在公式5中使用的时间常数。
计算执行器中的流体量并使用液压阻力.
在制动系统界面上使用带指定执行机构动态特性的下拉控件进行选择(⑬,图3)。当为“链接:压力与体积”选择了选项时,将链接到库“制动器:卡尺压力与体积”(图8)。
图8.制动:卡钳压力与体积界面
在这种情况下,进入每个执行器的流量Q是由压力差除以液压阻力R(由参数BK_HYD_RES定义②,图8来计算)得出的。
执行器容积(V)是流量的整数:
卡尺(执行器)压力由卡尺体积与使用可配置功能PBK_CALIPER①定义的压力特性给出.
将四个车轮的体积相加,以计算踏板位移。此方法最初是为CarSim和假设制动系统有四个车轮。踏板位移输出变量也存在于TruckSim中,但可能不准确适用于空气系统或具有四个以上车轮的车辆。
制动系统卡钳和轮毂属性
制动模型在计算制动扭矩时支持热效应。启用热模型时(OPT_BK_THERMAL = 1),制动扭矩取决于卡钳压力和转子温度。制动器转子温度的计算使用了来自制动器转矩和转速的能量输入,以及通过冷却去除的能量。功率输入(Pin)为.
公式中 My_bk 制动力矩 w 是轮速. 冷却系统带走的功率 (Pout) :
公式中 Cv 是作为车速的函数的冷却系数(在模型中使用可配置函数BRAKE_COOL计算), mrotor 轮毂质量 (参数M_ROTOR), Cp 是转子的比热与转子温度的函数, Trotor 轮毂温度, Tair 是空气温度. 计算比热容Cp作为转子温度的线性函数:
公式中Cp0是温度为0°C时的比热(参数BK_CP_RTR),Cp2 是Cp相对于摄氏温度的梯度(参数BK_CP2_RTR)。轮毂温度的导数为:
热选项通过参数OPT_BK_THERMAL启用,并通过带有下拉控件的制动系统界面进行设置,该下拉控件指定了如何指定制动扭矩(⑭,图3)。当选择Torque vs pressure w. thermal effects,将链接到“Brakes: Caliper and Rotor Properties制动器:卡钳和转子属性”库(图9)。①轮毂质量 mrotor (关键字= M_ROTOR), 公式9和公式11中使用。②转子比热(关键字= BK_CP_RTR)。当转子温度为零(kJ / kg / C)时转子的比热,等式10中的Cp0 。③比热的线性斜率(关键字= BK_CP2_RTR)。公式10中轮毂比热相对于转子温度的导数(kJ / kg / C2)Cp2.④链接到数据库Brakes: CoolingCoefficient.⑤进行设置以定义每个制动执行器对压力和转子温度的机械响应。下拉控件指定函数是否应使用线性系数(关键字= MY_BRAKE_TEMP_COFFICIENT),或蓝色链接至Brakes:Caliper Torque Properties数据集。
图9.制动:卡钳和轮毂属性界面
⑥ 指定用于计算制动扭矩的线性系数的选项在较早的版本中存在,仍可用于提供与较早的数据集的向后兼容性。但是,如果选择线性选项,则将忽略所有热效应。
复选框以设置制动器的压力/体积关系。选中此框后,将显示更多控件,可用于以体积流量指定执行器动态(图10).
图10.涉及压力/体积关系的控件
该复选框显示与制动模型的热部分无关的信息。现在可以在“制动系统”界面上选择通过“制动器:基于卡尺压力与体积”库使用基于体积的执行器动力学模型。⑦设置为将卡尺压力指定为卡尺体积的可配置函数。下拉控件指定函数应使用线性系数(关键字= PBK_CALIPER_COFFICIENT),还是蓝色链接至Brakes:Caliper Volume vs. Pressure数据集。⑧此处设置液压阻力的复选框。选中后,将显示⑨字段。还可以在“Brakes: CaliperVolume vs. Pressure制动:卡尺体积与压力”界面上设置有效液压阻力。如果在两个位置均设置,则此界面⑨(字段)中的值将覆盖链接数据集的值。⑨有效阻力(关键字= BK_HYD_RES)。制动钳的液压阻力,在上一小节“Brakes: Caliper Volume vs. Pressure制动:制动钳体积与压力库”中进行了描述。
替换掉部分制动系统
制动系统的I/O变量
表2列出了制动系统顶层控制和轴1上的两个车轮的导入变量。请注意,基于车轮的变量具有后缀_L1或_R1。所有车轴都存在类似的变量,后缀最多等于车辆上的车轴数量(L2,R2,L3等)。表3列出了制动系统控制器和轴1的输出变量。参考图2的流程图(以及在图3所示的界面上),每个车轮的压力变量可从四个位置获得:1.输入(在主缸之后);替换,导出Pbk_Con和导入IMP_PLIN_L12.传递(在比例阀之后);替换,导出PbkD_L1并导入IMP_PDEL_L13.受控(在可选控制器之后);替换,导出Pctl_L1和导入IMP_PCTL_L14.执行器(执行器动态后);替换,导出PbkCh_L1和导入IMP_PBK_L1
表2.顶级制动系统和车轴1的输入
输入关键字 | 单位 | 描述 |
IMP_BK_STAT | - | 制动施加状态:0或1(基于控制压力) |
IMP_DVBK_L1 | mm3/s | L1卡钳流量 |
IMP_DVBK_R1 | mm3/s | R1卡钳流量 |
IMP_FBK_BSTIN | N | 制动助力器输入力 |
IMP_FBK_PDL | N | 刹车踏板力 |
IMP_MYBK_L1 | N-m | 制动力矩L1 |
IMP_MYBK_R1 | N-m | 制动力矩R1 |
IMP_MYSM_L1 | N-m | 分机号 从簧载质量施加到车轮L1的力矩 |
IMP_MYSM_R1 | N-m | 分机号 从簧上质量施加到车轮R1的力矩 |
IMP_MYUSM_L1 | N-m | 分机号 从簧下质量施加到车轮L1的力矩 |
IMP_MYUSM_R1 | N-m | 分机号 从簧下质量施加到车轮R1的力矩 |
IMP_PBK_L1 | MPa | 制动执行器压力L1 |
IMP_PBK_R1 | MPa | 制动执行器压力R1 |
IMP_PCON_BK | MPa | 制动总泵压力 |
IMP_PCTL_L1 | MPa | 制动执行器L1的控制压力(无动力) |
IMP_PCTL_R1 | MPa | 制动执行器R1的控制压力(无动力) |
IMP_PDEL_L1 | MPa | 制动器L1的输出压力(比例分配后) |
IMP_PDEL_R1 | MPa | 制动器R1的输出压力(按比例分配) |
IMP_PLIN_L1 | MPa | 比例分配前的制动管路压力L1 |
IMP_PLIN_R1 | MPa | 比例分配前的制动管路压力R1 |
表3.可用于导出的输出变量
段名称 | 单位 | 名称 |
ABS_L1 | - | ABS应用命令,L1 |
ABS_R1 | - | ABS应用命令,R1 |
Bk_Boost | mm | 制动助力器排量 |
Bk_Pedal | mm | 刹车踏板排量 |
Bk_Stat | - | 刹车应用状态 |
FbkB_In | N | 增压前的制动输入力 |
FbkB_Out | N | 制动助力器输出力 |
F_Pedal | N | 刹车踏板力 |
My_Bk_L1 | N-m | 制动力矩L1 |
My_Bk_R1 | N-m | 制动力矩R1 |
PbkCh_L1 | MPa | 制动执行器压力L1 |
PbkCh_R1 | MPa | 制动执行器压力R1 |
PbkD_L1 | MPa | 输送压力,制动器L1 |
PbkD_R1 | MPa | 输送压力,制动器R1 |
Pbk_Con | MPa | 制动控制输入(M / C) |
Pctl_L1 | MPa | 来自控制器L1的压力 |
Pctl_R1 | MPa | 来自控制器R1的压力 |
T_Rtr_L1 | C | 制动转子L1温度 |
T_Rtr_R1 | C | 制动转子R1温度 |
Vbk_Tot | mm3 | 总制动角体积 |
使用外部ABS控制器:A型和B型
2017年之前的CarSim版本具有“动态制动”选项,其中包括带助力器的踏板力输入,用于处理执行器动力学的体积/压力方法以及热效应。它支持两个用于链接到外部ABS控制器的选项:A型和B型。A型在比例阀之前装有控制器,B型在比例阀之后装有控制器。要为轴1创建A型控制器,将主缸压力Pbk_Con导出到Simulink,并以替换模式导入输出压力IMP_PDEL_L1和IMP_PDEL_R1。要为轴1创建B型控制器,将输出压力PbkD_L1和PbkD_R1导出到Simulink,并使用REPLACE模式导入受控压力IMP_PCTL_L1和IMP_PCTL_R1。
(欢迎申请加入智能驾驶交流学习群,加小编微信号zhijiashexiaoming)