去踩冰了

和室友们去了圆明园,其实就是为了踩冰才去得,果然没有让我失望,圆明园里面所有得水面都结了厚厚的冰,终于我也可以踩在冰面上玩了,打雪帐,砸冰......,所有无聊的活动都被我们玩到了。满眼都是白色和枯萎的树,残破的景点,到处都是凄凄惨惨,配上夕阳,本应该无限的忧伤,却跟在嬉闹的室友后面笑了一路。 
1. 本文旨在探讨通过电机堵转实现防遛车控制的功能逻辑2. 防遛车控制中MCU/VCU之间的交互控制 VCU判断车辆进入遛车工况后,发送防遛车标志,MCU接收此标志并进行堵转控制(即,0转速控制),保证不遛车或遛车距离在驾驶员可控范围内。 注:虽然此控制是车辆出现后遛后才施加的一种措施,但在一定程度上能够减小车辆的遛车距离,如果标定调试做的比较充分,也能保证车辆基本无遛车感。3. 防遛车逻辑控制开发防遛车控制的目的:保证驾驶员在起步时,从制动踏板向油门踏板过程中,车辆不出现明显的遛车问题。3.1.车辆出现遛车工况判断D档遛车工况判断:阈值1<电机转速<阈值2,持续一段时间(一般为0.1s,需根据车辆表现进行标定)认为出现遛车情况,其中D档前进方向电机转速为正,故阈值1、阈值2为负;R档遛车工况判断:与D档判断逻辑相同,但需要注意转速方向。有些厂家认为,R档电机堵转不安全,会将R档遛车控制关闭(可设定标定开关,根据车辆表现再定)。3.2.进入防遛车控制的条件电机转速出现与行驶方向相反的转速后,并不能判定为车辆可进入防遛车控制,还需判断车辆高压Ready状态、变速器换挡状态、车速条件、油门开度等条件,具体逻辑如下:3.3.退出防遛车控制的条件以下任一条件满足后退出防遛车控制(注意红色字体条件):整车不在高压状态驾驶员需求扭矩>电机堵转扭矩防遛车超过驻车时间电机温度或电机控制器温度超过阈值驾驶员操作了换挡杆变速器进行了换挡驾驶员使用手刹进行了驻车制动踏板开度>阈值车速>阈值3.4.间歇性防遛车控制间歇性防遛车控制的目的为:让驾驶员能够感觉到车辆在进行防遛车控制,注意安全。间歇性防遛车控制(一般2次)车辆表现:后遛->停止->后遛->停止(有轻微顿挫感)3.5.防遛车控制注意事项n 防遛车退出条件,不能通过判断油门开度大于阈值退出防遛车控制原因:一方面,油门开度>阈值时的油门扭矩并不一定大于电机防遛车控制扭矩,这会导致退出后电机驱动扭矩会下降,车辆后遛比较严重,并且驾驶感受交叉;另一方面时,如果标定的油门阈值比较大,驾驶员轻油门可能车辆不走的情况。n 防遛车退出条件,不能通过判断制动状态退出防遛车控制原因:在坡道上,驾驶员尚未完全松开刹车时,车辆可能出现遛车现象,此时制动状态信号仍为制动,防溜车功能无法触发,故判断制动开度<阈值后进行防遛车控制。但此条件也存在问题,制动开度阈值较大时,驾驶员轻制动时可能会误入防遛车控制。n 驱动电机不能长时间堵转控制原因:电机堵转时电流相对较大,温升较快,故不能够长时间使用电机堵转使车辆静止。电机堵转的时间一般控制在3s左右,此时间为驾驶员从刹车至油门的时间为最佳,如果时间太长,待电机无能力堵转时,车辆会突然后遛,不太安全。3.6.其他防遛车控制中使用了simulink块S-R锁存器,其使用方法如下:由于S-R锁存器的存在,进入防遛车控制后,如无退出条件,即使进入条件不满足,防遛车控制也不会退出;另外即使防遛车进入条件满足,但同时也有退出条件,则防遛车控制也不会进入。不同车辆使用场景不同,防遛车控制进入退出条件需视车辆使用情况确定,以上仅供参考。根据以上建一个simulink的模型以图形展示出来
08-15
<think>我们正在构建一个基于Simulink的防遛车控制系统模型,需要包括电机堵转控制逻辑以及MCU(电机控制器)与VCU(整车控制器)之间的交互。 防遛车控制通常是指在坡道起步时防止车辆后溜的功能。电机堵转控制则是在特定情况下(如坡道起步)让电机保持一定扭矩输出,使车辆静止不动。 步骤: 1. 系统分析:明确防遛车控制系统的输入输出、控制逻辑以及MCU与VCU的交互信号。 2. 建模:使用Simulink搭建模型,包括信号输入、控制逻辑(状态机或算法)、执行器输出以及通信接口。 3. 仿真验证:通过仿真验证模型在不同工况下的表现。 系统组成: - 输入:车速信号、电机转速、加速踏板位置、制动踏板位置、挡位信号、坡度信号(可选)等。 - 输出:电机扭矩指令(给MCU)、状态指示(给驾驶员)等。 - 控制逻辑:当检测到车辆处于坡道且驾驶员有起步意图(如下加速踏板)时,系统控制电机输出扭矩以防止车辆后溜。 - MCU与VCU交互:VCU负责决策防遛车控制是否激活,并发送目标扭矩给MCU;MCU执行扭矩输出并反馈状态。 详细设计: 1. 防遛车激活条件: - 车辆处于静止状态(车速接近0,电机转速接近0)。 - 挡位在前进挡或倒挡(根据车辆方向)。 - 驾驶员下制动踏板后释放(即起步瞬间)。 - 坡度超过一定阈值(如果有坡度传感器,否则可通过其他方式推断)。 2. 电机堵转控制逻辑: - 当激活条件满足时,VCU计算维持车辆静止所需的扭矩(根据坡度、车辆质量等),并发送给MCU。 - MCU接收到扭矩指令后,控制电机输出该扭矩,使车辆保持静止(堵转状态)。 - 当驾驶员下加速踏板时,系统逐渐增加扭矩以实现平稳起步,同时减少堵转扭矩直到完全取消。 3. 退出条件: - 驾驶员下制动踏板。 - 车辆起步成功(车速超过一定阈值)。 - 系统故障。 建模步骤: 1. 创建VCU模型:包括防遛车控制逻辑。 2. 创建MCU模型:接收VCU的扭矩指令并执行,同时反馈电机实际扭矩和状态。 3. 建立通信接口:使用CAN总线模拟VCU与MCU的通信(可以使用Simulink中的CAN模块)。 4. 车辆动力学模型:用于模拟车辆在坡道上的运动(包括重力分量)。 模型结构: - 输入模块:模拟传感器信号(如踏板、挡位、车速等)。 - VCU控制模块:实现防遛车状态机,计算目标扭矩。 - MCU模块:接收目标扭矩,控制电机输出。 - 车辆动力学模块:计算车辆运动状态(包括坡度影响)。 - 输出模块:显示结果(如车速、电机扭矩等)。 在Simulink中,我们可以使用Stateflow实现状态机,使用Simulink Function实现扭矩计算。 参考引用: VCU作为整车控制的核心,通过汽车总线(如CAN/LIN总线)或硬线连接,实现对电池系统、电驱系统、热管理系统等关键部件的集中控制[^1]。因此,我们的模型中将使用CAN总线进行VCU与MCU的通信。 注意:由于我们是在PC上进行仿真,因此需要考虑实时性和性能问题。但根据引用[2],纯Simulink仿真在步长上可能无法满足实时性要求,因此我们的模型主要用于算法验证,后期可能需要结合硬件在环(HIL)测试。 下面给出一个简化的Simulink模型框架: 1. 输入信号生成子系统:生成测试场景(如坡度变化、踏板信号等)。 2. VCU子系统: - 状态机(Stateflow):包括状态(如“待机”、“防遛车激活”、“退出”等)。 - 扭矩计算:根据坡度、车辆参数计算维持静止的扭矩。 3. MCU子系统: - 接收VCU的扭矩指令,并输出电机扭矩(考虑电机响应特性)。 4. 车辆模型: - 受力分析:驱动力、坡度阻力(重力分量)、滚动阻力等。 - 运动学:计算车速和位移。 通信:使用Simulink的信号线直接连接(简化版)或使用CAN通信模块(更接近实际)。 模型验证: - 测试场景:车辆在坡道上,驾驶员松开制动踏板,系统应激活防遛车控制,车辆保持静止;当驾驶员下加速踏板,车辆应平稳起步,无后溜。 代码生成:如果后续需要部署到硬件,可以使用Simulink Coder生成代码。 注意:防遛车控制逻辑需要确保安全性和舒适性,避免扭矩过大或过小。 相关问题: 1. 如何确定防遛车控制所需的维持扭矩? 2. 在Simulink中如何建立VCU与MCU之间的CAN通信模型? 3. 如何验证防遛车控制系统的有效性? 4. 电机堵转控制对电机温升有什么影响?如何建模? 5. 如何优化防遛车控制的退出逻辑以避免顿挫? 由于用户要求生成相关问题,我们在最后列出。</think>### 基于Simulink的防遛车控制系统建模指南 #### 1. **系统架构设计** 防遛车控制系统需整合**VCU(整车控制器)** 和**MCU(电机控制器)** 的交互逻辑: - **VCU角色**:决策层,处理整车状态(挡位、坡度、车速等),激活防遛车指令[^1] - **MCU角色**:执行层,接收扭矩指令,实现电机堵转控制 - **通信接口**:通过CAN总线传输扭矩指令和状态反馈 ```mermaid graph TD A[VCU] -->|CAN指令| B(MCU) B -->|扭矩执行| C[电机] C -->|转速反馈| B B -->|状态反馈| A ``` #### 2. **核心建模模块** 在Simulink中搭建以下子系统: **(1) 防遛车激活逻辑(VCU子系统)** ```matlab % Stateflow状态机伪代码 state Idle: if (坡道角度 > 5°) && (车速 < 0.5 km/h) && (挡位=D/R) transition to HoldState state HoldState: output 目标扭矩 = 计算防遛车扭矩(坡度, 车重) if 加速踏板下 || 车速 > 3 km/h transition to Release ``` **(2) 电机堵转控制(MCU子系统)** - **扭矩闭环控制**: $$T_{cmd} = K_p \cdot (T_{target} - T_{actual}) + K_i \int (T_{target} - T_{actual}) dt$$ - **堵转保护**:限制最大堵转时间(e.g. 10s),避免电机过热 **(3) CAN通信模块** - 使用Simulink **CAN Pack/Unpack** 模块 - 关键信号映射: ```c VCU -> MCU: 0x0A1 [扭矩指令(16bit), 激活标志(1bit)] MCU -> VCU: 0x0B2 [实际扭矩(16bit), 故障码(8bit)] ``` #### 3. 关键算法实现 **防遛车扭矩计算模型**: ```matlab function T_req = calcHoldTorque(slope_deg, vehicle_mass) g = 9.8; // 重力加速度 T_req = vehicle_mass * g * sind(slope_deg) * wheel_radius; // 静态平衡扭矩 T_req = T_req * 1.2; // 添加20%安全裕量 end ``` **堵转控制响应特性**: - 要求扭矩响应时间 < 100ms - 使用二阶低通滤波器平滑指令: $$H(s) = \frac{\omega_n^2}{s^2 + 2\zeta\omega_n s + \omega_n^2}, \quad \omega_n=20\text{rad/s}, \zeta=0.8$$ #### 4. 仿真验证方案 1. **场景1:10%坡度起步** - 初始状态:车速=0,坡度=5.7° - 验证:释放制动踏板后车辆零速保持 2. **场景2:堵转过载保护** - 强制堵转时间>15s - 验证:MCU自动降扭并发送过热故障码[^2] 3. **HIL测试建议**: - 使用dSPACE平台连接VCU/MCU原型 - 注入故障:CAN中断、传感器失效等 #### 5. 模型优化方向 - **参数在线标定**:通过Simulink Parameter Manager调整坡度灵敏度 - **多模式切换**:与ESP/EPB系统协同控制 - **能耗优化**:动态调整保持扭矩,减少电能消耗 --- ### 相关问题 1. 如何确定防遛车控制中的最佳扭矩安全裕量系数? 2. 在Simulink中如何建立电机堵转的热保护模型? 3. CAN通信延迟对防遛车控制性能有何影响?如何补偿? 4. 如何验证防遛车系统在雪路面的控制鲁棒性? 5. VCU与MCU的软件模块如何划分才能满足ASIL-D功能安全要求?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值