谷长春,杨志勇

(南昌航空大学软件学院,江西 南昌 330063)

0 引 言

智能制造是《中国制造2025》五大工程之一,随着物联网(Internet of Things,IoT)[1]生态的迅猛发展,数据挖掘技术的快速更迭,对现代制造业提出新的要求和技术支持。玻璃绝缘子生产企业为适应市场需求、响应国家号召,开展生产线智能制造[2]升级改造。其中,良品数量、残次品的缺陷类型及数量统计是重要的一个环节,传统的统计台采用机械拨片方式进行计数,用纸质表格记录和存储。这种传统的方法产生了诸如浪费纸张、容易出错、难以存储、信息滞后、数据难以被深度挖掘利用[3]等问题。

制造业智能升级过程中,触控液晶屏常被用于实现数据输入和显示,而WiFi、ZigBee[4]、LoRa[5]等网络技术也较多地用于生产线设备终端接入网络。经过对玻璃绝缘子生产线实地考察,发现厂房环境噪声大、工人戴着隔热手套进行作业等问题,故需设计一种适宜的数据统计台。

本文设计一种能够实时将统计数据传入云服务器、高性价比、方便工人操作的玻璃绝缘子智能统计台。该统计台以性能稳定、价格低廉的STC89C52[6]作为主控制器,以基于BC26 的NB⁃IoT[7]模块为云服务器接入方式,以大尺寸按键和LED 数码管为人机交互界面,以E2PROM 芯片为数据掉电存储介质。通过编写软件程序实现数据统计、显示、存储和传入云服务器等各项功能。该统计台能够将产品质量数据及时传入服务器,为后续数据挖掘和深度分析提供了条件,帮助企业向智能制造转型跨出关键一步,也为同类制造企业向智能制造升级提供一定的参考。

1 总体方案设计

本文提出的智能统计台的总体设计主要包括硬件设计和软件设计两个方面。硬件设计主要是元器件选型和电路设计,软件设计包括单片机程序设计和NB⁃IoT 模块的OpenCPU 程序设计。该智能统计台的系统结构如图1 所示。

图1 智能统计台系统结构

据统计玻璃绝缘子生产线终端产品出现的问题多达20 余种,如保温圈裂、飞边、内里毛、哈夫裂、孔裂等。统计台实现的功能主要包括:使用单片机控制20 个按键和20 个四联数码管对各种残次品的数量进行统计和显示,并设置数据清零、存储、提示等功能模块。通过单片机串口与BC26 主串口建立数据交互,使用NB⁃IoT 模块将数据传输到云端服务器。

2 系统硬件结构设计

为保证统计台硬件易扩展、易检修,对硬件电路进行模块化设计,主要分为四大功能模块进行设计:电源模块、主控制器模块、人机交互模块、数据上传模块。智能统计台硬件结构如图2 所示。

图2 智能统计台硬件结构框图

2.1 电 源

为适应工厂电气环境和板载各模块用电需求,设计了三种电压源。选用一个AC 220 V 转DC 5 V 开关电源模块,对硬件平台供电。以FP6293 升压型DC⁃DC 转换器设计5 V 转12 V 模块,为指示灯供电。以AMS1117⁃3.3 芯片设计5 V 转3.3 V 电路,用作电平转换参考电压。图3 为部分电源电路,其中C3,C4为输入电容,防止断电后出现的电压倒置现象;C5,C6为输出滤波电容,用于抑制自激振荡。

图3 部分电源电路

2.2 STC89C52

主控制器处理器需控制20 个四联数码管和轻触按键,实现按键计数输入和数据显示,选用具有开发简单、性能稳定特点的STC[8]系列处理器。STC89C52 作为低功耗、高性能CMOS 8 位微控制器,文献[9]中它搭载按键、超声波测量位移、液晶显示和蜂鸣器等模块,实现了小流量测量仪,展示了它优越的性能。如图4 所示为STC89C52 最小系统。

图4 STC89C52 最小系统

2.3 人机交互电路

统计台人机交互电路主要包括按键输入电路、数码管显示电路、数据重置电路和数据存储电路,如图5 所示。按键输入电路4×4 矩阵键盘,由微控制器的P2 端口控制。数码管显示电路,由微控制器的P1.0⁃P1.2、P1.3⁃P1.5 端口实现两路数据、时钟、锁存信号控制。数据重置电路,由微控制器的P3.7 端口控制。数据存储电路,由微控制器的P0.0、P0.1 端口使用I2C 通信协议实现扩展E2PROM 芯片写入和读取控制。

图5 人机交互电路

2.4 NB⁃IoT

窄带物联网(Narrow Band Internet of Things,NB⁃IoT)[10]是万物互联网络一个重要分支,基于BC26 设计的NB⁃IoT 模块具备低功耗的优势和使设备更易在广域物联网中进行连接[11]的特性。如文献[12]通过使用火焰、人体红外、烟雾等传感器获取厨房状态数据。通过NB⁃IoT 进行数据传输,实现厨房信息实时手机APP 显示。当STC89C52 与BC26 进行串口数据交互时,由于单片机P3.0、P3.1 串口TTL 电平以5 V 等价于逻辑1,BC26主串口则以3.3 V 等价于逻辑1,会造成数据错误、发送不畅等问题。故采用N 沟道MOS 管2N7002 作为电平转换控制IC。如当单片机P3.1 端口电平为逻辑0 时,二极管导通,BC26 的RXD 端口电平为逻辑0,实现电平转换。如图6 所示为电平转换电路。

图6 TTL 电平转换电路

3 系统软件设计

3.1 单片机程序设计

STC89C52 主控制器的程序实现功能主要为按键循环扫描、数据显示、按键触发存储器写入、系统上电存储器读取、定时串口传递产品质量数据、按键触发指示灯提示等功能。主控制器程序编写完成后,编译阶段将调用STARTUP.A51 文件,用于初始化单片机RAM 单元、设置堆栈等操作。后续程序自动跳转到主程序的main函数中实现初始化软件定时器,读取AT24C04 中存储数据,拉高P3.2 端口启动NB⁃IoT 模块,进入主循环开启按键扫描函数。

统计台主控制器主要功能的实现将采用定时器中断的方式。硬件电路设计中STC89C52 外接12 MHz 的外部晶体振荡器,可知单片机的机器周期为1 μs。通过对定时器0 的16 位计数器的高八位TH0 和低八位TL0装载固定初值F8、30,程序定义为2 ms 一次计数器溢出,触发中断。实现数码管显示100 ms 刷新一次数据、监测指示灯变量、上电启动NB⁃IoT、1 min 串口发送一次数据等操作。图7 为系统中断流程图。

图7 定时器中断处理流程

3.2 BC26 程序设计

BC26 是一款可以直接通过OpenCPU 实现软件开发的处理器,基于BC26 的NB⁃IoT 模块程序设计,采用Sublime Text 编辑程序代码,通过GCC(gcc⁃arm⁃none⁃eabi V4.8)开源编译器实现程序编译。需要实现串口接收、格式转换、CRC16 校验码计算、工业物联网协议标准格式的封装,再以TCP[13]协议传输至云端服务器等功能。系统上电后,单片机P3.2 端口输出高电平500 ms,拉高PEN 端口,用于启动NB⁃IoT 模块。启动后根据程序定义测试服务器IP 地址47.97.190.136 及端口号8434,通过移动物联网卡,开始与阿里云私有服务器建立TCP 连接。NB⁃IoT 主串口1 min 可以收到一次数据,判断其字节数量是否为40 bit,不完整则丢弃,对完整数据进行数值转换、校验、封装、上传。当后续多传感器接入服务器时,会出现数据状态不明等问题,需根据表1工业物联网协议标准格式封装统计台数据。

表1 消息封装格式

4 系统测试及应用

基于物联网技术的玻璃绝缘子智能统计台整体实物如图8 所示。根据对厂区环境实地考察,产品外壳选用不锈钢制作,具有耐腐蚀、易清洁等特性。统计台的主要功能是完成对玻璃绝缘子产品出现20 余种产品质量状态信息进行采集并上传到服务器中,便于监控生产线状态和为后续数据处理打下基础。为验证系统鲁棒性、稳定性,系统调试分为以下四种方式进行。

图8 智能统计台实物图

1)硬件电路测试。使用万用表测试是否存在虚焊和短路的情况、长时间工作电压是否稳定、串口TTL 电平转换电路状态等问题。

2)显示和按键测试。通过对按键的快速按下抬起、缓慢按下抬起、按下不抬起等方式操作,观察显示和服务器端数据状况。通过测试,验证了按键消抖程序和抬起有效的设计很好地避免了不规范操作带来的问题,当检测按键按下并抬起后数据增加和显示均正常。同时按键的每次正常操作指示灯都可以正常工作。

3)存储测试。依次随机按下若干按键,使各残次品种类都有若干计数,然后对统计台进行断电,重启后发现对应显示仍为未断电前数据,证明存储模块能够正常工作。

4)数据上传测试。如图9 所示为服务器端使用Socket 工具测试数据获取状态界面,说明NB⁃IoT 模块能够正常工作。

图9 数据传输测试

5 结 论

本文设计的玻璃绝缘子智能统计台实现了按键输入和灯光提示、数据显示、掉电存储、实时传输到云服务器等功能,经测试,各部分功能正常。该玻璃绝缘子智能统计台已投入到江西泉新电气有限公司的生产线,已经过近6 个月的运行,未发现异常。本设计促进了玻璃绝缘子生产企业向智能制造方向发展,也为其他制造企业的信息化及由“制造”向“智造”升级提供了一个很有价值的参考。