基于SPC5606B的BOOTLOADER设计及实现

所需积分/C币:49 2018-04-10 23:02:47 2.35MB PDF
收藏 收藏 2
举报

随着汽车电子技术飞速发展,特别是电动汽车和无人驾驶汽车中的ECU数量成本增加。单片机更新程序一般使用烧录器直接烧录来完成程序的更新下载,这种方法特别麻烦,基于CAN总线的APP下载技术成为ECU必不可少的功能。本论文描述了基于NXP Qorivva SPC5606B的BOOTLOADER实现方法及在电池管理系统中的应用。硬件部分主要考虑实现BOOTLOADER必不可少的最小系统,即电源、时钟、通讯等模块,从电磁兼容等方面考虑硬件设计,提高系统稳定性。软件部分主要考虑数据处理的方式,保证可靠的下载APP,并在APP代码出现异常时,能正确处理,确保系统不出现不可预料的事故。包含诊断模块设计、CF
基于SPC506B的B00 TLOADER设计及应用 摘要 随着汽车电子技术飞速发展,特别是电动汽车和无人驾驶汽车中的ECU数量成本增加。 单片杋更新程序一般使用烧录器直接烧录来完成程序的更新下载,这种方法特别麻烦,基于 CAN总线的APP下载技术成为ECU必不可少的功能。本论文描述了基于 NXP Qori vva SPC5606B的BO0 TLOADER实现方法及在电池管理系统中的应用。硬件部分主要考虑实现 BO0 TLOADER必不可少的最小系统,即电源、时钟、通讯等模块,从电磁兼容等方面考虑硬件 设计,提高系统稳定性。软件部分主要考虑数据处理的方式,保证可靠的下载APP,并在APP 代码出现异常吋,能正桷处理,确保系统不岀现不可预料的事故。包含诊断模块设计、 CFLASH 划分与驱动技术、卜载工具、目标文件的生成、基」SAEJ1939多字节传输协议实现、系统 调试,以及此 BOOTLOADER在电动汽车中电池管理系统中的只体应用。 关键词: CFLASH, BOOTLOADER,电池管理系统,电磁兼容 THE DESIGN AND APPLICATION OF THE BOOTLOADER BASE ON SPC5606B ABSTRACT With the rapid development of automotive electronics technology, the cost of eCu in electric vehicles and unmanned vehicles is increasing, especially in electric vehicles and unmanned vehicles MCU update program usually uses burner to burn directly to complete program update and download. This mcthod is particularly troublesome. APP download tcchnology bascd on Can bus has bccomc an essential function of ECU. This papcr dcscribcs thc bootloadEr implementation method based on NXP Qorivva SPC5606B and its application in the battery management system The hardware part mainly considers the essential system of BOOTLOADER, that is, power supply clock and communication module. It considers the hardware design from electromagnetic compatibility and improves the stability of the system. The software part mainly considers the way of data processing, ensures reliable downloading ofAPP, and can handle correctly when APP code is abnormal, to ensure that the system does not appear unforeseen accidents. It includes diagnostic module design, CFLASH partition and drive technology, OWNLOAD tool, target file generation, SAEJ1939 based multi-byte transmission protocol implementation, system debugging, and bOOTLOADER application in battery management system of electric vehicle Key words: CFLASH, BOOTLOADER, BMS, EMC 目录 第一章绪论 1.2课题研究工作内容阐述. 第二章系统原理分析与方案设计 1111 2.1BMS平台结构分析 2.1.1 BMS CAN组网架构 2.1.2CAN节点设计 2.2B00TL0ADER实现方案 2.3.1B00TL0ADER必要性 2.3.2B00 LOADer实现原理 2224 第三章系统硬件设计与实现. 3.1SPC5606B简介… 3.2SPC560 XB CFLASH结构 3.3主控器外围电路设计 34电源变换电路设计… 35GAN电路设计 36本章小结 第四章系统软件设计与实现 12 4.1软件开发环境 12 4.2SPc5606B工程创建 ..13 4.3CAN传输协议 .117 4.3.1协议数据单元 17 4.3.2接口函数 4.4更新 CFLASH策略 4.4.1操作流程 19 4.4.2接口函数 20 4.5B00TL0ADER执行流程 20 4.6本章小结 第五章系统调试 22 电路调试 22 1.1调试工具 22 5.1.2电源模块测试 22 5.1.3CAN模块测试 5.2系统联调. 24 5.3本章小结 26 第六章结论 参考文献 .28 致谢 29 上海交通大学本科毕业论文 基于SPC5606B的 BOOTLOADER设计及实现 第一章绪论 随着新材料电池的发展,新型电氾在不同领域的应用日益剧增,如新能源汽车、风力发 电系统、能量回收系统等。因为这些系统中的电池系统都非常庞大,而且电化学反应的难以 控制和材料在这个过程中性能变化的难以捉摸,所以才需要这么一个管家,时刻监督调整限 制电池组的行为,以保障使用安全,因此电池管理系统( battery management system,abbr BMS)就诞生了。 BNS为多个模块组成的分布式控制系统,大型的电池系统中BMS的模块数量较多,如安 凯大巴车内大」15个模块。系统研发初期调试阶段,BS中模块程序叮能需要多次更新, 若吏新程序需要拆卸较多部件或者増加较多线束来完成,那么会给工作人员带来较多的麻 烦,也不利于快速开发和节约成本。在实际运行的过程中,若因为代码出现异常,就会出现 安仝事故。从系统安仝性和成本等方面考虑,一种新型的程序烧录及管理方式需要产生。 1.2课题研究工作内容阐述 从国内多家BMS使用情况看,现有的BS烧录程序功能基本满足要求。本硏究针对某大 型车辆现在使用的BMS进行系统分析,完善硬件电路设计,根据对动力电池系统的新要求 开发满足要求的BMS 针对项目开发,项目组做了充分的调研,对BMS使用的 BOOTLOADER的关键技术进行了 研讨 能通过现有接口(CAN)能对所有的模块进行更新程序; 冫更新程序时,无需对系统进行断电等辅助操作 更新失败后,操作上位机软件即可从新更新程序,绝不能变成“砖头” 程序进入AP前,必须判断代码的有效性,若有异常,要有报警等操作; 多个模块能进行单独更新 所选设备类型必须和程序类型一致,否则无法更新。 第1共28 上海交通大学本科毕业论文 基于SPC5606B的 BOOTLOADER设计及实现 第二章系统原理分析与方案设计 2.1BMS平台结构分析 本 BOOTLOADER主要应用于BMS(不限于BMS),BMS由多个电控单元(FCU)组成的分 布式控制系统,主要包含如下单元 γBCMU:多层网络架构中BSⅦ上层控制单元,负责整个PACK的数据处理及管理,还负 责与外部设备(VCU)进行数据交换; BSMU:多层网络架构中LU上层控制单元,负责本 CLUSTER的数据处理及管理; LECU:单体电压采集、电池温度采集、均衡温度采集、单体电压均衡; HMU:继电器粘连监测、绝缘监测、测电压监测 RMU:数据的本地存储(SD)和远栏服务器通讯,其中服务器只备数据存储、数据分 析、BMS参数设置、BS在线更新程序等功能。 2.1.1 BMS CAN组网架构 本BWS内部由两级CAN组成,两级CAN物理层相对独立。最上层控制单元BCMU通过两 路外部CAN总线与VCU和DC-( harger通信。网络通信架构如图2.1所示。 CAN+2 VCU BOMU Charger RMU P CH p+ 主銖电器 丰銖电器 电压殓测 电压检测 d BSMU I BSMU2/电压检测 BSMU M LECUIN温 CU2N温度 ECU M N温度 中匚 LECU13温 LECU LECU_ M LECU12温 HLECU 22 a 申厂 LECU 电 LECU11[温安 LECU LECU M1温度 图2.1 BMS CAN组网架构图 第1共28 上海交通大学本科毕业论文 基于SPC5606B的 BOOTLOADER设计及实现 2.1.2CAN节点设计 由于系统CA节点数量较多,各节点的电源网络较为复杂,从电磁兼容等方面考虑CAN 节点架构如图2.2所示。 CAN H CAN MCU数字隔离 收发要共模滤波 SEnd CAN I 图2.2CAN节点架构图 2.2B00TL0ADER实现方案 2.3.1 BOOTLOADER必要性 系统软件开发过稈人致分为方案设计、单板功能调试、系统调试、实物压力测试、软件 升级等,在单板功能调试时可以使用调试器等工具一对一下载稈序,但是进入系统调试之后, 电路板均已装入电池箱内,而且数量较多。若还是用一对一的下载工具更新程序,工作量极 大,同时也增加了线束及插件等成本。因此通过现有CAN接口对接入此网络的EC进行程序 更新非常必要, can Bootloader应运而生。 2.3.2 BOOTLOADER实现原理 MCU(SPC5606B)内部存储主要由 CFLASH、 DFLASH、SRAM组成,其中 CFLASH用来存储 程序代码,若要实现程序史新, CFLASH必支持在应用编程(IAP)功能。 CFLASH由不同的 BLOCK组成,每个B0CK可支持独立编程和擦除功能,但是不支持 Single bank- Read-While Write(RWW),而且 CFLASH都分配在 BANKO中,所以必须将操作 CFLASH部分代码复制到SRAM 中再运行。实现过程如图2.3所示。 系统复位进入BL复制代码到□跳转到操作返回到 SRAM SRAM CFLASHCFLASH 图2.3操作 CFLASH实现过程图 第2共 上海交通大学本科毕业论文 基于SPC5606B的 BOOTLOADER设计及实现 2.3本章小结 课题结合项目背景和具伓应用环境对电池管理系统进行结构分析,采用集散式结构,借 鉴模块化设计的思想,将各功能的设计进行模块化划分为多个子系统。分析CAN应用环境, 明确了CAN节点设计方向。进一步分析了 BOOTLOADER实现的必要性及实现原理 第3共28 上海交通大学本科毕业论文 基于SPC5606B的 BOOTLOADER设计及实现 第三章系统硬件设计与实现 本课题采用集散式的结构和模块化的设计思想设计开发BMS,将系统的每部分电路分离 出来设计成单独的子系统。系统采用恩智消(NXP)公司SPC5606B单片为主控器。本论文只 描述最小核心板的设计,所要完成的硬件电路设计具体如下: 1)主控器外围电路 2)电源变化电路 3)CAN通讯电路 根据设计要求,硬件系统应满足下表的技术指标。 表3.1硬件性能指标表 性能指标要求 性能指标名称 最小值Min) 正常值(Type)最大值(Max) 工作电压范围(vDC 工作环境温度范围(C) 工作最大相对湿度 通讯 最大波特率MZ,符合标准IS011898-1:2003、SAEJ193911 2006 3.1SPC5606B简介 MPC5606B系列32位微控制器(MCU)包含了NXP用于汽车车身电子应用的最新集成器 件。这款先进的、经济高效的主机处理器内核充分利用了 Power Architecture的优势,例 如处理功能、片上存储、模拟玏能、时钟系统及处理复杂控制和诊断系统所需的一些其他特 性。此外,这些可护展功能由生态系统提供支持,它包括软件驱动、操作系统和配置代码, 以帮助您快速实施的您的设计。面向汽车和工业动力总成、发动机管理、电机控制、车身控 制、网关、底盘和安全、仪表板和显示屏管理应用。 MPC5606B的内部结构如图3.1所示,包括CAN、LIN及在车身网络中实施一系列不同功 能所需的其他外设 ≯『 lexCal模块同时支持IFO和邮箱数据存储,适合控制器区域网络(CAN)网关管理事 件驱动的总线流量和周期性总线沇量; LINFIeⅹ模块提供完全自动化的局域互联网络(LIN)消息管理,从而减少了CPL负载 第4共28

...展开详情
试读 35P 基于SPC5606B的BOOTLOADER设计及实现
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    一个资源只可评论一次,评论内容不能少于5个字
    lvjiaaaa 一篇毕业论文,正在学习中,感谢分享!
    2019-01-31
    回复
    感谢下载!
    img
    shuyu52103

    关注 私信 TA的资源

    上传资源赚积分,得勋章
    最新推荐
    基于SPC5606B的BOOTLOADER设计及实现 49积分/C币 立即下载
    1/35
    基于SPC5606B的BOOTLOADER设计及实现第1页
    基于SPC5606B的BOOTLOADER设计及实现第2页
    基于SPC5606B的BOOTLOADER设计及实现第3页
    基于SPC5606B的BOOTLOADER设计及实现第4页
    基于SPC5606B的BOOTLOADER设计及实现第5页
    基于SPC5606B的BOOTLOADER设计及实现第6页
    基于SPC5606B的BOOTLOADER设计及实现第7页
    基于SPC5606B的BOOTLOADER设计及实现第8页
    基于SPC5606B的BOOTLOADER设计及实现第9页
    基于SPC5606B的BOOTLOADER设计及实现第10页
    基于SPC5606B的BOOTLOADER设计及实现第11页

    试读已结束,剩余24页未读...

    49积分/C币 立即下载 >