技术活!如何黑入汽车的CAN总线?

2023-06-25 00:10:20 - CLauto酷乐汽车

电影《速度与激情》大家都看过,接下来第六部里面的这个场景大家肯定有印象。

PaulWalker一行人在追捕Shaw时,他们驾驶的宝马被Shaw等人安装了一种电子芯片,之后Shaw等人通过电脑一顿操作之后,这些宝马突然不受驾驶员控制,突然刹车或者直接撞上其他车。

有人会问,这些是真的嘛,怎么实现的,看完这篇文章你就会有所了解。

技术活!如何黑入汽车的CAN总线?

Pic / 来源于网络

速度与激情6(2013)车辆被黑客入侵片段

 特此申明 

1.所有内容均不涉及核心技术细节,或故意略去。

2.本文只提供知识分享,所有DIY引擎调校程序均有风险,有可能严重损坏发动机或导致ECU报废,所引发的责任请自行承担,与本文作者无关。

技术活!如何黑入汽车的CAN总线?

当然引擎调教这件事绝不是读几篇文章看几个视频就可以弄懂的。

我个人觉得这绝对是改装行业里比较顶尖的技术了,有很多很多人从事这方面的工作,花重金开发相关技术内容,我是非常敬佩他们的,也很想直接从事这方面的工作。

技术活!如何黑入汽车的CAN总线?

当然引擎调教这件事绝不是读几篇文章看几个视频就可以弄懂的。

我个人觉得这绝对是改装行业里比较顶尖的技术了,有很多很多人从事这方面的工作,花重金开发相关技术内容,我是非常敬佩他们的,也很想直接从事这方面的工作。

技术活!如何黑入汽车的CAN总线?

和很多车友一样,我小时候就痴迷于汽车。

上大学时主修车辆工程专业,在哈工大的四年里打下了还不错的基础。其实那时候就对于发动机调校这块很感兴趣,但也仅限于感兴趣,虽然想自己研究,却没有找到好的途径。

那时候每期必看的《改装与四驱》并没有太多提及这一块,说实话,当时很希望有人可以提点一二。即使到了大四,好不容易有了一门叫做“车载网络”的专业课,但好像和我真正想学的还是差了一点,万万没想到,最后这门课居然成为我大学里唯一补考的一门。

技术活!如何黑入汽车的CAN总线?

言归正传,刷发动机程序这件事,往最简单说,有个硬件,有个软件,连上OBD,单击Flash,点火,排气“啪啪啪”,完美,结束。如果有车友,只想了解这个流程,估计需要等一等了。

技术活!如何黑入汽车的CAN总线?

本着“授人以鱼,不如授之以渔”的原则,我打算用比较直白的语言从头开始说起,这样既适用于汽车爱好者,DIY车友,也对车辆工程或相关专业的学生有帮助,同时也可以引导一些刚刚从事汽车测试开发的同行们。

技术活!如何黑入汽车的CAN总线?

以下这些将基于我多年的汽车电子安全系统的开发经验和自己网上研究到的一些内容,多数都可以从维基百科或者相关资料网页中查询到。

这次新冠疫情在美国开始爆发,很多公司裁员,我们还算幸运,只是临时降薪,减少工作时间,于是就趁着“休假”,整理一些信息分享给大家,希望可以帮助到大家。

技术活!如何黑入汽车的CAN总线?

车辆在测功机上准备测试

 改装有风险,须谨慎!

技术活!如何黑入汽车的CAN总线?

言归正传,刷发动机程序这件事,往最简单说,有个硬件,有个软件,连上OBD,单击Flash,点火,排气“啪啪啪”,完美,结束。如果有车友,只想了解这个流程,估计需要等一等了。

技术活!如何黑入汽车的CAN总线?

本着“授人以鱼,不如授之以渔”的原则,我打算用比较直白的语言从头开始说起,这样既适用于汽车爱好者,DIY车友,也对车辆工程或相关专业的学生有帮助,同时也可以引导一些刚刚从事汽车测试开发的同行们。

技术活!如何黑入汽车的CAN总线?

以下这些将基于我多年的汽车电子安全系统的开发经验和自己网上研究到的一些内容,多数都可以从维基百科或者相关资料网页中查询到。

这次新冠疫情在美国开始爆发,很多公司裁员,我们还算幸运,只是临时降薪,减少工作时间,于是就趁着“休假”,整理一些信息分享给大家,希望可以帮助到大家。

技术活!如何黑入汽车的CAN总线?

车辆在测功机上准备测试

 改装有风险,须谨慎!

技术活!如何黑入汽车的CAN总线?

现在的车和几十年前的车相比,最大的一个区别就是电子系统越来越多,很多人说如今的车机械感降低,都是电子设备,修都不好修的了。

确实是这样,从最简单的油门说起,最传统的设计,就是油门踏板(acceleratorpedal)直接连着发动机的节气门(throttle),你踩多少踏板,就打开多少节气门,直接控制空气流量。

技术活!如何黑入汽车的CAN总线?

而现在我们踩的基本就是一个纯踏板,有传感器测量你踩了多少,再由发动机控制模块决定打开多少节气门,而油门踏板的这个信息有可能只有发动机这一个模块直接知道。

技术活!如何黑入汽车的CAN总线?

一辆车由几十个模块组成,包括发动机,刹车,转向,悬架等等,而车厂最后负责把所有模块装在一起,整合在一起,所以也叫做OrignialEquipmentManufacture(OEM)。

所有这些模块就是车厂(OEM)的零配件供应商,比较大的模块或直接和OEM打交道的模块属于一级供应商,比如ABS/ESP电子刹车系统。

技术活!如何黑入汽车的CAN总线?

每家供应商当然都只负责开发自己的产品,但是有些信息是需要共享的。

以电子刹车系统为例,ABS/ESP系统的牵引力控制(TractionControl)功能是负责防止车轮在车辆起步时打滑的,一般以轮速传感器(WheelSpeedSensor)信息为主,但需要知道驾驶员踩了多少油门进行另外一些控制。

技术活!如何黑入汽车的CAN总线?

而之前说过,油门信息只有发动机知道,ABS/ESP系统怎么知道呢?

这时候CAN总线就起作用了,说白了就是车上各个电子系统互相交流的一个公共桥梁或通道。而CAN总线,或者叫CANBUS,只是车上的各条桥梁中的一条,成本相对较低,传输速度一般。

CAN的全称是ControllerAreaNetwork,控制器局域网。

技术活!如何黑入汽车的CAN总线?

而现在我们踩的基本就是一个纯踏板,有传感器测量你踩了多少,再由发动机控制模块决定打开多少节气门,而油门踏板的这个信息有可能只有发动机这一个模块直接知道。

技术活!如何黑入汽车的CAN总线?

一辆车由几十个模块组成,包括发动机,刹车,转向,悬架等等,而车厂最后负责把所有模块装在一起,整合在一起,所以也叫做OrignialEquipmentManufacture(OEM)。

所有这些模块就是车厂(OEM)的零配件供应商,比较大的模块或直接和OEM打交道的模块属于一级供应商,比如ABS/ESP电子刹车系统。

技术活!如何黑入汽车的CAN总线?

每家供应商当然都只负责开发自己的产品,但是有些信息是需要共享的。

以电子刹车系统为例,ABS/ESP系统的牵引力控制(TractionControl)功能是负责防止车轮在车辆起步时打滑的,一般以轮速传感器(WheelSpeedSensor)信息为主,但需要知道驾驶员踩了多少油门进行另外一些控制。

技术活!如何黑入汽车的CAN总线?

而之前说过,油门信息只有发动机知道,ABS/ESP系统怎么知道呢?

这时候CAN总线就起作用了,说白了就是车上各个电子系统互相交流的一个公共桥梁或通道。而CAN总线,或者叫CANBUS,只是车上的各条桥梁中的一条,成本相对较低,传输速度一般。

CAN的全称是ControllerAreaNetwork,控制器局域网。

技术活!如何黑入汽车的CAN总线?

这个CAN总线对每个模块都打开的,只要带宽允许,每个在CAN总线上的模块都可以发送或接受信息,但是接受到的信息是什么,怎么读,就有讲究了。

虽然不算是加密的,但也不是一眼就能读懂。

CAN总线基于一种信息传递协议,最早是由德国博世公司在1986年发表的,中间有过改版,但一直沿用至今。这个协议定义了在CAN总线上传播信息的一些最基本的要求,之后会具体说说。

回到油门踏板的话题上,发动机模块会根据这个协议把带有油门踏板的信息传递到CAN总线上,其他模块只要知道踏板信息是如何发上来的,就知道该如何读取了。

这就相当于桥梁上有无数辆小汽车,发动机派出小车A到CAN桥梁上,车上有几个密码箱,里面装着发动机信息。

DBC文件(后面会提及)就是打开这些密码箱的钥匙,任何拦截到这辆车并且有钥匙的模块都可以打开这个密码箱拿到发动机信息。而没有钥匙的模块,就算拦截到了小车A也没法知道信息是什么。

而这把“钥匙”是事先需要沟通定义好的,车厂在车辆开发初期,会给自己和供应商们提供这把“钥匙”,也就是传说中的DBC文件,这样就可以让各个模块之间相互交换信息了。

当然在开发过程当中,这个文件也会不断更新,来达到最终车厂对于性能法规等各个方面的要求。所以说这个文件非常重要,属于需要保密的信息。

当然在开发过程当中,这个文件也会不断更新,来达到最终车厂对于性能法规等各个方面的要求。所以说这个文件非常重要,属于需要保密的信息。

当然,具备一定CAN总线知识的人也是可以破解这把“钥匙”的,而尝试制造出这把“钥匙”的过程就叫做CAN总线逆向。有不少人研究这个,我之后也会说说我是如何逆向丰田86的CAN总线的。

现在大家基本知道CAN是什么,那么为什么要知道这个,和引擎调校有什么关系,我们继续往下说。

各种可以通过CAN总线获得的信息

这个CAN真的是好东西,内容也十分复杂。

我个人是从事ABS/ESP设计开发的,就算我们固定负责一个项目,天天和ABS模块打交道,从项目开始到SOP(StartofProduction,量产),也很难把ABS这一个模块的CAN相关所有东西了解透彻。

更何况一辆车上有几十个模块都共用一个CAN总线,而且每款车的CAN内容也不一样,所以真正在这方面精通的人少之又少。

不过没关系,我们只要了解感兴趣的,和我们玩车相关的就好。

在我个人看来,最有用的一点是,通过CAN总线,我可以直接看到和记录与跑赛道相关的数据,这对于提高圈速是很有帮助的。

每个跑赛道的朋友应该都是希望自己越跑越快,不断提高自己的驾驶水平。稍微硬核一些的玩家,肯定会在车上采集数据,跑完之后再分析(感觉这方面的内容我又可以单独写一篇了,如果大家感兴趣,欢迎评论里说)。

这里的数据主要包括了车速,侧向加速度,纵向加速度,横摆角速度,轮速,方向盘角度等。大部分数据都可以通过第三方硬件来间接获取,比如Vbox或AiM公司开发的产品。

现在大家基本知道CAN是什么,那么为什么要知道这个,和引擎调校有什么关系,我们继续往下说。

各种可以通过CAN总线获得的信息

这个CAN真的是好东西,内容也十分复杂。

我个人是从事ABS/ESP设计开发的,就算我们固定负责一个项目,天天和ABS模块打交道,从项目开始到SOP(StartofProduction,量产),也很难把ABS这一个模块的CAN相关所有东西了解透彻。

更何况一辆车上有几十个模块都共用一个CAN总线,而且每款车的CAN内容也不一样,所以真正在这方面精通的人少之又少。

不过没关系,我们只要了解感兴趣的,和我们玩车相关的就好。

在我个人看来,最有用的一点是,通过CAN总线,我可以直接看到和记录与跑赛道相关的数据,这对于提高圈速是很有帮助的。

每个跑赛道的朋友应该都是希望自己越跑越快,不断提高自己的驾驶水平。稍微硬核一些的玩家,肯定会在车上采集数据,跑完之后再分析(感觉这方面的内容我又可以单独写一篇了,如果大家感兴趣,欢迎评论里说)。

这里的数据主要包括了车速,侧向加速度,纵向加速度,横摆角速度,轮速,方向盘角度等。大部分数据都可以通过第三方硬件来间接获取,比如Vbox或AiM公司开发的产品。

而所有这些数据都在CAN总线上可以直接读到,而且更新率也很快。车辆自己的控制算法都是通过这些信息实现的,所以自然是非常靠谱的。

既然可以用,为何不用呢?

而之前提到的第三方硬件大多也会支持CAN总线连接,通过这个“桥梁”直接获取我们想要的信息。

前面说的是“读”信息,下面开始说说大家最感兴趣的“写”信息。

回到文章最初提到的《速度与激情》的场景,通过电脑操作就可以让另外一辆车子自动刹车或转向,这些是真的吗,怎么实现的。

前面说的是“读”信息,下面开始说说大家最感兴趣的“写”信息。

回到文章最初提到的《速度与激情》的场景,通过电脑操作就可以让另外一辆车子自动刹车或转向,这些是真的吗,怎么实现的。

没错,理论上就是通过入侵CAN网络,“写”入一些信息而达到的。

所以这个CAN总线有利也有弊,但大家也没必要担心自己的车子会不会也遇到这样的问题。我只能说基本上不会,现在各个车厂都在大力研发CyberSecurity来防止CAN入侵发生。

这个之后可以再说,与此同时也让我们DIY玩家越来越难了。我这里只是举一个例子,并不是要教大家如何控制别人的车辆(当然,这个我也不会)。

既然是电子模块,自然就有电子芯片,所有控制程序都是一行行代码编译而成。

对于发动机模块而言,如果掌握了和发动机模块交流的“钥匙”,就可以要求重新写控制发动机的代码,当然前提是你要有正确的发动机代码。所以刷发动机,就是指把自己改写过的发动机控制代码重新写进发动机模块,从而实现自己想要的发动机性能,比如排气回火,增加马力等等。

分享我第一次尝试改写发动机参数的对比视频,之后也会放出这个调校的具体教程。

分享我第一次尝试改写发动机参数的对比视频,之后也会放出这个调校的具体教程。

CAN总线数据相当于是桥梁上面的“车辆”,如果拥有“解码钥匙”就可以看到,比如方向盘转角,发动机转速信息等。而这些信息传输的目的是共享给其他的车辆控制系统。

比如在冰雪路面驾驶,车轮打滑时,发动机ECM(EngineControlManagement)把发动机实时扭矩,转速等告诉ESP(ElectronicStabilityProgram),而ESP把自己需要的扭矩同时发送给ECM,让发动机减小输出扭矩,从而抑制打滑,让车辆更稳定。

而为了达到需要的控制效果,这些信息的传输速度是很快的,比如10毫秒,5毫秒就会传输一次新的数据,1秒的时间里就可能传输多达200多辆“车”!

所以CAN总线的带宽很重要,如果信息特别多,就有可能造成总线“堵车”而出错。如今越来越多的电子功能,自动驾驶功能都依靠总线去沟通,这个“交通量”和20多年前比起来都不是一个数量级的。

而为了达到需要的控制效果,这些信息的传输速度是很快的,比如10毫秒,5毫秒就会传输一次新的数据,1秒的时间里就可能传输多达200多辆“车”!

所以CAN总线的带宽很重要,如果信息特别多,就有可能造成总线“堵车”而出错。如今越来越多的电子功能,自动驾驶功能都依靠总线去沟通,这个“交通量”和20多年前比起来都不是一个数量级的。

Cruise自动驾驶车辆展示图

一方面,车厂会优先考虑需求比较高的信息。

比如发动机控制,车辆稳定系统,可以以较快速率传输,5毫秒,10毫秒。而另外一些不是那么重要的系统,可以以较慢速度传输,100毫秒,200毫秒等。

另一方面,新一代的CAN总线也即将进入登上舞台。

比如CAN-FD,全称为ControllerAreaNetworkFlexibleData-Rate。新的这个协议是基于之前的CAN,也是由德国博世公司在2012年研发出来的。

有两个最大的区别。

第一就是传输速率可以自由切换,更灵活(Flexible)。比如在有需要时加速传播,没有需要时,减速传播,而现有的CAN协议只能通过固定速率传播。

第二就是增大了基本带宽,从11位增加到了29位,这个“位数”我会在之后的文章具体说到。

所以从这两点来看,新的CAN-FD给之后的L3,L4自动驾驶功能的实现创建了一个很好的平台。

车辆自动驾驶展示图

做为一个玩车的人来说,传输速度的快慢有什么意义呢。

从最简单的说起,圈速——圈速是怎么计算的?

如果不考虑正规的比赛,因为比赛会用专门的传感器,而我们平时跑赛道记圈速绝大多数都是通过GPS定位,车辆在这次通过终点线和上次通过终点线的时间差就是圈速。

GPS更新速度就决定了圈速的一部分误差。

最方便计时的设备就是手机,我在最早跑赛道日的时候也就是用手机,而iPhone的GPS更新率为1Hz,也就是1秒才更新一次。当你以120kph在赛道上开的时候,1秒就可以行驶33米,这样的圈速误差还是很大的。

我个人觉得这种情况下,圈速会有最多2秒的误差。想要减小这种误差的话,只要给iPhone接上一个外置GPS接收器就可以了,一般可以提高到10hz,也就是最多200毫秒的误差。

纽博格林北环跑圈计时图

这里只是用GPS来举例,而CAN总线数据也是类似的道理。

硬核玩家肯定是要在赛后分析自己跑的如何,在哪个弯有失误,在哪个地方可以进一步提高,所以就需要把方向盘转角,油门位置,刹车位置等信息和实际GPS信息结合在一起再分析。

这时候传输速度显得尤为重要,如果GPS是0.1秒更新一次,而油门位置1秒才更新一次,在很多时候你根本没法准确分析在某个弯,油门究竟是给早还是给晚。

超级硬核玩家或赛车队肯定会自己加这些传感器,而不依赖于CAN总线。

理论上这些传感器连上一个单片机(Anduino之类)就可以实现数据采集,而高速率的传感器价格也不菲,这些也不在我们今天讨论的范围内。

赛道日跑圈数据图

而我们这些一般车友还是希望依靠现有的CAN来获取信息。

这里再说一个新的概念,OBD设备如何读取信息。虽然我之前有说很多关于DBC文件的概念,只要有了这个就可以读取CAN上所有信息,但这个基本上还是车辆开发阶段用的,或者是车厂自己的赛车队会最大限度的使用这些。

做为一个玩车的人来说,传输速度的快慢有什么意义呢。

从最简单的说起,圈速——圈速是怎么计算的?

如果不考虑正规的比赛,因为比赛会用专门的传感器,而我们平时跑赛道记圈速绝大多数都是通过GPS定位,车辆在这次通过终点线和上次通过终点线的时间差就是圈速。

GPS更新速度就决定了圈速的一部分误差。

最方便计时的设备就是手机,我在最早跑赛道日的时候也就是用手机,而iPhone的GPS更新率为1Hz,也就是1秒才更新一次。当你以120kph在赛道上开的时候,1秒就可以行驶33米,这样的圈速误差还是很大的。

我个人觉得这种情况下,圈速会有最多2秒的误差。想要减小这种误差的话,只要给iPhone接上一个外置GPS接收器就可以了,一般可以提高到10hz,也就是最多200毫秒的误差。

纽博格林北环跑圈计时图

这里只是用GPS来举例,而CAN总线数据也是类似的道理。

硬核玩家肯定是要在赛后分析自己跑的如何,在哪个弯有失误,在哪个地方可以进一步提高,所以就需要把方向盘转角,油门位置,刹车位置等信息和实际GPS信息结合在一起再分析。

这时候传输速度显得尤为重要,如果GPS是0.1秒更新一次,而油门位置1秒才更新一次,在很多时候你根本没法准确分析在某个弯,油门究竟是给早还是给晚。

超级硬核玩家或赛车队肯定会自己加这些传感器,而不依赖于CAN总线。

理论上这些传感器连上一个单片机(Anduino之类)就可以实现数据采集,而高速率的传感器价格也不菲,这些也不在我们今天讨论的范围内。

赛道日跑圈数据图

而我们这些一般车友还是希望依靠现有的CAN来获取信息。

这里再说一个新的概念,OBD设备如何读取信息。虽然我之前有说很多关于DBC文件的概念,只要有了这个就可以读取CAN上所有信息,但这个基本上还是车辆开发阶段用的,或者是车厂自己的赛车队会最大限度的使用这些。

CAN总线的另一个功能是收取发送指令。

如果你想要知道发动机转速,发动机控制模块自带一些指令,只要你在CAN总线上发送这个指令,发动机模块会自动返回相应的信息。

另外一个最常见的例子就是诊断发动机故障和清除故障码。只要你发送读取发动机故障码或清除故障码的指令,发动机就会照做了。

现在市面上可以买到的一些OBD设备应该都是通过CAN的这个功能来读取车辆信息的,这个功能相对简单一些,但主要缺点就是传输速度相对低一些。

因为这就相当于在CAN总线上发送一辆额外的车去找回特定信息,会增加CAN总线的负荷。单个信息影响不大,但大量信息的话同样会造成总线过载的问题。

另外,这个传输速度就不可能和信息本身的速度一致了。

一般情况下,应该在100毫秒左右,不过对于我们来说,也是足够快了,再配合上一个10Hz的GPS接收器,基本可以满足赛道日和时间挑战赛的需求。

以上就是我了解的关于CAN总线的一些基本内容了,有写的不清楚的地方欢迎评论或留言。

说了这么多,可能有些车友认为这些对于自己改写发动机并没有用,因为第三方软件都已经把这些底层的框架都建好了,比如EcuTek,CobbTuning等。

确实没错,我们只要按照他们的用户手册去做,就可以刷程序了。但我个人觉得,了解这些最基本的还是有必要的。一方面可以避免在自己刷程序的过程中犯错,另一方面也有助于自己进一步提高修改发动机程序的能力。

现在市面上可以买到的一些OBD设备应该都是通过CAN的这个功能来读取车辆信息的,这个功能相对简单一些,但主要缺点就是传输速度相对低一些。

因为这就相当于在CAN总线上发送一辆额外的车去找回特定信息,会增加CAN总线的负荷。单个信息影响不大,但大量信息的话同样会造成总线过载的问题。

另外,这个传输速度就不可能和信息本身的速度一致了。

一般情况下,应该在100毫秒左右,不过对于我们来说,也是足够快了,再配合上一个10Hz的GPS接收器,基本可以满足赛道日和时间挑战赛的需求。

以上就是我了解的关于CAN总线的一些基本内容了,有写的不清楚的地方欢迎评论或留言。

说了这么多,可能有些车友认为这些对于自己改写发动机并没有用,因为第三方软件都已经把这些底层的框架都建好了,比如EcuTek,CobbTuning等。

确实没错,我们只要按照他们的用户手册去做,就可以刷程序了。但我个人觉得,了解这些最基本的还是有必要的。一方面可以避免在自己刷程序的过程中犯错,另一方面也有助于自己进一步提高修改发动机程序的能力。

点火延迟之排气回火实例

聊了这么多理论基础,下面来实战演练。详细的教程在以下视频中,这里把要点总结一些。

 B站UP主:不会开车滴CC

 目标 实现排气回火啪啪啪,获得好听的排气声

 发动机调校参数  推迟点火时间

 发动机刷写硬件  OpenFlashTablet

 发动机程序改写软件  RomRaider

 测试车辆  2013丰田86

测试车辆相关改件 

1.Skunk2AlphaELCatlessExhaustHeader 

2.InvidiaOverpipe 

3.InvidiaResonatedFrontPipe

4.GreddyRemarkMufflerDeleteAxleBackw/Titanium

这里以OpenFlashTablet自带的86/BRZ一阶程序为基础

1.先用RomRaider打开此程序,找到点火延迟角的标定表格B。

2.把B表里面发动机转速2000到5000转,最低负荷点的点火延迟角改为零。

3.另存此程序为回火程序b。

4.连接OpenFlashTablet硬件到电脑上,打开OpenFlashManager软件。

5.上传新写的回火程序b到Tablet里面。

6.连接OpenFlashTablet到86的OBD接口上,根据提示写入回火程序b到发动机ECU中。

7.刷写完毕,重新点火,确定刷写成功,怠速45秒,开始正常驾驶。

点火延迟之排气回火实例

聊了这么多理论基础,下面来实战演练。详细的教程在以下视频中,这里把要点总结一些。

 B站UP主:不会开车滴CC

 目标 实现排气回火啪啪啪,获得好听的排气声

 发动机调校参数  推迟点火时间

 发动机刷写硬件  OpenFlashTablet

 发动机程序改写软件  RomRaider

 测试车辆  2013丰田86

测试车辆相关改件 

1.Skunk2AlphaELCatlessExhaustHeader 

2.InvidiaOverpipe 

3.InvidiaResonatedFrontPipe

4.GreddyRemarkMufflerDeleteAxleBackw/Titanium

这里以OpenFlashTablet自带的86/BRZ一阶程序为基础

1.先用RomRaider打开此程序,找到点火延迟角的标定表格B。

2.把B表里面发动机转速2000到5000转,最低负荷点的点火延迟角改为零。

3.另存此程序为回火程序b。

4.连接OpenFlashTablet硬件到电脑上,打开OpenFlashManager软件。

5.上传新写的回火程序b到Tablet里面。

6.连接OpenFlashTablet到86的OBD接口上,根据提示写入回火程序b到发动机ECU中。

7.刷写完毕,重新点火,确定刷写成功,怠速45秒,开始正常驾驶。

OpenFlashTablet可以用于86/BRZ

测试方法

在刷写程序前后,我用同样的方式驾驶了一小段,并用视频和Tablet记录驾驶时的声音和发动机数据。

为了最快地证明这样的程序改写达到预期效果,我们需要尽量让发动机在我们改写的区间运行,2000-5000转,低负荷(低进气量)。所以我们在3档时保持车速在40mph左右,轰一小脚油门后,轻轻地扶着一点油门。

OpenFlashTablet同样适用于MazdaNDMiata

测试结果

改写程序后,同样驾驶条件下,轻扶油门时可以明显听到排气管中有“啪啪啪”的回火声,多次驾驶后可以熟练控制油门开度听到预期的回火声。

通过对比发动机运行时的数据也可以看出,点火提前角有变化。

调校弊端

由于燃油混合气有可能在排气管中点燃,对于三元催化器或涡轮有一定伤害,不建议长期使用。

350Z排气回火图

今日热搜