|
今天向量产迈出了坚实的一步,板子做好了,同时适用于VPM, PWM和ISO的OBD车,换句话说就是基本上所有的车都包括了。单哥,E90的程序也被我破解了,基本上应该可以和计算机连线了。贴几张图,电路图就不贴了,是我的知识产权。现在已测试过E36 3系列,z4以及2000 Porsche 911,还有我的福特SUV,完全可以和车辆对话,下一步是车辆错误代码,图形界面和程序的开发了
再来个简单的测试结果
>01 01
41057B
>01 0C
410C11AF8
41057B和410C11AF8是水温和转速的输出,分别对应83C和1726rpm,接下来就是写翻译器实时转换这些参数了
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------11/16/08更新--------------------------------------------------
今天把盒子做好了,真tmd的费劲,没有合适尺寸的现成盒子,所以只好从铝皮开始了。因为以后会使两层PCB堆叠,所以预留了所有的空间。
芯片已经从加拿大寄出,感谢强势美元!!!省了好多钱!!!
程序方面今天把对应的宝马错误码全部输入电脑,汇编写好了,现在的速度是每秒19200次,正好符合串口的baud rate,时序电路会好做很多。今天测试了丰田的加美,貌似有点问题,猜测可能是因为toyota使用的是PWM模式,因为是朋友的车,不太好意思搞太过火。
E36/46 3系列,E85 Z4的程序今天已经完全破解,可以正常通信,隐藏参数也可以读出来了,但是如何集成还是一个问题。。。
另外今天看了一下,2轴MEMS加速度计+GPS一共$35,如果可能的话准备集成。这样的话就是上赛道的利器了,配合软件可以分析在每个点的参数,是提高圈速的好工具。当然还要加个SD写卡器,就可以方便的下载数据了。
今天看见相似的产品,功能基本一抹一样,报价$1400,估计我的成本是$140-$200取决于配置。。。如果可以量产的话,准备$350一台请期待下次更新
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------11/19/08更新--------------------------------------------------
这两天程序没有怎么写,主要做了一些辅助工作,包括订购部件。
昨天从ebay定了一个MSP430的模拟器,竟然是从深圳寄过来的。。。无语了。。。把2轴加速度计也订好了,GPS考虑中,程序方面稍微改了一下,精简了一些进程,模拟下来速度快了30%,虽然感觉不出来,但是还是蛮有成就感的。
硬件方面把氧气传感器模拟器也集成到一起了(图中蓝色筐内),做错了一点点,把12V的电压加到了5V的端口上,搞了半天才发现错误。。。我是白痴。。。。现在的目标是做一个all-in-one的数字仪表盘。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------11/20/08更新--------------------------------------------------
今天把印刷电路板用软件做好了,很快就可以有成品了。用了2层板连线结构,因为版权的原因,隐藏掉了其中的一层连线。毕竟我开发这个电路花了超过70小时,还不算动手的时间。把大学和研究所的书都拿出来看了。。。
原来手工的电路板是4"x4"的,现在用软件优化以后,面积减少到3x3,还是使用through hole元件,如果用表面封装的话,还可以更小,但是考虑到手工焊接的难度,还是算了,这点钱还能出的起。
使用的服务目前是20片$200,如果量大的话还可以更便宜,等以后产量上去了看能不能进一步降低成本
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------11/25/08更新--------------------------------------------------
今天参考SAE(Society of Automotive Engineer, 汽车工程师协会)的J1979号文件,把OBD电脑输出参数彻底高定了。发现宝马除了基本的排放标准以外,基本上都不参照j1979号中央文件精神,简直就是胆大包天!
老单,可以放心了,e90除了底盘数据和氧气传感器数据暂时还读不出来,别的都没有任何问题了,即使这两个真的度不出来问题也不大,国内能读懂这两个数据的人估计暂时没有。
另外发现了便宜一些的翻译芯片,可以节省总成本大约$40左右。微处理器进展缓慢,集成LCD控制模块的程序写得非常不好,速度非常慢,貌似会拖慢整个系统的速度。目前的解决方法是使用外置控制芯片,但是会稍微增加一点成本,不过会很容易开发。
不管那么多了,要去好好享受感恩节长假了!!!
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/10/08更新--------------------------------------------------
最近老放假所以心思也不在这上面,就没有什么大的进展。仅仅是订购了一些元件,稍微开发了一下程序,仍旧是bug无数。。。不过目前的进展是可以初步生产大约10台obd scanner,如果有一些串口开发经验的话,完全已经可以所最复杂的trouble shooting了。绝对不输即使是宝马原厂的检测设备。
最贵的一些元件,就这么几个芯片和接口就要$150!!!简直是抢钱
另外还把技术手册给稍微作了一下,嗯,看上去还比较专业。。。
题外话:老是觉得没有一个一键能开关所有车窗(包括天窗)的东西,所以今天顺手作了个6-transistor的latch电路,从此1键搞定所有车窗。。。懒人专用
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/15/08更新--------------------------------------------------
今天取得了目前为止最大的进展,批量订购的印刷电路到手了。。。总算可以做一个像样的东西了。今天是没有时间焊接了,就看明天的了。。。
感谢我的太太,花了好多时间和我一起校对电路板设计,应该是不会有错的了。
老样子,正面的电路,还有一面的就隐身了。。。警情期待明天的更新:将会有初步做好的成品scanner
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/16/08更新--------------------------------------------------
这两天工作实在太忙了,晚上争分夺秒的基本上把第一片象样子的成品scanner做出来了。废话不多说了。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/17/08更新--------------------------------------------------
今天测试了昨天的成果,顺便作了第2片。看下面的测试吧。。。
5个LED依次点亮,自检通过。。。
现在有2片了。。。
还没有联接车辆,但是scanner已经ok了。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/19/08更新--------------------------------------------------
制造过程持续进行中,已经造好4片,貌似应该足够试用的数量了。。。焊接的手工还凑合,每片平均要1.5小时,真tmd的累啊。。。上次有人反映图片看不清楚,这次就上高分的图,论坛的图片尺寸限制实在是太愚蠢了。。。
制造4片的过程中,出现了1台“废品”,发现原因是把晶振的保护电容接错了,应该是30pF的结成了0.6nF的。。。费了好多时间才发现问题,下次要用不一样的元件才不容易搞错。。。另外发现28DIP的接口很容易稿废掉芯片的引脚。。。下次可能就不用DIP socket而直接将芯片焊接在电路上,但是万一如果出错的话就惨了。。。
基本上scanner告一段落了,整个开发过程到目前为止实现了大约45%,剩下的就是开发MSP430芯片的程序和LCD驱动程序了。。。希望尽快完成
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/22/08更新--------------------------------------------------
今天把连接线都做好了,然后成功的连接上了车辆,非常顺利的,竟然没有搞错任何东西,直接把车辆参数完全读出。现在scanner已经完全搞定了,没有任何问题了。下一阶段的开发现在开了个头,马上就可以100%的投入msp430的开发中了。。。
连线中。。。
车辆上的OBD II 接口
这两个是在冷启动和热车的情况下的转速读数。分别对应1199.5转和829.25转。。。完全符合正常度数。。。因为今天天气实在太冷,就下次再继续测试了。。。我可不想在车库里尾气中毒。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/28/08更新--------------------------------------------------
今天早上测试了我的宝马,一切ok。测试过程中发现,我的m3引擎的点火提前角在怠速下竟然有15度,z4的有10度。高转速下可能会更高,看起来vanos果然是很牛b的。。。
离上次换机油已经大约2000miles了,黄绿色的那个service灯少掉了一盏,本来想用这个设备去reset的,结果发现宝马的自动保养提示系统是游离于OBD外的。。。要继承这个电路可能会比较麻烦。。。
发现一个问题,在制作印刷电路板的时候,没有想到obd是持续供电的,即使是在车辆熄火的情况下。如果插着这个设备的话,就一直耗电。虽然耗电量不大,但是总是心里不爽。。。下次的处理器板子上,要设置一个电源管理系统(说白了就是一个功率三极管,熄火的时候自动关闭所有的电源),总控整台设备。。。
这些是给同学们测试用的。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------12/30/08更新--------------------------------------------------
貌似可能是08年最终话了。今天我的同事们懒洋洋的从圣诞节的被窝里钻出来了,终于有几个人上班了,于是就借用他们的车给我的scanner做测试。一共测试了8台车,包括volvo, toyota, honda, ford, chevy, bmw 645i, mazda, dodge,都没有任何问题。。。这样的话估计即使不是宝马车主也能享受到这个东西的福利了。。。
上次说的保养提示系统也可以reset了。在我教程17里有拍过几张图片,今天顺便把我的车也reset了一把,完全没有任何问题。美国这里卖的peake service tool动不动就是$140以上,这下好了,自己动手的山寨版obd电脑 + 一条reset电线,所有都搞定。
记得串联一个470ohm电阻,把电流控制在12/470=25mA左右,这样即使插错孔也不会有任何问题。
插在7号孔里3秒钟,换油灯被reset,10秒以上,inspection被reset。
昨天和一个朋友聊天,说到自己diy。其实说真的,世界上本没有什么diy高手,自己愿意动手学,查资料,谁都是自己的diy高手。我做这些东西,工具只有1把$10的电洛铁和一把剪刀而已。所以不要让客观条件的限制吓倒自己,切记谁都是自己的diy高手
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------01/01/09更新--------------------------------------------------
2009第一弹!!!老板今天大发慈悲,下午3点就让放学回家了。。。于是就开始了LabView的开发进程。
这个是我的开发平台,其实就是1台价值$30的台机(不算液晶屏)+ 1个12v电池而已。。。还蜗居在车库的一角。。。与汽油为伍。。。
这个示模拟怠速转速下,引擎的指针
5000rpm下的东西
再来个冷车油温
和快爆表的油温
其实真正的东西是藏在这后面的,花了很多时间搞定的接口。有了这个通用借口程序,以后的开发就是磊砖头的体力活了。。。当然还需要我太太这个超级美工的帮忙,否则程序的人机界面就惨不忍睹了。。。
目前预测1个星期内开发完这个labview程序,实现笔记本电脑的直接控制
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------01/05/09更新--------------------------------------------------
LabView程序继续开发中。。。我的美工烂到不行,做出来的界面简直就不能看。。。功能应该还算是够用
已经把接口初始化模块,通信翻译模块,读取翻译实时参数模块写得差不多了,现在的问题是,如何读取车辆错误代码的模块。我的车现在都没有错误代码,所以根本就不可能测试,我认识的玩车的人,车都保养得不错,残念。。。
有两个问题希望了解的同学给点解答:
1. 每秒20次的数据刷新率会不会太低?这个貌似是我的极限,再提高刷新率的话,可能会不稳定
2. 给这个软件的布局提提意见,我的美工不行
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------01/08/09更新--------------------------------------------------
废话不多说,先上video,因为还要发到bimmerforums.com所以就用英文的了,注意我里面有用中文提到本网站哦。。。
http://www.youtube.com/watch?v=FOkqlrRk2c0
另外今天把东西小小的包装一下,非常粗糙,绝对不是最终包装形式。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------01/16/09更新--------------------------------------------------
最近很忙很忙,所以就没有太多的进展,不过唯一的亮点就是搞到了一台porsche的专用检测器。这可不是普通的检测器哦,原厂新品价格$10,000,ebay上被我$800搞定。能够把保时捷的所有数据读个彻底。。。正在大力开发里面的代码,顺手写了个EPROM的小程序,可以适用在我的914上了。看看能把这个东西里的思想怎么应用到我自己的东西里。
那个提到Zigbee的朋友,谢谢你的想法,不过我觉得没什么必要加无线,还要考虑天线的设置,多家模块,另外我以前随便的看过zigbee的标准,貌似不是像蓝牙这类标准那么简单的,好像还要编码发射什么的,太麻烦了。。。用个sd卡就好了。。。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------02/03/09更新--------------------------------------------------
遭遇重大挫折!!!
前段时间因为帮一个同事rebuild engine + turbo一直没有时间搞自己的东西。这两天发现了一个重大挫折,OBD电脑是属于应答式的电子设备,只有提出要求才会发出回应。这个过程是由时间延迟的,根据不同的车型,延迟时间也不尽相同。宝马的貌似是大约60-70毫秒。
也就是说,我的软件设计是每秒钟发出大约100条指令的,需要的延迟最长不能超过10毫秒。。。
不谈具体的技术细节了,用中文说就是,现在的电子仪表不能做成替换式的了(不能替代掉速度表和转速表),只能做成替补式的了,显示一些不需要非常快速更新的数据。。。
虽然发现了如此重大的挫折,还是会继续往下做,从这个工程里学到的东西,远远比花掉的钱要值得的多。
另外今天订购了新的数字是指南针,对我这种不喜欢gps地图导航,只喜欢指南针+大脑的人类来说,应该是蛮cool的
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------02/26/09更新--------------------------------------------------
好久没来更新了,最近进展很多很多,别的不说,就一句话,Labview开发完成,微控制器已经完成设计,模拟通过了。就贴一张图就好了。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------03/20/09更新--------------------------------------------------
上次使用的是串口显示器,开发的电路也是基于串口的微处理器。但是后来仔细响了一下,串口的baud rate相对比较低,于是就很难使用图形显示器,并且刷新率也要受到很大的影响。与其这样不如一步到位,放弃串口电路+显示器,直接上并口的图形显示器。原来的芯片使用msp430,现在可能就要上atmel了。
仔细看第一第二张图,这是上次开发的串口电路+显示器,使用了堆叠的方法包装。以后也可以采用类似的包装方式,显示器堆叠在微处理器上再堆叠在obd + gps上,这种方法安装会十分方便。
串口lcd
并口lcd,看看这惊人的尺寸,实在是因为找不到参照物比较大小,就放了一块我的手表,看看这液晶的尺寸有多惊人。不过这还不是最后要用的lcd,最终的要比这个还要大一倍
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------03/26/09更新--------------------------------------------------
20字符 x 2行的并行字符液晶显示器已经基本functional了。微处理器的原型电路版也搞定了,换用了atmel的atmega32芯片,可以做很多东西了,例如基本的侧向加速度,数字式指南针等等。废话不多说了,看图片最重要
左后这个是新版的labview程序,舍弃了原来一些可有可无的参数,例如油门,MAF等等,大幅提高了刷新速度。
接下来就是要写一些小程序pigtail obdii scanner和这个微处理器了。
------------------------------------------------华丽的分割线--------------------------------------------------
------------------------------------------------03/28/09更新--------------------------------------------------
星期六星期天总是开发的黄金时期。今天突发灵感,一举攻克从2月初发现的更新速率不快的问题。称得上是这个产品开发历程中的一个重大进展。
其实说起来也非常简单,主要的原因还是怪自己读data sheet不够认真。原来发现的问题是因为使用了芯片内部的自适应程序。这个程序设计得非常保守,每个参数需要大约200毫秒左右才能读出来。这次人工手动关闭了自适应程序,手动设置延时。减少延时到大约50毫秒一次。每秒可以读出20次数据,大大提升了产品的可用性。而且这样的话就可以做rpm / 换档指示灯(使用大约20只LED,从蓝色开始,到绿色-->黄色-->红色)。这样产品就看上去非常fancy了。
现在确定要显示的参数是:冷却液温度,进气温度,氧气传感器电压,引擎负载,点火提前角度,进气流量,油门开度,fuel trim %(injector pulse modulation,这个我不知道中文是什么),转速(包括指示灯),电压。
其中,为什么我不提供空气燃料比例是因为原厂的度数非常缓慢,所以可以用以下的公式计算。对有经验的人来说,用直觉就可以了:
RPM x MAP / BARO x TPS x ECT x IAT x VLT x O2(ST x LT)
[ 本帖最后由 mianhuatang 于 2009-3-29 10:25 编辑 ] |
|