教育装备采购网
第七届图书馆 体育教师课题研修班

IPEmotion高级应用之XML使用

教育装备采购网 2019-01-10 16:20 围观485次

  1.引言

  IPEmotion作为一款功能强大的上位机数据测量处理软件,拥有着很多强大的拓展功能和用户自定义功能,这些功能能够给予我们更加人性化和定制化的用户体验。为了在IPEmotion中实现这些功能,往往我们需要使用XML文档来完成这一过程。本文接下来将向大家分享和简要的谈一谈XML文档在IPEmotion中一些具体应用实例。

  2. XML简介

  在IPEmotion的某些配置中往往需要我们阅读和修改相应的XML文档以便在IPEmotion中实现特定的功能。为了我们能够更好的阅读理解和修改XML文档,该部分尽量以最简短的语言向大家介绍一下XML语言,满足我们非专业开发人员的一般阅读和修改需求。

  所谓XML(Extensible Markup Language),即可扩展标记语言。其被设计用来结构化、存储以及传输信息

  XML文档本身仅是纯文本,不会产生任何行为或执行任何操作,需要有相应的应用程序有针对性地处理 XML 的标签才能够实现特定的功能,标签的功能性意义依赖于应用程序的特性。

  XML主要有以下几个特点:

  ( 1 )用来传输数据而非显示数据;

  ( 2 )用户需自行定义标签,XML本身没有预定义标签;

  ( 3 )XML文档具有自我描述性。

  首先我们以一个例子,用最简短的语言简单说明一下XML文档的结构。 IPEmotion高级应用之XML使用上面的图片所展示的便是一段我们最为常见且相对简单的XML文档,其采用所谓的“树结构,自我描述性”的语法。

  第一行是XML文档的声明,大多数XML文档以XML声明作为开始,它向解析器提供了关于文档的基本信息。XML文档的声明不是必需的,但建议大家使用声明,而且如果使用声明它一定要在文档的第一行。version说明了该文档使用的是XML版本是1.0,encoding是该文档所使用的字符编码,而且当XML文件中有中文时则必须使用encoding属性指明文档的字符编码

  第二行至倒数第二行是该文档的根元素,从XML所具有的“自我描述性语法”我们可以看出该文档所描述的是<Love_letters>,即情书。

  从第三行直至倒数第三行结束,我们可以轻易的看出这部分总共由3段结构对称相同的部分组成,分别是<Letter1>,<Letter2>,<Letter3>,它们是该文档的3个子元素,其中的heading="Heart"、heading='Miss'、heading='Waiting'分别是上述3个标签的属性。而它们3个子元素每个又同时拥有3个子元素,即<to>,<from>,<content>。上述即展现了所谓的XML文档的“树结构”,每个XML文档相当于一颗树,这棵树从根部开始逐步向外不断的扩展形成分支。因此,每个XML文档在结构上必须有且只有一个根元素,根元素下的所有元素被称之为子元素,每个子元素又可以同时嵌套多个不同的子元素。下图便清晰的展示出了这个情书XML文档的树结构:

IPEmotion高级应用之XML使用

  最后一行是这个XML文档的注释,注释以<!--开头,以-->结束,且注释中不能包含--,同时注释不允许嵌套。当然注释可以不放在文档的最后一行,正常情况下注释只要不放在声明之前(即第一行),其他的任意一行均可以存在注释。

  由上述结构的解析我们可以看出,一个XML文档主要包括了声明,元素,属性,注释这几部分。除此之外,一个完备的XML文档还会有指令,实体、CDATA等部分组成,这些内容因为在我们后续IPEmotion的应用之中接触较少,在此不作相关的介绍与解释。

  接下来我们依旧以上面的XML文档为例,简要讲解一下XML的语法。根据上述的结构介绍我们可以看出,XML文档的主体部分是元素XML元素具体指的是从(且包括)开始标签直到(且包括)结束标签的部分,元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。以上文中的Letter1元素为例:

  <Letter1 heading="Heart">

  <to>Mary</to>

  <from>LuoShuai</from>

  <content>The moonlight stands for my heart!</content>

  </Letter1>

  其中的<Letter1 heading="Heart">和</Letter1>分别就是开始标签和结束标签。同理,<to>和</to>、<from>和</from>、<content>和</content>也分别代表不同的开始标签和结束标签,在开始标签与结束标签之间的部分即为该元素的内容。如果一个元素不包含任何内容,例如:<a></a>,可以将其简写为<a/>,称其为空标签。关于XML元素的标签的注意事项,主要有以下几点:

  (1)除空标记外,开始标签与结束标签成对存在且名称必须严格匹配;

  (2)XML标签严格区分大小写;

  (3)标签必须正确有序的嵌套;

  (4)标签名称不能以数字、XMLXmlxml开头且不能含有空格。

  其中的heading="Heart"是开始标签的属性。关于属性的注意事项,主要有以下几点:

  (1)属性由属性名与属性值构成,中间用等号连接;

  (2)属性值必须使用单引号或双引号括起来;

  (3)属性的名称必须遵循与标签名相同的命名规范;

  (4)属性必须在元素的开始标签或空标签中进行声明;

  (5)一个元素中不能包含相同的属性名。

  除了上述的一些简介,XML文档的更多使用细节的学习大家感兴趣可以自行下去搜索学习,本文在此只是做一个满足我们日常IPEmotion应用的重要知识的总结和指引。

  看完上述的XML文档的结构与语法的总结,大家回过头来再看上文中的XML文档便一目了然,层次清晰。为了后续在IPEmotion中方便修改和验证解析XML文档,在此向大家推荐安装Foxe软件,该软件是是一款洁、快速的XML编辑器,功能完善,附带有完整帮助文档,并且是单一可执行文件。该软件的用户界面如下图所示。 

IPEmotion高级应用之XML使用

  3.XML文档在IPEmotion中的应用简介

  该部分我们将聚焦2个应用案例来和大家分享XML文档在IPEmotion中是如何进行应用的,并且XML的配置具体在IPEmotion中实现了哪些功能。

  3.1 XML文档在IPEmotion自定义公式中的应用

  很多时候为了满足客户的测量需求,往往需要我们自定义一些公式来计算处理所测得的物理量。当我们使用IPEmotion自定义公式的功能时,需要向IPEmotion提供3个相应的自定义文件来实现自定义公式的功能:

  (1)DLL文件,涵盖自定义公式的内部计算过程;

  (2)XML文件,使IPEmotion识别自定义公式并执行计算;

  (3)HTML文件,对自定义公式使用的帮助说明。

  上述3个类型的文件,其中DLL文件和XML文件是必须存在的,HTML文件作为自定义公式的提示说明并不是必须的。DLL文件由我们使用C 代码编写后生成,XML文件则负责对C 代码编写的公式完成描述。生成所需自定义公式的DLL文件和XML文件后,将其拷贝至以下目录:

  C:\User\Public\Documents\IPETRONIK\IPEmotion\Custom\UserOperation

  然后启动IPEmotion,在公式编辑器里我们便可以看到相应的自定义公式了。由此我们可以看出,XML文档是连接DLL文件和IPEmotion的桥梁,其重要性不言而喻。接下来我们以一个具体的自定义多项式公式为例,详细为大家演示说明一遍XML文档在自定义公式当中的应用。

  根据之前的讲解,我们首相需要用C 编写一个自定义公式的工程,本例所展示的自定义公式的cpp源文件的部分代码如下图所示:

IPEmotion高级应用之XML使用

  C 代码的解析和细节不在我们的讨论范围内,本文主要展示的是如何通过C 代码的简单阅读然后准确的完成我们所需XML文件。

  由上述的标注红线部分的代码我们可以大致看出,该自定义多项式(Polynom)所描述的计算过程。在此我们将源代码中的参数m_dA简写为a,测量通道m_pdSource简写为x,则该多项式(Polynom)为

  P=a2x ax a

  清楚了自定义多项式的通项公式后,大多数情况下其在C 工程中所编写的是一个功能函数,计算过程只是其中的一部分,所以我们还需要其他的信息将这个多项式函数描述在XML文档中描述完整。下图则展示在整个工程的头文件(.h文件)中对此自定义公式的一

  些声明。

IPEmotion高级应用之XML使用

  由此我们可以看出该工程包含的几个声明:

  CreateDisposeInitializeExecuteResetTerminate简要了解完这个自定义多项式工程后,接下来我们便要使用XML文档将其逻辑清晰,信息全面的描述出来以供IPEmotion准确的识别。下图便是这个自定义公式的整个XML描述文档,经过第二章的XML结构和语法介绍,想必大家读起来很轻松。

  我们可以清晰的看到XML文档依次对之前代码中声明的功能CreateDispose等进行了描述,元素description的内容“Polynom of type a*a*x a*x a”描述了这是什么公式,此段信息也将显示在IPEmotion中。同时从标签我们看出这个自定义公式有一个操作数(Operand),即上述公式中测量通道x;还有一个初始化参数(InitParam),即上述公式中的参数a。在此次演示中我们在XML文档将参数a赋值为4,则我们的计算公式变为如下:

  P=20X 4IPEmotion高级应用之XML使用

  完成准备工作后,将上述DLL文件和XML文档放入相应位置,然后再打开IPEmotion软件,打开该软件的公式编辑器,我们便可以从运算符的下拉菜单中找到自己所定义的公式,该公式的描述即为之前XML文档中的描述内容。具体示例如下图所示。

IPEmotion高级应用之XML使用

  最后一步,则是对该自定义公式功能的简单验证。我们在IPEmotion利用函数生成器生成一个正弦曲线,然后将正弦曲线的振幅作为该自定义公式的操作数。最后运行显示,计算结果如下几幅图所示。

IPEmotion高级应用之XML使用

  IPEmotion高级应用之XML使用

  IPEmotion高级应用之XML使用

  当我们将振幅设置为1、4、5时,对应的数值为24、84、104。很显然,结算结果满足之前的公式“P=20X 4”。到此为止,我们完成了自定义公式的创建和功能的测试,想必大家也更加立体感性的了解了XML文档在IPEmotion自定义公式中的使用。

  3.2XML文档在IPEmotion项目参数配置中的应用

  用户在使用IPEmotion进行车辆信号测量和相关的诊断时,往往需要生成一个对应的项目报告以便保存项目信息和测量数据。IPEmotion在原始的项目功能栏下,提供如下的默认参数列表:

IPEmotion高级应用之XML使用

  这样的项目列表显然显得过于死板,使用起来不够灵活。但是我们可以使用XML文档来自定义和修改默认的项目参数列表。IPEmotion软件分别提供2种自定义的项目参数列表,一种便是上述的用于项目功能分类下项目属性本身参数列表的定义和修改;另一种则用于信号功能分类下记录仪的本地项目设置的参数列表的定义和修改。

  上述2种自定义项目参数每种均需要2个XML文档,具体如下所示:

  ( 1 )projectPar.xml:用来定义记录仪的本地项目参数的名称和相关属性。

  ( 2 )projectData.xml:用来定义记录仪的本地项目参数的值。

  ( 3 )globalPar.xml:用来定义IPEmotion本身项目参数的名称和相关属性。

  ( 4 )globalData.xml:用来定义IPEmotion本身项目参数的值。

  需要注意的是,4XML文档的名称必须严格按照上述要求且不能更改,否则将无法实现自定义功能

  写好的XML文档放在如下目录:

  C:\User\Public\Documents\IPETRONIK\IPEmotion\ProjectTemplate

  完成以上操作后,打开IPEmotion软件便可以使用我们自己自定义的参数了。接下来我们以IPEmotion本身的自定义项目参数为例简要说明一下。

  首先我们将2个XML文档放在所需位置,

IPEmotion高级应用之XML使用

  接下来最为关键的就是XML文档的描述撰写,IPETRONIK官方为我们提供了相应的模板以供我们使用,在此不再赘述。以下2图则分别部分展示了此次演示我们所定义的参数名称和它们相对应的值。

IPEmotion高级应用之XML使用


IPEmotion高级应用之XML使用

  如上这张参数值定义的XML文档中,我们可以清晰的看到关于用户邮件参数的值我们定义LuoShuai@windhill.com.cnCheXiaoi@windhill.com.cnLiJunwei@windhill.com.cn。公司名称的值我们定义了WINDHILLBavarian Motor WorkMercedes-Benz等。

  最后我们打开IPEmotion的项目功能栏,具体如下所示:

IPEmotion高级应用之XML使用

  IPEmotion高级应用之XML使用

  由此我们看出XML文档所描述的功能在IPEmotion实现了显示和使用,上述便是XML文档在IPEmotion项目参数配置方面的应用,当然我们也可以不设置值的强制选项,自由填写也是可以的,只需在相应的XML文档做修改即可,更多的细节大家可以自行探索。记录仪的本地项目参数配置与此同理,在此不再演示。

  4.总结

  本文首先向大家简要介绍了XML文档的结构和语法,然后通过2个例子较为详细的向大家讲解和演示了XML文档在IPEmotion中的应用。之所以选此题目展开撰写文章,是因为XML文档在IPEmotion软件中的应用极为广泛,IPEmotion很多强大的参数配置和自定义功能均需要XML文档这个桥梁完成转接和搭建,故在此本人也只是浅谈XML文档在IPEmotion中的应用。有关更多的XML文档在IPEmotion配置中的应用,还需要我们大家一起不断的去探索、实践、交流学习。当然了,如果时间精力允许,可以将XML文档在IPEmotion中的使用作为一个专题,本人也会后续不断的跟进推出“XML浅谈二、XML浅谈三”等。 

点击进入北京风丘科技有限公司展台查看更多 来源:教育装备采购网 作者:风丘科技 责任编辑:方剑波 我要投稿
校体购终极页

相关阅读

  • 工程机械比例阀电流采集方案

    工程机械比例阀电流采集方案
    教育装备采购网10-25
    自从一带一路和新基建计划的实施,工程机械的需求量也迅速增加。而关于工程机械,比例阀的控制问题是不容忽视的。比例阀是一种新型的液压控制装置。在...
  • 基于ISO13209(OTX)实现EOL下线序列

    基于ISO13209(OTX)实现EOL下线序列
    教育装备采购网01-17
    WhatisOTX?OTX,全称OpenTestSequenceExchangeFormat:开放式测试序列交换格式,国际标准:ISO13209,是专为汽车行业制定的序列开发标准。在车辆诊断...
  • VisualODX--ODX自动转换工具

    VisualODX--ODX自动转换工具
    教育装备采购网12-11
    在创建ODX数据库过程中,我们需要录入大量的数据及应对多种数据格式,无论时间、人力成本都比较高,且错误率高,从而导致效率低下;开发速度缓慢;基于...
  • FlexPro高级应用之模板定制

    FlexPro高级应用之模板定制
    教育装备采购网08-22
    目前汽车测试过程中产生的数据越来越多,减少数据处理过程的重要性也逐渐凸显,FlexPro是一款出色的数据库处理软件,在数据管理、分析与显示方面具有强...
  • K2L网络仿真、分析与测试解决方案

    K2L网络仿真、分析与测试解决方案
    教育装备采购网07-08
    汽车分布式设备和系统的开发周期复杂、耗时。因此有一个强大的工具可以使这一工作更容易。K2L的OptoLyzerStudio是一款支持设备和系统开发的软件,支持...
  • 车载以太网记录仪解决方案

    车载以太网记录仪解决方案
    教育装备采购网06-28
    随着车载ECU数量的和数据量的日益增大,与此同时ADAS、自动驾驶等汽车技术的发展需求的诞生,现有的车辆总线网络,如:CAN(FD)、FlexRay等,已经远远无...
  • 竞品车测试方案

    竞品车测试方案
    教育装备采购网06-20
    实施整车竞品数据分析,可以更加了解竞争对手的技术发展趋势,改进自身产品竞争力,通过质量、工艺、设计、性能等多方对标分析,掌握本企业的优势及劣...
  • 车辆OBD数据采集

    车辆OBD数据采集
    教育装备采购网06-17
    OBD接口作为车载监控系统的通讯接口,除了读取故障码以供修车外,首要的功能就是可以提供车辆的各种工况数据,如燃油压力、发动机空气流量、车速等。O...

版权与免责声明:

① 凡本网注明"来源:教育装备采购网"的所有作品,版权均属于教育装备采购网,未经本网授权不得转载、摘编或利用其它方式使用。已获本网授权的作品,应在授权范围内使用,并注明"来源:教育装备采购网"。违者本网将追究相关法律责任。

② 本网凡注明"来源:XXX(非本网)"的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,且不承担此类作品侵权行为的直接责任及连带责任。如其他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。

③ 如涉及作品内容、版权等问题,请在作品发表之日起两周内与本网联系,否则视为放弃相关权利。

校体购产品