摘 要

涡轮增压器的组装过程是一套复杂的自动化流程,安装在涡轮增压器内的速度传感器裸露在外面的线在后续的组装工序中有可能被机器或人工误伤,导致之后无法输出信号,所以在最后一站检测其是否断线,能否正常传递信号尤为重要。本课题基于LabVIEW虚拟仪器技术设计一种速度传感器外部信号线的检测系统,作为涡轮增压器生产线中的一站,主要用来检测组装好的涡轮增压器内的速度传感器能否正常采集信号并输出转换信号。

本文首先简明扼要地概述了基于LabVIEW虚拟仪器技术的速度传感器外部是否断线的检测系统设计的研究背景、国内外研究现状以及主要研究方法等,紧接着对基于LabVIEW虚拟仪器技术的硬件数据采集系统进行了概述,然后对系统实现的功能进行了分析,描述了该系统的总体组成和硬件配置。系统硬件部分主要有NI-6001数据采集模块、示波器Agilent DSO模块、Agilent 33210A信号发生模块等。软件部分则主要采用LabVIEW图形化编程软件平台编写。

基于LabVIEW虚拟仪器技术的速度传感器断线检测系统的设计与实现,可以确保产品出厂合格率,弥补了传统人工检查效率低,检测质量无法保证的缺点。实际运行结果表明,本课题设计的速度传感器断线检测系统能够正确地检测组装好的涡轮增压器内的速度传感器能否正常采集信号并输出转换信号,达到了预期效果。

关键字:涡轮增压器  速度传感器    断线检测  LabVIEW

目录

1. 绪论

1.1 课题背景与意义

1.2 国内外研究现状

1.3 主要研究内容

1.4 论文主要章节安排

2.基于虚拟仪器技术的数据采集系统概述

2.1 虚拟仪器简介

2.2图形化编程语言的特点

2.3 LabVIEW开发平台系统的组成和优点

2.3.1 LabVIEW开发程序的组成

2.3.2 LabVIEW开发系统的优点

2.4基于LabVIEW软件的数据采集系统与数据通讯

2.4.1数据采集的基本概念

2.4.2数据采集卡的介绍

2.4.3 LabVIEW中的数据采集函数

2.4.4 NI诊断配置工具

2.4.5 LabVIEW中的通信模块

3.系统总体构成与硬件配置

3.1 待测产品的介绍

3.2 系统主要功能及需求分析

3.3 方案设计与比较

3.3.1方案设计

3.3.2方案比较和选择

3.4 系统总体方案的设计

3.5 控制系统的设计

3.5.1 电源模块的设计

3.5.2 检测工作台的介绍

3.5.3 线圈的选型

3.5.4 NI USB-6001数据采集模块的配置

3.5.5 Agilent 33210A 信号发生器模块介绍

3.5.6 Agilent DSO1002 示波器模块介绍

3.5.7 接近传感器模块介绍

4.系统软件设计与功能实现

4.1 软件设计思路

4.2 软件编程架构的介绍

4.3系统前面板设计

4.4系统程序框图设计

4.4.1用户界面主程序设计及程序初始化

4.4.2 事件结构响应前面板控件程序

4.4.3 下载产品配方

4.4.4 手动模式设计程序

4.4.5 自动测试模式

4.4.6系统断线检测判断产品是否合格

5.联机调试及结果分析

5.1 系统的硬件调试

5.2 系统的软件调试

5.3 系统的运行结果与分析

6.结束语

6.1 工程与社会

6.2本系统对环境及社会可持续发展的影响

6.3 本系统的创新设计

6.4 总结

6.5 展望

参考文献

致谢

4.系统软件设计与功能实现

基于LabVIEW虚拟仪器技术的速度传感器断线检测系统的设计,除了硬件的选型和搭建,对于程序的设计和编写也是非常重要的,硬件所需要的每种测试动作和相互之间的配合,以及和操作员的交互都是由软件程序控制来实现的。所以在本课题的研究中,上位机软件的开发就显得至关重要,它形成了整套数据采集与仪器控制系统的核心。通过图形化的编程语言——LabVIEW平台,可以很好的实现系统的控制和测试功能。

4.1 软件设计思路

本检测系统的软件主要实现的功能首先是一个完整的人机交互界面,进入登录界面进行登录确保设备运行的安全;可以在测试前对硬件进行配置并选择测试模式;按操作步骤提示操作工从摆放产品到完成测试的每一步动作;能够对产品摆放是否符合要求进行提示,确保每一步合格才进行下一步的测试;测试完成后能够对数据进行保存并方便下次调用,然后恢复测试前的配置进入下一个周期的测试。测试运行的总体框架图如图4.1所示。

图4.1程序总体流程图

4.2 软件编程架构的介绍

根据软件设计思路,最终决定选用生产中常用的生产者/消费者模式。字面理解下,这个模式有生产者和消费者,生产者的职能是产生产品(数据),消费者是使用产品(数据),生产者没有生产,消费者就使用不成产品。生产者/消费者模式是多线程编程中一种最基本的设计模式,是事件处理器和队列消息处理器相结合而构成的复合设计模式。队列作为生产者/消费者模式中对采集到的数据的一个缓存区,能够避免使用其他通信方式造成的竞争、重复分析及数据丢失等现象。生产者产生的数据放入队列的过程耗费的时间极少,也就是说,数据采集有多快,就可以以多快的速度将数据存放到缓存。程序的另一部分则不停地从队列中取出数据,并对其进行处理。图4.2所示的是最基本的生产者/消费者架构,上面的While循环与事件结构组成的是消费者循环,用于产生数据;下面的循环则是消费者,用于处理所产生的数据。本程序主要将所有控件值改变或者人的动作产生的事件作为生产者,用事件结构去响应事件,这样能快速响应和退出,转换不会像状态机那样需要执行完毕后才能进行下一个循环,数据也不易丢失造成死机。

图4.2生产者/消费者程序框图

4.3系统前面板设计

基于LabVIEW虚拟仪器技术的速度传感器断线检测系统主界面如图4.3和图4.4所示。图4.3是点击工控机面板上的运行图标后首先看到的界面,进度条是让所有系统上电后都有一个缓冲时间,因为点击图标后有可能其他程序还没有准备好,这时开始测试容易造成错误。前面板是用来进行人机交互的界面,主要方便操作者观察数据,提醒用户操作步骤以及控制机器运行等操作程序等。工控机的显示屏与编程界面不是完全一致,所以在编写时要按照工控机所匹配的界面。

图4.3程序进入界面

当如图4.3所示的进入界面结束后会出现如图4.4所示的提示界面,在这个界面上用户需要点击高亮提示的登录按钮,或者选择菜单Operate〉〉LogIn。

图4.4速度传感器测试系统主界面

当用户点击登陆后,会出现如图4.5所显示的用户登录界面,在用户登录界面中操作者需要选择用户名并且验证密码。无论用户密码正确与否操作界面都会弹出相应的提示框,用户根据相应的提示进行操作即可。

图4.5 用户登录界面

当用户登录成功后,会回到如图4.4所示的测试界面,提示用户接下来的放置产品等操作。图4.4中下拉界面是选择当前测试的产品的型号,操作员、配方、数据库这些控件点击后可以对数据库中的数据进行调取修改并在界面中显示如图4.6所示,然后按主界面可以回归到主界面。操作首先进去之后,登录界面会高亮显示提醒用户登录,未登录时是不能进行其他操作的。复位按钮是可以将硬件所设定的值复位并重新回到设定状态。手动模式按钮是在用户登录后,判断用户是否具有手动调试模式的权限,若其具有手动调试的权限才可以按的。另外,当前程序进行到每一步的状态都会在主界面中显示出来并提示下一步操作者的动作。

图4.6速度传感器测试系统数据库查询界面

4.4系统程序框图设计

LabVIEW的前面板用于设计用户的操作界面,主要实现人机交互的功能。但是要完成具体的设计功能还需要复杂的程序框图来支撑,程序框图是VI编程的核心。LabVIEW的程序框图设计是整个程序是否实现的关键所在,是具体实现程序功能的关键。

4.4.1用户界面主程序设计及程序初始化

VI在每次程序的开始,测试系统启动之前需要对程序进行初始化设计,系统中所有参数和设备都要进行初始化,这是为了避免程序运行前一次操作所遗留的错误信息干扰到这次程序的运行结果,用户界面主程序设计流程如图4.7所示,如图4.8所示为本测试系统参数和硬件配置初始化的程序以及进度条显示进度。初始化的框图是一个平铺式顺序结构,在程序的每次运行时,需要先运行此顺序结构中的内容,在此结构中将所有需要进行配置的参数放在框图里,然后通过队列进入到初始化的框图中,并把在顺序框图中配置好的数据传送过去,这样就简化了初始化框图的设计。

图4.7 系统初始化流程图

图4.8 系统初始化程序框图

4.4.2 事件结构响应前面板控件程序

如图4.9所示为前面板布尔控件的值发生改变的响应程序,由While循环和事件结构组成,事件结构和While循环套用,不断的循环来执行不同事件源产生的事件,每次循环的运行需要经过一个事件结构才能够实现case中各个分支的运行,单击前面板的布尔控件会有相应的程序响应。这一结构很简单,只要把前面板需要用到的控件编辑成一个个事件缓存在队列中,然后把这一事件需要完成事情编辑到消费者中一个个执行,例如按下登录控件则响应登录事件,命名这一事件为login放入缓存区,消费者则进入到login的编辑执行程序中。但需要注意的是,要设置超时事件结构,如果不设置超时事件同时没有事件源发生,那么while循环将一直等待事件的发生而不进行循环,那么就会使得事件结构外的其他程序也不能执行,可能造成的结果就是前面板本该有反应的地方(比如变量值的变化)没有了反应。设置了超时的情况下,比如设置为50(ms),意思就是每隔50ms如果没有事件发生就超时,进行一次循环,那么事件结构外的其他程序就可以得到执行。

图4.9 事件响应程序框图

4.4.3 下载产品配方

产品配方被编辑在数据库中以配置文件的形式保存,如图4.10下载配方程序所示,程序根据配置文件所在的路径,数据库的信息,输出产品的配方信息。

需要注意的是,数据库的读取函数,是有固定的输入字符串的格式的。

图4.10下载产品配方

4.4.4 手动模式设计程序

手动模式是操作者具备手动调试权限才可以启动的,例如工程师或者编程人员,手动模式是在操作者纠错调试运行时,可以一步一步的通过按按钮来执行相应的程序,如图4.11显示的是手动调试的面板。用户以管理员的身份登录软件后,可以选择手动模式进入调试界面,也可以对配置项进行配置。

图4.11 手动调试面板

单击选项卡上的“采集卡、扫码枪”按钮,进入图4.12所示的界面。

手动模式可配置检测项如下:

  1. 刷新读数:单击“刷新读数”按钮,数据采集卡便读取一次当前产品的输出脉冲,读取的结果显示在“脉冲频率”控件内。
  2. 复位按钮:单击“复位按钮”,测试系统复位,并且退出手动界面,进入测试界面。
  3. 信号发生器参数设置:用户可以设定输入线圈信号的波形、频率、幅值及直流偏移。
  4. 采集脉冲方式设置:用户可以设定采集速度传感器输出脉冲的方式,示波器或者数据采集卡两种方式。
  5. 数据采集卡的控制配置:可以按下相应的开关检测是否有响应。
  6. Output:默认状态是红色的Output Off,此时信号发生器输出关闭,单击该按钮,显示绿色的Output On,则信号发生器输出使能,将第3步设置的信号发送至线圈。再次单击该按钮,显示为红色的Output Off,信号发生器的输出关闭。
  7. “5V电源输出”控制产品供电电压的通断、“夹具气缸的松开”控制是否给气缸松开信号、“夹具气缸的压紧” 控制是否给气缸压紧信号、“扫码枪切换”控制扫码枪给本系统用还是原OP40站用(目前该站仅供本测试系统使用,固原则上该按钮永远“on”状态)
  8. 刷新:上一步的控制信号状态改变后,需单击“刷新”按钮,系统才会将最新的控制信号更新。
  9. “线圈到位”、“气缸1work位”… …“产品放置”:显示各状态的传感器信号反馈,数据实时刷新。
  10. 扫码内容:扫码枪进行扫码,该文本框内即可显示读取内容,用来验证扫码枪好坏,数据实时刷新。

单击“返回”按钮,可返回自动测试界面。

图4.12 手动模式界面

程序对信号发生器的配置,如图4.13所示,使用的是USB串口通讯知识,在LabVIEW中使用VISA相关函数,完成串口的配置,主要配置的是串口资源名称、超时时间、检验等参数。VISA写入以及VISA读取,需要注意的是,结束串口通信时,一定要关闭设备对话句柄,释放串口资源。

图4.13 与信号发生器通讯程序

用户对系统配置并检测完成后,点击返回,系统自动保存配置,并且所配置的值将会在自动检测模式中启用。

4.4.5 自动测试模式

用户登录及下载配方后,用户可以选择手动调试模式,也可以不选择直接按照提示开始进行测试步骤。自动测试流程如图4.14所示,程序如图4.15所示。测试的顺序首先是判断是否需要更换新夹具,对应好该产品的夹具后放置新产品,传感器感应后亮灯表示放置到位,然后气缸压紧并显示到位,之后进行产品扫码并存入配置信息数据库,扫码可以继续使用串口通信,调用LabVIEW的Hand scanner函数,扫码判断后,可以开始插入线圈,线圈也需要传感器进行判断是否是对应型号的线圈,线圈匹配合适后,则可以按下双手安全启动按钮进行测试,注意若不是双手按下则不予启动。这些开关和传感器的读取信号都是通过数据采集卡USB-6001DI采集后返回LabVIEW进行判断。开始上电测试后,将信号发生器设定好一定频率和幅值的电信号发送给线圈,并按设定好读取的方式采集速度传感器的输出脉冲,之后对数据进行判断,并数据库存储数据,不合格产品需要记号笔打记号,合格产品需要拆卸上面的一个螺丝放入Bolts区,一切完成后可以按双手按钮启动下一次测试[18]。

图4.14 自动测试模式流程图

图4.15 自动测试模式程序框图

4.4.6系统断线检测判断产品是否合格

在上述的产品介绍中,速度传感器在涡轮增压器的组装上通过蛇皮管快插接头把线外接,这样组装过程中,外部线或者芯片也许没有焊接牢靠,无法传输数据。速度传感器的工作原理是涡轮增压器的轴上带动八个叶轮,每片叶轮上面有一块永久磁钢,磁钢与轴同步旋转,受磁钢产生的磁场影响,霍尔传感器输出脉冲信号,其频率和转速成正比,转一圈是感应到八个信号,得到转速需要进行八进制处理,经过八进制处理之后便可以得到叶轮的转速。所以理论上,传感器输出频率应该等于1/8信号发生器输出频率,如果速度传感器快插接头上电后,检测不到信号,因为在前面的组装中已经确认过组装没有问题,那么则说明线或者芯片不对,则不合格。本程序中对合格产品的计算如图4.16与图4.17所示。先对队列中的簇进行解绑,根据不同的名称显示不同的值。

图4.16 判定产品合格与否程序框图

图4.17 频率计算公式

4.4.7防错设计

现在工程项目中,客户很看重的一点是设计中是否有防错考虑,因为在工程中有很多干扰因素会影响程序的运行顺序,若按照事先的判断,执行完这一步采集就应该读取,但是例如有可能并未采集到信息就直接进行了下一步,那么程序最终读取到的数据就是错误的,判断也会是错误的。所以例如图4.18的防错设计,我在一些容易出错的程序中加入了判断,将执行的循环次数进行判断,确定执行了该执行的步骤再进入下一步[19]。

图4.18 防错设计

5.联机调试及结果分析

工程项目中有一个很重要的阶段就是调试,因为在搭建组装的过程中,没有人可以保证组装连线的准确无误,也没有人可以保证没有造成元器件的损坏,软件编程也不可能做到万无一失。在此项目中也是一样,需要确保每一个元器件,每一条线路都是按照设计准确无误,然后再进行整台设备的上电,软件也要由标准件进行测试,找准最合适的距离最终用于生产。

5.1 系统的硬件调试

系统硬件平台正常运行是进行软件调试和最终功能实现的前提条件,所以我们首先应从硬件的线路检查和点动测试开始,确保每一条线路的通电正确,每一部分能正常运行。针对每一部分运动的子系统,我进行了手动程序的编写,并利用手动程序进行硬件调试。数据采集卡可以利用NI MAX软件进行点动测试。该部分包含以下几个方面:

(1)数据采集卡的点动调试

通过NI MAX软件,检测到连接的数据采集卡,通过给对应端口高电平程序进行继电器和电磁阀的打开和关闭操作,再观察相应的继电器和电磁阀是否正确动作。另外,在进行电磁阀调试时,需要观察相应气缸是否完成指定动作。

(2)传感器信号的采集调试

通过程序控制NIUSB-6001板卡采集数字量输入信号,显示后观察采集到的信号正确与否。不正确时则进行传感器灵敏度的调节。

(3)信号发生器与示波器的配置调试

通过串口写入数据,VISA编写程序观察信号发生器是否能输出相应的波形若能输出对应波形则信号发生器良好。示波器的调试与此类似。

5.2 系统的软件调试

在保证硬件平台成功运行的前提下,我进行了软件部分的调试。在调试过程中是对手动模式和自动模式两部分的调试,主要使用LabVIEW软件调试中常用的探针、高亮显示、保存连线值、中断点等调试工具。这个项目中主要的调试还是对线圈距离以及所给频率的确认,如表5.1所示,主要是对信号发生器提供给线圈输入信号频率的测试确认。

表5.1信号发生器输出频率范围测量

表格是实验得到的数据,经验证,1kHZ~2kHZ得到的信号是最稳定的,且当线圈离叶轮2~3mm左右距离时信号依旧稳定。当传感器本身的线断开时,无信号。当测试3kHZ时,信号可以读到,但是线圈位置需要放得更近。由于本系统是检测速度传感器的连接线好坏,建议使用1kHZ~2kHZ的信号去测试,测试值稳定,并且线圈无需触及叶轮,避免对产品造成机械损坏。

5.3 系统的运行结果与分析

系统测试原理是信号发生器输出的频率是速度传感器输入到采集卡的信号频率的八分之一,说明产品合格。如图5.1所示是测试界面,信号发生器配置为1000HZ的方波,示波器采集速度传感器的输出得到的测试频率是125HZ,最终速度传感器的输出与输入成八分之一的关系,则说明此产品的电源线与信号线完好,可以正常采集并转换。

Logo

欢迎加入我们的广州开发者社区,与优秀的开发者共同成长!

更多推荐