打印数据协议转换与控制方法

文档序号:2509681阅读:213来源:国知局
专利名称:打印数据协议转换与控制方法
技术领域
本发明涉及一种生产现场检测设备的打印数据协议转换与控制方法,属于计算机应用与生产自动化控制领域。
背景技术
目前在工矿企业的生产现场所使用的检测设备,较为普遍地将检测数据直接通过打印机输出而并不支持以太网方式的网络通讯。以橡胶轮胎制造行业为例,为直接、快捷地判断混炼胶料的门尼粘度等重要参数是否合格,需要按照工艺要求随时进行胶料检测。由于胶样门尼检测仪仅提供有打印输出接口数据,检测人员只能面对纸制的打印数据进行结果校对,不仅无法有效地寻找差值原因、而且检测标准受到主观因素影响而有所降低。为应对生产企业信息化管理要求,还需将检测数据进行手工录入到计算机或网络服务器中,即耗费大量的人力和物力,也增加浪费时间又增加了风险。上述先行打印数据、然后进行人工校对的检测方式,显然不适用于检测批次多、数据与指标量较大的场合,对于数据级别要求较多等逐级判断检测设备来说,通过人工校对查询结果较易于出错,不利于提高生产管理系统的数据核查与历史记录保存。

发明内容
本发明所述的打印数据协议转换与控制方法,在于解决上述问题而采取通过协议转换器连接生产现场的检测设备与打印机,数据在打印的同时被复制到协议转换器,通过数据筛选与预处理而将字符型数据与图表型数据分别存储,从而在不支持以太网通讯设备之间进行组网,实现将并口打印数据转换为串口 485协议格式。本发明的目的是,定向地实现打印数据的协议转换,为生产现场提供直接、快捷地性能判断提供检测依据,以计算机软件运算替代人工校对,有利于直观、准确地判断生产工艺与产品性能。另一发明目的是,满足生产企业信息化管理要求,节省大量的人力和物力,提高整体生产效率。发明目的还在于,对检测设备输出的打印数据进行筛选、提取有效数据,以提高生产系统的自动化管理水平。为实现上述发明目的,所述打印数据协议转换与控制方法,主要包括如下步骤协议转换器获得检测设备通过打印并口向打印机输出数据的状态控制权;在T2时间段,检测设备向打印机输出一个字节的数据,与此同时数据复制到协议转换器;在Tl时间段,协议转换器对该字节数据进行筛选,删除非字符型、非图表型数据, 将字符型或图表型数据进行存储,此时检测设备不再发送字节数据;Tl和T2时间段依次地间隔排列,直至检测设备输出完成全部的打印数据;
在协议转换器中存储的字符型或图表型数据,转换为串口 485协议格式以备调取、输出。如上述基本方案,围绕协议转换器对检测设备输出的打印数据进行筛选与预处理,在实现与管理系统服务器组网通信的前提下,将打印数据转换为串口 485协议格式,不仅可以通过计算机终端进行直观地显示,而且可依据参数标准进行多批次地、逐级判断校验,以利于后续出具检测报告、工艺修改。为进一步有效地控制打印数据输出,可采取的优选控制手段是,由协议转换器调节检测设备的打印并口中的busy帧位的电平高低,以控制检测设备向打印机输出数据的状态。针对打印数据的预处理阶段,可采取如下改进方案在协议转换器进行数据筛选的过程中,将每个字符型数据依次地存储到预定的一维数组中;将图表型数据进行修正以恢复有效数据,随之进行压缩处理以去除冗余数据。针对图表型数据进行数据修正的改进措施是,所述的数据修正包括以下步骤,将记录打印图形中坐标或表格线的静态图表型数据的矩阵A,与记录图形曲线的动态图表型数据的矩阵B进行叠加;去除2个矩阵的重合点数据;还原所修正的全部图表型数据,并划分为若干个分段,对每个分段进行区域差值恢复,以使每2个相邻分段中的曲线是连续的;对每个连续的分段进行有效连接而形成修正后的有效数据,并形成完整的图形曲线。针对图表型数据进行压缩处理的改进措施是,恢复有效数据后,仅对有效数据进行存储、去除其他所有暂存或修正过程中形成的数据。综上内容,本发明所述打印数据协议转换与控制方法具有如下优点与有益效果1、通过协议转换器连接生产现场的检测设备与打印机,实现在不支持以太网通讯设备之间进行组网,为生产现场提供直接、快捷的检测依据。2、以计算机软件运算替代人工校对,提高性能检测与工艺改进的准确性,有利于提尚广品制造品质。3、能够满足信息化管理要求,节省大量的人力和物力,提高整体生产效率。4、通过数据筛选与预处理能够去除无效、冗余的内容,节省存储空间和提高检测运算速度,有利于提高生产系统的自动化管理水平。


现结合附图对本发明做进一步的说明。图1是所述协议转换器的结构示意图;图2是组网后的控制流程示意图;图3是Tl与T2时间段间隔实施示意图;图4是在Tl时间段内的控制流程示意图;图5是在T2时间段内的控制流程示意4
图6是基于本发明的组网结构示意图;图7是所述打印数据协议转换与控制方法的流程图。
具体实施例方式实施例1,如图1至图7所示,所述打印数据协议转换与控制方法,主要包括有如下步骤协议转换器获得检测设备通过打印并口向打印机输出数据的状态控制权;在Tl时间段,检测设备向打印机输出一个字节的数据,与此同时数据复制到协议转换器;在T2时间段,协议转换器对该字节数据进行筛选,删除非字符型、非图表型数据, 将字符型或图表型数据进行存储;Tl和T2时间段依次地间隔排列,直至检测设备输出完成全部的打印数据;在协议转换器中存储的字符型或图表型数据,转换为串口 485协议格式以备调取、输出。具体地,如图3至图5所示,由协议转换器调节检测设备的打印并口中的busy帧位的电平高低,以控制检测设备向打印机输出数据的状态。即检测设备发出的检测数据除提供给打印机以外,同时被协议转换器截获。协议转换器对数据的截获并不影响打印机对数据的正常接收。协议转换器能够获得对检测数据的控制权,即当协议转换器接收到一个字节数据时则停止检测设备继续发送打印数据,直到该字节数据处理完毕后再准许检测设备继续发送,从而保证数据接收的完整性和正确性。协议转换器主要分为MCU-数据处理模块、以及数据存储和显示/输出等I/O处理模块。以并行方式接收打印机数据,对数据进行筛选与预处理压缩后,提取有效数据并存储到指定的存储器中。通过按键可以修改设备地址和密码等信息以将数据进行存储,数据经过光电隔离后再转换成485协议格式。其中,MCU选用ATMEL的ATMEGA64,其PA 口用于接收打印机数据,PC 口接数码管显示,PB 口的SPI引脚连接存储芯片AT45DB161D,PF 口接按键;光耦芯片选用P521和6N136 ; 485转换芯片选用VP3082。以橡胶轮胎的门尼检测设备为例MCU的PA 口通过上面的15针接口,截取打印机输出数据并进行处理分字符(以门尼值为例)和图表(以门尼曲线为例)两种类型。MCU接收到数据后首先判断数据类型,若为字符型数据则按照字符型数据进行处理,提取出采集到的门尼数据;若判断为图表类型,则需要首先对图表进行预处理,预处理后需要对曲线进行修复以最后得到完整的曲线数据。处理后的数据以一维数组形式存储到AT45中,这一过程通过SPI方式实现。其中图表曲线也以一维数组存储,数组元素号对应图表行数,元素值对应列数。通过按键设置转换器对应设备的地址和密码并将设置信息存储到AT45,这一过程中要注意每台设备地址唯一,并与管理系统服务器对应。MCU读取AT45中存储的数据并通过串口输出,输出端通过光耦连接到485转换芯片然后接入485总线。管理系统服务器通过485总线采集协议转换器发出的门尼信息,并进行分类、判断级别等相关处理。对于向打印机输出数据的状态控制权获取,可由协议转换器的控制位发出相应的高、低电平波型,初始时默认低电平,当接收到检测检设备发送的第一个字节数据后,即在 Tl时间段内,协议转换器向检测设备的打印并口中的busy帧位发出一高电平,以阻止检测设备继续发送数据;协议转换器的数据处理单元对该字节数据进行处理,仅当处理完毕后将控制位电平拉低,即在T2时间段内,检测设备能够继续发送下一个字节;当协议转换器接收到下一个新的字节数据时,又进入Tl时间段,重新将控制位电平置拉高,如此循环反复。如图1、图2、图6和图7所示,在协议转换器进行数据筛选的过程中,将每个字符型数据依次地存储到预定的一维数组中;将图表型数据进行修正以恢复有效数据,随之进行压缩处理以去除冗余数据。协议转换器是按每一个字节进行数据筛选,对于不需要的无效数据直接过滤掉, 最后仅将有效数据进行存储,从而节省存储打印机数据的空间和时间。如针对以下一段打印数据的筛选过程。具体数据内容是,OxOD,OxOA,0x54,0x28,0x6D,0x3A,0x73,0x29,0x20,0x50,0x72,0x6F,0x5F,0x48,0x20,0x49,0x6E,0x69,0x74,0x69,0x61,0x6C,0x20,0x28,0x31,0x2B,0x33,0x29,0x20,0x28,0x31,0x2B,0x34,0x29,0x20,0x28,0x31,0x2B,0x35,0x29,0x20,0x28,0x31,0x2B,0x36,0x29,0x20,OxOD,OxOA,0x35,0x3A,0x30,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x31,0x20,0x20,0x20,0x20,0x31,0x31,0x36,0x2E,0x30,0x20,0x36,0x34,0x2E,0x39,0x20,0x20,0x36,0x33,0x2E,0x31,0x20,0x20,0x35,0x2E,0x33,0x20,0x20,0x20,0x35,0x2E,0x33,0x20,0x20,0x20,0x20,0x20,OxOD,OxOA,0x4B,0x3A,0x36,0x31,0x2E,0x31,0x20,0x20,0x20,0x20,0x61,0x3A,0x2D,0x30,0x2E,0x35,0x30,0x20,0x37,0x30,0x25,0x20,0x36,0x20,0x20,0x20,0x38,0x30,0x25,0x20,0x37,0x20,0x20,0x20,0x39,0x30,0x25,0x20,0x31,0x30,0x20,0x20,OxOD,OxOA,0x44,0x61,0x74,0x65,0x20,0x3A,0x20,0x20,0x20,0x32,0x30,0x30,0x39,0x2D,0x30,0x39,0x2D,0x30,0x37,0x20,0x20,0x20,0x31,0x37,0x3A,0x31,0x36,0x20,0x20,0x54,0x75,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x54,0x64,0x3A, 0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x54,0x6F,0x74,0x61,0x6C,0x20,0x3A,0x33,0x38,0x31,0x37,0x38,0x20,0x20,0x20,OxOD,OxOA,0x07,0x07,0x07,OxAAOxOD,OxOA,OxlB,0x55,0x01,0x28,0x6D,0x3A,0x73,0x29,0x20,0x50,0x72,0x6F,0x5F,...图表数据若干......0x48,0x20,0x49,0x6E,0x69,0x74,0x69,0x61,0x6C,0x20,0x28,0x31,0x2B,0x33,0x29,0x20,0x28,0x31,0x2B,0x34,0x29,0x20,0x28,0x31,0x2B,0x35,0x29,0x20,0x28,0x31,0x2B,0x36,0x29,0x20,OxOD,OxOA,0x35,0x3A,0x30,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x31,0x20,0x20,0x20,0x20,0x31,
0x31,0x30,0x2E,0x35,0x20,0x36,0x36,0x2E,0x33,0x20,0x20,0x36,0x34,0x2E,0x32,0x20,0x20,0x36,0x33,0x2E,0x33,0x20,0x20,0x20,0x35,0x2E, 0x33,0x20,0x20,0x20,0x20,0x20,OxOD,OxOA,0x4B,0x3A,0x36,0x31,0x2E,0x31,0x20,0x20,0x20,0x20,0x61,0x3A,0x2D,0x30,0x2E,0x35,0x30,0x20,0x37,0x30,0x25,0x20,0x36,0x20,0x20,0x20,0x38,0x30,0x25,0x20,0x37,0x20,0x20,0x20,0x39,0x30,0x25,0x20,0x31,0x30,0x20,0x20,OxOD,OxOA,0x44,0x61,0x74,0x65,0x20,0x3A,0x20,0x20,0x20,0x32,0x30,0x30,0x39,0x2D,0x30,0x39,0x2D,0x30,0x37,0x20,0x20,0x20,0x31,0x37,0x3A,0x31,0x36,0x20,0x20,0x54,0x75,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x54,0x64,0x3A,0x31,0x30,0x30,0x2E,0x30,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x54,0x6F,0x74,0x61,0x6C,0x20,0x3A,0x33,0x38,0x31,0x37,0x38,0x20,0x20,0x20,OxOD,OxOA,0x07,0x07,0x07,OxAA如上内容的打印数据中包括第一段为字符数据,第二段为图表数据。当接收到得第一个字节为0D,第二个字节为0A,第三个字节不是IB时,判断数据类型为字符类型,继续接收新的字符数据。当接收到的五个字节数据中,某一个字节数据为3A,3A后的连续两个数据为30到 39中的任意一个数值,3A前的连续两个数据为30到39中的任意一个数值,则将其作为需要保存数据进行存储。如上述内容中的“0x35,0x3A, 0x30,0x30,,;当接收到的五个字节数据中,某一个字节数据位2E,2E前、后各一个数据都为30 到39中的任意一个数值,则将其作为需要保存的数据进行存储,如上述内容中的“0x31, 0x31,0x36,0x2E,0x30”。当接收到得5个字节数据中再次出现“0D,0A”时,为一段检验数据的结束标志。对于筛选出的第一个检验数据按ASCII码进行还原后为具体十进制的数值,再将该十进制数值存储到一维数组里。每次筛选到的有效数据都存储到一维数组的相应位置上,然后用于存储到外部存储芯片中以供管理系统服务器读取。接着继续接受新的打印机数据。当接收到得第一个字节为0D,第二个字节为0A,第三个字节是IB时,第四个字节为55,第五个字节为01时,判断数据类型为图表类型,图表型数据末尾为检验字符数据,筛选方式与字符筛选方式相同。即再次出现“0D,0A”为图表型检验数据的结束。由于工业生产检测设备现场环境的复杂性,打印机数据格式上不一定全部一致, 存在一定的差异。针对复杂的图表型数据,由协议转换器进行数据的预处理、数据修正和数据压缩三个阶段。所述的数据修正包括以下步骤将记录打印图形中坐标或表格线的静态图表型数据的矩阵A,与记录图形曲线的动态图表型数据的矩阵B进行叠加;去除2个矩阵的重合点数据;还原所修正的全部图表型数据,并划分为若干个分段,对每个分段进行区域差值恢复,以使每2个相邻分段中的曲线是连续的;对每个连续的分段进行有效连接而形成修正后的有效数据,并形成完整的图形曲线。图表型数据能够分成静态和动态数据,打印图形中的坐标和表格线是固定不变的,称为静态数据或矩阵A。打印图形中的曲线根据测量结果不同而不同,称为动态数据或矩阵B。从检测设备获取的检测数据通过矩阵叠加,即形成B-A。如果2个矩阵没有重合点,则打印图形表达的是一条完整的曲线。如果有重合点,则打印图形表达的是一条不连续的线段,即从原有曲线中去掉了重合点的数据结果,此部分对有效数据造成了部分损坏。数据修正对损坏的数据进行合理恢复,恢复数据并不是简单地将所有数据进行整体恢复,而是将预处理后的图形数据划分为若干个小段,对每个分段进行区域差值恢复,从而使每个分段中的曲线都是连续的,然后再将各个分段已恢复曲线进行有效连接,这样的特殊恢复能够减少内存的使用。所述的数据压缩并不是简单地压缩和解压缩,而是恢复有效数据后,仅对有效数据进行存储、去除其他所有暂存或修正过程中形成的数据,以提高图表的压缩效率,压缩后的数据也可存放在一维数组里并存储到外部存储器中。
权利要求
1.一种打印数据协议转换与控制方法,其特征在于包括如下步骤,协议转换器获得检测设备通过打印并口向打印机输出数据的状态控制权; 在T2时间段,检测设备向打印机输出一个字节的数据,与此同时数据复制到协议转换器;在Tl时间段,协议转换器对该字节数据进行筛选,删除非字符型、非图表型数据,将字符型或图表型数据进行存储,此时检测设备不再发送字节数据;Tl和T2时间段依次地间隔排列,直至检测设备输出完成全部的打印数据; 在协议转换器中存储的字符型或图表型数据,转换为串口 485协议格式以备调取、输出ο
2.根据权利要求1所述的打印数据协议转换与控制方法,其特征在于由协议转换器调节检测设备的打印并口中的busy帧位的电平高低,以控制检测设备向打印机输出数据的状态。
3.根据权利要求1或2所述的打印数据协议转换与控制方法,其特征在于在协议转换器进行数据筛选的过程中,将每个字符型数据依次地存储到预定的一维数组中;将图表型数据进行修正以恢复有效数据,随之进行压缩处理以去除冗余数据。
4.根据权利要求3所述的打印数据协议转换与控制方法,其特征在于所述的数据修正包括以下步骤,将记录打印图形中坐标或表格线的静态图表型数据的矩阵A,与记录图形曲线的动态图表型数据的矩阵B进行叠加; 去除2个矩阵的重合点数据;还原所修正的全部图表型数据,并划分为若干个分段,对每个分段进行区域差值恢复, 以使每2个相邻分段中的曲线是连续的;对每个连续的分段进行有效连接而形成修正后的有效数据,并形成完整的图形曲线。
5.根据权利要求4所述的打印数据协议转换与控制方法,其特征在于恢复有效数据后,仅对有效数据进行存储、去除其他所有暂存或修正过程中形成的数据。
全文摘要
本发明所述打印数据协议转换与控制方法,数据在打印的同时被复制到协议转换器以将字符型数据与图表型数据分别存储,从而在不支持以太网通讯设备之间进行组网,实现将并口打印数据转换为串口485协议格式。协议转换器获得检测设备通过打印并口向打印机输出数据的状态控制权;在T1时间段,检测设备向打印机输出一个字节的数据,与此同时数据复制到协议转换器;在T2时间段,协议转换器对该字节数据进行筛选,删除非字符型、非图表型数据,将字符型或图表型数据进行存储;T1和T2时间段依次地间隔排列,直至检测设备输出完成全部的打印数据;在协议转换器中存储的字符型或图表型数据,转换为串口485协议格式以备调取、输出。
文档编号B41J29/393GK102476515SQ201010576399
公开日2012年5月30日 申请日期2010年11月25日 优先权日2010年11月25日
发明者任丽艳, 佟强, 姚永, 左磊, 李玉峰, 袁仲雪, 陈海军 申请人:软控股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1