一种电力机车微机控制柜控制软件升级更新方法

文档序号:6362940阅读:335来源:国知局

专利名称::一种电力机车微机控制柜控制软件升级更新方法
技术领域
:本发明涉及一种软件的升级更新方法,尤其是涉及一种适用于电力机车微机控制柜控制软件的升级更新方法。
背景技术
:电力机车微机控制柜从结构上一般大致分为主控板和信号处理功能硬件板,主控板与其余功能硬件板通过背板硬连线进行交互。电力机车微机控制柜是电力机车控制电路的重要组成部分,主要功能是通过控制电机的状态实现机车的牵引、制动控制、逻辑保护等。电力机车微机控制柜安装于电力机车的机械间,机械间内空间狭小,一般难以携带大件东西通行或在其内进行操作。另外,机械间内有强磁强电,对设备有很高的要求。电力机车控制柜往往需要依据各铁路局的需要,改造电力机车外围设备,需要微机控制柜增加新功能,也就需要对控制软件进行升级。另外,在电力机车的运行中,经常发现一些设计缺陷,需要及时对控制软件升级。控制软件运行于主控板的DSP芯片上,控制软件的程序存储在主控板的FLASH芯片上,控制软件装载到DSP内部RAM运行。电力机车微机控制柜的控制软件在主控板的核心芯片上(例如DSP芯片)运行一般采取两种程序存储方式和两种运行方式。第一种是核心芯片上自带一定量FLASH和ROM的程序存储空间,可以通过核心芯片配套的仿真器或通过专用下载接口下载工具下载。这种方式存储的空间比较小。第二种是外扩FLASH芯片,来存储程序,通过专用下载接口与下载工具下载,这种方式存储量大。而核心芯片的运行方式通常分为两种第一种是直接从FLASH上运行,程序运行速度较慢;第二种是将程序从FLASH存储区加载到核心芯片内或外扩的RAM空间内,程序在RAM空间中运行。这种方式,程序的运行速度较第一种快至少一个数量级以上。通过仿真器或专用下载工具必须配有便携式笔记本电脑,才能使用。而且由于电力机车微机柜控制软件比较大,一般达到100KB以上,对于一般芯片来说,其自带的FLASH和ROM存储空间不够或者不带FLASH,因此需要外扩FLASH用来存储控制程序。而电力机车控制程序通常要求实时性非常高。采用仿真器或者专用下载线下载控制软件,第一下载成功率低,可靠性不高,第二需要对操作人员进行培训,第三购买仿真器或者专用下载线成本较高,第四,在电力机车机械间内操作不方便。因此,需要设计一种能快速、及时、可靠的升级方法,用来对电力机车微机柜的控制软件下载。
发明内容本发明的目的是提供一种电力机车微机控制柜控制软件升级更新方法,该方法能快速、及时、可靠地对电力机车微机柜的控制软件进行下载更新和升级方法,使得设备的可维护性更强。为了实现上述发明目的,本发明具体提供了一种电力机车微机控制柜控制软件升级更新方法的技术实现方案,一种电力机车微机控制柜控制软件升级更新方法,包括以下步骤5100:磁盘烧写工具模块通过文件转换工具将DSP机车控制程序转换成能被DSPBootloader程序识别的数据文件写入可移动磁盘;5101:将可移动磁盘插入主控板上的USB主口;5102:主控板上的ARM芯片通过USB芯片检测到可移动磁盘插入,读取可移动磁盘扇区中的数据;5103:判断可移动磁盘中是否有DSP机车控制程序需要更新,若无更新程序,则继续执行步骤S103;5104:若有更新程序,则将可移动磁盘的DSP机车控制程序按协议与检验写入FLASH存储器中;5105:在FLASH存储器上指定的位置置标志位;5106=DSP底层程序检测FLASH存储器上是否有需要更新的应用程序,若无更新程序,则保持原有状态,继续执行步骤S106;5107:若有更新程序,则从FLASH存储器中进行程序二次加载过程;5108:更新程序加载到双口RAM芯片中,并替换之前的应用程序,实现应用程序的更新运行;5109:更新完成后,立即将FLASH存储器中的标志位清除,表示程序已更新运行。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,磁盘烧写工具模块通过文件转换工具hex55.exe将DSP机车控制程序*.out文件转换成16进制,且能被DSPBootloader程序识别的引导表数据流格式*.hex数据文件写入可移动磁盘。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,主控板中的ARM(AdvancedRISCMachine,一种高度精简指令集处理器)芯片与USB芯片(USB协议驱动处理器)完成与可移动磁盘的通信,通过操作控制USB芯片,从可移动磁盘上获取需要升级更新的控制软件数据,并将控制软件数据写入双口RAM(RandomAccessMemory,随机存储器)芯片中,并在指定的位置上置相应的标志位,表示有DSP机车控制程序更新,DSP芯片读取数据,并写入FLASH(掉电非易失性存储器)存储器中。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,DSP芯片读取更新的控制软件数据,写入FLASH存储器,并从FLASH存储器上加载程序至双口RAM芯片中,并运行机车控制程序。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,DSP芯片内的运行程序包括引导程序、底层程序和应用程序,引导程序存储在DSP(DigitalSignalProcessing,数字信号处理)芯片内置的ROM中,底层程序和应用程序存储在外部扩展的FLASH存储器中。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,DSP芯片上电后启动,内置在ROM(ReadOnlyMemory,只读存储器)中的引导程序首先运行,进行程序一次加载过程;底层程序运行后,检测FLASH存储器中的应用程序是否存在,若不存在,则保持原来状态;若存在,则进行程序二次加载过程,将存储在FLASH存储器中的应用程序加载至DSP芯片的RAM区并运行,此时机车控制程序处于运行状态;在程序运行过程中,底层程序一直监测FLASH存储器上是否有需要更新的应用程序,若无,则保持原有状态;若有,则将从FLASH存储器中进行程序二次加载过程,实现应用程序的更新运行,更新完成后,立即将FLASH存储器中的标志位清除。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,程序一次加载过程包括将存储在FLASH存储器中的底层程序加载到DSP芯片的RAM区并运行。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,程序二次加载过程包括底层程序调用应用程序运行、检测并更新存储于FLASH存储器中的应用程序,更新的应用程序加载至DSP芯片的RAM区中,并替换之前的应用程序,所述的应用程序运行机车控制程序。作为本发明一种电力机车微机控制柜控制软件升级更新方法技术方案的进一步改进,主控板的USB芯片实现USB接口的驱动,用来支持检测可移动磁盘的热插拔过程,实现USB通信协议的转换。通过实施上述本发明一种电力机车微机控制柜控制软件升级更新方法,具有以下技术效果(1)该方法将机车控制程序存储空间与实际运行空间分开,充分利用DSP运算速度快、实时响应速度快的优点,能够在Ims内完成机车控制程序的运行,比机车控制程序存储于FLASH中运行的相应速度至少提高了I2个数量级;(2)该方法使用可移动磁盘对电力机车微机控制柜控制软件进行升级更新,相比用仿真器或专用工具下载线下载,在电力机车强磁强电的环境下,能提高下载的成功率,在实际操作中,用U盘下载程序的成功率为100%,而且使用这种下载方法无需单独配笔记本与仿真器或专用下载线,能降低维护成本;(3)该方法使用可移动磁盘对电力机车微机控制柜控制软件进行升级更新,能极大地减少现场售后服务人员在控制软件升级方面的工作量,能够快速响应客户需求;而且DSP底层程序与应用程序分别加载,既提高系统运行的可靠性,又有很好的维护性。为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是本发明电力机车微机控制柜的结构组成示意框图2是本发明磁盘烧写工具模块的工作过程示意框图3是本发明电力机车微机控制柜主控板部分的结构组成框图4是本发明电力机车微机控制柜控制软件升级更新方法一种具体实施方式的程序流程图中,I-DSP应用程序模块,2-磁盘烧写工具模块,3-可移动磁盘,4-主控板,5-功能板,6-背板总线,401-ARM芯片,402-FLASH存储器,403-DSP芯片,404-USB芯片,405-双口6RAM芯片。具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如附图I至附图4所示,给出了本发明一种电力机车微机控制柜控制软件升级更新方法的具体实施例,下面结合附图和具体实施例对本发明作进一步说明。如附图I所示的电力机车微机控制柜包括主控板4和功能板5,功能板5包括若干功能板子模块,主控板4和各功能板子模块之间通过背板总线6相连。如附图2所示为磁盘烧写工具模块的工作过程示意图。电力机车微机控制柜控制软件升级更新系统的构成包括磁盘烧写工具模块2、DSP应用程序模块I(DSP机车控制程序)和可移动磁盘3。磁盘烧写工具模块(软件)由自己单独开发,专用于DSP机车控制程序的软件升级;主控板4用于存储并运行DSP机车控制程序;DSP机车控制程序为需要升级的电力机车控制柜控制软件。作为一种典型的实施方式,图中的可移动磁盘3采用U盘,当然也可以使用其他可移动的磁盘进行存储。附图3阐述了DSP机车控制程序通过磁盘烧写工具软件写入U盘的过程。DSP应用程序,其文件格式为.out,设置相关调用命令参数,调用TI公司提供的工具软件hex55.exe将.out文件转换为.hex文件。其格式为boottable表格式,解释后的内容加入包头、校验和存放缓冲区中,打包,随之按一定格式将其写入U盘FLASH扇区。如附图3所示,主控板4进一步包括ARM芯片401,FLASH存储器402,DSP芯片403,USB芯片404和双口RAM芯片405。主控板4中的ARM芯片401与USB芯片404完成与可移动磁盘3的通信,ARM芯片401通过操作控制USB芯片404,从可移动磁盘3上获取需要升级更新的控制软件数据,并将控制软件数据写入双口RAM芯片405中,并在指定的位置上置相应的标志位,表示有DSP机车控制程序更新。DSP芯片403读取更新的控制软件数据,写入FLASH存储器402,并从FLASH存储器402上加载程序至双口RAM芯片405中,并运行机车控制程序。主控板4的USB芯片404实现USB接口的驱动,用来支持检测可移动磁盘3的热插拔过程,实现USB通信协议的转换。主控板4与U盘通信,实现从U盘上获取需要升级更新的控制软件,将获取的程序存储于FLASH存储器402上,并运行机车控制程序等功倉泛。如附图4所示,一种电力机车微机控制柜控制软件升级更新方法的具体实施方式,包括以下步骤5100:磁盘烧写工具模块2通过文件转换工具将DSP机车控制程序转换成能被DSPBootloader程序识别的数据文件写入可移动磁盘3;5101:将可移动磁盘3插入主控板4上的USB主口;5102:主控板4上的ARM芯片401通过USB芯片404检测到可移动磁盘3插入,读取可移动磁盘3扇区中的数据;5103:判断可移动磁盘3中是否有DSP机车控制程序需要更新,若无更新程序,则继续执行步骤S103;5104:若有更新程序,则将可移动磁盘的DSP机车控制程序按协议与检验写入FLASH存储器402中;5105:在FLASH存储器402上指定的位置置标志位;5106=DSP底层程序检测FLASH存储器402上是否有需要更新的应用程序,若无更新程序,则保持原有状态,继续执行步骤S106;5107:若有更新程序,则从FLASH存储器402中进行程序二次加载过程;5108:更新程序加载到双口RAM芯片405中,并替换之前的应用程序,实现应用程序的更新运行;5109:更新完成后,立即将FLASH存储器402中的标志位清除,表示程序已更新运行。作为一种典型的实施方式,可移动磁盘3进一步采用U盘作为存储介质。磁盘烧写工具模块2通过文件转换工具hex55.exe将DSP机车控制程序*.out文件转换成16进制,且能被DSPBootloader程序识别的引导表数据流格式*.hex数据文件写入可移动磁盘3。DSP芯片403内的运行程序包括引导程序、底层程序和应用程序,引导程序存储在DSP芯片403内置的ROM中,底层程序和应用程序存储在外部扩展的FLASH存储器402中。DSP芯片403上电后启动,内置在ROM中的引导程序首先运行,进行程序一次加载过程,将存储在FLASH存储器402中的底层程序加载到DSP芯片403的RAM区并运行;底层程序运行后,检测FLASH存储器402中的应用程序是否存在,若不存在,则保持原来状态;若存在,则进行程序二次加载过程,将存储在FLASH存储器402中的应用程序加载至DSP芯片403的RAM区并运行,此时机车控制程序处于运行状态;在程序运行过程中,底层程序一直监测FLASH存储器402上是否有需要更新的应用程序,若无,则保持原有状态;若有,则将从FLASH存储器402中进行程序二次加载过程,底层程序调用应用程序运行、检测并更新存储于FLASH存储器402中的应用程序,更新的应用程序加载至DSP芯片403的RAM区中,并替换之前的应用程序,实现应用程序的更新运行,更新完成后,立即将FLASH存储器402中的标志位清除。应用程序运行机车控制程序。如上所述的一次加载过程与二次加载过程具有如下优势一次加载是在出厂前就已经通过DSP仿真器固化好,加载运行很可靠,再通过二次加载DSP机车控制程序,即使在控制软件升级的时候失败,可以通过复位,重新对DSP机车控制程序进行加载,这样可以大幅地提高电力机车微机控制设备的可靠性与可维护性。现将本发明控制软件升级更新方法和机车控制程序的运行过程综合阐述如下在CCS(CodeComposerStudio,代码设计套件)软件中,针对电力机车控制柜控制程序,并编译成*.out文件。由于*.out文件只能在CCS编译环境中通过相应的烧写工具烧写到DSP芯片403中,而本发明具体实施方式所描述的技术方案脱离了CCS编译环境的应用情况,因此需要预先将*.out文件通过文件转换工具hex55.exe转换成16进制的且能被DSPBootloader程序所能识别的引导表数据流格式文件,即*.hex文件。通过U盘烧写工具软件,将其写入U盘中。操作者通过磁盘烧写工具模块2将指定的DSP机车控制程序写入U盘,然后将U盘插入主控板4上的USB主口,主控板4上ARM芯片401与USB芯片404检测到U盘插入,读取U盘扇区中的相关数据,判断U盘中是否有DSP机车控制程序需要更新。若有更新程序,则将U盘的DSP机车控制程序按协议与检验写入FLASH存储器402中,并在FLASH存储器402上指定位置置标志位。DSP底层程序一直监测FLASH存储器402上是否有需更新的应用程序,若无,则保持原有状态;若有,则将从FLASH存储器402相应的地址,进行程序二次加载过程,加载到双口RAM芯片405中并替换之前的应用程序,实现应用程序的更新运行,更新完成后,立即将FLASH存储器402中的标志位清除,表示程序已更新运行。DSP芯片403的RAM区为易失性存储空间,即掉电后RAM区的数据会丢失,这样就不利于现场用户的应用。这种方法能充分利用硬件实时响应快、运算速度快等优点,且通过底层程序调用应用程序,极大地提高运行的可靠性、可维护性。实际测试表明,采用这种方法,机车控制运行速度快,这一周期可达到I毫秒甚至更短,实时响应速率比原有技术提高了I2个数量级。以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同替换、等效变化及修饰,均仍属于本发明技术方案保护的范围内。9权利要求1.一种电力机车微机控制柜控制软件升级更新方法,其特征在于,该方法包括以下步骤5100:磁盘烧写工具模块(2)通过文件转换工具将DSP机车控制程序转换成能被DSPBootloader程序识别的数据文件写入可移动磁盘(3);5101:将可移动磁盘(3)插入主控板(4)上的USB主口;5102:主控板(4)上的ARM芯片(401)通过USB芯片(404)检测到可移动磁盘(3)插入,读取可移动磁盘(3)扇区中的数据;5103:判断可移动磁盘(3)中是否有DSP机车控制程序需要更新,若无更新程序,则继续执行步骤S103;5104:若有更新程序,则将可移动磁盘的DSP机车控制程序按协议与检验写入FLASH存储器(402)中;5105:在FLASH存储器(402)上指定的位置置标志位;5106=DSP底层程序检测FLASH存储器(402)上是否有需要更新的应用程序,若无更新程序,则保持原有状态,继续执行步骤S106;5107:若有更新程序,则从FLASH存储器(402)中进行程序二次加载过程;5108:更新程序加载到双口RAM芯片(405)中,并替换之前的应用程序,实现应用程序的更新运行;5109:更新完成后,立即将FLASH存储器(402)中的标志位清除,表示程序已更新运行。2.根据权利要求I所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述磁盘烧写工具模块(2)通过文件转换工具hex55.exe将DSP机车控制程序*.out文件转换成16进制,且能被DSPBootloader程序识别的引导表数据流格式*.hex数据文件写入可移动磁盘(3)。3.根据权利要求I或2所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述主控板(4)中的ARM芯片(401)与USB芯片(404)完成与可移动磁盘(3)的通信,通过操作控制USB芯片(404),从可移动磁盘(3)上获取需要升级更新的控制软件数据,并将控制软件数据写入双口RAM芯片(405)中,并在指定的位置上置相应的标志位,表示有DSP机车控制程序更新,DSP芯片(403)读取数据,并写入FLASH存储器(402)中。4.根据权利要求3所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述的DSP芯片(403)读取更新的控制软件数据,写入FLASH存储器(402),并从FLASH存储器(402)上加载程序至双口RAM芯片(405)中,并运行机车控制程序。5.根据权利要求1、2、4中任一权利要求所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述的DSP芯片(403)内的运行程序包括引导程序、底层程序和应用程序,引导程序存储在DSP芯片(403)内置的ROM中,底层程序和应用程序存储在外部扩展的FLASH存储器(402)中。6.根据权利要求5所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述的DSP芯片(403)上电后启动,内置在ROM中的引导程序首先运行,进行程序一次加载过程;底层程序运行后,检测FLASH存储器(402)中的应用程序是否存在,若不存在,则保持原来状态;若存在,则进行程序二次加载过程,将存储在FLASH存储器(402)中的应用程序加载至DSP芯片(403)的RAM区并运行,此时机车控制程序处于运行状态;在程序运行过程中,底层程序一直监测FLASH存储器(402)上是否有需要更新的应用程序,若无,则保持原有状态;若有,则将从FLASH存储器(402)中进行程序二次加载过程,实现应用程序的更新运行,更新完成后,立即将FLASH存储器(402)中的标志位清除。7.根据权利要求6所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于,所述的程序一次加载过程包括将存储在FLASH存储器(402)中的底层程序加载到DSP芯片(403)的RAM区并运行。8.根据权利要求6或7所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于,所述的程序二次加载过程包括底层程序调用应用程序运行、检测并更新存储于FLASH存储器(402)中的应用程序,更新的应用程序加载至DSP芯片(403)的RAM区中,并替换之前的应用程序,所述的应用程序运行机车控制程序。9.根据权利要求1、2、4、6、7中任一权利要求所述的一种电力机车微机控制柜控制软件升级更新方法,其特征在于所述的主控板(4)的USB芯片(404)实现USB接口的驱动,用来支持检测可移动磁盘(3)的热插拔过程,实现USB通信协议的转换。全文摘要本发明公开了一种电力机车微机控制柜控制软件升级更新方法,磁盘烧写工具将DSP机车控制程序进行转换,并写入可移动磁盘;可移动磁盘插入主控板的USB主口,主控板检测到可移动磁盘插入,读取磁盘扇区数据;若有更新程序,则将可移动磁盘的DSP机车控制程序按协议与检验写入FLASH存储器中,并在FLASH上指定的位置置标志位;DSP底层程序检测FLASH上是否有程序更新,若有更新程序,则从FLASH中进行程序二次加载过程;更新程序加载到双口RAM芯片中,更新完成后,立即清除FLASH中的标志位。该方法能快速、及时、可靠地对电力机车微机柜的控制软件进行下载更新和升级方法,使得微机控制柜设备的可维护性更强。文档编号G06F9/445GK102591692SQ201210006650公开日2012年7月18日申请日期2012年1月11日优先权日2012年1月11日发明者刘灿,唐鸿华,戴仁德,李小平,罗继光,钱华申请人:株洲南车时代电气股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1