公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

ISD平台下选用IMC102T-64PIN 芯片开发的工程,跑长运时,驱动报警 CPU 执行故障后,不能发放去除指令清除,必须给芯片断电后重新上电片位能清除 CPU 执行故障故障。

问题:1、确认 CPU 执行错误 failcedireclendclenddclendddclendddructddeill

2、该时跑长运实验时,运行 8 个小时以上的天赋是报道的,还有什么好办法排行该死的吗

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/Motor-Control-ICs/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/td-p/642536

0 点赞
1 解答
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

核心问题还是要关注你系统的CPU Load。execution fault这个故障俩个来源,一个是MCE监测CPU load 超过95%,还有一个是在规定的执行时间内没有执行完设置的指令数。脚本指令超时会使系统进入安全保护模式,所以将不在能够清除故障。

看你的脚本代码,会自动清故障,不知道你的长时测试,电机一直在转,只是偶尔报错,还是让系统自己跑,报错自己清故障?一般的,脚本代码执行报错也基本是在CPU超载时触发,你的系统可能已经触发多次CPU 超载,然后某一次恰好是脚本代码执行超时造成的。所以核心问题还是要保证峰值CPU load 不能超过95%。一般的在配置时,我们要保证估算在90%以内。具体要根据测试来修改。

LinGuohui_0-1700811826419.png

 

在原帖中查看解决方案

0 点赞
19 回复数
Translation_Bot
Community Manager
Community Manager
Community Manager

好好,

CPU 执行错误是在CPU 负载超过 95% 的自动触发的保护。在此保护触发后,MCE会自动停止电机运行,然后CPUBOLAIDAND就会降下来,可以通过清除故障来清除故障排除故障。你的问题可能在触发中或者长时间工作MCE和ISD 的连接可能已经开始了,所以 SDPUNDAWINFEND 命令不成功了。

建建议可以降低低电机或PFC的PWM频率或者降低低电流环的执行速度,来降低低MCE的CPU负载。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642600

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

降低电流环执行速度是指吗?

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642614

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

在 ISDburtrandation 中可以看到 CPU 负载的估计值,一般的我们推荐低于 90%。

关于电流计算机环速率建建议参考:mcesw-rm-用户手册

LinGuohui_0-1700198297602.png

LinGuohui_1-1700198412538.png

 

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642681

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

出现 failvaultClear 后,我在脚本程序中加上这条指令 app_motor0.faultClear = 1;都清除了

CPU 执行故障故障故障,但同时主控与驱动的通讯则一直都是正常的。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642857

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

根据我定向的建议返回 CPU 执行故障故障故障保障,也可以返回 nghistithit Acnifectiondestiontestifectionment 的状态数据

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642881

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

“但同时主控与驱动的通讯 dervistency dergient ander-tuctor 都是正常的。”那此时此时发放清除错指令,IMC102 返回什么数据?

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642864

0 点赞

我自定义的协议,通过监控主控MCU与IMC102T的通讯,可以判断,主控MCU与MIC102T是正常通讯的,而CPU execution fault故障也一直在,我在脚本程序中已经加了判断到有驱动故障后,每隔20秒就执行一次app_motor0.faultClear = 1;,但CPU execution fault故障就一直都在。

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

我建议是我自定的,我的主控MCU与IMC102的通讯是正常的,通过MECONCONTRECONTED CONTENSIOND数据,可以判断DEISOMC102是收到了执行清除掉的指令。我在脚本程序中也增加了一个自检断点,假定分解到有驱动器的时候,每隔二秒也会执行一次 app_motor0.faultClear = 1;指令。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/MOTIX-MCU/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/642946

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

请提供你的uart和清除错脚本代码,下面我也测试一下。

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/Motor-Control-ICs/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/643576

0 点赞

需要把整个脚本程序发给你,你才能测试吧,附件处不支持压缩包,还有什么办法把我写的脚本程序给你?

0 点赞
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

你好,附件支持zip压缩。其他压缩方式不支持。

0 点赞
lock attach
Attachments are accessible only for community members.
Translation_Bot
Community Manager
Community Manager
Community Manager

我上面传出来了,你们试过了

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/Motor-Control-ICs/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/644761

0 点赞
bert1268
Level 2
Level 2
First solution authored 10 replies posted 5 replies posted

重新描述下问题:

ISD平台下选用IMC102T-64PIN 芯片开发的工程,跑长运时,IMC102T报CPU execution fault后,不能通过发故障清除指令来清除CPU execution fault,必须给芯片断电后重新上电才能清除 CPU execution fault。

问题:1、确认CPU execution fault的产生机制

2、该时跑长运实验时,连续运行 8 个小时以上才报CPU execution fault ,有什么好办法排查该故障的原因吗?

0 点赞
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

还有你系统参数的配置,固件的版本。电机和PFC一直在工作吗?

 

0 点赞
bert1268
Level 2
Level 2
First solution authored 10 replies posted 5 replies posted

PFC不一定在工作,因为报该故障时,既有PFC在工作也有PFC没工作的情况,芯片型号是IMC102T-64,ISD平台是用的最新版本  imotionsolutiondesigner_1.2.3.202309071117_Windows_x64,报故障时,电机都是在工作的。

0 点赞
lock attach
Attachments are accessible only for community members.
Translation_Bot
Community Manager
Community Manager
Community Manager

看看我上传的图,又出现了不能清除执行错误的情况,与片段芯片的通讯肯定是没有破解的,如果与芯片的通讯中断,调试面部将显示解开

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/Motor-Control-ICs/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/645225

0 点赞
Translation_Bot
Community Manager
Community Manager
Community Manager

好好,

我简单地试了下你的脚本代码,这里存了一些设置问题。

如图,其中方框选出来的是设置脚本任务执行时间的,按照你的设备设置,任务0 执行周期 50*1 毫秒,每周执行一次 10 个步骤;任务 1 执行周期 10*10 毫秒,每周执行一次 10 个步骤。但是你的代码编译后,task1有470个指令(如果语句比较多,实际执行要比这个不可少)。所以 empospassApporsAcept 在uartcontectorencorterscript 代码执行可能会出现问题,尤其是在CPU 过载的情况下。你可以修改 femactask1 的执行周期,biax将10改为 5,同时增强每个周期的步骤执行数。另外,最重要的是要修复 REVENCEBEFEVENEPRENCE 我说的,降低低 PWMPFUCTURE,降低低电流环的执行速度。CPUAVASDANAD 是单个系统故障保障,我们在调试时要保全系统工作稳定,也就是要确认保鲜系统不过载,可以关心关注值 CPU 负载,一般的要保发在 95 是最大值了。%以下,95%

LinGuohui_0-1700718098779.png

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/Motor-Control-ICs/ISD%E5%B9%B3%E5%8F%B0%E4%B8%8B-CPU-execution-fault-%E6%95%85%E9%9A%9C%E4%B8%8D%E8%83%BD%E5%8F%91%E6%B8%85%E9%99%A4%E6%8C%87%E4%BB%A4%E6%B8%85%E9%99%A4/m-p/645742

0 点赞

task1的执行周期我注意到了的,我的工程上我是设置过了的,TASK1_EXECUTION_STEP我改成48了的。我更关注的问题是:为什么清除不了CPU execution fault这个故障,需要我把芯片断电后,重新上电,这样芯片才能重新正常运行驱动电机。

0 点赞
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

核心问题还是要关注你系统的CPU Load。execution fault这个故障俩个来源,一个是MCE监测CPU load 超过95%,还有一个是在规定的执行时间内没有执行完设置的指令数。脚本指令超时会使系统进入安全保护模式,所以将不在能够清除故障。

看你的脚本代码,会自动清故障,不知道你的长时测试,电机一直在转,只是偶尔报错,还是让系统自己跑,报错自己清故障?一般的,脚本代码执行报错也基本是在CPU超载时触发,你的系统可能已经触发多次CPU 超载,然后某一次恰好是脚本代码执行超时造成的。所以核心问题还是要保证峰值CPU load 不能超过95%。一般的在配置时,我们要保证估算在90%以内。具体要根据测试来修改。

LinGuohui_0-1700811826419.png

 

0 点赞