电控喷油器流量特性测试通讯与参数整定系统设计

上传人:文**** 文档编号:210653242 上传时间:2023-05-17 格式:DOC 页数:45 大小:710KB
收藏 版权申诉 举报 下载
电控喷油器流量特性测试通讯与参数整定系统设计_第1页
第1页 / 共45页
电控喷油器流量特性测试通讯与参数整定系统设计_第2页
第2页 / 共45页
电控喷油器流量特性测试通讯与参数整定系统设计_第3页
第3页 / 共45页
资源描述:

《电控喷油器流量特性测试通讯与参数整定系统设计》由会员分享,可在线阅读,更多相关《电控喷油器流量特性测试通讯与参数整定系统设计(45页珍藏版)》请在装配图网上搜索。

1、第一章 绪论汽油机喷油器的喷油特性对汽油机的动力性,经济性,排放性能指标有很大的影响。在电控汽油机中通过单片机对喷油器的各个喷油特性指标测量和控制使喷油器的性能得到更大程度的优化。此设计是通过串口通讯将单片机采集到的各个喷油器参数传送到上位机,上位机通过Labview对所接收的到的数据进行分析处理,达到对喷油器参数和功能的更加精确的控制。近年来,我国的摩托车行业得到了快速发展,我国摩托车产销量跃居世界第一,出口跃居世界第二,摩托车已成为我国最具有全球化特征的机电产品之一,但随着国民环保意识的不断增强和对摩托车排放污染严重性的认识不断提高,以及全球的能源恐慌,各国对摩托车的排放和经济性都提出了更

2、高的要求。近年来,我国的摩托车排放标准如下:2003年1月1日起执行欧标准;2004年1月1日起新定型的摩托车产品污染物的排放达到相当于欧排放控制水平;2005年1月1日起新定型的轻便摩托车产品污染物的排放应当达到相当于欧的排放控制水平;2006年前后我国所有新定型的摩托车产品污染物的排放应达到国际先进排放控制水平;2008年我国将实施等同于针对摩托车欧排放标准的第3阶段标准。由此可见,我国的摩托车排放标准加严进程在不断加快,这对我国摩托车行业来讲,将是一个重大的考验。排放问题解决的好坏将直接关系到我国摩托车行业今后的可持续发展。在汽油机普遍采用电控技术,发动机性能普遍得到较大提高的今天,稀薄

3、燃烧技术为汽油机性能的进一步提高提供了广阔的前景。火花点火发动机采用稀薄燃烧技术不仅可以提高其燃油经济性,而且可以改善火花点火发动机对大气的污染。对发动机排放方面,随着空燃比的增加,由于采用稀的混合气使燃烧温度降低,NOx的排放明显减少,同时燃烧产物中的氧成分有利于HC和CO的氧化,因此,HC和CO的排放也减小,然而,随着空燃比增加到一定程度,由于燃烧速度的降低可能会使燃烧不完全,HC的排放会迅速增加。如果能合理地设计紧凑的燃烧室,并组织好空气运动使燃烧在短时间内完成,那么三种排放都可以大大减少。汽油机的排放问题在汽车方面已得到有效的解决:方案一 采用三效转化器,该方案是目前在汽车领域运用的最

4、成功的方法,可使CO、HC和NOx等排放物减少80%90%.方案二 采用稀燃技术,该方案不仅可以较大幅度的降低汽油机的排放,还可以降低汽油机的油耗,提高其经济性。因此该方案是各研究单位研究和开发的热点。比较上述两方案,第一方案成本过高,不适合摩托车行业;只有采用第二种方案,才能有效的解决目前摩托车行业遇到的困难。实现稀燃技术,需解决的问题很多,实现摩托车汽油机的电控是解决该问题的关键【3】。电控汽油机的内容很多,其中喷油系统就是最重要的内容之一。它必须精确地计量燃油并形成喷雾,当发动机作高速运转时,在个喷油周期内从开启、喷油到回位仅几个毫秒,为了使喷油器在如此短的过程中有足够的喷油量,就要求其

5、具有很高的频响特性1。另外,它的流量特性对汽油机与电控系统的匹配有很大影响。因此,通过建立数学模型研究其喷射过程具有重要实用意义,有助于了解各种参数对喷油器性能的影晌程度可为喷油器的开发设计和改进提供条新的有效手段。在电喷发动机的电控系统中,电控单元通过控制喷油器的喷油脉宽来控制喷油量,从而适应发动机各种工况的需要。喷油量的精确性将直接影响发动机的动力性、经济性及排放性能等,因此,有必要对喷油器的一个极为重要的特性流量特性进行试验和研究。流量特性是指喷油器单次喷油量与喷油脉宽的关系曲线。此软件的设计为这些数值的测量提供了很大的帮助。第二章 喷油器流量测试意义及设计2.1 喷油器流量特性测试的意

6、义现代电子控制技术在发动机喷射系统中的应用大大改善了发动机性能。电控喷油器作为电控喷射系统的一个关键部件,其工作特性对汽油机与电喷系统的改善是一个关键部件,其工作特性对汽油机与电喷系统的匹配和燃油的计量精度都有很大的影响。在电喷发动机的电控系统中,电控单元通过调节喷油器的喷油脉宽来控制喷油量,从而适应发动机各种工况的需要。喷油量的精确性将直接影响发动机的动力性,经济性及排放性等。因此,对喷油器喷油量的高精度和高效率测量是喷油器及发动机生产企业重要的质量保证手段。由于每个循环的喷油量和在稳定工况下的平均燃油流量很小,因此需要研制专门的喷油器参数测量控制仪。下面我以喷油脉宽的测量为例说明开发此系统

7、的必要性。喷油器的喷油脉宽由电控单元精确控制,以保证缸内混和气的空燃比符合发动机各工况的要求。喷油器的流量和精度直接影响着发动机的动力性、经济性及排放等。在安装喷油器之前,要对喷油器的流量特性进行标定,以检查所选用的喷油器是否满足流量和精度的要求。喷油器的流量特性,是指喷油器的实际喷油量随喷油脉宽的变化规律,理想喷油器的开关是瞬时的,且在脉宽从零到最大的范围内都能获得线性喷油量。而实际喷油器在喷射脉冲始点(或终点)与喷油器针阀升起(或落座)之间有一定的滞后时间,因此喷油器的流量特性在较小与较大的脉宽段是非线性的。为了保证发动机电控单元能精确地控制喷油量,从而达到精确控制空燃比的目的,喷油器的脉

8、宽与其喷油量必须具有线性关系。在发动机正常工作喷油量范围内,不仅要求流量特性具有较好的线性度,而且其低端也要好,以保证喷油器在低速、小负荷工况下工作稳定,并有足够的流量精度。为此我所设计的软件就是用于此测量系统的测试和控制部分,有上位机和下位机组成。下位机采集喷油器的各种参数,上位机处理,同时上位机将各个控制参数下传到下位机进行控制喷油器各个参数,对于汽油机喷油系统的优化有很大作用,从而控制汽油机整体排放,动力等指标,以达到现在国家的各种排放,动力标准。2.2 喷油器特性参数测试方案设计电控喷油器参数测试是在专门的试验台上进行,试验台上配有一套电控测量系统,能够精确测量出流量等参数,快速处理试

9、验数据。如图3-1所示,喷油器流量检测试验台主要由燃料供给系统和电控系统组成。图2-1燃油供给系统框图燃料供给系统主要由燃油箱、燃油泵、燃油滤清器、油压脉动阻尼器、燃油压力调节器、燃油总管、喷油器等组成。燃油从燃油箱中被燃油泵吸出,先由燃油滤清器将杂志滤除后再通过输油管送到各个喷油器。喷油器则根据ECU发出的指令,将燃油喷出。油压调节器的作用是将喷油压力控制在一定范围内,将多余的燃油从调压器经回油管送回油箱。油压脉动阻尼器的作用是为了消除燃油泵泵油是或喷油器喷油时引起的油压脉动,吸收管路中油压波动时的能量,提高喷油精度。一、燃油泵燃油泵的作用是向燃油系统提供足够流量和规定压力的燃油,目前大多数

10、EEI系统广泛采用内置式电动燃油泵。电动燃油泵主要由油泵、永磁电动机、安全阀(卸压阀)、单向阀和外壳等组成电动机通电时即可带动泵体转动,燃油经滤网过滤从吸油口吸入,流经电动燃油泵内部,压开单向阀从出油口流出,向燃油系统供油。同时,燃油流经电动燃油泵的内部,可对永磁电动机的电枢部分进行冷却,故此种燃油泵又称为湿式燃油泵。单向阀的作用是在燃油泵停止工作时防止燃油倒流,并可保持管路残余压力,防止温度高时油路产生气阻现象,影响发动机热起动性能。若喷油泵输出压力达到400以上时,安全阀会自动打开,高压燃油流回至油泵的进油室,并在油泵和电动机内循环,避免由于油路堵塞、引起管路油压过高而造成管路破裂或燃油泵

11、损坏。二、燃油压力调节阀当EFI系统工作时,喷油器的燃油喷射量与喷油器的喷油压力和喷油器的开启时间有关,因此必须对喷油压力加以限制。否则,同样的通电时间,喷油压力高,则喷油多;喷油压力低,则喷油量少。只有喷油压力一定时,才能使燃油喷射量与喷油器的开启有关。喷油器的喷油压力是指燃油总管绝对压力与进气歧管压力之差。燃油压力调节器的作用是根据进气歧管绝对压力的变化来调节系统油压(燃油总管的绝对压力),使喷油器的喷油压力保持恒定,因此喷油器的燃油喷射量唯一取决于喷油器的开启时间。ECU只须通过控制喷油器的开启时间就可以精确控制喷油器的喷油量。三、电控喷油器电控喷油器的作用是根据ECU发出的喷油脉冲信号

12、,精确计量燃油喷射量,并将燃油喷射后雾化,以形成混合气。喷油器是一种加工精度非常高的精密仪器,对它的工作要求是:动态流量范围大,雾化性能好,抗堵塞能力强。峰值电流到达时间和单次喷油时间是控制喷油器工作的两个重要参数。四、燃油压力脉动阻尼器当电动喷油泵泵油或喷油器喷油的时,在燃油输入管道内会产生燃油压力脉动,因此影响喷油器的喷油精度。通常采用燃油压力脉动阻尼器来减弱燃油总管中的压力脉动波,可有效提高喷油器的喷油精度及降低噪声。五、C5051F单片机1、C8051F系列单片机是美国Silabs公司的产品,把80C51系列单片机从MCU(微控制器)时代推向SOC(片上系统)时代,使得以8051为内核

13、的单片机上了一个新的台阶。C8051F系列单片机与80C51系列单片机的主要相同点是指令系统完全一样。主要进步如下:(1) 指令运行速度比一般的80C51系列单片机提高了大约10倍;(2) I/O端口的配置由固定方式,转变为软件设定方式;(3) 时钟系统更加完善,有多个时钟源,且时钟振荡器可编程等;(4) 可实现通过JTAG接口的在系统调试(5) 增加了模数和数模转换模块(6) 增加了SPI、和CAN等串行接口;(7) 有多种复位方式;(8) 进一步降低了系统功耗。2、C8051F系列单片机的微控制器内核称为CIP-51,它是Intel公司标准8位8051单片机的组织结果和功能的基础上加以改进

14、和提高形成的。CIP-51内核特点:(1) 主要功能部件及组成与8051相同;(2) 与MCS-51指令完全兼容;(3) 时钟频率为025MHz,执行速度一般可达25兆指令/秒;(4) 增加了流水线结构,70指令的执行时间安为1个或2个系统时钟周期;(5) 模/数、数字外设有关的SFR移到核外,通过SFR接口与CPU交换信息;(6) 中断系统扩展为可处理22个中断源;(7) 复位与时钟电路不包括在核内;(8) 具有程序和数据存储安全管理功能。 由于整体的设计还处在测试阶段,所以此设计采用的是8051作为本系统的测试,实验。第三章 喷油器流量特性分析及软件整体设计概况3.1 喷油器流量特性分析电

15、磁喷油器的流量特性是指喷油量与喷油脉冲(电磁线圈通电时间)的变化规律。通常,喷油器的流量特性可用静态流量和动态流量来表示。如图42所示:图3-1 喷油器流量特性:静态流量,是指电磁喷油器在规定压力下,使针阀保持在最大升程位置时,在单位时间内的燃油喷射量();:动态流量,一个喷油脉冲宽度的燃油喷射量();理论上电磁喷油器的动态理论与喷油脉宽之间呈线性关系,但是在实际的动态喷射中,喷油器的脉冲信号和电磁线圈所产生的电磁力及针阀运动三者直接案有一定的滞后时间,造成喷油器的动态理论特性图中其较短的喷油脉宽(略小于开启时间)或较长的喷油脉宽(接近脉冲周期)区域内的实际动态理论特性呈非线性。3.2 喷油器

16、测试系统控制参数分析 在整个测试系统中,控制的参数有喷油脉宽时间,喷油间隔时间,喷油脉宽增量时间,打开脉冲时间,维持脉冲时间1,维持脉冲时间2,维持脉冲时间3,测量点数,每点喷油总次数。这9个控制参数均在10H参数输入区,对应9个确定按键,可以对其参数的数值进行调整和矫正。但每个参数都有其默认值和对应的参数范围,例如喷油脉宽时间在系统初始化的时候,其默认值为5毫秒,其输入值的范围为小于20毫秒。这9个参数的变化间接的控制系统喷油量的变化,从而控制汽油机的排放及动力特性。3.3 设计软件整体概述 (1)、设计整体喷油器特性参数测试方案。(2)、进行喷油器特性分析。(3)、单片机与上位机(电脑)通

17、讯协议的制订。(4)、Labview与单片机通讯方式及实现。(5)、上位机参数配置与显示软件设计。3.4 设计软件整体概述 整个软件分为上位机和下位机,上位机的程序利用Labview进行编写,下位机主控芯片为MCS-51利用汇编进行编写。在上位机控制界面上一共有四个区,10H区参数输入区,将上位机输入的喷油器参数传到下位机进行控制喷油器的喷油特性。20H区功能命令区,传送喷油器要执行的命令信号。30H喷油器流量数据上传区,接收各个喷油器位置喷出油的流量值,根据这些值将喷油量形象的显示在界面上。40H区实时数据上传区,实时显示喷油器位置,喷油脉宽的值。下位机由于实验条件的限制,仅仅是通过51单片

18、机模拟各个需要执行的命令和需要上传的参数,并在P1口上实时的显示,从而对软件进行有效的测试。第三章 串口概述3.1 RS232串口概述串口是计算机上一种非常通用设备通信的协议。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。串口的接线如图1所示图3-1串口针脚定义 符号1 载波检测 DCD2 接收数据 RXD3 发送数据 TXD4 数据终端准备好 DTR5 信号地 SG6 数据准备好 DSR7 请求发送 RTS8 清除发送 CTS9 振铃提示 RI串口通信的概念非常

19、简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数

20、必须匹配:a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比

21、如,标准的ASCII码是0127(7位)。扩展的ASCII码是0255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。d,奇偶校

22、验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠

23、标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。RS-232只限于PC串口和设备间点对点的通信。RS-232串口通信最远距离是50英尺。3.2单片机串口概述MCS-5有两个独立的接收、发送缓冲器SBUF(属于特殊功能寄存器),一个用作发送,一个用作接收。发送缓冲器只能读出;接收缓冲器只能读出但不能写入,两者公用一个字节地址(99H)。SBUF是两个在物理上独立的接收,发送缓冲器,可同时发送,接收数据。两个缓冲区只用一个字节地址99H,可通过指令对SBUF的读写来区别接收缓冲区的操作还是对发送缓冲区的操作,CPU

24、写SBUF,就是修改发送缓冲器;读SBUF,就是读接收缓冲器。串行口对外也有两条独立的收发信号线RXD(P3.0),TXD(P3.1),因此可以同时发送和接收数据,实现全双工。串行口控制寄存器SCON用来控制串口的工作状态,它可以是位寻址。在复位时所有位被清零,字地址为98H,其格式如表2所示:表2-1 串口工作寄存器各位的定义位地址9F9E9D9C9B9A9998位符号SM0SM1SM2RENTB8RB8TIRISM0,SM1:串行口工作方式选择位SM2:多机通信控制位REN:允许接收位TB8:发送数据位RB8:接收数据位TI:发送中断标志位RI: 接收中断标志位 根据SM0,SM1的选择,

25、设置串行口的工作方式,方式0为同步移位寄存器方式,其波特率为固定的,为fosc(振荡频率)的1/12。方式1时,串口的被设置为波特率可变的8位异步通信接口。方式2时,串口被定义为9位异步通信接口,带奇偶校验位。方式3时,串口被定义为9位异步通信方式,波特率的设置为可变波特率,带奇偶校验位。电源控制寄存器PCON主要是为CHMOS型单片机的电源控制设置的专用寄存器,单元地址为87H,其格式如表3所示表2-2 电源控制寄存器各位定义位序D7D6D5D4D3D2D1D0位符号SMOD/GF1GF0PDIDL其中,PCON低4位是CHMOS单片机掉电方式控制位,在HMOS单片机中,该寄存器中除最高位之

26、外,其它位都是虚设的,最高位SMOD是串口波特率的倍增位,在单片机的工作方式1,方式2,方式3时,当SMOD=1时,串口波特率提高一倍,若SMOD=0,则波特率不加倍。系统复位时SMOD=0。PCON的其它各位应用于MCS-51的电源控制。3.3 Labview软件概述LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。与C和BASIC一样,LabVIEW也是通用的编程系统,有一

27、个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储,等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内

28、置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为“”语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用LabVIEW,可产生独立运行的可执行文件,它是一个真正的

29、位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。利用Labview强大的编程能力,其中的VISA串口模块能够非常方便的实现对串口的控制,从而使电脑与单片机通讯及其方便,有效。3.4 Labview中串口模块概述目前,串口通信程序的开发,在Windows操作系统下一般用VB、VC、Delphi等编写。当用VB、VC开发串行通信程序时,开发人员不得不面对非常繁琐的API函数编程;而Delphi没有自带的串口通信控件,在它的帮助文档里也没有提及串口通信,这也给编程人员带来许多不便。可见,用上述三种文本语言编串口通信程序较为复杂,

30、花费的时间较长。笔者试图找到一种实现PC机与单片机的串口通信更为简捷的方法:利用LabVIEW进行开发。由于Labview具有实用性和开放性,采用VISA(Virtual Instrument Software Architecture)接口模块来进行编程。VISA是应用于仪器编程的标准I0应用程序接口,是工业界通用的仪器驱动器标准API(应用程序接口),采用面向对象编程,具有很好的兼容性、扩展性和独立性。用户可以用一个API控制包括VXI、GPIB及串口仪器在内的不同种类的仪器。它还支持多平台工作、多接口控制,是一个多类型的函数库,例如笔者编写的VISA接口程序,当外部设备变更时,只需要更换

31、几个程序模块即可,很方便而且开发效率高。总之,使用VISA方便用户在不同的平台,对不同类型的设备进行开发、移植及升级测控系统。下面对Labview中VISA函数几个基本模块做个简单的介绍:1:VISA串口初始化模块如下图所示:图3-2 VISA串口初始化模块功能:对串口的设置进行初始化输入的端口及功能VISA资源名称:用于确定通讯端口是COM口还是LPT1口,由于单片机端用的是COM口,所以我选用的是COM口和单片机通讯。波特率:即传输速率的设置,两端均设置为2400bit/s。数据比特:即输入数据的位数,其值介于5和8之间,由于下位机传送的是8位数据,所以上位机选择默认值为8。奇偶标志位:指

32、定要传输或接收的每一帧所使用的奇偶标志,每个数据对应是何种校验,由于单片机一端为偶校验,所以选用的是值为2,对应的为偶校验。停止位:用于表示帧结束的停止位的数量。选用的数值为10,对应的是1个停止位。输出的端口及功能VISA资源名称的输出:用于返回此函数利用的VISA资源名称。错误输出:输出此程序运行的错误信息。2:VISA数据写入模块如下图所示:图3-3 VISA数据写入模块功能:将写入缓冲区的数据写入VISA资源名称指定的设备或接口中。输入端口及功能VISA资源名称:指定要打开的资源名称。写入缓冲区:写入要写入下位机的数据。错误输入:表明VI或函数运行前发生的错误。输出端口及功能VISA资

33、源名称的输出:用于返回此函数利用的VISA资源名称。返回数:返回实际写入的字节数。错误输出:输出此程序运行的错误信息。3:VISA读取模块如下图所示图3-4 VISA读取模块功能:读取缓冲区指定数目的数据输入端口及功能VISA资源名称:指定要打开的资源名称。字节总数:要读取缓冲区字节的总数。错误输入:表明VI或函数运行前发生的错误。输出端口及功能VISA资源名称的输出:用于返回此函数利用的VISA资源名称。读取缓冲区:读取下位机传到缓冲区的数据。错误输出:输出此程序运行的错误信息4:VISA关闭模块如下图所示:图3-5 VISA读取模块功能:关闭VISA资源名称指定的设备会话句柄或事件对象。输

34、入端口及功能VISA资源名称:指定要打开的资源名称。错误输入:表明VI或函数运行前发生的错误。输出端口及功能错误输出:输出此程序运行的错误信息在Labview中利用VISA进行串口数据发送的基本流程为,首先VISA串口初始化模块对串口进行初始化,设置波特率,奇偶校验位等参数。其次调用串口发送或串口接收模块进行接收,发送数据。最后调用VISA串口关闭模块,关闭串口。串口编程注意事项:1:串口通讯的波特率设置要精确,比如要求9 600的波特率,则晶振应选择11059 3 MHz或其倍数。2:由于通常情况下LabVIEW 串口VI接收或发送的都是字符串(Norma1),所以,如果需要发送或接收十六进

35、制数值,要在发送或接收之前进行必要的转换例如传输动态产生和变化的数值型数据时,在发送之前要先将这些数据构成一个数组,用Byte Array To String进行转换,转换的结果就是数组数值对应16进制的字符串,然后提交VISAWrite发送。第四章 上位机软件设计4.1上位机整体流程图设计流程图说明:1:整体为2个顺序模块,第1个顺序模块为握手测试模块,第2个顺序模块为do-while循环检测4个模块是否有确定按钮按下,如果有执行对应的功能模块,如果没有继续循环检测。但在每个循环的过程中都进行读取命令执行标志字节和实时数据的采集模块,从而进行数据的实时显示。2:第1个模块包含数据范围判断子V

36、I,发送数据子VI,数据分离子VI,接收数据子VI,用于喷油参数的输入。流程顺序为判断范围-发送区号-发送参数名称-发送分离的4个16进制数据-接收结束信号3:第2个模块包含数据接收子VI,数据发送子VI,为功能命令区,用于调试。流程顺序为将一些需要调试的参数通过局部变量进行传递-判断是否有按钮按下-执行对应的按钮的模块-接收结束信号。若为非复位按钮按下,将其他未按下的按钮改变器属性的值将其改为禁用状态。4:第3个模块包含数据发送子VI,数据接收子VI,为各个喷油器流量采集区,用于采集各个各个喷油器的流量并在图形上形象的显示。流程顺序为发送区号-接收8个流量数据-接收结束标志-通过拟合曲线求出

37、无效喷油时间,静态喷射率-在图形上直观的表示流量数据。5:第4个模块为实时数据模块,用于读取命令运行时的参数标志,并实时的采集喷油器的位置,喷油脉宽实时数据。流程顺序为发送区号-读取命令运行的参数标志并判断-若运行结束,运行按钮改为启用状态-接收实时数据-接收结束标志。图4-1 上位机软件整体流程图图4-2 软件界面4.2上位机软件界面设计 根据流程图的思路,将界面分为3个区,将实时数据上传区和命令参数控制区放置到一个区,便于管理和整体界面的布局。 在10H区参数输入区中,设置每个参数对应的确定按钮,在未运行的时候为红色,按下后颜色变为绿色便于和其它按钮识别。 在20H区命令控制区,40H区实

38、时数据上传区。自动测量,单点测量,参数调试对应的按钮,每按下一个,都将其余两个禁用,当对应的程序运行完毕后将其解禁。以便区分各个命令,防止运行喷油器运行的时候发生混乱。复位按钮和其他的三个按钮相互独立,任何时候都可以将喷油器进行复位处理。 在30H区喷油流量上传区,将传感器采集到的8个位置的喷油量显示到对应的数据框内,并这组数据进行拟合,以喷射时间为横坐标,以喷射量为纵坐标,表示到坐标图上,再根据坐标图计算出无效喷射时间,静态喷射率等参数。另外一个坐标图,以喷油位置为横坐标,以喷油量为纵坐标,利用液柱的方式形象的表示在界面上。4.3 Labview串口接收发送模块设计 在发送和接收模块中采用的

39、双向传输,双向反馈。以上位机为主,无论是数据的发送还是传输都是以上位机为主,都是有上位机挑起发送的。发送数据成功后下位机向上位机反馈01H,不成功反馈0FH,数据重新发送。接收数据时,上位机首先向下位机发送0FFH标志字符,下位机接到标志字符后,发送需要发送的数据,上位机接收到后,经过奇偶校验,若正确向下位机发送01H,若错误向下位机发送0FH,下位机重新发送。一、上位机发送模块设计图4-3 发送模块流程图 在整个发送的流程中,除了用到基本的发送接收VISA函数之外,还用到了字符串转化为无符号字节数组函数,其主要的功能是将从下位机读取的字符串数据转化为10进制数据,进行判断下位机所反馈的数据是

40、不是01,如果是说明数据为正确的,如果错误重新发送。在整个流程中采用的是do-while循环,直到数据发送正确。发送模块的入口为一个字符串输入框,此字符串的输入框的属性为16显示,发送过程中发送的是16进制数,而不是字符串所对应的ASCII码值。发送VI的程序如图6所示:图4-4 数据发送子VI图4-5 上位机器接收模块流程图二、上位机接收模块设计整个程序流程为一个do-while循环,如果接收错误继续接收,如果数据正确接收跳出循环。在接收模块中,下位机发送的是2个数据,第一个数据为要所要接收的数据,第二个数据为所要接收数据的奇偶标志,Labview中无法像单片机那样对串口的底层进行操作,无法

41、通过读取通过单片机所发送的TB8数据位,即奇偶标志位。所以下位机发送的第2个数据的最低位为数据的奇偶标志位,上位机通过比较接收数据的奇偶标志,进行判断数据是否正确,如果正确回发01H,如果错误回发0FH,重新接收。图4-6 接收数据子VI 接收数据的VI程序如图8所示:4.4软件子VI模块设计 在整体的软件设计过程中,使用的模块化的设计思路,将一些经常用的模块,设计成子VI,设计出口参数和入口参数,便于调用,从而使整体程序更加简洁易懂,增强了整体程序的可移植性,使程序更加可靠。 在整体的软件设计中含有,发送子VI,接收子VI,奇偶标志生成子VI,字符串转化16进制子VI,握手模块子VI,数据范

42、围判读子VI,数据四位分离子VI,下面将详细的介绍各个模块的功能和流程。3.4.1握手模块设计 握手模块的主要功能是检查232通信线路是否正常。如果正常软件界面上面的指示灯为亮,如果握手不才成功说明线路没有连接通,或者软件出错,可以重新启动软件和单片机进行再试,如果依然连接不成功,请检查单片机的硬件电路是否正常。 上位机发送010101信号给下位机,如果下位机收到数据正确,反馈01H。表明线路正常可以进行通讯。如果下位机收到的数据错误,反馈0FH,表明线路不正常,弹出对话框,重启软件,检查线路。在此个模块中用到了显示对话信息框函数,如果反馈信号不正确,输入布尔值,启动对话框,显示对话框的内容,

43、点击确定输出布尔值,将输出的布尔值连接到Labview停止函数上,软件停止运行。图4-7 手模块子VI流程图下面为握手模块子VI程序图:3.4.2数据范围判断模块设计在10H参数输入区共有9个参数,依次为喷油脉宽时间,喷油间隔时间,喷油脉宽增量时间,打开脉冲时间,维持脉冲时间1,维持脉冲时间2,维持脉冲时间3,测量点数,每次喷油总数。这9个参数对应的都有自己的范围,此模块的目的就是判断所输入的数据是否在其范围内,若不在范围内,显示出对话框让其重新输入,如果再次输入错误,软件程序停止。重新检查所要发送的数据。此子模块的数据入口是,确定按钮的布尔值,输入的数据,此参数所对应的范围的值。数据的出口为

44、经过数据范围判断后的数据值,以及所输入的数据的是否符合范围的布尔值,以便判断数据是否需要重新循环输入。此模块的流程为,首先比较输入的数据和此参数的范围数据进行比较,若数据小于参数范围数据,则将其输出,如果数据大于参数的范围数据,显示对话框信息,重新输入,输入后再次进行比较,如果正确将其输出,如果错误,此软件停止。提示用户检查你所输入的数据之后重新启动软件。此模块通过控制所要输入数据的范围,控制喷油器的各个参数范围,另一方面也保护了喷油器,以防数据过大而造成喷油器的损坏。图4-8 数据范围判断子VI下面为数据范围判断模块子VI的程序图:3.4.3数据四位分离模块设计 在10H区输入的最大数值为四

45、位数,需将每个数据的四位分离成对应的四个16进制数据,便于传输和存储。例如:一个十进制数据2009,经过此模块后分离成02H,00H,00H,09H,分别进行传送和存储。 整个模块的流程为:首先将10进制的数据的每一位进行分离,数据除以1000得商为千位的数据,余数除以100商为百位数据,余数除以10商为十位数据,余数为个位数据。然后将各个数据转化为16进制的字符串。最后调用16进制数转化模块将其转化为16进制数据进行发送。 在整个流程中值得注意的是16进制字符串转化为16进制数据。此过程是由于在发送的过程中,若发送的字符串下位机接收的到的是对应的ASCII码值,而不是16进制数据,传送就会出

46、错。所以必须经过转化才能传送,这样才能保证数据的正确性。 此模块中所包含的字符串转化为16进制数据的模块,在下一节中再做详细的说明和解释。此子VI的数据入口为1个十进制数据,出口为一个含有4个元素的16进制数的数组。在引用是需注意数据的格式。图4-9 数据四位分离模块下面为数据分离模块子VI的程序图11:3.4.4数据奇偶标志生成模块设计 由在Labview中无法读取底层数据,既发送的数据的奇偶标志位TB8,上位机无法读取,所以下位机发送的时候,发送的是2个数据,第一个数据为所要发送的数据,第二个数据为含有奇偶标志的数据,此奇偶标志放在数据的第0位。上位机接收到数据后利用奇偶标志生成模块,生成

47、第一个数据的奇偶标志,然后通过对比第二个数据的最后一位进行对比,若相等此数据奇偶校验正确,若不等此数据奇偶校验错误。 通过以上的奇偶校验可以有效的判断接收到的数据是否正确,若错误向下位机发送错误信号,让下位机重新发送数据。若正确发送子程序结束。 发送接收模块采用的是偶校验,即此数据转化为二进制数据后,1的个数为偶数时,奇偶标志为0,1的个数为奇数时,奇偶标志为1。根据这个定义将数据转化为二进制数据,然后将二进制数的各位累加,判断累加和是偶数还是奇数,若是偶数返回0,若是奇数返回1。 此模块用到了10进制数转化为布尔数组函数,即将一个10进制数转化为一个布尔值形式的二进制数组。另外一个是布尔值转

48、化为0,1值函数,即将布尔值转化为10进制数据0或1便于计算。此模块的的入口为一个10进制数据,出口为一个含有奇偶标志的10进制数据。图4-10 奇偶标志生成模块下图12为奇偶标志生成模块子VI程序图:3.4.5字符串转16进制数据模块设计在字符串输入模块中,字符显示的属性一共有四个选项分别为正常显示,/代码显示,密码显示,16进制显示。一个10进制数据转化为一个16进制数据需要经过两个流程,分别为10进制数转化为16进制字符串,16进制字符串转化为16进制数据,仅仅有16进制数据可以准确的发送。所以需要此转化过程。此模块所用到的函数有部分字符串输出函数,功能为返回部分字符串便于方便处理,选择

49、函数,功能为通过一个布尔值控制输出那个数据,若为真返回t所对应的值,若为假返回s对应的值。字符串长度函数,功能为返回一个字符串的长度,入口为一个字符串,出口为字符串的长度数据。16进制字符串转化为10进制数据函数,功能为将一个16进制字符串转化为一个10进制数据。此模块的入口为16进制的字符串,出口为16进制数据。图4-11 字符串转化为16进制数据下图13为字符串转化为16进制数模块第五章 下位机MSC-51单片机软件设计图5-1下位机流程图5.1下位机整体流程图设计 下位机采用循环结构进行判断所接收的区号,若正确,执行相应区号所对应的子程序,若不正确,跳出继续接收判断。由于条件的限制,此程

50、序将所要执行的程序指令,用P1口输出,并用流水灯显示出来,便于上位机的调试和测试。 在10H参数输入区,此模块接收5个数据,第1个为参数号,后四个为分离后的四个数据。5个数据依次存入7BH-7FH。然后调用参数处理子程序,将几个数据进行读取和处理。最后向上位机发送11H,表明此模块单片机的处理过程结束。 在20H命令参数区,一共要执行4个指令,分别为单点测量指令,自动测量指令,参数调试指令,复位指令,单片机每执行一条指令在P1口显示对应的数据,便于调试。其中复位指令是和其他的3个按键是相互独立的,随时都可以进行复位。但其它3个按键,当按下其中一个按键的时候其它两个按键为禁用状态,防止喷油器运动

51、出现混乱造成机器的损坏。当子程序运行结束后发送所对应的结束指令,表明此模块单片机的处理过程已经结束。 在30H喷油器流量数据上传区,就是将所采集到的8个流量值按照顺序依次发送,发送结束后向上位机发送子程序结束命令。对于数据处理等其它工作都有上位机来处理。 在40H数据实时上传区,上传的参数为喷油器实时流量值和喷油器的位置。由于此程序仅仅是为了测试上位机软件所以喷油器实时流量值和喷油器的位置对应的仅仅是个数据块进行循环发送便于测试。 下位机整体软件程序见附录1。5.2下位机发送接收模块设计 下位机的发送接收模块与上位机的发送接收模块相对应。数据正确标志为01H,数据错误标志为0FH,握手标志为0

52、10101H。串口采用的是方式3,带奇偶标志,波特率为2400bit/s.一、下位机接收模块设计 下位机接收模块的流程为:首先将接收数据的寄存器R4,累加器A复位清零,等待接收结束标志RI置位,表明数据接收完毕,然后对RI软件清零。SBUF中接收的数据放入累加器A,奇偶标志位RB8赋给进位标志位C,累加器A中数据放入数据出口寄存器R4中。其次对接收的数据进行奇偶校验,判断累加器的奇偶标志位PSW.0位的状态和从上位机发送下来的奇偶标志位C的状态,是否相等,若不相等向上位机发送错误标志0FH,程序跳转到子程序的开始,若相等向上位机发送01H,子程序结束,跳出子程序。 此模块的数据出口为第一组寄存

53、器中的R4,接收完毕后将数据放入此寄存器,便于调用和读取。下图为下位机接收模块流程图:图5-2下位机接收模块流程图 此模块的子程序及详细说明见附录2。二、上位机发送模块设计 由于上位机无法读取TB8奇偶标志的原因,发送的数据为两个,后一个数据为含有奇偶标志的数据。此模块的大致流程为:首先接收上位机发送模块开始标志0FFH,接收到后发送模块开始工作。累加器A复位清零,将所要发送的数据R5赋给A。累加器A的奇偶标志位PSW.0赋给进位标志位C,再将进位标志位C赋给TB8进行发送。等待发送结束标志TI置位,表明发送数据结束,然后软件将TI清零。其次将累加器清零,R5的奇偶标志C通过左移循环放入累加器

54、的A的最低位。然后再对累加器中的数据进行发送。等待发送结束标志TI置位,表明发送数据结束,然后软件将TI清零。最后等待接收中断标志位RI置位,表明接收数据结束,将接收的数据放入累加器A,奇偶标志RB8赋给C,然后判断累加器A是否为01H,如果是接收子程序结束,如果否跳转到子程序开头,R5数据重新发送。下图为下位机发送模块流程图:图5-3下位机发送模块流程图此模块下位机发送模块程序的详细说明见附录3。第五章 结论 此设计的主要内容为上位机Labview的设计,由于学习时间比较短,在正个软件的设计和设计中不免有些错误和不当之处,比如Labview程序流程为顺序查询的结构,这样造成了软件的响应速度降

55、低,对应子模块的执行速度降低。若在软件的基础上进行扩展会造成软件更加复杂,响应速度更加缓慢。这就是这个软件的最大弊端,最好的解决方法为采用面向对象的事件结构,这样会是这个软件的扩展性大大的提高。在这个软件设计中最大的提高就是熟悉了整个软件的设计流程和思路,同时也明白了程序的编写最重要的不是程序本身,而是之前的控制模型,物理模型的建立,流程图的编写,有这写做为铺垫,程序才会更加清晰易懂,程序的逻辑之美才会在此显现!参考文献1 杨乐平,李海涛,肖凯,等虚拟仪器技术概念M北京:电子 电子工业出版社,2005:78,822 雷振山LabVIEW 7 Express实用技术教程M北京:中国铁工业出版社,

56、2003:102105 3 杨乐平,李海涛,杨磊LabVIEW 程序设计与应用M北京: 道出版社,2004:1671704 张毅刚,等MCS-51单片机应用设计M哈尔滨工业大学出版社,19975LabVIEW User ManualMUSA:National Instnunents Corpration19986 周龙保等内燃机学M机械工业出版社,19997 关兵,钱耀义,于秀敏电控喷油器的标定与试验J吉林工业大学学报,1996(4):46568 李 刚,林凌LABVIEW 易学易用的计算机图形化编程语言北京:北京航空航天大学出版社,2001:961059 陈明,王颖,周伟基于LabVIEW

57、7 Express的串行口通信编程J现代电子技术,2004(8):3435致 谢大学生活将伴随着毕业论文的完成而结束。论文是我们的心血,我们是导师的心血。没有导师就没有现在出色的我们,导师的教导和关怀陪伴我们走过了这段美好的时光,在这里,我要对我的导师杨老师衷心的说声:老师辛苦了,谢谢您!杨老师知识渊博,经验丰富,治学严谨,和蔼可亲而又不失严格。他把一个对电子世界充满好奇、满腔热情的我带入了这个广阔的神奇的世界,使我尽情吸收知识,迅速成长为一个可以为社会做出贡献的人。在整个毕业设计中杨老师一直敦促我注重基础,刚开始不是很理解,到最后我才深刻理解基础对整个设计的重要性。 “万里之行始于足下,千里

58、之堤溃于蚁穴”在以后的日子里,我会用恩师的教导严格督促自己虚心学习,踏实工作,不断进取。大学生活中,陪伴我的还有师兄弟们,感谢他们对我的帮助和鼓励。衷心感谢李欣欣、宋孝忠、闵俊杰、刘二会,希望他们前程锦绣,健康快乐!限于作者的水平和其他一些因素,文中难免有疏漏和不妥之处,敬请各位专家、学者和老师给予批评指正,以求在以后的工作中做出进一步的改进和提高。附 录下位机整体程序及说明此程序用于测试上位机的功能和错误! R4接收的出口,R5发送的入口。ORG 0000HLJMP MAIN;主程序入口ZCC EQU 28HDCC EQU 29HCTC EQU 30H ;标志位设置MAIN:MOV TMOD

59、,#20H;将定时器0,1均为方式2 MOV TH1,#0F4H MOV TL1,#0F4H;定时器1的设置,2400bit/s的波特率 MOV SCON,#0D0H;串口为方式3,带奇偶校验位 MOV PCON,#00H SETB EA SETB TR1;串口初始化程序 MOV 25H,#07H MOV 58H,#00H MOV 59H,#20H MOV 5AH,#40H MOV 5BH,#60H MOV 5CH,#80H MOV 5DH,#0A0H MOV 5EH,#0C0H MOV 5FH,#0E0H;流量的默认值赋值 LCALL WOSHOU;调用握手模块,检查通信线路QHJS:LCA

60、LL JIESHOU;调用接收模块接收区号 MOV A,R4 L1:CJNE A,#10H,L2 LCALL MK1 L2:CJNE A,#20H,L3 LCALL MK2 L3:CJNE A,#30H,L4 LCALL MK3 L4:CJNE A,#40H,QHJS LCALL MK4 SJMP QHJS;循环判断接收的区号是那个区 MK1:LCALL JIESHOU MOV 7BH,R4 LCALL JIESHOU MOV 7CH,R4 LCALL JIESHOU MOV 7DH,R4 LCALL JIESHOU MOV 7EH,R4 LCALL JIESHOU MOV 7FH,R4 LCALL BC_CS MOV R5,#11H LCALL FASONG MOV A,#00H RET ;10H区子程序模块 MK2:LCALL JIESHOU MOV A,R4 ML1:CJNE R4,#01H,ML2 LCALL ZDCL MOV R5,#21H LCALL FASONG MOV A,#00H LJMP ML5

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!