传统的装备检测是:一套测试设备只测试一个型号,测试软件也是专门定制。当型号越来越多,最后发现需要很多不同种类的测试设备,同时也需要很多开发人员开发测试软件。测试人员很难熟练掌握各种测试设备和各种测试软件,另外对测试设备的维护管理也相当复杂繁琐。

研制和生产可适用于不同型号装备的通用性检测设备,是解决问题的有效途径之一。

1、什么是检测设备

检测设备是指对装备进行技术状态检查、功能测试和故障诊断的一类设备,主要用于支撑对装备中各类电子电气设备的检测维修等应急保障任务。

检测设备属于专用性测试设备,为了使得检测设备具有用户使用简单、各组成部分互换性强、测试逻辑可移植、扩展性强等特点,需要从硬件组成、软件架构、基础支撑构件等多方面进行方案设计,确保检测设备的通用化。

图1:检测设备基本原理

检测设备通过向被检测对象发送激励信号,从被检测对象接收检测信号,通过测试逻辑实现对被检测对象的技术状态检查、功能测试和故障诊断等功能。

2、检测设备通用化需求

1、硬件的互换性

实现检测设备中各组成单元的互换性,包括核心处理板、信号采集板、信号调理板、操作终端、电源控制板等单元的互换性。

互换性意味着具有不同检测功能的检测设备中的组成单元可以互换,会大幅减轻部队的零部件供应保障的品种。

2、硬件架构的可扩展性

硬件的体系架构可扩展性要求在当前检测设备无法满足被检测设备检测信号通道数的情况下,可以通过插件板扩展的方式,在当前检测设备基础上快速实现出改型的检测设备。

3、软件模块的可移植性

检测设备的软件需进行良好的架构设计,通过模块划分、架构分层实现接口明确、模块间耦合性低、模块内可靠性高的软件系统。

软件模块的可移植性意味着在新研发检测设备时各软件模块能够最大限度地实现移植和复用,也意味着软件开发的工作量会大幅降低。

4、软硬件配合的完整性

软件是运行在硬件板卡之上的,当某块板卡上的软硬件作为一体具有互换性时,会更大程度地增强该板卡的整体互换性,从而实现该板卡的软硬件一体化保障,减轻换件维修的工作量。

5、测试逻辑描述的可编程性

虽然就面向某一检测对象的检测设备而言,其测试逻辑是通常是固定,该型检测设备一旦研制成功,其测试逻辑就不需要改动了。

但对于面向不同对象的检测设备,其测试逻辑显然很难保持一致,而我们期望对于不同的检测对象,我们能用测试逻辑编程的方法研制出检测设备。

将测试逻辑描述与测试逻辑的运行支撑分离,测试逻辑的运行支撑就可保持不变,只需要改动测试逻辑描述部分就可以实现针对不同检测对象的检测设备。

3、通用化设计的基本思路

实现检测设备通用化的基本思路有以下几点:

1、对激励信号和检测信号进行抽象,将需要产生的激励信号和检测信号进行抽象化的分类,所有的测试逻辑都基于抽象的信号为操作对象,这样就可以实现测试逻辑描述与硬件板卡的无关性。

2、采用操作终端与测试单元的分离方案,操作终端为上位机、测试单元为下位机,操作终端与测试单元之间通过网络进行连接,一个操作终端可以通过带多个测试单元,通过测试单元的组合可进一步实现通用性,主控单元的硬件则是完全通用性的产品,测试单元可以在内部板卡分解上继续进行通用化的设计。

3、采用测试逻辑描述与测试逻辑运行支撑分离的方案,测试逻辑描述与测试逻辑运行支撑为相互分离的软件模块,测试逻辑运行支撑运行于测试单元的核心控制板中,测试逻辑描述则可在操作终端上完成。

4、测试单元采用信号采集处理板卡与核心控制板分离的方案,核心控制板运行嵌入式操作系统及测试逻辑运行支撑模块,核心控制板具有通用性,信号采集处理板卡可根据被检测对象的不同而有所不同。

5、测试单元信号采集处理板卡采用硬件电路设计+驱动设计的方案,可以实现信号采集处理板卡的系列化。

6、采用信号采集处理板卡与信号调理板卡分离的方案,信号采集处理板卡使用标准电平形式与信号调理板卡相连,由信号调理板卡实现与被检测对象的信号连接,实现对检测信号的转换和激励信号的转换,这样可进一步确保信号采集处理板卡在一定程度上的通用性。

7、构建面向检测设备开发的测试系统集成开发支撑平台,支撑平台提供一个检测设备开发的框架和标准化可复用的软件模块,由支撑平台提供一系列支撑检测设备开发的工具和组件,实现对测试逻辑灵活性描述的支撑。

4、硬件通用化设计

4.1原理设计

检测设备通用化的硬件原理框图如下图2所示。

图2:通用检测设备硬件原理框图

图2为通用检测设备的硬件原理框图,操作终端与测试单元之间通过高速以太网进行连接。

操作终端采用桌面操作系统,其上运行检测软件,实现检测逻辑的人机交互界面部分。

测试单元核心主控制板采用嵌入式操作系统,其上主要运行测试逻辑运行支撑软件。

信号采集处理板负责非总线类信号的采集与处理,为保证信号采集处理板尽可能实现通用与互换,信号采集处理板的模拟量输入输出信号只限定在标准的电平范围内(0-5V),数字量以及脉冲量输入输出信号也采用标准的TTL电平形式。

信号调理板负责对DA、AD、DI、DO、PI、PO信号进行调理转换,形成标准电平形式的信号。

对于需要使用RS232/422/485以及CAN、1553B等总线通信与被测件相连的,增加总线通信板。

测试单元的总线通信板、信号采集处理板、核心控制板通过PXIe总线相连,这样总线通信板、信号采集处理板与核心控制板构成PXI架构的测控计算机体系。

被测设备通过信号线束同信号调理板相连,通过通信线束同总线控制板相连。

4.2通用化分析

通过原理设计,检测设备的构成如下图3所示的分解结构。

图3:通用检测设备通用化分析

由上图可以看出,硬件设备操作终端可以完全通用,测试单元中的核心控制板可以完全通用,总线通信板、信号采集处理板根据信号路数与总线通信通道数的不同,实现系列通用。

4.3操作终端的设计

操作终端为完全通用化的操作终端,CPU采用飞腾D2000_8_0803_I处理器芯片,工作主频可达2GHz,采用14nmCMOS工艺制造,设计典型功耗25W。并且具有一定的IO接口扩展,如LPC,UART,SPI,GPIO等。

操作终端系统连接图如下图4所示。

图4:操作终端连接关系图

操作终端采用触摸屏外形设计,如下图5所示。

操作终端的系统框图如下图6所示,采用功能载板+核心处理模块+固态存储模块的方式进行设计,功能载板集成通讯单元、电源管理单元、以及其他处理电路,核心处理模块、固态存储模块均可方便拆卸更换,便于快速维护。

图6:操作终端系统框图

5、ETest开发检测设备的方法

5.1ETest的使用步骤

利用硬件集成加基于ETest开发的方式,可搭建出由单机到多机的分布式仿真测试环境,如图下图7所示。

图7:半实物仿真测试系统的部署

系统的使用分为测试设计和测试执行两个阶段,在测试设计阶段,测试分析员分析UUT的接口类型、信号特征,在软件上使用可视化图形的方式绘制出UUT交联环境图,对信号与协议进行描述与检查,进行测试设备与测试主机的规划,最后通过测试脚本设计、监控窗体设计,保存后测试设计方案,见图8所示。

图8:测试设计阶段的使用流程

测试执行时,测试人员打开测试设计方案,选择设计好的测试脚本执行,测试脚本执行过程中,通过测试监控设计好的监控窗体,实时监控测试脚本的执行情况,测试结束后可得到测试结果报告,见图9所示。

5.2ETest开发通用检测设备软件

利用ETest开发检测设备软件时,下位机部分只需要开发信号采集处理板驱动程序、总线通信驱动程序,上位机部分开发可直接利用ETest集成开发环境开发操作终端的检测应用软件。如下图10所示。

图10:ETest开发通用检测设备的过程

在下位机软件开发过程中,ETest定义了驱动开发的标准ET-VISA,提供了驱动开发的规范,这使得所开发出来的板卡驱动具有一定的标准互换性。

ETestD API服务、ETestX执行器直接二进制复用,它们与板卡驱动以及嵌入式操作系统一起构成了测试单元可执行包,这个测试单元可执行包是可以完全通用的,不会因被检测对象的不同而不同。

在上位机软件开发过程中,利用测试环境编辑器开发测试环境描述,利用监控面板设计器开发检测应用软件的人机交互界面,利用测试程序编辑器开发测试程序逻辑。开发完成后,通过将这些内容与ETest提供的ETL语言引擎、UI渲染器、测试数据记录、测试执行调度、ETestD远程代理等二进制包打包发布为检测应用软件。

虽然针对不同的检测对象,所打包发布的检测应用软件整体上会有所不同,看似不具有通用性,但ETL语言引擎、UI渲染器、测试执行调度、测试数据记录、测试报告生成、ETestD远程代理等模块都不需要修改,改动部分只需要包括ETL描述数包即可。针对每种不同检测对象,只需要做简单的配置和脚本化的测试程序逻辑开发,就可以快速形成检测应用软件,这大幅度的提高了开发的效率,在新检测装备研发中也会大幅减少研发经费。

根据图6所示,在最终形成的操作终端可执行包和测试单元可执行包,按照包模块划分,共有11个模块。其中,针对不同的被检测对象,软件模块需要编写的部分只有信号采集处理板驱动、总线通信板驱动、ETL语言描述包3个部分,通用率达到了72%。由于信号采集板驱动、总线通信板驱动可以作为系列化驱动,其也可以作为通用部分看待,那么在所有的软件模块中针对不同的被检测对象,只需要更改ETL语言描述包部分就可以实现,这个意义上来讲,软件通用性达到了90.9%

经过架构设计和测试领域的组件化开发,可以将检测设备研发的工作量降低为10%。

6、结论

检测设备研发中,采用操作终端作为上位机,测试单元作为下位机。

硬件方面,操作终端和测试单元的核心控制板可完全是通用的,不会因被检测对象的不同而不同。信号采集处理板、总线通信板可以保持相对的通用性,如果不考虑造价成本,完全可以制作出满足资源最大需求的信号采集处理板和总线通信板,实现这两块板子的通用。若基于资源恰好合适不浪费的考虑,信号采集处理板、总线通信板也可以实现系列化。针对不同的被检测对象,硬件只需要研发信号调理板就可以实现检测设备。

软件方面,测试单元中运行的软件完全不需要针对被检测设备而发生变化。只要信号采集处理板与总线通信板硬件选型一致,针对不同检测对象的测试单元软硬件除信号调理板不能通用外,测试单元软硬件基本都达到了通用性。操作终端中的检测应用软件,只需要修改ETL描述数据包,就可以适应不同被检测对象的测试需要。

检测设备通用化设计后,设计开发工作就变为:信号调理板的开发、ETL描述数据包的开发两部分,即使信号采集处理板、总线通信板需要开发,也只是增加了两块板子及其驱动的开发工作量。

若将硬件板卡的通用化程度和软件模块的通用化程序进行建模,硬件通用性可达80%,软件通用性可达90.9%。

采用ETest开发检测设备,可大幅提高检测设备的开发效率。保守估计,开发的时间成本和经费成本可降低70%以上。

基于ETest设计与实现:检测设备通用化相关推荐

  1. 基于STM32设计的健康检测设备(测温心率计步)

    1. 项目介绍 本文介绍的项目是基于STM32设计的健康检测设备,支持体温测量,心率检测,支持运动计步(采用MPU6050陀螺仪实现),支持WIFI传输数据到手机APP打印显示. 硬件环境介绍: MC ...

  2. redux异步action_【第1586期】基于Redux/Vuex/MobX等库的通用化状态OOP

    前言 今日早读文章由铃盛@Michael Lin投稿分享. @Michael Lin,RingCentral前端高级工程师,前端架构经验丰富,擅长通用化领域,热爱开源. GitHub:https:// ...

  3. 基于物联网设计的酒驾检测系统(STM32+OneNet)

    一. 设计说明 随着社会的发展和人们生活水平的提高,汽车已经成为人们出行的主要代步工具,与此同时,酒后驾车所引发的事故越来越多,对人们的生命安全带来了威胁.为了减少酒后驾车造成危险事故,本文设计了一款 ...

  4. PointDistiller:面向高效紧凑3D检测的结构化知识蒸馏​

    点击上方"计算机视觉工坊",选择"星标" 干货第一时间送达 作者丨吃饭机@知乎 来源丨https://zhuanlan.zhihu.com/p/20092418 ...

  5. 基于51单片机+SHT30设计的环境温度与湿度检测设备(IIC模拟时序)

    一.项目介绍 当前文章介绍基于51单片机和SHT30传感器设计的环境温度与湿度检测设备.设备采用IIC模拟时序通信协议,能够实时监测环境的温度和湿度,并将数据通过LCD显示屏显示出来:可以广泛应用于室 ...

  6. 基于AT89C52单片机的温湿度检测设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87704704 源码获取 主要内容: ...

  7. 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告)

    本设计: 基于51单片机的火灾检测设计(仿真+程序+原理图+论文报告) Proteus仿真版本:proteus7.8 原理图:Altium Designer 程序编译器:keil 4 编程语言:C语言 ...

  8. 基于单片机双路温度检测报警系统设计-基于单片机声光控智能开关控制灯设计-基于单片机热电偶智能体温检测设计-基于单片机小型家用燃气锅炉控制系统设计-基于单片机一氧化碳有毒气体采集报警系统设计

    1628基于单片机双路温度检测报警系统设计(串口上位机控制) 基于pcf8591 tlc2543的双路温度检测报警系统 带串口上位机控制带仿真 源程序 温度传感器是 LM35 两路测温通道所用的ad芯 ...

  9. 一种基于分层设计的小家电控制板通用程序框架

    本文设计了一种基于分层设计的小家电控制板通用程序框架.分层设计有以下优点: (1)降低系统复杂度.由于每层都是相对独立的,每层可以单独实现. (2)隔离变化.通过分层设计,可以把变化的部分独立出来,让 ...

最新文章

  1. 使用MEF实现通用参数设置
  2. go给Linux安装mysql_在Linux上安装Go语言开发包
  3. python手机号脱敏代码_Excel技巧—如何对手机号码脱敏处理
  4. ftp无法与服务器建立连接_建立与Oracle数据库服务器连接的两种连接模式
  5. ORA-02287: sequence number not allowed here
  6. 让你的PHP也能执行JS并获得JS函数的返回值
  7. VUE安装依赖命令总结
  8. oracle clob 写入mongo,【Oracle】Varchar2/Blob/Clob用法详解
  9. 山东财经大学燕山学院计算机王栋,选修课Photoshop王栋的群谁有
  10. fread函数在C语言中的用法,c语言fread函数的用法
  11. Vivo手机originOS安装谷歌套件服务框架GMS安装谷歌三件套,进Google Play商店下载应用
  12. 写一个加密程序对文件加密
  13. 小分子PEG的循环节可以做到1-36个,DSPE-PEG4-Mal
  14. vue外卖十九:商家详情-底部购物车组件,购物车相关vuex状态设计、相关计算、清空购物车+滚动购物车
  15. STM32CubeIDE的一点使用技巧
  16. 分享一些数据分析师免费的课程
  17. 《如果梵高生在中国》笔记
  18. 大佬终于把鸿蒙OS讲明白了,以后我也可以吹喽!
  19. 云原生入门 第五章:kubernetes学习实践
  20. 组策略——软件限制策略(完全教程与规则示例)

热门文章

  1. 大学生医用计算机题库,2020年大学生计算机二级考试练习试题(一)包含答案...
  2. IIT_CS480_Assignments_Week2_Participation
  3. 可以修改APP数据库(图标、名称、背景等)的简单方法
  4. word用宏+excel加解密的VB、python参考代码
  5. Share_win10局域网文件共享
  6. 计算机组成原理期末考试题
  7. tinnyhttpd
  8. 深度学习优化算法,Adam优缺点分析
  9. 鉴别打印机真假墨盒墨水小妙招,收好勿谢!
  10. python:实现prefix conversions前缀转换算法(附完整源码)