数字式矿用气体传感器校准检定装置及方法与流程

文档序号:24301434发布日期:2021-03-17 00:52阅读:320来源:国知局
数字式矿用气体传感器校准检定装置及方法与流程
本发明涉及一种数字式矿用气体传感器校准检定装置,尤其是一种基于can-open及modlbus协议的数字式矿用气体传感器检定装置及检定方法。
背景技术
:矿用气体传感器是指检定煤矿生产环境中气体浓度并适时报警的一种传感器设备,常见的有甲烷感器、一氧化碳传感器、二氧化碳传感器、可燃气体传感器、氧气传感器等等。为了保证井下生产的安全需要大量的矿用气体传感器来实时监测井下有害气体的浓度。矿用气体传感器的稳定性、准确性关系到整个煤矿的安全生产,按照《煤矿安全规程》的规定必须定时对矿用气体传感器准确性、稳定性、完好性进行检定,以达到安全生产的目的。矿用气体传感器是由黑白原件组成的,经过长时间使用后,元器件容易老化导致检定量产生漂移从而影响检定结果的准确性,因此需要定期对矿用气体传感器进行校验保证其可靠准确稳定运行。目前,矿用气体传感器制式主要分为模拟信号和数字信号两种,模拟信号又包括频率型和电流电压型两种,对于模拟信号传感器的检定已有很多成熟的装置得到研发并投入使用,随着网络化、智能化、数字化的发展,新一代的矿用气体传感器逐渐取代模拟型传感器,通过采集频率、电流和电压等模拟信号的检定已不能满足矿用气体传感器的检定要求。因此,有必要开发一种基于数字通信协议的数字式矿用气体传感器检定装置。技术实现要素:本发明要解决的技术问题是提供一种数字式矿用气体传感器校准检定装置及检定方法,能够支持can及modbus通讯协议的数字传感器的检定。为解决以上技术问题,根据本发明的一个方面,提供一种数字式矿用气体传感器校准检定装置,包括上位机、数据采集单元、控制指令发送单元、用户接口单元、数据存储单元和数据转出单元;所述的数据采集单元包括交换机、串口服务器、can模块和数据采集解析模块;所述交换机采用8路交换机,交换机的一路接入上位机网口用于上位机软件采集数字信号,一路接入串口服务器用于采集modbus协议的数字信号,其余接入can模块用于采集can协议的数字信号;串口服务器的输入端同时接入16路modbus数字信号,每个输入端对应连接的传感器分别配置ip和端口,输出端为网口直接接入到交换机上;can模块的输入端同时接入4路can数字信号,每个输入端对应连接的传感器分别配置ip和端口,输出端为网口直接接入到交换机上;数据采集解析模块用于通过网口tcp/ip协议采集对应的can协议数字信号或者modbus协议数字信号,并根据传感器类型通过对应的解析方式(具体方法见后面的说明)把16进制数字信号转化为10进制数字信号,获得得出传感器的测量值;控制指令发送单元与上位机连接,用于接收上位机发出的命令并控制标准气的通断以及通道的通断。进一步地,所述的控制指令发送单元包括io卡、io端子排、控制逻辑信号发送模块;io卡的输出端用来接收上位机发出的命令,并把io信号传输到io扩展板对应端子上,输入端用来采集频率信号;io扩展板连接继电器控制标准气的通断以及通道的通断。进一步地,所述的用户接口单元包括基本数据输入界面,控制逻辑界面,数据维护/打印界面。进一步地,所述的数据存储单元包括access数据库连接模块、sql写入数据库模块。进一步地,所述的数据转出单元包括excel连接模块、数据转出excel模块、打印模块。根据本发明的另一方面,提供一种数字式矿用气体传感器校准检定方法,包括步骤:步骤一,在用户接口单元中依据选择的标准气以及传感器数量打开通道输入标准气开始检校,等待示值稳定后,通过tcp/ip协议根据ip和端口采集对应ip连接的传感器数字信号;步骤二,根据传感器类型解析采集到的16进制数字信号,把通过modbus或can通讯方式获得的16进制数字信号转化为10进制数字信号,并显示到用户接口单元对应位置;步骤三,全部校验完成后,把所有数据保存到数据库中,最后关闭通道和气体,完成整套数据采集操作。进一步地,步骤二中,针对modbus通讯方式,解析获得的16进制数字信号的方法是:从右边截取位数是第12位,从左边截取位数是第9位,经过以下处理函数转化(具体说明见后),把数字信号转化为有效的浮点型浓度值。进一步地,步骤二中,针对can通讯方式,解析获得的16进制数字信号的方法是:从右边截取位数是第14位,从左边截取位数是第11位,经过以下处理函数转化,把数字信号转化为有效的浮点型浓度值。本发明通过引入串口服务器设备,可以同时完成16路modbus数字信号的采集并自动转化为tcp/ip协议上传到计算机,实现了多路不同通信协议的数字式传感器能够同步采集数据的目的。引入网络交换机及can集成模块,可以为每个传感器分配一个ip和一个端口,同时采集16路can数字信号的采集并转化为tcp/ip协议上传到计算机。通过解析传感器的公用通讯协议和兼顾解析每家传感器的私有通讯协议,建立了基本资料维护库,通过解析算法,将采集到的通讯数据转化为可识别的有效字符串,解决了由于各种传感器生产厂家的通信协议不统一而不能实现计算机自动检定的问题。采集到的有效数据存入数据库,并直接可以导出到excel表格中,方便数据的整理分析归类,并实现数据格式模板化,方便各种报表方案调用。附图说明图1是本发明中检定装置的结构示意图。图2是本发明中软件流程图。图3是本发明中设备输出控制流程图。图4是本发明中设备的数据采集流程图。具体实施方式传统的矿用气体传感器,其变送值一般是频率或电压、电流模拟信号。随着计算机技术和网络技术的发展,模拟型气体传感器越来越不能满足当前智能化、网络化、数字化的需要,应用而生了矿用数字式气体传感器。因此很多厂家已经开发出了支持can通讯协议及modbus通讯协议的数字化矿用气体传感器以满足数字化及网络化发展的需要,这就需要开发一种可以支持can及modbus通讯协议的数字式矿用气体传感器校准检定装置。基于此,本发明一种典型的实施方式提供的数字式矿用气体传感器校准检定装置,包括上位机、数据采集单元、控制指令发送单元、用户接口单元(即ui单元)、数据存储单元和数据转出单元。所述的数据采集单元包括交换机、串口服务器、can模块和数据采集解析模块;所述交换机采用8路(可扩展)交换机,交换机的一路接入上位机网口用于上位机软件采集数字信号,一路接入串口服务器用于采集modbus协议的数字信号,其余接入can模块用于采集can协议的数字信号。串口服务器的输入端同时接入16路modbus数字信号,每个输入端对应连接的传感器分别配置ip和端口,输出端为网口直接接入到交换机上;can模块的输入端同时接入4路can数字信号,每个输入端对应连接的传感器分别配置ip和端口,输出端为网口直接接入到交换机上;数据采集解析模块用于通过网口tcp/ip协议采集对应的can协议数字信号或者modbus协议数字信号,并根据传感器类型通过对应的解析方式,把16进制数字信号转化为10进制数字信号,获得得出传感器的测量值;控制指令发送单元与上位机连接,用于接收上位机发出的命令并控制标准气的通断以及通道的通断。采集到的有效数据存入数据库,并直接可以导出到excel表格中,方便数据的整理分析归类,并实现数据格式模板化,方便各种报表方案调用。本实施方式提供的检定装置主要支持两种数字式通讯协议:其一为can协议,其信号交互模式是当客户端接收到信号后会主动发送到服务端,不需要服务端轮询各客户端是否接收到数据。其二为modbus协议,其信号交互模式是服务端主动发送采集指令,客户端接收到服务端发来的信号后,反馈当前采集到的信号给服务端。如果直接用电脑连接传感器采集数字信号,面对的最大问题是:(1)由于电脑自带的通讯端口太少,无法满足同时采集多路数字信号的要求;(2)modbus协议在访问设备时需要设备地址号,而传感器出厂时的地址号并未标注;(3)modbus协议和can协议中虽然数据位字节是确定的,但数据的含义却因厂家不同而不同,无法得到传感器的数据。针对两种通信协议分别选择能够为每个连接的数字传感器配置独立的ip和端口的通讯模块。例如一捷宸电子科技有限公司的4路can转网口设备cne400和16路485转网口设备ncom660。上述设备可以为每个连接的数字传感器配置独立的ip和端口,方便计算机访问识别,同时可以根据实际需求自主调整模块数量实现多路can协议数字信号的采集。根据本实施方式,可以同时完成16路modbus数字信号的采集并自动转化为tcp/ip协议上传到上位机;引入网络交换机及can集成模块,可以为每个传感器分配一个ip和一个端口,同时采集16路can数字信号的采集并转化为tcp/ip协议上传到计算机。通过配置串口服务器和can模块,给每一路校验的传感器配置一个ip和一个端口,解决了以modbus协议的数字式传感器地址编号未知的问题,并解决了同时采集多路数字式传感器的检定问题。通过解析传感器的公用通讯协议和兼顾解析每家传感器的私有通讯协议,建立了基本资料维护库,通过解析算法,将采集到的通讯数据转化为可识别的有效字符串,解决了由于各种传感器生产厂家的通信协议不统一而不能实现计算机自动检定的问题。本实施方式提供的数字式矿用气体传感器校准检定装置由软件部分和硬件部分两部分构成。一、软件部分是由vc6.0基于mfc开发,数据库采用access数据库,导出表格使用excel模板。该软件主要由ui界面,数据采集解析模块,控制逻辑信号发送模块,数据存储模块几部分组成。其中ui界面主要由三个界面组成:基本资料输入界面,控制逻辑界面,数据维护/打印界面。基本资料输入界面主要用来输入标准气体、送检单位、传感器、生产厂商、传感器数字信号解析方式等基本资料,包含增、删、改、查等操作按钮。基本资料输入数据库后,可以为控制逻辑界面的调用提供便利,在基本资料输入界面用户还可以自主选择校验的项目,可以是单独的一种或者是几种校验项目的组合。控制逻辑界面主要包括校验通道数量选择,标准气体选择,传感器选择,手自动校验选择以及一些基本资料的手动输入(压强、温度、湿度等)。手动校验主要是单一标准气的校验,点启动后一直通气,传感器当前示值会适时显示在ui界面,点停止后,停止通气,手动校验结束。自动校验是按照国标规程来自动进行传感器的校验,包括基本误差、响应时间、报警误差、传输距离等检验项目,传感器示值也会适时显示在ui界面。自动校验结束后,数据会自动保存到access数据库中,方便数据维护/打印界面调用。数据维护/打印界面主要用来查询历史数据,导出校验数据到excell表格,包含增、删、改、查等操作按钮,同时为了防止用户在控制逻辑输出界面选择相关数据出错,该界面还提供了修改这些基本数据的功能。用vc操作excel功能:通过类向导添加excell接口函数类excel.dll,添加成功后,在工程中会自动添加两个文件excel.cpp和excel.h,至此excel接口函数类已经正确导入。然后vc通过调用excel对应接口函数来操作excel表格,可以把校验数据写入到excel模板中对应位置数据存储模块的实现主要是通过vc连接access数据库来实现,具体实现方式为:通过ado连接access数据库,首先通过#import命令导入msado15.dll文件,然后实例化_connectionptr指针,连接数据库。再实例化_recordsetptr指针,通过_recordsetptr指针操作数据库,对数据库中数据进行增、删、改、查操作。控制逻辑信号发送模块:设备选用16进16出io卡来执行相应输入输出操作,具体操作为,把厂商提供的io卡接口库拷贝到软件工作目录下,然后在软件头文件中加入接口头文件,在软件类文件中加入接口类文件,至此连接io卡配置步骤完成。在ui界面选择好通道数,手自动检测方式并填入基本数据后,点击开始校验按钮后开始执行校验动作,首先调用注册函数注册io卡,调用io卡初始函数初始化io卡,然后调用输出函数给各个输出端同时发送信号,io卡收到信号后控制继电器的开关,进而控制通道的开关以及标准气开关。安装好串口服务器和can模块的后,要在串口服务器和can模块的配置软件中配置ip地址和端口,为每一个连接的传感器分别分配ip和端口,方便上位机程序采集传感器反馈回来的数据信号。如果传输协议为can协议,由于是广播式传输,客户端会主动发送16进制数据给服务端,如果传输协议是modbus协议,需要服务端给客户端发送16进制读取命令,客户端接收到读取命令后再反馈当前数值信息给服务端。串口服务器和can模块接收到16进制数值信息后,通过tcp/ip协议传送到上位机采集软件中。上位机软件通过网口通信程序接收到16进制数字信号后,根据传感器类型从数据库中查找对应的解析方式,把16进制数字信号转化为10进制数字信号并显示在控制逻辑输出界面上,校验完成后,把所有数据保存在数据库中。在数据维护/打印界面可以查询当前校验的传感器数据也可以查询以前校验的历史数据,查询出结果后可以直接点转出按钮转出到设定好格式的excel表格中,或者可以点击打印按钮直接把查询结果打印出来。本发明提供一种数字式矿用气体传感器校准检定方法,包括步骤:步骤一,在用户接口单元中依据选择的标准气以及传感器数量打开通道输入标准气开始检校,等待示值稳定后,通过tcp/ip协议根据ip和端口采集对应ip连接的传感器数字信号;步骤二,根据传感器类型解析采集到的16进制数字信号,把通过modbus或can通讯方式获得的16进制数字信号转化为10进制数字信号,并显示到用户接口单元对应位置;步骤三,全部校验完成后,把所有数据保存到数据库中,最后关闭通道和气体,完成整套数据采集操作。针对modbus通讯方式,解析获得的16进制数字信号的方法是:从右边截取位数是第12位,从左边截取位数是第9位,经过处理函数转化,把数字信号转化为有效的浮点型浓度值。针对can通讯方式,解析获得的16进制数字信号的方法是:从右边截取位数是第14位,从左边截取位数是第11位,经过处理函数转化,把数字信号转化为有效的浮点型浓度值。以上解析方式说明如下:针对不同传感器类型把有效数据位的截取方式维护到数据库中,(以山西科隆的矿用甲烷传感器为例):在系统数据库中山西科隆维护的通讯方式为can,从右边截取位数是第14位,从左边截取位数是第11位,所以我们通过socket函数从cne400中读取到16进制数字信号0008063e070503586580000f,从右边截取14位截取到数据为586580000f,从左边截取11位截取到数据为05080500,当前取到的58658000为16进制数据。16进制浮点型数据转化为10进制浮点型数据例子如下:58658000,其二进制为01011000011001011000000000000000。(1)符号位为0,则该浮点数是正数。(2)指数部分为10110000,转换成十进制为176,再减去127,得到指数位为49。(3)尾数部分为11001011000000000000000,转成小数的方法是从小数点开始,第1个小数乘以2的(-1)次方,第2个小数乘以2的(-2)次方,以此类推,所有的结果相加就是小数。经过计算,尾数部分的结果为0.79296875。经过上述操作,该实数为1.79296875*2的49次方,最终结果为:1.009351674298368*10的15次方16进制转10进制规则如下,1、首先明白16进制数(从右到左数是第0位,第1位,第2位……)的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方,依次这样排列下去。2、明白abcdef表示的二进制数字分别是10,11,12,13,14,15。3、十六进制转换成十进制的公式是:要从右到左用二进制的每个数去乘以16的相应次方,然后这些数字相加就是了,例如:2af5换算成10进制:第0位:5*16^0=5第1位:f*16^1=15*16^1=240第2位:a*16^2=10*16^2=2560第3位:2*16^3=8192结果就是:5*16^0+15*16^1+10*16^2+2*16^3=10997。对其它厂家的传感器,其can的通讯数据位,从右边截取位数是第几位,从左边截取位数是第几位,在系统维护中说明。2、处理函数转化说明。16进制浮点型数据转化为10进制浮点型数据例子如下:58658000,其二进制为01011000011001011000000000000000。(1)符号位为0,则该浮点数是正数。(2)指数部分为10110000,转换成十进制为176,再减去127,得到指数位为49。(3)尾数部分为11001011000000000000000,转成小数的方法是从小数点开始,第1个小数乘以2的(-1)次方,第2个小数乘以2的(-2)次方,以此类推,所有的结果相加就是小数。经过计算,尾数部分的结果为0.79296875。经过上述操作,该实数为1.79296875*2的49次方,最终结果为:1.009351674298368*10的15次方。二、硬件部分主要由io卡、io扩展板、交换机、串口服务器、can模块组成。1、io卡的输入端口为16位、输出端口为16位,输出端用来接收上位机发出的命令,并把io信号传输到io扩展板对应端子上,输入端用来采集频率信号。2、io扩展板共有32位端子用来连接继电器控制标准气的通断以及通道的通断。3、交换机采用8路交换机用来扩充网口数量,一路接入计算器网口方便上位机软件采集数字信号,一路接入串口交换机用来采集modbus协议的数字信号,其余接入can转换模块用来采集can协议的数字信号。4、串口服务器可以为每个输入端配置ip和端口,输入端可以同时接入16路modbus数字信号,输出端为网口直接接入到交换机上。5、can转换模块可以为每个输入端配置ip和端口,输入端可以同时接入4路can数字信号,输出端为网口直接接入到交换机上。6、用户可以根据实际需求灵活调整交换机端口数及can转换模块数量,满足不同校验数量的需求。下面通过一个相对具体的实施例对本发明要求的技术方案和技术效果作进一步说明。本实施例中,can模块选用捷宸电子科技有限公司的4路can转网口设备cne400,其设备参数如下:该设备可以为每个连接的数字传感器配置独立的ip和端口,方便计算机访问识别,同时可以根据实际需求自主调整模块数量实现多路can协议数字信号的采集。串口服务器选用捷宸电子科技有限公司的16路485转网口设备ncom660,其设备参数如下:接口类型16路rs232/485通讯速率1200-115200bps支持位数8位停止位数1位和2位校验无校验、奇校验和偶校验网口速率10m/100m自适应设备保护2kv电磁隔离,1500w雷击浪涌保护工作方式tcpserver,tcpclient工作电压dc110-340v模块功率<=5w工作温度-40--80该设备可以为每个连接的数字传感器配置独立的ip和端口,方便计算机访问识别,同时可以根据实际需求自主调整模块数量实现多路modbus协议数字信号的采集。为了实现一套设备不但可以采集can协议数字信号又可以采集modbus协议数字信号,同时还可以采集多路数字信号,便于后续扩展需要还配置了16路网口的交换机。支持两种协议的硬件模块可以全部连接到网口交换机上,电脑的网口也连接到网口交换机上,这样就组成一个微型局域网,电脑就可以通过网口tcp/ip协议采集can协议数字信号或者modbus协议数字信号了。该设备的局域网ip及端口配置如下表:can协议的数据以帧结构的方式传输,帧的基本单元为8个字节。数据传输顺序为低位在前,高位在后:modbus协议的数据传输格式为:尽管不同厂家按照标准协议来进行通讯,但是其数据位的编码方式却千差万别,数据位的不同会引起解析错位,导致采集数据错误。我们通过如下方式解决这一问题,在程序的基本资料维护界面,根据不同厂家的矿用气体传感器,要求系统操作人员输入如下基本资料。传感器厂家通讯方式从右边截取位数从左边截取位数xx厂家modbus129山西科隆can1411然后把传感器基本资料保存在数据库中。在程序的信号采集操作界面,当操作人员在下拉列表框中选择相应传感器厂家后,此厂家传感器的通讯方式,数据位的读取方式也会随之从数据库中读入到系统变量中,方便后续采集到数据后进行解析。根据tcp/ip协议由ip及端口读取对应传感器信号后,其解析过程如下(以山西科隆的矿用甲烷传感器为例):在系统数据库中山西科隆维护的通讯方式为can,从右边截取位数是第14位,从左边截取位数是第11位,所以我们通过socket函数从cne400中读取到16进制数字信号0008063e070503586580000f,从右边截取14位截取到数据为586580000f,从左边截取11位截取到数据为58658000,采用以下处理函数转化:采用上述处理函数转化,就可以把数字信号转化为有效的浮点型浓度值。整个设备控制逻辑的输出,是由电脑控制凌华的pci7432io卡完成的。pci7432由32个光耦隔离输入端口和32个光耦隔离输出端口组成,具体端口定义如下表所示:如检定低浓甲烷传感器,则浓度1为0.5%,浓度2为1.2%,浓度3为1.5%,浓度4为2.0%,浓度5为3.5%。在所有校验项目开始之前打开通道,校验完成后必须关闭通道以防止漏气。整个电路时高电位有效,当对应数字端口输出1时表示该端口打开,当输出0是表示该端口关闭。校验方法是按照国标规程来进行的,主要校验的项目有:1、浓度4示值稳定性校验,校验3次。校验逻辑为:进空气---通入浓度4气体3分钟---弹出对话框等待操作员调节示值----确认---通入浓度4气体1分钟---1分钟内采集浓度最大最小值---进空气---泄气。2、浓度1、3、5基本误差校验,校验4次,取后3次值。校验逻辑为:进空气---通入浓度1气体3分钟---采集当前浓度值---泄气---进空气---通入浓度3气体3分钟---采集当前浓度值---泄气---进空气---通入浓度5气体3分钟---采集当前浓度值---泄气。3、浓度4响应时间校验,校验3次。校验逻辑为:进空气---通入浓度4气体3分钟---采集浓度值a----泄气---进空气---通入浓度4气体---采集当前浓度值并记录当前浓度值到达浓度值a百分之90所用时间---泄气。4、浓度2报警误差校验,校验3次。校验逻辑为:用户确认开始报警误差校验---进空气---通入浓度2气体3分钟---手动输入报警浓度---泄气。5、浓度1、3、5传输距离校验,校验4次,取后3次值。校验逻辑为:与基本误差校验逻辑一致,只是在16路终端增加电阻。校验完成后,所有采集的浓度值都会保存到access数据库中,系统的数据库表结构如下表:basebjwc表存储报警误差校验浓度值basecsjl表存储传输距离校验浓度值basejbwc表存储基本误差校验浓度值basewdx表存储稳定性校验浓度值basexysj表存储响应时间校验浓度值inactorbase表存储传感器基本资料ndbase表存储浓度维护基本资料optionbase表存储检定项目以inactorbase表为例,主要是为了存储该传感器传输协议以及解析方式而设计,其关键字段如下表所示:字段名称值类型备注说明ididid号inactortype文本传感器类型translatetype文本通信方式rightnum文本右边开始截取位数leftnum文本右边截取后的字串再从左边截取数据存储模块的实现主要是通过vc连接access数据库来实现,具体实现方式为:通过ado连接access数据库,首先通过#import命令导入msado15.dll文件,然后实例化_connectionptr指针,连接数据库。再实例化_recordsetptr指针,通过_recordsetptr指针操作数据库,对数据库中数据进行增、删、改、查操作。数据保存到数据库中后,系统可以提供历史数据查询及excel打印功能。用vc操作excel功能:通过类向导添加excell接口函数类excel.dll,添加成功后,在工程中会自动添加两个文件excel.cpp和excel.h,至此excel接口函数类已经正确导入。然后vc通过调用excel对应接口函数来操作excel表格,可以把校验数据导出到excel模板中对应位置。具体步骤为:(1)选择要导出的数据最少1路最多16路可以同时导出;(2)所有数据导出到excel表格sheet5页面;(3)在sheet1页面设置好不同厂家不同的打印格式;(4)sheet1页面打印格式设置好后,从sheet5页面把数据链接过来。这样做的优点是可以灵活针对不同的厂家不同的打印格式,不需要再修改系统的数据转出代码,真正做到了一次转出多处调用。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1