数字指示秤作弊检测系统的设计
2020-11-26李晓新
李晓新
哈尔滨市计量检定测试院 黑龙江哈尔滨 150036
古往今来,秤一直是人们交易衡量得失的重要工具,在人们日常贸易生活中有着至关重要的社会地位。数字指示秤是社会发展、时代进步的产物,它代替了古老而传统的秤,成功走入大众生活,变得更加准确且简单直观[1]。但是市场上使用的数字指示秤存在很多不良竞争现象,因此对于数字指示秤的计量检定工作还有待改善。下面分析了数字指示秤的规范使用在市场中的重要性。
1 数字指示秤概述及计量检定的重要性
数字指示秤是一种非自动秤,其性能表现出显示直观明确、精准度高、方便操作等优点。数字指示秤在我们生活中非常常见,比如电子秤、地上衡等都是数字指示秤。在称重货物上,数字指示秤发挥了良好的功效。在农贸市场和企业工厂等地方对数字指示秤的使用非常广泛,已经逐渐占据了市场的主导地位。
数字指示秤作为测量仪器,其工作部件在长期使用的过程中会造成不同程度的损坏和老化等导致称重时出现测量不准的情况出现,也有可能是运输途中因为颠簸导致数字指示秤的正常使用受到影响。所以,不管是全新的秤还是长期使用的秤都应该进行计量检定,并且需要根据国家检定规程开展逐项检查和校准,以保障数字指示秤能够得到合理使用,杜绝由于称量问题带来的贸易问题,让双方的合法权益得到有效保障,因此数字指示秤的计量检定工作非常重要。
2 数字指示秤防作弊检测平台概述
数字指示秤防作弊检测平台主要分为软件设计、硬件设计以及云端数据库的管理。基本工作原理:云端服务器接收到待检秤信息后,根据待检秤型号、所处地域等计算出高危作弊码序列传送至现场检测设备。检测设备模拟载荷输入一定质量所对应的电信号,然后模拟电子秤键盘,顺次输入云端服务器智能选择的高危作弊码,使用图像识别设备捕捉电子秤的屏幕显示值。再经检测软件中的数学建模分析,根据概率值由高到低排列出作弊码可能的组合方式,采用穷举法对电子秤进行检测,暴力破解电子秤的作弊码。最后将作弊码和电子秤信息上传至云端数据库,由云端服务器统一储存。
2.1 软件系统架构
软件系统架构分为展示层、业务层、内核层以及硬件层。
2.2 流程和功能设计
2.2.1 检测码的输入
(1)单条输入:用户手动输入检测码。
(2)文件输入:用户选择包含多条检测码的txt 格式文件,进行批处理检测。
(3)算法生成:运用设计算法机制自动生成多条检测码,进行批处理。
2.2.2 图像处理
(1)转为灰度图。
(2)二值化。采用最大类间方差法,使图像错分的概率最小化。
(3)图像去噪。图像处理中所涉及的噪声:椒盐噪声:图像切割引起的即黑图像上的白点,白图像上的黑点噪声与周围各点的灰度值差异较大。去噪方法采用高斯滤波法。
(4)图像倾斜变换。根据图像特征识别出图像倾斜角度和倾斜方向。
(5)图像分割。采用连通域文本分割法和投影法文本分割法。
2.2.3 图像识别
采用基于自适应阈值优化的穿线法图像识别算法,先对数字图像进行灰度化和二值化,将数字变为白色,背景变为黑色,然后利用穿线法,对abcdefg7 个区域依次穿线。
2.2.4 数字指示秤模拟信号的输入
(1)通过模拟信号来复现电子秤的某一重量。
(2)通过接口向电子秤上发射检测码,开发板将其转化为电子秤所能识别的信号,获取电子秤数显图像。
(3)通过识别处理电子秤数显图像,并与之前的质量作比较,来判定所发射的检测码是否为作弊码。
3 硬件设计
硬件设计内容主要包括数字指示秤的模拟键盘设计,空盘重量模拟以及图像捕捉设备。
设计流程为:选择适当的硬件平台,提供相应的开发板;匹配Linux 操作系统及驱动;完成作弊秤虚拟键盘模拟,将键值封装成函数或库供软件调用;提供常见无线收发模块,匹配发射频率;与软件沟通来定义最终硬件功能。
3.1 模拟键盘设计
在作弊秤测试中,人工按键是费时费力的事情。本设计主要完成计算机模拟键盘输入。在本设计中采用RK3399 控制模拟开关芯片实现电路通断的操作。在设计中采用了四片CD4051,实现了4×6 路矩阵键盘按键模拟,CD4051 是八选一的模拟开关。
(1)自学习功能的原因。笔者检测不同厂家的电子秤,键盘上的名字和位置(M 排N 列)并不相同。位置不同决定控制模拟开关的选通信号不同。可以通过名字找到键盘的相应按键,但是不知道相应的位置。通过自学习功能产生一个厂家的特定型号电子秤的键盘名字和位置对应文件,在测试中使用。
(2)自学习功能的实现方法。需要把电子秤的键盘连接到制作的开发板上的GPIO,输入键盘名字后启动键盘扫描程序,然后按相应名字的按键,扫描程序返回位置码,存储。再重复操作,直到全部按键输入完成,产生一个文件[2-3]。
3.2 空盘电信号模拟
因在寻找“作弊码”的过程中,会输入“去皮”、“清零”,此时放置在托盘上的砝码重量会当作皮重被系统清掉。即输入“去皮”、“清零”后,秤上重量的显示为“0”,无法进行后面的图像识别(无法再根据重量判断输入的作弊码是否正确)。那么需要模拟空盘电信号,在输入“去皮”、“清零”前,将HX7XXAD 的输入端切换至模拟空盘电信号,在输入“去皮”、“清零”后,将HX7XXAD 的输入端切换至模拟空盘电信号,在输入“去皮”、“清零”后,将HX7XXAD 的输入端再切换回测力传感器。即保留“去皮”、“清零”的键值,去掉“去皮”、“清零”的功能。