当前位置:首页 期刊杂志

高速动车组牵引传动系统软件开发平台的设计与优化探究

时间:2024-04-25

摘 要:为了研发更完善的牵引传动系统,需要先开发软件设计平台,具备软件开发平台,可以对牵引传动系统加以优化。基于此,本文先研究了软件开发平台设计,后提出了开发平台的优化。通过牵引传动系统软件开发平台的研发,推动我国拥有自主知识产权传动系统的设计,为高速动车组的应用提供基础条件,为高速动车组运行提供保障。

关键词:高速动车组;牵引传动系统;软件开发平台

引言:在我国高速动车组中,牵引传动系统是其中最关键的技术,是动力系统的重要构成,通过转换单向交流电为三相交流电,让驱动牵引系统的电机运行,制动工况下,让牵引电机工作处于发电机状态,节省了大量电能。因此,研究牵引传动系统开发软件平台,有助于推动牵引传动系统的完善,保证高速动车组的稳定运行,并减少能源消耗。

一、高速动车组牵引传动系统软件开发平台的设计

(一)开发平台构成

开发平台主要包括上位机开发环境以及下位机内核两部分。上位机软件开发使用功能图连续编写方式,连续功能作为一种图形化编程语言,和功能块图的区别在于,可以展示隶属资源以及任务,被工业控制工作中广泛使用。应用软件包括CFC文件,根据软件功能对其划分,方便于软件进行调试以及维护。同时创建全局变量文件,用来对全局变量定义,全局变量包括时间类型、浮点类型、整型、字符串等多种。上位机软件经过编译后形成代码,在下位机中保存。

下位机使用x86CPU,使用QNX的操作系统,该操作系统是抢占式硬实时操作系统,可以保障任务被实时调度[1]。下位机周期任务对上位机软件进行运行,对功能块进行分配调度。下位机内核使用实时时钟硬件作为调度周期,基础调度周期依据任务周期值,经过信号量,让阻塞状态任务转换到就绪状态,保证实时进行任务。周期任务安排的优先级别根据操作系统优先级别实现,保证对周期任务进行合理安排,保证任务具有较小抖动。启动下位机内核后,先应用软件在内存中,解释器需要解释执行应用程序。上位机对平台代码进行编译并不包含功能块,只包括实例执行。下位机内核包含功能块代码,执行实例时,根据实例类型跳转代码入口,对功能块代码进行执行,从而实现特殊功能。

(二)生成及执行代码

连续功能图作为一种变成语言,生成执行代码将其转换成IL语言,作为国际网络标准中一种特定编程原因,是一种汇编语言,由指令构成。每条指令占据一行,操作符和操作数构成指令。用于调用功能块、连接器以及全局变量等,CFC文件转换成IL语言,按照IL语言生成代码。编译器按照功能块顺序转换,读取变量并使用LD进行替代,给全局变量和连接器赋值使用ST替代,功能块使用CAL指令替代,使用JMP指令跳转,将CFC1转变为IL语言。

转换语言后,编译器展开语法和词法分析,转变为无关代码。无关代码同IL语言相近,将ST指令和LD质量依据操作数细分,执行指令时获得操作数数据。代码包含程序数据、代码段以及实例数据等,代码段属于可执行代码,包含转换后代码。解释器读取代码操作数和操作符,进行执行。功能块实例包括数据段,数据段保存实例全部变量值以及连接器。

上位机进行编译时,无法获得全局变量和绝对地址,由于平台代码段的地址关联操作数是地址在程序数据以及实例数据的偏移量。下位机执行时要依据程序数据偏移量,获得数据段变量以及连接器所归属的功能块实例数据以及类型。依照功能块实例数据地址和功能块偏移,获取变量值以及连接器值。调用功能块和访问变量类似,代码保存CAL指令和功能块偏移量,读取数据段偏移量功能块类型,通过查找功能块程序获得函数入口地址,从而对功能块代码进行执行。经过逐条解释代码完成执行无关代码。CFC应用程序给出多任务顺序,设定执行顺序是先CFC1、CFC2,执行调度周期时,再执行全部功能模块。

(三)监视调试功能

完成软件编写后,要先经过测试和调试之后才能正式使用。测试功能块代码是经过平台开发环境进行。应用程序測试和调试要求完全正确的代码。测试应用程序还需要。要强制设置变量值和连接器值,对变量和连接器展开全局观察,要求在线读写连接器和变量。上位机保存全局变量和连接器CFC,数据段上出现偏移量上位机将信息传递给下位机。下位机内核审查需要读写绝对地址,读写结果使用以太网对上位机进行实时传输,完成测试调试软件工作。

二、高速动车组牵引传动系统软件开发平台的优化

优化数据传递效果,在输出连接器向输入连接器传递数据时,解释器使用ST指令和LD指令实现,经过LD指令执行读取连接器数值,需要经过数据段得到基地址以及偏移量,并在累加器上保存[2]。执行ST指令,加工数据段基地址和偏移量写入累加器和输入连接器绝对地址,保证数据完整传递。传递数据要求解释器可以多次读取数据和代码段。为了让效率得到提升,需要将数据指令翻译成TDD指令。执行程序前先使用偏移量计算获得绝对地址,经过TDD指令,将数据从源地址传递给目标地址。TDD指令为无关代码,要经过解释器实现解释执行,进而将TDD指令在内存中储存,将指令翻译到机器码之后,执行代码,跳转到代码入口地址即可。

和传递数据类似,优化功能块函数要使用同等方法,调用功能块执行时向读取代码指令,查找功能块保存,根据功能块类型找到功能块函数入口地址,跳转函数入口地址。执行程序前,向使用上述方法,计算出功能块函数入口地址,使用C指令,调用函数。进一步翻译C指令为机器码。

结论:综上所述,本文提出研发牵引传动系统的软件开发平台,通过软件开发平台的设计和优化,建设一套完善有序的软件开发平台,为传动系统的开发和完善提供基础。针对平台代码执行提出将无关代码转变为有关代码,优化数据传递、调用函数以及执行代码方式,让代码执行效率得到提升。通过对平台的优化,有效提升代码执行效率,为牵引传动系统的开发以及调试提供平台支持。

参考文献:

[1]李英,侯红学,王铁成,等.高速动车组用大功率牵引集成单元的地面性能试验研究[J].铁道机车与动车,2018(07):40-42+44+8.

[2]田子思. 基于任务剖面的高速动车组牵引变流器功率器件寿命评估[D].西南交通大学,2018.

作者简介:

周培慧(1983-),男,汉族,湖南株洲人,本科,助理工程师,研究方向:现从事软件开发方面的工作.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!