摘要
目前,CAN总线以其高稳定信,抗干扰能力强,通讯速度快而在汽车上得到广泛应用,在国外传统的仪表早已被基于CAN总线的信息系统所代替。在商用车上,CAN总线的高层协议J1939更是已经几乎成为国际上通用的标准。
本文首先对近年来车身控制网络和总线的发展进行了介绍和分析,在此基础上,通过分层实现的方式分别编写了J1939通讯协议的数据链路层、应用层、诊断层、以及网络管理层的实现程序代码,其中数据链路层的实现是整个协议实现的基础,也是本次开发工作的难点。
本次设计硬件使用的微控制器是LPC2294,并借助于LCD、步进电机等外部器件以及A/D模块、I/O、CAN控制器等片上外设来实现商用车信息控制单元与驾驶员的交互。整个商用车信息控制单元设计工作主要包括硬件设计以及各部分软件的编写。本文试图通过一种模块化和层次化的设计思想来设计商用车整车信息控制单元和完成J1939协议的开发,并增强代码的可移植性,使控制单元应用程序符合汽车开放系统架构AUTOSAR。由于国内对此的研究还比较少,本文只是作了一种有益的架构上的尝试。
在研究了嵌入式实时操作系统μC/OS-Ⅱ的实时软件特点的基础上,将其移植到LPC2294上,修改μC/OS-Ⅱ内核的部分功能使之符合OSEK/VDX规范,并完成了所有对应于AUTOSAR架构的器抽象层和硬件抽象层开发,所有应用程序的实现均使用RTE的服务。测试证明,本文开发的J1939协议和控制单元可行,能够实现各种预期功能。
At present, CAN bus is very widely used because of its very high level of stability and a good capability of anti-jamming and a fast communication speed. With rapid-developing of fieldbus techology, the traditional vehicle instrument has been replaced by the information system based on CAN bus abroad. The high layer protocol J1939 even become the communication internationnal standard.
Firstly, this thesis gives an introduction to the development of control networks on vehicle body and buses in recent years. Base on mentioned above, and by the means of dividing the software into layers, I write the procedure of J1939 protocal respectively consist of datalink layer, application layer, diagnostic layer and network management layer.
The datalink layer is the base of the whole software and it is also the difficulty of the task. The MCU of the system is a 32-bit micro-controller LPC2294, and by the help of working outside chip component like LCD, walking motor and onchip modules like A/D, I/O, CAN controller, it is able to communicate with driver. The thesis attempts to comlete both of the design of the task and actualizing of J1939 protocol through using a blocking and delaminating idea so that the code must be transplantable and try to make all the procedure compare to the AUTOSAR architecture. Because the domestic research on AUTOSAR is few, so the thesis just makes a beneficial sampling on frame.
Base on research of the operation characteristic of the embedded real-time OSμC/OSⅡ, transplantμC/OSⅡto LPC2294, then improve and expand some functions ofμC/OSⅡkernel according to the definition of OSEK OS. I have completed developing the microcontroller layer and ECU abstraction layer of all the modules and have written every application procedure using the RTE services. The test proves that the J1939 protocol which has been developed and the control unit is feasible and can satisfy the anticipative function.
引文
[1]吕京建等.汽车计算平台综述. APPLICATION OF ELECTRONIC TECHNIQUE, 2007,4
[2]汽车总线设计及测试宝典——汽车电子工程师必备. http://www.EETchina.com, 2007
[3]李永强,宋希庚,薛冬新. CAN局域网及J1939协议在货车和客车上的运用.汽车工程,2003(4)
[4]许德章.现代汽车仪表技术与发展趋势.汽车电器,2002,5
[5]李栋梁.基于CAN总线的全数字式汽车仪表的应用研究,合肥工业大学,2005,3
[6]蒋胜雄,黄河.基于H8/3802的步进电机式汽车仪表的开发.微计算机应用,2006(1)
[7] N. Abid Ali Khan. Next Generation Automotive Embedded Computing Requirements and Reference Platform Selection Issues. TIFAC-CORE, SASTRA University, India, 2007
[8]任重,汽车网络综合研究及基于CAN总线的组合仪表实现.浙江大学硕士论文,2003,3
[9]下一代的车载网络-Flexray.富士通微电子(上海)有限公司. 2006
[10] Automotive Controller Area Network(CAN)Applications REV 3. Freescale, 2005,6
[11] Paul Hansen, X-by-Wire Communications Protocol: Possible FLexRay and TTP Merger, The Hansen Report on Automotive Electronics, Rye NH USA, 2001,5
[12] http://www.flexray.com
[13] ISO/DIS 15765: Road Vehicle-Diagnostics on Controller Area Networks (CAN), 2000
[14] CAN Specification Version 2.0, Parts A and B, Philips Semiconductors, 1992
[15] Dietmayer, K.;Overberg, K, W.:CAN Bit Timing Requirements, SAE Paper 970295, 1997
[16] SAE J1939/21,SAE J1939 Protocol Part 2: Data Link Layer.
[17] SAE J1939/31,SAE J1939 Protocol Part 3: Network Layer.
[18] SAE J 1939/71,SAE J1939 Protocol Part 7-1:Application Layer.
[19] SAE J1939/73, SAE J1939 Protocol Part 7-3: Diagnostics over CAN std.
[20] SAE J1939/81, SAE J1939 Protocol Part 8: Network Management.
[21] SAE J1939/01,SAE J 1939 Protocol Part 0: Truck and Bus Specific.
[22] SAE J1939/11,SAE J1939 Protocol Part 1-1:Physical Layer——Twisted Shielded
[23] SAE J1939/12, SAE J1939 Protocol Part I-2: Physical Layer——Twisted Quad.
[24] SAE J1939: Recommended Practice for a Serial Control and Communications Vehicle Network, 2000
[25]张恩勤.汽车电子软件的趋势-AUTOSAR如何改变您使用飞思卡尔控制器的方式, 2007,11
[26]杨国青.基于模型驱动的汽车电子软件开发方法研究.浙江大学博士论文, 2006,10
[27] ARM home page. http://www.arm.com
[28] LPC2119/2129/2194/2292/2294 USER MANUAL. Philips Semiconductors, 2004,5
[29] AT24C02资料手册
[30]步进电机驱动芯片VID66-06用户手册
[31] VID29系列步进电机产品说明书
[32]图形点阵液晶显示模块使用手册YM12864I V2.3.深圳锦华电子有限公司
[33] KS0108B 64CH SEGMENT DRIVER FOR DOTMATRIX LCD. SASUME electronics
[34] AUTOSAR Adlninistration. Specification of I/O Hardware Abstraction VI.0.l AUTOSAR GbR. 2006
[35] Christipher A. Multiplex Bus Progression 2003. Lupini. Delphi OBD White paper, 2003,1
[36]刘剑,沙徽,姜凡.CAN总线及SAE J1939通讯协议在汽车上的应用.机电工程技术,2006(10)
[37]邬宽明.现场总线技术应用选编.北京:北京航空航天大学出版社,2003.1
[38]杜春雷. ARM体系结构与编程.北京:清华大学出版社,2003,2
[39]李群芳,肖看.单片机原理、接口及应用——嵌入式系统技术基础.清华大学出版社,2005,3
[40]周立功. ARM微控制器基础与实战.北京航空航天大学出版社,2003,11
[41] Marvin L. Stone, Dynamic address configuration in SAE J1939, SAE 972759
[42] AUTOSAR Specification of PDU Router V2.0.1
[43] AUTOSAR Requirement on Gateway V2.0.1
[44]叶宇.基于嵌入式系统的高压共轨系统轨压控制研究.华中科技大学硕士论文. 2007,6
[45] OSEK/VDX Operating System Specification.
[46] Pontus Evertsson. Investigation of Real-Time Operating Systems: OSEK/VDX and Rubus. 2004.12
[47] Jean J.Labrosse.邵贝贝等译.嵌入式实时操作系统μC/OS-Ⅱ[M].北京航空航天大学出版社,2003
[48]任哲.嵌入式实时操作系统??C/OS-II原理及应用.北京航空航天大学出版社, 2005
[49]晨风.嵌入式实时多任务软件开发基础.清华大学出版社, 2004
[50] ADS1.2 Compliers and Libraries Guide. ARM Limited.
[51] ADS1.2 DeveloperGuide. ARM Limited.
[52] ADS1.2 LinkerGuide. ARM Limited.