基于CAN总线的汽车检测系统的设计论文
摘要:
为解决当前汽车检测系统功能较单一,偏重局部检测等不足,设计基于CAN总线的汽车检测系统。系统由数据采集器、CAN网关、控制终端和PC机组成。数据采集器可设置多达256个检测点,可同时检测汽车的发动机的有关信息,尾气排放浓度、油缸压力、轮胎气压等汽车数据。可更加全面的检测汽车的性能,为维护保养和故障诊断提供可靠的信息。
1引言
随着我国汽车保有量的增加,汽车的维护保养和故障诊断也面临严峻的挑战。现行的检测系统偏向于局部检测,功能比较单一,检测成本较高,检测时间较长。为了克服现行检测系统的不足,利用CAN总线,将汽车上的每个数据检测点设计成一个CAN节点,并结合软PLC的设计思想,设计出功能更加全面的汽车检测系统。
2系统的硬件设计
检测系统的硬件主要包括传感器探头节点,导线,链接器,控制及编程终端等。系统结构如图1所示,传感器探头节点就是系统的感官部件,通过它检测汽车的水温、油温、压力、速度、尾气浓度等汽车数据。其上的CAN总线控制器将这些数据通过CAN网络传送给控制终端。导线和链接器,构成了一个完整的CAN网络。控制终端为每个探头节点分配一个节点号,编程时通过节点号就可得到各节点参数。终端上的控制接口分为数字电压信号接口,开关信号接口两种控制接口,方便控制电磁阀、继电器等控制元件,拓宽了系统的控制方法。
2.1传感器探头节点
探头节点负责汽车有关数据的收集并将这些数据通过CAN总线发送到网络上。它的主要部件是STC89LE516AD单片机、传感器、CAN控制器SJA1000和LCD显示器。单片机通过AD采集探头上各传感器数据,将数据打包发送到CAN网络上,在CAN网络中,每个节点对应着唯一的节点号。单片机在打包数据的时候将节点号标志在数据包中。
其功能结构如图2所示。
传感器前端电路
10bit A/DSTC89LE516ADLCD显示及键盘电路串行通信CANNET数据电压信号SJA1000控制器图2探头节点结构简图2.2 CAN网络架构CAN全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。控制系统的CAN网络是由SJA1000 CAN控制器组建,SJA1000在完全兼容PCA82C200的基础上,增加了一种新的工作模式PeliCAN,速率能达到1Mbit/s。
网络的物理层连接图如图3所示。
CAN控制器
光电隔离CAN收发器CAN控制器光电隔离CAN收发器CAN控制器光电隔离CAN收发器图3网络物理层连接图2.3控制及编程终端系统的控制及编程终端由控制终端,PC机和系统编程软件组成。控制终端有CAN网络终端,各种控制接口和与PC机的编程调试接口。控制终端的主控芯片为PHILIPS的LPC2142单片机,电路结构如图4所示。外围连接8通道10位D/A,转换器提供8路数字电压控制端口。另外通过可控硅提供16路开关电路接口。数字电压控制需要根据控制设备设计相应的控制电路才能达到控制设备的目的。
16路可控硅开关电路
LPC2142PC机SJA1000控制器8路D/A转换数字器数字CANNET数字JTAG编程接口串行通讯图4控制终端电路结构
3系统的软件设计
3.1传感器探头节点软件设计
传感器探头节点软件设计主要是设计基于STC89LE516AD单片机的嵌入式程序,程序框图如图5所示。单片机开机初始化后判断是否需要进入设定程序,设定程序可以设定节点在网络中的节点号、检测参数的种类等。设定完成后进入循环检测阶段,单片机通过AD不断采集传感器信号,换算成相应的温度,压力、尾气浓度等参数,实时显示在LCD显示器上,并定时通过CAN网络发送到控制终端上。
3.2控制终端软件设计
根据软PLC的设计思想,控制终端的程序是由PC机上的编译软件编译出来的,再通过JTAG下载到LPC2142中,主要负责CAN网络数据包的接收、汽车数据的取得、控制参数的运算、控制行为的发出。因此其软件设计采用模块化的设计思想,将程序分为初始化模块、通讯模块、运算模块、执行模块。各个模块都有各自的程序接口和共享的数据区,实现程序的独立和融合。
初始化模块负责控制器当前程序用到的各资源的初始化,分配各控制参数的缓存和映射,为程序的运行做准备。通讯模块负责CAN网络的数据接收和控制终端与PC机之间的通讯,实现数据存储并为上位机监控提供通讯。运算模块是控制程序的`关键,它负责参数的运算和控制信号的产生并存储到数据区,是系统控制的核心。执行模块是将数据区的执行参数实时映射到相应的I/O口和设备上,实现控制设备的目的。
3.3系统编程及监控软件
系统的编程参考PLC编程软件风格,和PLC编程方法一样采用梯形图语言编程。监控软件通过串行通讯实时接收到控制终端发送的状态数据,并通过软件直观的显示出系统的运行状态。编程和监控软件都采用Visual C++编程,实现梯形图向C语言的转换,在利用KEIL C for ARM工具,将C语言编译成目标代码,下载到控制终端。
4结论
基于CAN总线的汽车检测系统解决了传统检测系统功能单一等不足,综合检测汽车各种参数,较全面的检测汽车性能和隐患。同时采用软PLC技术,使控制程序的编写更加容易,具有稳定可靠,实施快捷,易于扩展的优点,具有较大的潜力。
参考文献
1吴中俊,黄永红.可编程序控制器原理及应用[M].机械工业出版社,2005.(4).
2饶运涛,诌继军,郑勇芸.现场总线CAN原理与应用技术[M].北京航空航天大学出版社,2003.
3邬宽明 2.0B新控制器─SJA1000(J).工业控制计算机,2008,(1):58~59.
4 LPC2141/42 User Manual(preliminary release)[EB]Philips Semiconductors,2004.
5李道霖.电气控制与PLC原理及应用[M].电气工业出版社,2004.(3).
-
汽车修理工岗位职责【范例8篇】
在快速变化和不断变革的今天,人们运用到岗位职责的场合不断增多,岗位职责是一个具象化的工作描述,可将其归类于不同职位类型范畴。那么相关的岗位职责到底是怎么制定的呢?下面是小编收集整理的汽车修理工岗位职责,欢迎阅读与收藏。汽车修理工岗位职责11、服从中方管...
-
汽车维修开业申请书
在人们物质精神需求不断增长的今天,申请书出现的次数越来越多,申请书是我们提出请求时使用的一种文书。那么大家知道正规的申请书怎么写吗?以下是小编精心整理的汽车维修开业申请书,希望对大家有所帮助。汽车维修开业申请书1青河县运管局:根据相关规定,按照汽车(二类...
-
汽车销售经理工作职责[优选]
汽车销售经理工作职责[优选]11、销售规划工作依据公司年度经营计划,配合公司总目标,制定本部门年度销售目标及销售计划。制定季度、月度汽车销售计划并负责实施。负责向主机厂申报公司年度、季度、月度汽车销售计划并进行经常性业务联系。负责完成公司下达的相关...
-
【精品】汽车发动机实验心得体会
某些事情让我们心里有了一些心得后,就十分有必须要写一篇心得体会,它可以帮助我们了解自己的这段时间的学习、工作生活状态。那么要如何写呢?下面是小编为大家整理的汽车发动机实验心得体会,仅供参考,希望能够帮助到大家。汽车发动机实验心得体会1在东风商用车公司...