CN104035360A - 一种eps控制器的调参方法及装置 - Google Patents
一种eps控制器的调参方法及装置 Download PDFInfo
- Publication number
- CN104035360A CN104035360A CN201410188124.7A CN201410188124A CN104035360A CN 104035360 A CN104035360 A CN 104035360A CN 201410188124 A CN201410188124 A CN 201410188124A CN 104035360 A CN104035360 A CN 104035360A
- Authority
- CN
- China
- Prior art keywords
- variable
- mcu
- elf
- parameter
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
一种EPS控制器的调参方法,首先在EPS控制器中的MCU提供的集成控制环境下,编译EPS控制器程序生成ELF(ExecutableandLinkableFormat)目标文件,而后通过调参装置对ELF目标文件进行解析,待ELF目标文件解析完毕后,调参装置将待调参数信息封装成读写命令发送至MCU,MCU解析读写命令,以完成对EPS控制器的调参。本发明在MCU程序变动时无需修改调参装置,仅需导入新的ELF目标文件即可运行,大大整合了资源,节省人力物力,同时满足不同芯片MCU调参需求,且支持在线显示变量值,动态显示变量变化曲线。
Description
技术领域
本发明涉及控制器调参技术领域,具体为一种EPS控制器的调参方法及装置。
背景技术
随着汽车工业的蓬勃发展,汽车助力转向器(EPS)由于具有能耗低、体积小、重量轻、空间省等特点已逐步取代传统的机械式和液压式助力转向器。
不论是实验室台架调试还是实车调试,都需要通过对EPS控制器进行调参从而提高开发效率;在EPS控制器开发过程中,通常都是首先借助集成开发环境(如TI 的CCS集成开发环境、FreeScale的CodeWarrie集成开发环境)进行编译和初步调试工作,然而不同的EPS控制器使用的主芯片(MCU)也是千差万变,MCU采用的集成编译调试环境不同,导致编译环境生成的目标代码格式不尽相同,EPS厂家需要针对不同MCU,开发不同的上位机调参装置,以满足需求,这样不仅浪费了大量的人力物力,而且MCU厂家提供的集成编译调试环境调试手段有限,譬如不支持MCU运行时常看变量值、不能动态地显示变量变化曲线。
EPS控制器调参的难点在于如何获取待调试参数的地址、长度、类型等属性,目前通常的做法有两种,一是在EPS控制器程序(运行在MCU)中事先固定好待调试参数的地址等属性,上位机调参软件根据参数的固定属性来发送命令;二是通过解析EPS控制器程序编译生成的map文件获取参数的地址、长度及类型;第一种方法的优点是简单,易实现,缺点是当MCU程序变动或者需要调试新的参数时,调试软件也必须进行相应改动;第二种方法修正了第一种方法的缺点,但依然存在缺点:不能解析结构体、枚举等复杂的数据结构。
发明内容
本发明所解决的技术问题在于提供一种EPS控制器的调参方法及装置,以解决上述背景技术中的缺点。
本发明所解决的技术问题采用以下技术方案来实现:
一种EPS控制器的调参方法,首先在EPS控制器中的MCU提供的集成控制环境下,编译EPS控制器程序生成ELF目标文件,而后对ELF目标文件进行解析,待ELF目标文件解析完毕后,将待调参数信息封装成读写命令发送至MCU,MCU解析读写命令,以完成对EPS控制器的调参;其具体步骤如下:
(1)在MCU提供的集成编译环境下编译EPS控制器程序生成ELF目标文件,该ELF目标文件包含MCU程序结构及程序结构中各变量参数信息;
(2)将步骤(1)中生成的ELF目标文件烧录至MCU中,并运行EPS控制器;
(3)在上位机中打开调参界面,调参界面包括串口配置、串口控制、数据接收个数、选择导入ELF目标文件、解析得到ELF目标文件中的程序及数据结构树、选择变量列表、波图;在串口配置中配置串口参数;
(4)在步骤(3)所述的调参界面中导入ELF目标文件,解析出EPS控制器的程序结构与变量参数;
(5)在步骤(3)所述的调参界面中勾选待观察的变量1和2,变量1和2显示在选择变量列表中;
(6)在步骤(5)所述的调参界面选择变量列表中,勾选变量1的viewCur属性与变量2的writeEnable属性;
(7)在步骤(3)所述的调参界面中点击串口控制中的sendWriteParameters,上位机将变量2的属性以写命令形式发送至MCU,MCU收到写命令后根据写命令中变量地址、类型、长度等属性,修改变量2在MCU中的值;
(8)在步骤(3)所述的调参界面中点击串口控制中的sendReadParameters,上位机将变量1和2的属性以读命令形式发送给MCU,MCU收到读命令后读取各变量的值,并定时发送给上位机;上位机解析数据包后将变量值实时显示在选择变量列表中;同时在波图中动态显示其变化曲线。
在本发明中,所述步骤(2)中生成的ELF目标文件格式包括.elf、.out。
在本发明中,所述步骤(4)中解析ELF目标文件流程包括如下步骤:
步骤①:解析ELF文件头,ELF文件头部存储有程序头部表、节区1...n、节区头部表;节区头部表存储有节区位置、大小信息,得到节区描述节区头部表的格式信息;
步骤②:根据步骤①得到的节区头部表的格式信息,查找shstrtab节区的位置和大小;
步骤③:读取步骤②查找的shstrtab节区的内容,shstrtab节区记录所有节区的位置和大小;
步骤④:根据步骤③读取的shstrtab节区内容,找到strtab、symtab、debug_abbrev及debug_info节区的位置及大小信息;其中strtab节区记录变量名称字符串信息;symtab节区记录变量大小、地址信息;debug_abbrev节区中则可递归找到变量数据结构信息;
步骤⑤:读取步骤④找到的debug_info节区,查找其中的变量,获取其长度、地址及数据结构信息;
步骤⑥:遍历步骤④找到的debug_info节区,重复步骤⑤,直到将所有变量解析完毕。
一种EPS控制器的调参装置,基于上述EPS控制器的调参方法,其包括:
数据解析单元,用于获取ELF目标文件待调参数的地址、长度及类型等属性;
数据传输单元,用于传输待调参数的读写命令和参数值;
数据处理单元,用于解析读写命令;
数据显示单元,用于显示参数的值以及变化曲线;
其中,数据解析单元与数据显示单元设置在上位机上,数据处理单元设置在MCU中,负责解析读写命令并定时将参数值发送至上位机,数据解析单元和数据显示单元通过数据传输单元与数据处理单元建立连接。
在本发明中,MCU程序变动时无需修改调参装置,仅需导入新的ELF目标文件即可运行,大大整合了资源,节省人力物力,同时满足不同MCU调参需求,且支持在线显示变量值,动态显示变量变化曲线。
有益效果:本发明在MCU程序变动时无需修改调参装置,仅需导入新的ELF目标文件即可运行,大大整合了资源,节省人力物力,同时满足不同MCU调参需求,且支持在线显示变量值,动态显示变量变化曲线。
附图说明
图1为本发明较佳实施例的结构示意图。
图2为本发明较佳实施例的解析流程示意图。
图3为本发明较佳实施例中调参软件运行示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
参见图1~图2的一种EPS控制器的调参方法,首先在EPS控制器中的MCU提供的集成控制环境下,编译EPS控制器程序生成ELF(Executable and Linkable Format)目标文件,而后对ELF目标文件进行解析,待ELF目标文件解析完毕后,将待调参数信息封装成读写命令发送至MCU,MCU解析读写命令,以完成对EPS控制器的调参。
参见图3的一种EPS控制器的调参界面,包括Serial port configuration:串口配置、Serial port control:串口控制、RxDataCounts:数据接收个数、Map file select:选择导入ELF目标文件、Treelist:解析得到ELF目标文件中的程序及数据结构树、Selected variable list:选择变量列表、Wave graph:波图;在Serial port configuration中配置串口参数;调参界面的配置为:
1、Serial port configuration:串口配置,调参装置通过串口与MCU通信,首先配置串口参数:Com Port :COM3,BaudRate:115200,Data Bits:8,Parity Bits:NONE,Stop Bits:1;
2、Serial port control:串口控制,通过串口实现通信的连接、暂停、继续、断开并向MCU发送读写命令;
3、RxDataCounts:接收数据的个数:67785;
4、Map file select:选择导入ELF目标文件格式为temp.elf;
5、Treelist:解析导入的temp.elf文件,得到temp.elf文件的程序及数据结构树,并在每个程序文件或变量前勾选,勾选的变量显示在Selected variable list列表中;
6、Selected variable list:显示勾选的变量名称、地址、长度、类型、值等属性,复选框ViewCur:选中该变量的实时曲线在wave graph中动态显示;复选框WriteEnable:选中表示将修改该变量的值;
7、Wave graph:选中实时显示动态曲线;
8、Items:显示wave graph中各曲线对应的变量名及其颜色。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (4)
1. 一种EPS控制器的调参装置,其特征在于,包括:
数据解析单元,用于获取ELF目标文件待调参数的地址、长度及类型等属性;
数据传输单元,用于传输待调参数的读写命令和参数值;
数据处理单元,用于解析读写命令;
数据显示单元,用于显示参数的值以及变化曲线;
其中,数据解析单元与数据显示单元设置在上位机上,数据处理单元设置在MCU中,负责解析读写命令并定时将参数值发送至上位机,数据解析单元和数据显示单元通过数据传输单元与数据处理单元建立连接。
2.一种EPS控制器的调参方法,其特征在于,首先在EPS控制器中的MCU提供的集成控制环境下,编译EPS控制器程序生成ELF目标文件,而后对ELF目标文件进行解析,待ELF目标文件解析完毕后,将待调参数信息封装成读写命令发送至MCU,MCU解析读写命令,以完成对EPS控制器的调参;其具体步骤如下:
(1)在MCU提供的集成编译环境下编译EPS控制器程序生成ELF目标文件,该ELF目标文件包含MCU程序结构及程序结构中各变量参数信息;
(2)将步骤(1)中生成的ELF目标文件烧录至MCU中,并运行EPS控制器;
(3)在上位机中打开调参界面,调参界面包括串口配置、串口控制、数据接收个数、选择导入ELF目标文件、解析得到ELF目标文件中的程序及数据结构树、选择变量列表、波图;在串口配置中配置串口参数;
(4)在步骤(3)所述的调参界面中导入ELF目标文件,解析出EPS控制器的程序结构与变量参数;
(5)在步骤(3)所述的调参界面中勾选待观察的变量1和2,变量1和2显示在选择变量列表中;
(6)在步骤(5)所述的调参界面选择变量列表中,勾选变量1的viewCur属性与变量2的writeEnable属性;
(7)在步骤(3)所述的调参界面中点击串口控制中的sendWriteParameters,上位机将变量2的属性以写命令形式发送至MCU,MCU收到写命令后根据写命令中变量地址、类型、长度等属性,修改变量2在MCU中的值;
(8)在步骤(3)所述的调参界面中点击串口控制中的sendReadParameters,上位机将变量1和2的属性以读命令形式发送给MCU,MCU收到读命令后读取各变量的值,并定时发送给上位机;上位机解析数据包后将变量值实时显示在选择变量列表中;同时在波图中动态显示其变化曲线。
3.根据权利要求2所述的一种EPS控制器的调参方法,其特征在于,所述步骤(2)中生成的ELF目标文件格式包括.elf、.out。
4.根据权利要求2所述的一种EPS控制器的调参方法,其特征在于,所述步骤(4)中解析ELF目标文件流程包括如下步骤:
步骤①:解析ELF文件头,ELF文件头部存储有程序头部表、节区1...n、节区头部表;节区头部表存储有节区位置、大小信息,得到节区描述节区头部表的格式信息;
步骤②:根据步骤①得到的节区头部表的格式信息,查找shstrtab节区的位置和大小;
步骤③:读取步骤②查找的shstrtab节区的内容,shstrtab节区记录所有节区的位置和大小;
步骤④:根据步骤③读取的shstrtab节区内容,找到strtab、symtab、debug_abbrev及debug_info节区的位置及大小信息;其中strtab节区记录变量名称字符串信息;symtab节区记录变量大小、地址信息;debug_abbrev节区中则可递归找到变量数据结构信息;
步骤⑤:读取步骤④找到的debug_info节区,查找其中的变量,获取其长度、地址及数据结构信息;
步骤⑥:遍历步骤④找到的debug_info节区,重复步骤⑤,直到将所有变量解析完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410188124.7A CN104035360B (zh) | 2014-05-07 | 2014-05-07 | 一种eps控制器的调参方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410188124.7A CN104035360B (zh) | 2014-05-07 | 2014-05-07 | 一种eps控制器的调参方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104035360A true CN104035360A (zh) | 2014-09-10 |
CN104035360B CN104035360B (zh) | 2018-03-13 |
Family
ID=51466171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410188124.7A Active CN104035360B (zh) | 2014-05-07 | 2014-05-07 | 一种eps控制器的调参方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104035360B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104503898A (zh) * | 2014-11-24 | 2015-04-08 | 四川长虹电器股份有限公司 | 一种嵌入式软件调试参数实时查看的方法及系统 |
CN107168133A (zh) * | 2017-06-27 | 2017-09-15 | 重庆谱思机器人控制系统有限公司 | 电机控制器的可视化编程方法及系统 |
WO2018165831A1 (zh) * | 2017-03-13 | 2018-09-20 | 深圳市鑫君特智能医疗器械有限公司 | 一种监测程序变量值的方法及系统 |
CN109683900A (zh) * | 2018-11-14 | 2019-04-26 | 浙江零跑科技有限公司 | 针对elf文件调试信息的通用上位机符号查找与解析方法 |
CN111336061A (zh) * | 2018-12-19 | 2020-06-26 | 北京金风科创风电设备有限公司 | 风力发电机组相关数据的读写方法和装置 |
CN111459839A (zh) * | 2020-04-26 | 2020-07-28 | 江苏阿诗特能源科技有限公司 | 一种在线调试系统和方法 |
CN113552861A (zh) * | 2021-07-28 | 2021-10-26 | 东风悦享科技有限公司 | 一种自动驾驶车辆mcu在线调参系统及其方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365638A (zh) * | 2012-03-29 | 2013-10-23 | 北京九州华海科技有限公司 | 基于ECUCoder的单片机开发系统及方法 |
CN103678747A (zh) * | 2012-09-19 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 适用于多类型cpu的联合仿真工具 |
-
2014
- 2014-05-07 CN CN201410188124.7A patent/CN104035360B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365638A (zh) * | 2012-03-29 | 2013-10-23 | 北京九州华海科技有限公司 | 基于ECUCoder的单片机开发系统及方法 |
CN103678747A (zh) * | 2012-09-19 | 2014-03-26 | 上海华虹集成电路有限责任公司 | 适用于多类型cpu的联合仿真工具 |
Non-Patent Citations (1)
Title |
---|
杨东明: "嵌入式系统的调试方法研究及调试器设计", 《中国优秀硕士学位论文全文数据库 信息科技辑2013年》, no. 2, 15 December 2013 (2013-12-15) * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104503898A (zh) * | 2014-11-24 | 2015-04-08 | 四川长虹电器股份有限公司 | 一种嵌入式软件调试参数实时查看的方法及系统 |
CN104503898B (zh) * | 2014-11-24 | 2017-09-01 | 四川长虹电器股份有限公司 | 一种嵌入式软件调试参数实时查看的方法及系统 |
WO2018165831A1 (zh) * | 2017-03-13 | 2018-09-20 | 深圳市鑫君特智能医疗器械有限公司 | 一种监测程序变量值的方法及系统 |
CN107168133A (zh) * | 2017-06-27 | 2017-09-15 | 重庆谱思机器人控制系统有限公司 | 电机控制器的可视化编程方法及系统 |
CN107168133B (zh) * | 2017-06-27 | 2019-10-11 | 重庆谱思机器人控制系统有限公司 | 电机控制器的可视化编程方法及系统 |
CN109683900A (zh) * | 2018-11-14 | 2019-04-26 | 浙江零跑科技有限公司 | 针对elf文件调试信息的通用上位机符号查找与解析方法 |
CN109683900B (zh) * | 2018-11-14 | 2022-02-18 | 浙江零跑科技股份有限公司 | 针对elf文件调试信息的通用上位机符号查找与解析方法 |
CN111336061A (zh) * | 2018-12-19 | 2020-06-26 | 北京金风科创风电设备有限公司 | 风力发电机组相关数据的读写方法和装置 |
CN111336061B (zh) * | 2018-12-19 | 2024-01-19 | 北京金风科创风电设备有限公司 | 风力发电机组相关数据的读写方法和装置 |
CN111459839A (zh) * | 2020-04-26 | 2020-07-28 | 江苏阿诗特能源科技有限公司 | 一种在线调试系统和方法 |
CN113552861A (zh) * | 2021-07-28 | 2021-10-26 | 东风悦享科技有限公司 | 一种自动驾驶车辆mcu在线调参系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104035360B (zh) | 2018-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104035360A (zh) | 一种eps控制器的调参方法及装置 | |
CN103605540B (zh) | 基于安卓系统的快速写入flash镜像的方法 | |
CN104133772A (zh) | 一种自动生成测试数据的方法 | |
CN106406911A (zh) | 一种计算机软件系统功能组件化的方法 | |
CN104268073A (zh) | 一种批量生成测试用例的方法 | |
CN104714788A (zh) | 一种软件安装包自动生成的方法及装置 | |
CN102981882B (zh) | 解析方法和装置 | |
CN103593527A (zh) | 一种一键设置pcb板中不同类型布线规则bga的设计方法 | |
CN103488738A (zh) | 一种自动实现java对象及数据表sql文件的方法及系统 | |
CN105354138A (zh) | 一种确定手机页面上特定控件属性的方法 | |
CN104991810B (zh) | 自动添加apk到安卓系统中的方法及处理系统 | |
CN106126564A (zh) | 一种基于动态模板语言渲染的方法 | |
CN101763072A (zh) | 数控加工代码的转换方法和装置 | |
CN108874395B (zh) | 一种组件化流处理过程中的硬编译方法及装置 | |
CN106383734A (zh) | 一种从代码中提取详细设计的方法 | |
CN102033998B (zh) | 一种可靠性模型自动生成方法 | |
CN103746873A (zh) | 通信模块测试系统和方法 | |
CN103186365B (zh) | 一种根据字形轮廓变化生成控制指令的方法及系统 | |
CN103150445B (zh) | 一种matlab模型变量的剖析方法及装置 | |
CN104808961B (zh) | 显示接口模组参数的脚本化调节方法 | |
CN103942144A (zh) | 一种利用参数关系图形化映射的测试方法 | |
CN104007980A (zh) | 基于应用描述文件解析的移动应用的实现方法 | |
CN113901120A (zh) | 一种大数据批量导出Excel文件的方法及装置 | |
CN103077284B (zh) | 利用通用文本模板自动生成辅助代码文件的方法及系统 | |
CN102508769A (zh) | 一种基于核心注入式调试器的被调试程序调试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210204 Address after: 412000 Room 201, 100 Hangkong Road, Lusong District, Zhuzhou City, Hunan Province Patentee after: Hunan Dongjia Intelligent Technology Co.,Ltd. Address before: Dong Jia Duan High-tech Industrial Park in Hunan province Zhuzhou city Lusong District 412000 Patentee before: ZHUZHOU ELITE ELECTRO MECHANICAL Co.,Ltd. |
|
TR01 | Transfer of patent right |