(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf_第1页
(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf_第2页
(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf_第3页
(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf_第4页
(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(车辆工程专业论文)多功能汽车发动机ecu解码器研发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 本文通过收集和研究国内外资料,介绍了发动机e c u 解码器的特点,并结合现有产品价格昂 贵、功能不全和操作复杂等缺点确立了下列研究目标: 1 具有常规解码器的各种功能,并大幅降低成本。 2 增加故障码解释、虚拟示波器功能,并建立强大的数据库。 3 具有较强的通用性。 4 使操作尽量简单,并且符合操作习惯。 本文围绕上述既定研究目标,设计了相应的硬软件,特别是在软件上用c 语言编写了动态连 接库d l l 供虚拟仪器软件调用。并根据人体操作习惯,用l a b v i e w 编程语言设计了节省空间的翻 页式操作界面,使得操作简单且不易出错,之后完成总体布局,根据室内、室外试验进行多次的 改进,最后在北汽福田怀柔分厂进行了现场试验,验证了本虚拟解码器完成了预定的研究目标。 关键字:e c u ,l a b v i e w ,解码器,数据流控制,通讯协议 a b s t r a c t i nt h ef i r s tp l a c e ,t h i sp a p e ri n t r o d u c e st h e d e c o d i n gi n s t r u m e n to fa u t o m o b i l ee n g i n ee c ua n di t s c h a r a c t e r i s t i cb ym e a n so fc o l l e c t i n ga n di n v e s t i g a t i n gi n f o r m a t i o na th o m ea n d a b r o a d s e c o n d l y ,i t e s t a b l i s h e st h ef o l l o w i n gi n v e s t i g a t i o nt a r g e t sb yc o m b i n i n gt h ed i s a d v a n t a g e so f p r o d u c ti ne x i s t e n c e 1 h a v i n ga l lk i n d so ff u n c t i o no ft h er o u t i n ed e c o d i n gi n s t r u m e n ta n dd r i v i n gc o s t sd o w n l a r g e l y ; 2 a d d i n gt h ef u n c t i o n so fe x p l a i n i n gf a u l tc o d e ,v i r t u a lo s c i l l o g r a p ha n da c c e s s i n gd a t a b a s e ; 3 b e i n ga b l et ou s e di nc o m m o nc u r r e n c y ; 4 m a k i n gt h eo p e r a t i o ne a s ya n da c c o r d i n gw i t ht h eo p e r a t i o nc u s t o m i nt h i sp a p e r , t h ea u t h o rd e s i g n sc o r r e s p o n d i n gh a r d w a r ea n ds o f t w a r e ,e s p e c i a l l yi ns o f t w a r ed e s i g n ad i lw h i c hc a nb eu s e db yl a b v l e w , i sd e s i g n e db yt h ea u t h o ru s i n gp r o g r a mc i ns o f t w a r ed e s i g n w e bo p e r a t i o ni n t e r f a c e ,w h i c hm a k e st h eo p e r a t i o nm o r ec o m f o r t a b l e ,i sd e s i g n e da n dt h ee n t i r e t v d e s i g ni sc o m p l e t e d m u c hi m p r o v e m e n ta f t e rm a n ye x p e r i m e n t si n d o o ra n do ns i t e ,a n da ne x p e r i m e n t w i t ht h ei n s t r u m e n ti nb e i o if o t o nm o t o rc o l t di sm a d ea n dt h er e s u l ts h o w st h a tt h ev i r t u a le c u d e c o d i n gi n s t r u m e n tf u l f i l l st h ei n v e s t i g a t i o nt a r g e t s k e yw o r d s :e c u ( e l e c t r o n i c a l l yc o n t r o l l e du n i 0 ,l a b v i e w , d e c o d i n gi n s t r u m e n t , d a t as t r e a m c o n t r o l ,c o m m u n i c a t i o np r o t o c o l j l 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发 表或撰写过的研究成果,也不包含为获得中国农业大学或其它教育机构的学位或证书 而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明 确的说明并表示了谢意。 研究生签名 时问:年月日 关于论文使用授权的说明 本人完全了解中国农业大学有关保留、使用学位论文的规定,即:学校有权保留 送交论文的复印件和磁盘,允许论文被查阅和借阅,可以采用影印、缩印或扫描等复 制手段保存、汇编学位论文。同意中国农业大学可以用不同方式在不同媒体上发表、 传播学位论文的全部或部分内容。 ( 保密的学位论文在解密后应遵守此协议) 研究生签名 一、 刷磁轹劣孙 时间:年月日 阃:一年rt 日 淞 第一章绪论 1 1 课题背景 发动机是汽车的大脑,也是汽车各个系统当中结构最为复杂的,所以作为汽车发动机大脑的 电子控制单元( e c u ) 也就要获取更多的信息,分析各种参数利用各种所得的信号以及指令来指 挥各种执行器件,从而完成各种工作使得发动机能够正常工作。e c u 主要靠各种传感器来获得信 号,这些传感器放人们安装在发动机的各个部件上,来获取这些部件的工作信息并及时或定期汇 报给e c u ,e c u 则根据这些传感器所汇报的信息来判断发动机各个部件是不是在正常工作。如 果得到不正常的信号或错误信号那么就代表该部件出了问题不能正常工作。 现代汽车电控技术设计人员,在进行汽车电子控制系统设计的同时,增加了故障自诊断功能 模块。它能够在汽车运行过程中不断监测电子控制系统各组成部分的工作情况,如有异常,根据 特定的算法判断出具体的故障并以代码形式存储r 米,同时起动相应的故障运行模块功能,将 车辆调整为故障运行模式,使有故障的汽车能够被驾驶到修理厂进行维修,维修人员可以利用汽 车故障自诊断功能调出故障码快速对故障进行定位和修复。因此,从安全性利维修便利的角度 来看,汽车电控系统都应配备故障自诊断功能。 本设计就是基于汽车发动机电子控制系统的自诊断功能设计而开发的。 1 1 1 自诊断的原理与故障运行 汽车正常运行时,电子控制单元e c u 的输入、输出信号的电压值都有一定的变化范围,当 某一信号的电压值超出了这一范围,并且这现象在一段时间内不会消失,e c u 便判断为这一部 分出现故障。e c u 把这一故障以代码的形式存入内部随机存储器( r a m ) ,同时点亮故障检查灯 ( 如c h e c ke n g i n e ,s r s ,a b s 等指示灯) ,这就是故障白诊断的基本原理。当某电路产生 了故障后,其信号就不能作为发动机的控制参数而使用。 为了维持发动机的运转,e c u 便从其程序存储器( r o m ) 中,调出某一固定值,作为发动 机的应急参数,保证发动机可以继续运转。当e c u 中的微机系统出现故障时e c u 自动启用后 备控制回路对发动机进行简单控制,使汽车可以开回家或是到附近的汽修厂进行修理,这样的功 能就是故障运行功能模式,又称“跛行”模式。另一方面,当e c u 检测到某一执行器出现故障时, 为了安全起见,采取一些安全措施。这种功能称为故障保险模式。 e c u 故障诊断是针对系统中的传感器、微机系统和执行器件而进行的。当传感器或微机发生 故障时,往往启动故障运行功能模式;而当执行器件发生故障时,往往启动故障保险模式。但是 不管是那一种功能模式,都只能在短时间内运行,因为两种模式都是人为设计的应急模式,在应 急模式下,发动机不是: = 作在最佳工况下,而是在一种仅仅能使发动机工作一段时间,而不考虑 其他影响的最底线工况下。 自诊断设计思路的加入,使得发动机故障检查由一项复杂的任务简化了许多,并且由于自诊 中国农业大学硕士学位论文第一章绪论 断系统具有警报和储存故障代码的功能,使得汽车在行驶的时候,可以由司机判断发动机是否出 现故障,到汽车修理厂后,可以用检测仪器很方便的找到故障所在,使修理工作更简单并有针对 性:而故障运行模式则为上述情况提供“桥梁”。即将“故障车辆”安全的行驶到修理厂。 自诊断系统到现在已经发展了好几代,目前绝大部分汽车发动机e c u 都是配置的o b d i i 自诊断系统。 1 1 2o b d i i 自诊断系统介绍 o b d i l 是o n b o a r dd i a g n o s l n c s 的缩写。即第二代随车自诊断系统。它提供统一的 诊断模式和统一的诊断座,只要通过一台检测仪器( 例如发动机e c u 解码器) 即可对车辆进行 诊断不但可以进行白诊断测试。提取故障码、显示和清除故障码,还可以对系统进行基本设定、 读取测量数据、对控制单元进行编码、对发动机怠速进行调整等多种功能。 除了具有功能更加强大,工作更加稳定、可靠以外,o b d i i 较前一代自诊断系统相比还有 很多特点,主要的特点如下: 、 1 提供统一形式的1 6 端子插口,以用来向外界输出信息。 2 具有数值分析,资料传输的功能。 3 统一故障码的含义,o b d i i 系统定义故障码是由一位识别字母和四位数字组成,例如故障 码p 0 1 1 0 ,其中p 是指发动机系统的故障码,0 1 1 0 则代表具体的故障。 4 具有行车记录功能,能记录车辆行驶过程的有关数据。 5 具有重新显示所记忆的故障码的功能。 6 可由检测仪器清除故障码的功能。 另外,为了减少m i l 灯被误点亮的机会,o b d 1 1 系统设计规定如下,某一类故障需要在相 同的行驶工况下探测到两次,m i l 灯才能点亮。 1 2 国内外产品分析 1 2 1 现有产品市场调研 目前市场上所出售的解码器,通常分为原厂解码器和非原厂解码器两种。二者各有特点,也 各有不足。 所谓原厂汽车解码器即是指由汽车制造厂家提供或指定配置的解码器,如奔驰汽车用h h t , 宝马汽车用m o d i c 。大众( 奥迪) 汽车用w 婚1 5 5 1 ,丰田汽车用i n t e l u g e n tt e s t e r ,日 产汽车用c o n s u l t - i i i 等等。一般来讲每个汽车制造厂家都有针对自己所生产的各种车系的 原厂解码器以便能为自己生产的汽车提供更好的售后检测、维修服务。 非原厂仪器则不是汽车制造厂家提供或指定的,而由一些仪器设备生产厂商生产的汽车解码 器,如德国博世公司的k t s 3 0 0 5 0 0 ,美国的红盒子s c a n n e rm t 2 5 0 0 ,瑞典的a u t o d g a g n o s , 国内公司生产的电眼睛、修车王、车博士等等。 中国农业大学硕士学位论文第一章绪论 原厂解码器是汽车制造厂家生产或指定专门为自己所生产的汽车来提供服务的,一般只能 诊断本公司的各种车系,不能检测其它公司生产的汽车,就像i n t e l l i g e n t t e s t e r 只能检测 丰田汽车公司生产的包括凌志、佳美、皇冠、亚洲龙、大霸王和花冠等一系列丰田车系,而对宝 马、奔马、福特、日产等车系就无能为力了。和原厂解码器相比,非原厂解码器一般可以检测多 种不同汽车制造厂家所生产的各款车型,如k t s 3 0 0 5 1 0 0 就可以诊断欧洲的奔弛、宝马、大众f 奥 迪1 、保时捷和欧宝等多款不同厂家生产的车系。 价格上原厂解码器要比非原厂解码器昂贵许多,但两种解码器就检测功能和效果来说( 如果 单针对同一种车系) ,非原厂解码器是比不上的原厂解码器的,就好像对于检测宝马车系,k t s 3 0 0 是远远比不上m o d j c 的,因为某些车系的部分电控系统是非原厂解码器无法检测到的,这也是 两者价格相差一定距离的原因之。所以原厂解码器一般只有大型的汽修中心,或者某汽车生产 厂家的特约维修站点才配置,而一般的中小型汽修厂则只配备了非原厂解码器。 1 2 2 现有产品的不足 1 价格昂贵,即使非原厂解码器价格也很高,例如,金奔腾系列的汽车电脑解码器的售价一直 高居不下,目前市场单价均在七八千元左右。 2 操作不便,由于空间有限各个旋钮的布置非常紧凑,所以操作很麻烦,一些小型的解码器 的操作很容易出错。 3 功能不全,由于硬件、软件的限制,常规解码器不具备许多实际很需要的功能,例如,参数 示波显示,以及数据库功能。 1 3 研究内容和方法 1 3 1 研究目标 通过对现有产品的系统构成、特点和功能的比较平u 分析,设计出一套基于虚拟仪器技术( 采 用l a b v i e w 软件) 用笔记本电脑代替解码器主机的新型发动机e c u 虚拟解码器,井要求解码器 具有以下功能: 1 故障码读取和消除功能以及显示其含义 由于新的o b d i i 诊断系统所定义的故障码有上百个之多,所以完全记住各个故障码的含义 或者临时查阅都会很麻烦,所以就需要设计一种既能把车载电脑内存储的故障码,以代码加故障 释义的形式在屏幕上同步显示,又能清除e c u 内存储的故障码。其j 二作流程初步设计如下: ( 1 ) 读取并记录所有故障码 ( 2 ) 清除所有故障码 ( 3 ) 确认故障码已经被清除 ( 4 ) 司机模拟故障产生的条件并进行路试 ( 5 ) 再读取并记录此时的故障码 3 中国农业大学硕士学位论文第一章绪论 ( 6 ) 区分间歇性故障码( 软故障码或无关故障码或历史故障码) 和持续性故障码( 当前故障 码或相关故障码或硬故障码) ( 7 ) 区分与故障症状相关的故障码和无关的故障码 ( 8 ) 区分诸多故障码或相关故障码中的主要故障码( 它可能是导致其他故障码产生的原因) ( 9 ) 按照上述分析,进一步精确地检查测量故障码所代表的传感器、执行元件或控制电脑及 相关的电路状态,以便确定故障点发生的准确位置 ( 1 0 ) 得出检测结果 2 数据流的动态显示功能 配置有微机故障自诊断系统的汽车,都可以用车用电脑检测仪器,读取汽车各个电控装置微 机通过诊断插座向外输出的,反映发动机工况的发动机各部件工作参数,维修人员可以通过对数 据流中的各项参数进行数值分析,判断电控装置的工作是否正常,为查找一些e c u 自诊断系统 没有诊断到的故障原因提供依据。 数据流中的参数有两种形式,即数值参数和状态参数。数值参数是有一定单位、一定变化范 围的参数,它通常反映出电控装置工作中各部件的工作电压、压力、温度、时闯、速度等;状态 参数是那些只有两种工作状态的参数,如开或关、闭合或断开、高或低、是或否等等,它通常表 示电控装置中的开关和电磁阀等元件的工作状态。 在进行数值分析时,首先应分清读出的各个参数是电控装置中的传感器输送给微机的输入信 号,还是微机送出给电控装置执行器的输出指令。输入信号参数可以是状态参数,也可以是数值 参数。输出指令参数大部分是状态参数,也有少部分是数值参数。数据流中的参数可以按汽车和 发动机的各个系统进行分类。不同类型或不同系统的参数的分析方法各不相同。在进行电控装置 故障诊断时,还应当将几种不同类型或不同系统的参数进行综合对照分析。不同厂牌及不同车型 的汽车,其电控装置的数据流参数的名称和内容都不完全相同。 目前常见汽车电控装置数据流中的各个参数按不同的系统和类型分类,并说明其含义、参数 的形式及数值的单位和变化范围。由于不同车型的微机决定了自己的数据参数的内容,因此,在 检测某一车型时,发动机所有的参数只有部分会在检测仪上显示出来。 3 数据库访问功能 在实际检测中,往往需要创建一个数据库来管理测试任务、存储测试数据、总结测试结果, 但是就目前市场上所有的原厂解码器和非原厂解码器都没有此项功能,所以我们就要在设计虚拟 解码器的时候,利用计算机平台的硬件和软件的优势,实现虚拟解码器的数据库访问功能。 4 示波器功能 因为在解码器的显示发动机工况数据流功能中很多传感器和执行器的信号是采用电压、频 率等以数字的形式显示的,在发动机实际运转过程中,由于i 信号变化很快,我们很难从这些不断 变化的数字中发现问题所在,所以就要求此解码器自带发动机参数曲线示波器功能。对电控发动 机系统里的曲轴传感器信号、凸轮轴传感器信号、氧传感器信号、空气流量计信号、喷油嘴信号、 怠速电机控制信号以及点火控制信号等一系列信号,用图示波形的方式直观的提供给检测员作参 考。之后我们用所测到信号波形与标准信号波形相比较,如有异常之处则表示该信号的控制线路 或电子元件本身出现了问题,需要进一步详细检查。 5 要有较强的通用性 4 中国农业大学硕士学位论文第一章绪论 尽管o b d i i 提供统一形式的1 6 端子插口用于输出信息,但是现在各种不同的车系或车种的 发动机e c u 所提供的插口的各个端子( 针) 的定义和作用也不完全相同。例如单凭经验,( a ) 通用轿车和轻型卡车使用s a ej 1 8 5 0v p w ( 可变脉冲宽度调制) 通讯模式,这种插头在引脚2 、 4 、5 和1 6 ,有一个金属插片,但1 0 脚没有即这个插头必须有引脚2 ,4 ,5 ,和1 6 ,但没有1 0 。 ( b ) 克莱斯勒和所有欧洲及大部分亚洲进口汽车产品使用i s 0 9 1 4 1 通讯模式这种插头必须有 引脚4 , 5 ,7 , 和1 6 但是1 5 脚可能有也可能没有。( c ) 福特使用s a e j l 8 5 0p w m ( 脉冲 宽度调制) 通讯模式,这种插头必须有引脚2 ,4 , 5 ,1 0 , 和1 6 。 这就给我们的设计带来了两个问题:一是不同汽车发动机e c u 插口的外形不同;二是不同 汽车发动机e c u 插口的通讯协议不同。这里我们给出解决方法:一是采用这样一种接线,一端 接电脑,另外一端则分成三四个插头分别可以满足世面上不同的发动机e c u 插口;二是在电脑 中储存各种通讯协议,并编写一套程序可以根据所用的接线插头来判断是那一个通讯协议,并且 可以自动调用本通讯协议。这样即使不同的车辆发动机e c u 出现故障,只要维修人员靠眼睛选 择好接线的插头就可以自动连接发动机e c u 并且读取信息。 6 。 其他人性化设计 主要是一些细节方面的设计,要力求作到下面几点: ( 1 ) 界面简洁操作简单 ( 2 ) 汉语显示 ( 3 ) 操作界面具有输入信息暂时储存功能 ( 4 ) 解码器为即插即用式 ( 5 )软件可升级 1 3 2 研究内容 1 总体设计 包括确定技术指标,器件选择,硬软件的功能划分。 技术指标的确定:根据所确定的系统功能和技术要求,综合考虑系统的先进性、可靠性、可 维护性和成本、经济效益,再通过与同类产品的比较,提出合理可行的技术指标,以达到最高的 性能价格比。 元器件选择:根据系统精度、速度、可靠性等方面的要求,选择传感器、输入输出电路等器 件和设备。 硬软件的功能划分:系统硬件的配置和软件的设计是紧密联系在一起的,而且在某些场台, 硬件和软件具有一定的互换性。多用硬件完成一些功能,可以提高工作效率,减少软件开发的工 作量,提高可靠性,但增加了硬件的成本。若用软件代替某些硬件的功能,可以节省硬件开支 但增加了软件的复杂性。所以根据系统功能的要求综合考虑,合理分配硬软件的功能,使得系统 具有较高的可靠性和性价比。 2 硬件设计 由于各个车系的e c u 所采用的通讯协议不同,所以e c u 插口向外输出的数据的类型,以及 控制电压都不同,有的是直接可以利用串口线和电脑相连接的,有的则不能。 s 中国农业大学硕士学位论文第一章绪论 所以我们要设计一个电路。能将发动机e c u 所输出的信号转变为普通电脑可用的串口2 3 2 型的信号,接入计算机。 3 软件设计 软件设计主要为计算机的控制软件,采用l a b v i e w 编写。这个软件可提供用户友好的界面, 它通过接口电路与发动机e c u 进行通信,可以从e c u 中读取并显示故障码和发动机的各个部件 的工作状态参数,又可以对发动机的各个执行部件发出命令用来检查执行部件是否出故障。用户 只需点击操作界面上的相应按钮就可以发送相应命令给解码器,让它执行相应的操作。例如,开 始读取故障码,查看故障码含义等第。 1 3 3 研究方法 首先明确与发动机e c u 以及解码器相关的概念投相关术语的描述。包括:通讯协议、故障 码、数据流等等。 其次明确发动机e c u 解码器的要求。包括:组成、功能、数据分析软件、数据安全性等等。 最后通过对现有产品的分析,找出存在的问题,提出解决的方法,结合其优点,制定出总的 系统开发方案。 本论文主要完成可满足各种通讯协议的接口电路设计,以及基于l a b v i e w 的系统控制软件 的开发,现在基于l a b v i e w 软件的虚拟仪器开发的各种技术都很成熟,可以参考和借鉴。同时, 也可以将现有产品做参照来进行比较。本课题希望解码器对于不同车型、插座、通讯协议的通用 性,以及人性化设计的操作界面有所突破。拟采用口多端”的连接线路和通讯协议的自动识别 的软件设计来满足解码器对不同车型、插座和通讯协议的通用性。 1 4 研究意义 随着汽车工业的飞速发展应用于汽车上的发动机电控系统、电控自动变速箱、a b s 防抱死 制动、s r s 安全气袋等等都或多或少的采用了电子控制系统,所咀作为维修行业的故障检修方法 也已由人工经验诊断发展到靠相应的仪器设备来进行诊断,尤其是某些进口高档车的电子控制系 统只能靠仪器设备才能进行诊断,而在这些从多的仪器设备当中我们使用的最普遍的是电控系统 检测仪,也就是各种汽车电脑解码器。 本课题仅以汽车发动机e c u 解码器为例,研究设计出一种基于虚拟仪器技术的新型多功能 的,操作简单的解码器作为突破口,解决现在世面上的各种解码器的功能及价格上的不足,井以 此课题为基础,以待为将来设计可以检测汽车各种电控系统e c u 的一机多用解码器做准备。 6 第二章虚拟仪器介绍及编程准备工作 2 1 虚拟仪器概述 虚拟仪器是以计算机为硬件工作平台,用计算机的显示器来模拟替代传统仪器的显示面板, 利用现代计算机技术、信号控制技术来实现信号的采集、分析、运算和处理。是目前自动测试技 术及测量仪器与系统的重要发展方向。其主要特点和优点如下: 1 利用现代计算机的特点 基于p c 机的虚拟仪器系统,诞生以来就充分利用了现成即用的p c 机所带来的晟新科技。 比如功能强大的处理器( 如p e n t i u m4 ) 、操作系统及微软w i n d o w s x p 、n e t 技术和a p p l e m a c o sx 。此外,传统仪器往往不便随身携带,而虚拟仪器可以在笔记本电脑上运行,充分体现 了其便携特性。 2 灵活性 除了专用的元件和电路,独立式传统仪器的基本框架其实类似于基于p c 机的虚拟仪器。两 者都需要一个或多个微处理器、通讯端口洳串口、g p i b 接口) 、显示功能及数据采集模块。 其根本区别在于两者不同的灵活性,用户是否能够根据各自不同的要求对其进行修改和扩 展。一台传统仪器可能包括一套集成电路用于实现特定的数据处理功能;而在虚拟仪器中, 只需在p c 处理器上运行软件程序即可实现这些功能,而且,还可以方便地对这些功能加以 扩展。 3 低价位 使用虚拟仪器解决方案,可以大幅降低资金投入、系统开发成本和系统维护成本。 4 插入式和网络化硬件 创建虚拟仪器时,有各种各样的硬件供您选择,从计算机插入式到网络化硬件,应有尽有。 这些设备提供一系列的数据采集功能,其价格却比专用仪器设备低廉很多。 2 1 1 虚拟仪器的硬件平台 虚拟仪器技术是采用计算机技术对传统仪器的部分或全部功能进行软化,通过灵活的控制软 件和仪器软面板( 虚拟界面) 更好地实现仪器的测量和控制功能的个人化计算机仪器。它把计算 机资源( 微处理器、储存器、显示器等) 和通用的模块化功能硬件( 信号调理、a d 、d a 、高 速缓冲、数字i o 等) 以及用于数据采集、过程通信、数据分析和图形化编程的应用软件有效的 结合起来。 虚拟仪器技术的基础是汁算机技术。计算机总线技术和软件技术是推动虚拟仪器技术发展的 关键技术。 7 2 1 2 虚拟仪器的软件平台 讲到虚拟仪器,不能不提革命先锋美国国家仪器公司( n a t i o n a li n s t r u m e n t s ,咀下简称 n i ) ,n i 提出“软件就是仪器”的口号,彻底打破了传统仪器由厂家定义,用户无法改变的模式,该公 司已研究及制作数以百计的综合软件与硬件产品,在配合标准电脑使用时,即可取代传统仪器( 或与 之连接通讯1 圾监控工序流程。n i 目前正致力于发扬新的解决方蔻协助工程师、科学家以更快、 更好、更低于预算达到他们的目标。这里提出介绍的都是n i 研制的虚拟仪器产品,让各位深入认 识其优点。 软件是虚拟仪器系统的关键。所以,提高软件编程效率也就成了一个非常现实的问题。根据微 软件及其他电脑应用软件工业家的观点,在当今这个信息时代,提高软件编程效率的关键是采用面 向对象的编程技术,但是,仅有面向对象的编群技术还是不够的,因为不可能让所有人都去学习复杂 的c c + + 语言,同时成为行业专家和编程专家。为此,在这里特地为你推荐两种虚拟仪器的开发平 台l a b v i e w _ 和l a b w i n d o w s ,这两种编程语言以简单直观的编程方式,配合众多的设备驳动程序, 把复杂、烦琐、费时、难学的语言编程简化成用功能方框图、或实体图形,通过简单的连线方式, 这样便完成程式设计。并设有自动除错及测试功能,令程式开发时间大为缩短。 l a b v i e w 和l a b w i n d o w s 在实质上是完全一样的 2 2l a b v i e w 软件介绍 l a b v i e w 是美国n i 公司推出的虚拟仪器中最重要的软件平台。它为仪器开发者提供了一 个简单易用的程序开发环境,特别考虑了工程师和科学家们的需要而专门设计。l a b v l e w 提供 的强大特性让用户可以非常方便地连接各种各样的硬件产品和其它软件产品。其主要特点如下: 1 图形化编程软件 l a b v i e w 为工程师和科学家们提供的最有力的特性就是图形化的编程环境。您可以使用 l a b v i e w 在电脑屏幕上创建一个图形化的用户界面,如图2 1 所示,即可设计出完全符合自己 要求的虚拟仪器。通过这个图形界面,可以: 操作仪器程序 控制硬件 采集数据 分析采集到的数据 显示结果 图2 1 :l a b v i e w v l ( 虚拟仪器1 前面扳 2 降低成本、确保投资 用l a b v i e w 开发的虚拟仪器证明是最经济的选择。一方面,只需极低的系统开发成本,另 一方面,从跃远的来看它也能保证投资资金的安全、不浪费。当测量需要发生变化时,无需购置 新的仪器设备即可轻松对其进行修改或扩展。可以开发完整的仪器库以备后用,其费用远远低于 购买一台传统的商用仪器。 3 支持多平台 大部分计算机使用的都是微软公司的w i n d o w s 系列操作系统。然而,也有些其它的选择对 某些特定应用来说有着显而易见的优势。随着计算机运算功能的增强和体积的缩小,实时和嵌入 式开发的应用在多数工业领域均有迅猛增长。这使得减少不断更换开发平台所带来的损失变得格 外重要,而选择正确的软件则是解决这个问题的关键所在。 4 分析功能 在虚拟仪器系统中,将信号采集到电脑中并不意味着任务己经完成,通常还需要利用软件完 成复杂的分析和信号处理工作。l a b v i e w 提供了大量的分析工具,成熟的算法,方便了软件的开 发。 5 可视化功能 l a b v i e w 提供可视化工具用于显示数据:从图表到幽形、从2 d 到3 d 图形都可以显示。 9 2 3l a b v i e w 调用d l l l a b v i e w 可以调用任何语言( 如v i s u a lc + + ,c + + b u i l d e r , v i s u a lb a s i c ) 编写生成的动态链接 库d l l ( d y n a m i c l i n k l i b r a r y ) 。调用时l a b v i e w 所能支持的参数类型有:通用数据类型( 空类 型、整型、字符型、浮点型) 及其指针、字符串、数组。 若调_ i = j 已存在的本机d l l ( 女h u s e r 3 2 d l l 、k e r n e l 3 2 d 1 1 ) 用户必须通过查阅相关文档( 如对于 w i n 3 2 a p i s 查阅m s d n ) ,弄清楚被调用的d l l # 行含的目标函数的原形,而且l a b v l e w 应用程 序的实参类型要与目标函数虚参类型相匹配。此时,调用规范一般为w i n a p i ( 。若自_stdcall) 己编制d l l m u 应根据应用程序的需要,确定参数个数和参数类型及调用规范,然后在l a b v i e w 中 正确地配置d l l o 、 在本课题的研究当中,为了将主程序做的更加模块化、简单明了化,把程序中和汽车发动机 e c u 通讯的部分用c 语言做成程序段,然后开发成动态连接库d l l ,在l a b v l e w 中利用c a l ll i b r a r y f u n c t i o n j i 3 点( n o d e ) 访问动态连接库。下面是在l a b v i e w 中溺用动态连接库的主要特点: 1 调用d l l s 可以用c 语言或s t d c a l l 调用习惯: 2 能用整数或浮点数的任意数组: 3 l a b v i e w 字符串能通过c 或p a s c a l 字符指针: 4 可以用空( v o i d ) 、整数( i n t e g e r ) 、何浮点数( f l o u t ) 指针作为返回值。 2 3 1 仪器通讯动态链接库( d l l ) 的建立 动态链接是一种应用程序在运行时与库文件连接起来的技术。动态链接库是在应用程序运行 时被装入和链接的,而不是把源代码复制到应用程序中去,因此使用动态链接库可以实现多个应 用程序之间代码和资源的共享。 在本设计中我们将虚拟解码器与发动机e c u 的通讯程序段做成一个可以调用的d l l ,具体的 做法如下: 1 编写c + + 源程序文件( 文件名为d a t e r c p p ) 。 # i n c l u d e ”m a t h h ” # i n c l u d e ”a f x w i n h ” # i n c l u d e ”c o n i oh ” u n s i g n e di n tn u m ; u n s i g n e dl o n gm _ n v a l u e ; u n s i g n e di n tm n l o n g ; d o u b l em n d o u b l e ; c s t r i n gm _ c s t r i n g ; h a n d l eh c o m l ; u n s i g n e dl o n gm _ n s e n s o r ; u n s i g n e di n tc o m m _ p o r t l ; 1 0 u n s i g n e di n tc c up o r t ; u n s i g n e dc h a re h d a t a s o l ; u n s i g n e dc h a rm _ c h d a t a 1 0 l ; u n s i g n e dl o n gmn e c l o c k ; v o i de c u s e d a i s e t 4 1 0 0 脚始化串口 1 1 1n e c l o c k :7 5 0 0 0 0 : :定y - 常数x x x c l o s e h a n d l e ( h c o m l ) ; 关闭串口1 d c bd c b ; b o o l f s u c c e s s ; c o m m t i m e o u t st i m e o u t s ; c h a r * p c c o m m p o r t l = 一c o m l 。;指定p c , u 为串u 1 c o m mp o r t l :0 x 3 1 8 : $ 1 2 地址为0 x 3 f 8 h c q m l = c r e a t e f i l e ( p c c o m m p o r u ,g e n e r i cr e a dig e n e r i c _ w r r i 下, 0 、州叱o p e ne x i s t i n g ,0 ,n u l l ) ; i ff h c o m l = = i n v a l i d _ h a n d l e _ v a l u e ) a f x m e s s a g e b o x ( ”串口1 打开失败! _ 1 ) ; r e t u m ; t s u c c e s s = g c t c o m m s t a t e ( b c o m l ,d c b ) ; i f ( ! f s u c c e s s ) t e t u r r t ; d c b b a u d r a t e = c b r 1 4 4 0 0 ; d e b b y t e s i z e = 8 : d c b p a r i t y = n o p a r i t y ; d c b s t o p b i t s = o n e s t o p b i t f s u c c e s s = s e t c o m m s t a i e f h c o m l ,d c b l ; i f ( f f s u c c e s s ) r e t u r n ; t i m e o u t sr e a d i n t e r v a l t i m e o u t = 2 0 ; t i m e o u t sr e a d t o i a l t i m e o u t m u l t f p l i e r = 1 0 ; t i m e o u t sr e a d t o t a l t i m e o u t c o r l s l a n t = 1 0 0 ; t i m e o u t sw r i t e t o t a l t i m e o u t m u l t i p l i e r = 1 0 ; t i m e o u t sw r i t e t o t a l t i m e e u t c o n s t a n t = 1 0 0 ; 波特率= 1 6 4 0 0 d a t as i z e , x m i ta n df c v 1 1 0p a r i t yb i t | o n es t o pb i t i f ( ! s e c c o m m t i m e o u t s ( h c o m l ,& t i m e o u t s ) ) r e t u r n ; i n te c u _ s e n d ( u n s i g n e dc h a rc o m m a n d ) u n s i g n e dl o n gi n tn u m b e r ; u n s i g n e di n tn u m ; u n s i g n e dc h a rd a t a ; e c u _ p o r t = c o m m _ p o r t l ; d a t a = _ i n p ( e c up o r t + 5 ) ; w h i l e ( d a t a & 1 ) d a t a = _ i n p ( e c up o r t ) ; d a t a = i n p ( e c up o r t + 5 ) ; d a t a = 一i n p ( c c up o r t + 5 ) ; w h i l e ( ! ( ( d a t a 5 ) & 1 ) ) d a t a = _ i n p ( e c u _ p o r t + 5 ) ; _ o u t p ( e c up o i _ c ,c o m m a n d ) ; d a t a = _ i n p ( e c up o r t ) ; n u m = o ; n u m b e r = 0 ; w h i l e ( n u m b e r ) 5 ) 1 ) ) d a t a = _ i n p ( e c up o r t + 5 ) ; o u t p ( e c uo o r t ,c o m m a n d ) ; d a t a = 一i n p ( e c u a a o a ) ; h u m = 0 ; n u m b e r = 0 ; w h i l e ( n u m b e r 3 0 0 0 0 0 ) d a t a = 一i n p ( e c up o r t + 5 ) ; i f ( d a t a & 1 ) c h d a t a n u m = i n p ( e c u p o r o ; n u m + + : n u m b e r = 0 ; n u m b e r + + ; i f ( h u m = = n u m b e r = 3 0 2 0 0 0 ; r e t u r n ( n u m ) ; i n te c u s h o r t _ a d ( u n s i g n e dc h a ra d d r e s s ) 1 3 佃c 数据发送 短a d 函数地址 中国农业大学硕士学位论文第二章虚拟仪器介绍及编程准备工作 u n s i g n e di n tn u m ; u n s i g n e dc h a rc h e c k s u m 1 ; e c u _ p o n = c o m m _ p o r t l n u m = e c u _ s e n d ( 0 x 0 0 ) ; i f ( ( n u m = = 1 ) & & ( c h d a t a 0 = = 0 x 0 6 ) ) f n u m = e c u d a t a _ s e n d ( a d d r e s s ) ; i f ( n u m ! = o ) m _ c h d a t a 0 = c h d a t a 0 ; m _ c h o a t a 1 l = c h d a t a 1 ; c h e c k s u m 0 】- c h d a i a 0 】+ c h d a t a 【1 】; n u m = e c us e n d ( 0 x c 0 ) ; i f f n u m ! = 0 ) i f ( c h d a t a 0 = = c h e c k s u m l 0 1 ) r e t u r n ( h u m ) ; e l s er e t u m ( 0 ) ; ) e l s er e t u r n ( 0 ) ; e l s er e t u r n ( 0 ) ; , e l s er e t u m ( 0 ) ; i n te c u l o n g _ a d ( u n s i g n e dc h a rh g h a d d r e s s ,u n s i g n e dc h a rl o w a d d r e s s ) 跃a d 函数地址 u n s i g n e di n tn u m ; u n s i g n e dc h a rc h e c k s u m 1 ; e c u _ p o r t = c o m m p o r t l ; n u m = e c u s e n d ( 0 x 4 0 ) ; i ( n u m =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论