基于OSEKTurbo强电保护系统软件开发冯春.doc

上传人:罗晋 文档编号:6178551 上传时间:2020-09-18 格式:DOC 页数:11 大小:227.50KB
返回 下载 相关 举报
基于OSEKTurbo强电保护系统软件开发冯春.doc_第1页
第1页 / 共11页
基于OSEKTurbo强电保护系统软件开发冯春.doc_第2页
第2页 / 共11页
基于OSEKTurbo强电保护系统软件开发冯春.doc_第3页
第3页 / 共11页
基于OSEKTurbo强电保护系统软件开发冯春.doc_第4页
第4页 / 共11页
基于OSEKTurbo强电保护系统软件开发冯春.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《基于OSEKTurbo强电保护系统软件开发冯春.doc》由会员分享,可在线阅读,更多相关《基于OSEKTurbo强电保护系统软件开发冯春.doc(11页珍藏版)》请在三一文库上搜索。

1、基于OSEKTurbo的强电保护系统软件开发作者姓名:冯春 东风电动车辆股份有限公司研发部 【摘要】强电保护系统负责混合动力汽车电器安全方面的检测与管理,任务多,功能较多,程序复杂,各种功能的实时性要求高。为了满足设计要求,我们在Codewarrior软件开发平台上嵌入了OsekTurbo实时操作系统,对强电保护系统进行开发,目前已应用到混合动力轿车及客车上。【关键词】强电保护系统 OSEKTurbo 操作系统 混合动力汽车 Development software of heavy current protection system based on OSEKturbo FENG ChunD

2、ong feng Electric Vehicle Co.,LTDAbstract: Heavy current protection system take charge of hybrid vehicle safety test and management .It has many task and has high real-time requirement . In order to meet the necessary of design, we embed OsekTurbo real time operation system in software develop tool

3、Codewarrior . It has been used in hybrid car and hybrid bus. Key words: heavy current protect ion system , OSEK Turbo , real time operation system , hybrid vehicle1 前言迅速发展的电动汽车,无论是纯电动汽车、混合动力电动汽车车及燃料电动车,其共同的特点是,电气系统的高电压和大电流。与传统汽车的电气系统相比,有了明显的变化:电压等级高、用电功率增大、电缆长度增加、电气附件增多,系统复杂性明显增强。对电动汽车电气系统的可靠、安全控制和保

4、护是重要的新课题。强电保护系统的研制可以对电动汽车电气系统实现安全控制与保护。目前,电动汽车强电保护系统有多种分类,国内已将电动汽车的电气系统的控制与保护联合起来研究,可以提高保护的可靠性,但采取的是硬件电路的实现,缺乏控制的灵活性和通用性,无法实现故障的诊断、记忆,工作状态和故障信息的上传(通信)。我们研制的通用型强电保护系统,只需更换电源模块和驱动继电器,可以适用于不同类型的电动汽车,具有高压电路通、断控制,电容器充电控制,车辆上电的逻辑控制 ,车用电器控制(水泵、发动机水箱风扇、空调、转向泵、电池组电扇电源等),漏电检测与保护,CAN通讯功能,故障诊断、统计和上报功能。由于该系统是一个多

5、任务,实时性要求较高的系统,因而采用实时操作系统也就非常必要。下面就具体介绍OSEK/VDX协议,OSEKTurbo架构及规范,OSEKTurbo与软件开发工具Codewarrior集成配置方式,强电系统软件开发。2 OSEK/VDX协议为解决汽车电子控制系统的扩展性、移植性差的问题,1993年德国汽车工业界联合推出了汽车电子的开放式系统及接口OSEK(Open Systems and the Corresponding Interfaces For Automotive Electronics)规范,旨在为汽车上的分布控制单元提供一个开放结构的工业标准。1994年法国汽车工业界的相似规范VD

6、X(Vehicle Distributed Executive)和OSEK规范合并,从而形成OSEK/VDX规范体系。OSEK规范从实时操作系统(Real-Time Operating System, RTOS)、软件接口、通讯和网络管理等方面对汽车电子控制软件开发平台作了较为全面的定义与规定。尽管该规范还处在不断完善中,但它所提出的一整套解决方案则是未来汽车电子软件开发的发展方向。目前OSEK规范正在申请ISO国际标准,国际上也有一部分公司推出了符合OSEK规范的操作系统并得到了OSEK委员会的认证1。3 OSEKturbo简介Metrowerks公司的OSEKturbo满足最新的OSEK/

7、VDX开放系统的标准,它支持8、16、32位微处理器,它的设计主要是为了满足性能的需求,同时在稳定性和软件质量(按CMM五级标准研制)方面在业界享有极高的声誉,是目前市场上实现OSEK 标准使用最为广泛的实时操作系统之一。基于OSEK/VDX协议的汽车控制系统平台由以下几部分构成,即:通信模块COM(Communication),网络管理模块NM(Network Management),实时操作系统RTOS(RealTime Operating System),通用实现语言OIL(OSEK/VDX Implementation Language)。要求运行在该平台上的应用软件具有可移植性、可扩

8、展性和可重用性。为此 OSEK/VDX提出了基于标准化接口和协议的模块化软件设计规范。其中OS 为操作系统的特性提供了一组公用的API函数,操作系统的配置也可以通过OSEK OIL语言实现。COM为通信网络中的数据交换提供了标准的接口和协议。NM为监视网络的流量,提供了一组标准的功能函数,以保证网络的安全性和可靠性。OIL为操作系统和通信的实现提供系统的配置和对象描述。ORTI (OSEK Run Time Interface)提供对调试接口的定义,OSEKtime OS(OSEKtime Operating System)为分布式应用定义了一个触发操作系统的时间。图1给出了OSEK/VDX的

9、层次模型2。应 用 程 序OSEK/VDX网络管理数据链路层总线通讯硬件交互层网络层OSEK COMOSEK 操作系统图1 OSEK OS的OSEK/VDX层次模型OSEK/VDX具体包含的服务有任务管理(Task Management),调度(Scheduler)、ISR管理(ISR Management)、资源管理(Resource Management)、计数器(Counter)、警告(Alarms)、事件(Events)、通信(Communication)、错误处理(Error Handing)、钩子例程(Hook Routings)。具体见图22。图2 OSEK/VDX所包含的服务图

10、3给出了基于OSEK应用的一般开发流程。OSEK 编译器器应用程序构造文件(OIL)可执行文件系统生成器系统文件编译器链接器OSEK OS源代码用户源代码“C”代码“C”代码“C”代码库库图3 基于OSEK应用的一般开发流程4 OSEK技术规范实时操作系统OSEK规范提供了一系列服务和处理机制。操作系统作为并发应用程序的受控实时执行基础,并且提供应用程序在处理器上的开发环境。OSEK/VDX操作系统的结构区分了三种处理级:中断级,操作系统行为逻辑级和任务级。其中中断级级别高于任务级,除了处理级别管理之外,操作系统还提供了任务管理、调度、事件管理(如用于任务间通讯的邮箱、消息队列等)、内存资源管

11、理、报警和出错处理等诸多功能。OSEK规范定义了两种不同的任务类型,即基础任务(basic task)和扩展任务(extended task)。基础任务不能有等待的状态,它适合于那种一运行就全部执行的任务。基础任务需要的资源少并且能够加速执行。扩展任务通常是一次激活并且能响应不同的事件。所有的任务有一个固定的优先级,而且这个优先级在运行状态下是不能改变的。每个任务的抢占权都是单独设定的。描述保护性访问共同资源的优先级最高协议(PCP)导致了稳定的实时行为。信号量的使用将使死锁或者优先级翻转这样的严重后果不会发生。事实上,仅仅用基础任务构造应用程序就可以避免在每一次设计死锁的发生。汽车应用程序的

12、任务行为主要被临时的请求或者同步事件触发。因为效率的原因,OSEK警告服务直接映射计数器,而不需要引入计数器API。计数器通常都是和硬件时钟连在一起,硬件时钟可以减少运行时间超前。可以通过中断处理同步事件。定义了不同级别的中断来协调中断运行及操作系统资源分配的问题。级别1情况下硬件中断,不被操作系统调用;级别2情况下能被操作系统调用,但要求附加计算的时间。5 OsekTurbo的安装与配置需要安装的开发工具:CodeWarrior Development Studio For Motorola HC(S)12 Microcontrollers v3.1OSEKturbo OS/HC12 v2.

13、2.2 build 2.2.1.59OSEK Builder v2.3安装步骤:使用默认路径安装 CodeWarrior Development Studio For Motorola HC(S)12 Microcontrollers v3.1.在CodeWarrior 的安装路径下添加一个新的目录osek,如. C:Program FilesMetrowerksCodeWarriorosek安装 OSEK turbo OS/HC12 v2.2.2 build 2.2.1.59. 在安装界面出现“Choose Destination Location” ,你需要定义下面的路径Shared Co

14、mponents:CodeWarrior的安装路径osek例如. C:Program FilesMetrowerksCodeWarriorosekTarget directory: CodeWarrior的安装路径osekost12e.g. C:Program FilesMetrowerksCodeWarriorosekost12在c盘新建文件夹flexm,把Licence文件放入,注意该文件是CodeWarrior与OsekTurbo的复合Licence文件,原来CodeWarrior的Licence文件需删除,否则容易出现程序紊乱。完成安装。完成安装后的CodeWarrior界面中,我们可

15、以看到OsekTurbo的相关文件已嵌入。如图4所示图4 OsekTurbo实时操作系统嵌入CodeWarrior 的软件开发界面6 强电保护系统软件开发6.1需求分析使用强电保护系统负责混合动力汽车电器安全方面的检测与管理,需要接收来自电机控制器、电池管理系统等混合动力汽车上各系统传来的CAN报文,从中提取出故障信息,据此对整车上电过程、故障处理过程进行管理,同时将故障相关信息记录到EEPROM,便于事后进行故障分析与诊断。RS232实时通讯,将EEPROM的信息传递到上位机,开发相应的上位机程序,输出为EXCEL格式,进行相关信息分析处理。根据上述功能需求分析,我们可以划出强电保护系统功能

16、模块图。OSEKTurbo操作系统AD采样CAN通讯模块故障处理模块上电流程及电器管理SCI通讯系统初始化 图5 强电保护系统功能模块图6.2 osdef.oil文件设计需求分析结束后,根据强电保护系统功能模块图可以设计出实时操作系统配置所需的任务、中断、报警、周期等参数,既完成osdef.oil文件的设计,具体步骤如下:双击图4 CodeWarrior界面中Source文件夹下的osdef.oil,进入OSEK Builder界面。在这里可以对系统中使用的任务(Task)、中断(ISR)、资源(Resource)、事件(Event)、计数器(COUNTER)、报警(ALARM)、操作系统(o

17、s)等进行设置,完成设置后点击G按钮进行编译即可。整个过程无需编程,把程序员从繁琐的操作系统底层编程工作中解放出来,也是osekTurbo比uCOS-II等其他实时操作系统使用方便快捷的原因。保存生成的osdef.Oil文件,如图6所示。 图6 OSEK Builder主界面 6.3 osdef.oil文件的设计完成后,回到CodeWarrior开发界面,完成驱动及控制程序开发。6.4 上位机程序开发,接收RS232发来的串口信息。我采用Delphi7.0软件开发了RS232串口数据接收、记录程序。Delphi是Borland公司推出的面向对象的可视化编程工具,它拥有功能强大的开发环境(IDE

18、)和速度极快的编译器。该程序的界面如图7所示。点击“开始接收”按钮,可以采集下位机EEPROM中存储的故障信息。图7 上位机程序界面6.5 上位机程序开发,接收RS232发来的串口信息,进行分析处理后输出Excel报表。我在Delphi7.0开发的软件中还可以记录数据并将数据解码成易于识别的excel格式。点击图7“保存”按钮,可以将采集的下位机故障信息解码并保存为excel格式的文件,见图8输出报表界面。图8输出excel报表7 结论强电保护系统已应用到我公司开发的混合动力客车、混合动力轿车、混合动力MPV,性能可靠,软件维护、移植方便,说明基于OSEKTurbo的强电保护系统软件开发是成功的,该技术可应用到其他汽车电控系统中。参 考 文 献1 刘波澜 孙业保 OSEK/VDX汽车电子系统的开放式平台 车辆与动力技术 2002(2)p61-642 OSEK/VDX specifications

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1