2.4G射频的CAN总线汽车故障诊断仪_第1页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、24g射频的can总线汽车故障诊断仪设计一款基于24g的车栽can故障诊断仪,具体介绍其工作原理及系统硬件,最后分离阐述接收端、放射端和pc端的软件模块。该计划采纳自动跳频的24g空中协议,经测试统计误码率保持在有效范围之内,在14m内仍能正常工作。采纳作为接收端和pc接口,保证了系统的即插即用及数据的高速传输。控制器局域网络can(controller area network)为汽车内部各种复杂的设备、控制器、测量仪器等提供了统一数据交换渠道,已得到广泛的应用。目前,太多数汽车部件都提供了通信接口。在当今的中高档汽车中,都采纳了can总线技术。针对车载can总线会浮现的故障结合射频和usb

2、的优点,依赖kwp2000应用层规定的故障代码,本文提出了一种基于车载can总线故障诊断仪设计计划。本计划成本低廉,携带便利,具有很强的灵便性与适应性。1 计划设计系统总体设计框图l所示。系统分为放射端和接收端两部分。因为采纳射频技术,使汽车can总线数据采集部分和can总线数据诊断部分得以分别,无需连线,不受空间场地限制,安装携带便利。根据iso有关标准,can总线传输速率最高可达1 mbps;但因为汽车内部特别环境,车载can总线速率普通在250 kbps。本系统中射频速率最高可达l mbps,可以很好地满足数据传输要求。放射端采纳usb作为接收模块和pc接口。usb与rs232或pci接

3、口相比,具实用户用法便利,设备自动识别,自动安装驱动程序和配置,支持动态接入和动态配置等优点;其传输速率可达几十mbps,并且支持同步和异步传输方式,保证带宽,传输失真小。pc端应用层软件整合kwp2000的应用层协议。kwp2000是由瑞典制定的一种车载故障诊断协议,已在微机控制的自动变速器、防抱死制动系统、平安气囊、巡航系统中得到广泛应用。它基于osi七层协议,符合is07498标准。其中第1"6层实现通信服务的功能,第7层实现诊断服务的功能。其应用层提出了一套完整和标准化的诊断代码,本系统利用kwp2000的应用层协议,对采集到的can总线数据举行分析,以实现故障诊断的功能。2

4、 硬件实现21 系统所用芯片简介2.1.1 nrf2401芯片nrf240l是单片射频收发芯片,工作在2425ghz ism频段;内置频率合成器、功率、晶体、调制器和标准spi等功能模块;输出功率和通信频道可通过软件举行配置,共有125个频道可用法,而且最高速率可达l mbps。芯片具有1936 v宽工作,工作能耗十分低。当以一5 dbm的功率放射时,工作惟独105 ma;接收时,工作电流惟独18 ma。nrf240l有4种工作模式:收发模式、配置模式、空闲模式、关机模式。其工作模式由pwr_up、ce、cs三个引脚和配置字节最低位tx_en来打算。收发模式分为directmode和shock

5、burst。前者在片内对信号不加任何处理,与其他射频相同。后者用法片内fifo堆栈,数据从低速送入,但高速放射,而且与射频协议相关的全部高速信号处理都在片内举行。例如,nrf240l在shockburst收发模式下自动处理字头和crc校验码,在接收时自动把包头和crc校验码移去;在发送数据时自动加上字头和crc校验码。2.1.2 tmu3100芯片tmu3100是台湾tenx公司2005年推出的risc内核的。它嵌入了彻低兼容usbl1协议的usb控制器,并且提供了低速usb接口和3个端点,其中1个控制输入输出端点和2个中断输入端点。tmu3100可以配置为标准的hid类,可以用法window

6、s操作系统自带的hid类驱动程序。这样可以省去开发设备驱动程序的工作,缩短开发周期。tmu3100芯片结构框罔2所示。2.1.3 l8f2682芯片picl8f2682是公司新推出的8位低功耗can微控制器,主要资源有:内置标准can模组、80kb闪存程序存储器、1 kb数据e2prom、33 kbram存储器、8通道、1个8位和3个16位t1mer、1个spi和i2c串行通信端口和可编程欠压复位功能及低电压检测电路。pic18f2682内置增加型的can总线模块,该模块包含can协议引擎、信息缓冲和信息控制。can协议引擎自动处理can总线上全部接收和发送的消息,它可以在接收或发送信息时对数

7、据帧举行解析。只需要首先设置适当的寄存器就可以发送信息,通过相关的寄存器即可得到信息传输的状态。22 硬件电路221 放射端电路原理图3是系统放射端电路原理。can总线接口用法microchip公司内置can模块的pic18f2682单片机,并由光耦6n137举行总线隔离;can总线收发器采纳mcp2551。pic18f2682与射频芯片nrf2401之间通过标准spi接口sck、sdi、sdo来完成,这样可以大大提高发送速率。对nrf2401配置控制使能cs和接收、发送使能ce分离由rb4和rb5举行控制。当nrf240l接收到数据包时,drl将被置高电平,因此picl8f2682通过查询i

8、nt0的状态可以推断是否接收到数据。2.2.2 接收端电路原理图4是系统接收端电路原理。因为tmu3100由pc供电,而pc机usb接口所提供的电压vdd干扰较大,故对vdd举行了滤波。因为tmu3100没有spi模块,故可以通过pb、pb0根据spi协议与nrf2401的spi口来举行通信。对nrf2401配置控制使能cs和接收、发送使能ce分离由kso和kso13控制。nrf2401接收到数据包后,drl将被置高电平,因此tmu3100可以通过查询ksl6的状态推断足否接收到数据。3 软件设计系统的软件设计包括放射端软件设计、接收端软件设计和pc端软件设计。3.1 放射端软件设计放射端流程

9、5所示。软件设计主要实现两项功能:第一是实现can总线上数据的采集;其次是实现将采集后的数据通过射频举行放射。上电后,首先对can模块举行初始化。然后初始化nrf2101,并与接收端建立衔接。当发送完can数据后没有收到ack信号时,就跳频;然后通知发送端预备接收重发的can数据,直到接收到ack信号。为了防止空中干扰,采纳了自动跳频的空中协议,即无论是否接收到ack信号都举行跳频,因此可以防止某个频段的强干扰,进而降低误码率。3.2 接收端软件设计接收端软件流程6所示。软件设计主要实现两项功能:第一是实现枚举;其次是实现将接收到的数据通过usb上传到pc。上电后,首先完成对tmu3100的配

10、置,并与pc机枚举;枚举胜利后就对nrf2401举行配置,并与放射端建立衔接。当接收到数据包后,首先推断是can数据还是重传数据指令。假如是can数据包,则向放射端返回ack信号并跳频,然后将接收到的数据通过usb传至pc;假如是重传指令,则先跳频,然后置重传标记,表示下个数据包是重传的数据包。tmu3100被配置为标准hid类,这样就不用为设备开发驱动程序,而是用法windows提供的标准hid类驱动程序。3.3 pc端软件设计pc端软件由应用程序和设备驱动程序组成。windows为标准usb没备提供了完美的内置驱动,本系统采纳windows自带的hid类驱动,只要将tmu3100配置为hi

11、d类,即可完成与pc机的通信。这省去了开发设备的驱动程序,极大地简化了上位机软件的开发。上位机的应用程序首要实现的功能是,要实现对tmu3100端点的读写,用vc+语言编写,可以把usb设备当成文件来操作。用createfiile()函数获得usb句柄,为读拜访或写拜访打开指定端点。用devicecontrol()来举行控制操作,用readfile()从指定端点读取数据,用writefile()向端点写入数据。当can总线上的数据被采集到pc后,就可以举行故障诊断了。故障诊断代码是依照kwp2000应用层规定的故障代码设计的,是目前国际上通用的,现将其应用于can的应用层,未来可以用全新的can上层协议取代。故障诊断代码定义在ssf14230中。sae j1979中,由车辆创造商或系统供给者定义的服务标记符数值的不同范围,如表1所列。此表中以十六进制数表示的服务标记符,同数据链路层中数据字节内的sid服务识别字节对应。不同的sid值代表不同的服务哀求,故障诊断程序必需符合此应用层标准,才干识别不同的十六进制代码所代表的不同的故障信息。4 结论本文设计的24g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论