• 收藏
  • 加入书签
添加成功
收藏成功
分享

基于RFID 的工件管理系统

周健民
  
大通媒体号
2025年87期
缙云县辰阳电子有限公司 浙江丽水 321400

摘要:针对工厂工件管理流程中信息采集效率低、人工操作误差大的问题,设计并开发了基于 RFID 的工件标识与管理系统软件。该软件以VS2013 为开发平台,结合 RFID 技术与串口通信协议,实现了工件信息实时监控、工序流程管理及数据统计分析功能。通过优化硬件接口逻辑与用户交互设计,系统支持多工位协同作业,可显著提升离散型制造业的生产信息化水平。结果表明,软件运行稳定,界面响应速度小于 1 秒,满足工厂流水线的实时性需求。

关键词:工件管理;C#;RFID;串口通信;数据可视化

引言

在工业 4.0 背景下,制造业对工件全生命周期管理的智能化需求日益增长。传统工件管理依赖人工录入与条码扫描,存在效率低、易出错、环境适应性差等问题。射频识别(RFID)技术虽能实现信息自动采集,但缺乏高效的软件系统支撑其与生产流程深度融合。本文基于 C# 语言开发上位机软件,通过整合 RFID 读写、串口通信及数据处理模块,构建一套集“数据采集 - 流程控制 - 统计分析”于一体的工件管理系统,为工厂智能化改造提供软件解决方案[1]。

1 软件系统设计

1.1 开发环境

本系统基于 Windows 7 操作系统开发,采用 Microsoft Visual Studio2013 作为集成开发工具,依托 NET Framework 4.5 框架实现业务逻辑。数据存储使用 Microsoft Office Access 2013 数据库,统计图表通过Microsoft Office Excel 2013 生成,形成完整的开发技术栈 [2]。

1.2 系统结构与功能模块

本软件设计的目的在于提供一个可供工厂员工操作登录的应用程序,软件系统结构如下图1。

图1 软件系统结构图

其中在总员工信息模块,员工以唯一员工号登录,可查询 / 修改个人信息。工件信息模块中包含工件编号、类型及工序,其中编号唯一不可改,类型和工序由开发者在测试初期写入并支持修改。工序流程模块中按顺序显示工序名称,未执行或无需执行的工序自动隐藏,实时显示工件当前工序位置。在统计模块中,统计工件完成信息、完成率及工序使用率,工序 / 工件完成后自动更新数据库,支持按钮调用表格和图表展示数据。下面通过软件系统流程图说明工作流程,详见图2。

图2 软件系统流程图

先进入开发者界面,设置 8 个下位机地址为 01-08 并通过串口发送指令修改;设置工件类型时,写入数据块地址 1 的代码,经指令合法性验证后发送,接收工件返回数据并处理。再进行读数据操作验证写入内容。

进入员工操作界面,登录成功后自动检测串口,默认波特率9600 。工件进入检测范围,下位机上传地址,上位机读取卡号、卡类型及对应工序写入数据库,显示工件位置,按需将工序号写入指定数据块。工件到达最后工序,判断工序完成情况确定状态为“正常”或“异常”,记录时间与员工ID 更新数据库,生成excel 表格和图表展示[3]。

2 核心函数与数据处理

2.1 接收指令函数

指令接收存储模块是核心功能模块之一,通过函数 Receive 处理接收射频模块发送至上位机的指令,利用 8 位无符号整数数组ReceiveBuffer[] 存储指令数据,上位机每次接收下位机数据时调用该函数存入数组。串口打开后进入无限循环,接收数据时按顺序判断是否为命令头 7F 或命令帧内容。接收完成后校验数组,长度符合条件时调用CheckSum 函数,逐个异或数组元素,随后调用 CommandProcess 函数执行命令[4]。

2.2 发送指令函数

指令发送模块是核心功能之一,通过函数 SendCommand 将上位机指令送入射频模块处理,调用时使用 8 位无符号整数数组CommandBuffer[] 存储数据。

2.3 命令处理模块

命令处理模块根据接收指令函数处理后的ReceiveBuffer[2] 处理显示射频模块指令,在程序指令显示区告知上位机及用户下位机响应的操作内容。

2.4 读数据指令函数

读数据指令函数采用 8 位无符号整数数组 CommandBuffer[],其中CommandBuffer[0]-[3] 分别为命令长度 4、通讯地址、命令 0x11 及块绝对地址,通过 SendCommand 函数发送至射频模块。函数 readData(n)中n 为块地址(string 型),调用时通过 byte.Parse 将 n 转换为 8 位无符号整数存入数组 CommandBuffer。

2.5 写数据指令函数

读数据指令函数使用 8 位无符号整数数组 CommandBuffer[],其中 CommandBuffer[2] 为命令 0x12,通过 SendCommand 函数发送至射频模块。函数 writeData(text) 将 string 型的 text 数据转换为 16 进制整数存入 CommandBuffer 数组,转换逻辑为 CommandBuffer[ 4+i ]=Convert.ToByte(text.Substring( i*2,2),16) 。写入时检测块地址:若为 0 则报错,若为 3/7/11 等扇区尾地址则提示写入规则。完成后调用 SendCommand 函数并启动定时器[5]。

3 界面设计与功能实现

3.1 登录模块与员工信息模块

控制员工登录认证及信息显示,登录后锁定员工编号用于统计其操作工件情况(便于责任追溯)。支持修改密码、姓名、性别、照片,防范冒名顶替。界面见图3(左:登录界面;右:员工信息界面)。

图3 登陆界面(上)和员工信息界面(下)

3.2 工件信息显示模块和工序信息显示模块

本系统设八道工序(切割、淬火等,编号一到八,储于块 2,每块最多存 8 个汉字)。工件过工序时显示信息,发送命令帧读取 M1 卡。流水线区总工序通过标识块颜色显示状态:未经过(黄)、正确完成(绿)、错误完成(红),基于 Picturebox 控件更换图片实现。以 A 类型工件位于“粗车”工序且错误执行“精铣”为例,界面见图4,运行流程见图5。

工件代闲与管理系 工 -□ ×

员工住包工件床息生产态此计 员工信息工件信息生产状心烧计

流水线 流水线

切割淬火租铣精铣租车精车打磨后处理 切割淬火相铣精铣相车精车打磨后处理二工件信息 工序信息4110737883卖型切割火铁精车打磨处理

3.3 统计模块

图4 生产状态界面初始状态(上)和例子(下)

图 5 生产流程图

图6 统计界面

图7 工件完成情况表

标题

该模块包含三部分统计功能,相关数据存储于本地 Access 库,界面如图 6 所示。

工件标识与管理系统 □□ X员工信息 工件信息 生产状态工件完成情况统计 工件完成率统计 工序使用率统计

其中在工件完成情况统计中,通过 DataGridView 控件调用 Access表格,点击按钮显示工件记录(含工件编号等 7 项表头)。后处理工序完成时,系统自动读取工件编号、类型、工序等信息,记录状态并更新数据库时间及员工 ID 在工件完成率统计中,使用 Chart 控件调用图表文件,点击按钮显示 A/B/C 类型及总完成率 4 个饼状图,数据源于工件记录的种类与状态。在工序使用率统计中通过 Chart 控件实现,点击按钮显示柱状图(工序预计 / 实际使用次数对比)和饼状图(实际使用次数占比),数据取自工序信息表格(含工序号等5 项字段)。

3.3.1 Access 数据库

本系统调用 Microsoft Office 2013 plus 自带的 Access 数据库,创建时需声明 System.IO、OleDb 和 ADOX 命名空间。数据库路径和文件名为 D:DataBaseFile.mdb,包含“工件记录”(含编号、工件编号等 8 项字段)和“工序信息”(含编号、工序号等 6 项字段)两张表。操作流程:初始化 OleDbConnection 实例,通过 select from 查询“工件记录”数据,用 OleDbDataAdapter 填充并显示在 dataGridView 控件;创建并连接数据库,建表、列后导入数据,更新提交后关闭连接,刷新控件显示。工件完成情况表如图 7。

工件标识与管理系统 回x员工信息工件信息 生产状态统计工件完成情况统计 工件完成率统计 工序使用率统计工件编号 工件种类 完成工序 需要工序 工件状态 员工ID 完成时间切割淬火粗线精铣打磨后处理切割淬火粗铁精铁打磨后处理正常4119403835卡片类型:S50C 切割淬火粗车精车打磨后处理切割淬火粗车精车打磨后处理正常4118737883卡片类型:S50 切割淬火粗铣粗车打磨后处理异常

3.4 Excel 制图

使用 Excel 制图时,先指定 Excel 文件,若存在则删除,获取表 格 名 称 后, 用 OleDbCommand 执 行 select into 新 建 sheet, 打 开OleDb 连接导入 Access 数据,完成后关闭连接。数据更新成功后,按PieChartType 和 ColumnChartType 分别生成饼状、柱状图表,后台运行不预览,设置数据源、图表参数后绘制,保存文件并关闭相关程序,在VS2013 中Chart 控件引用图表。工件完成率统计含4 个饼状图(A、B、C 类型及总完成率),依据“工件记录”表的“工件种类”和状态统计正常、异常工件占比与错误率;工序完成率有一柱一饼图,柱状对比“工序信息”表中工序预计与实际使用次数,饼状统计各工序使用概率,用于判断工序错误和确定高使用率工序以加强维护。相关统计图见图7 和图8 所示。

图7 工件完成率图

图8 工序使用率图

4 结论

本研究设计并实现基于 RFID 的工件管理系统,整合 RFID 与串口通信技术,构建“数据采集 - 流程控制 - 统计分析”一体化体系,提升工厂工件管理智能化水平。系统通过VS2013 开发,实现员工信息管理、工件追踪、多工位协同及数据可视化,RFID 解决传统条码效率与环境适应性问题,Access 与 Excel 确保数据存储与分析直观性。应用显示系统降低人工误差,工序可视化与责任追溯实现精细化管理,统计图表为生产决策提供支撑。未来可集成物联网或引入算法优化功能。

参考文献

[1] 付浦君. 基于信息化的供应链协同物流管理研究[D]. 北京:北京林业大学 ,2013.

[2] 肖莹莹. RFID 技术在国内零售业物流管理中的应用研究[D].成都:西南交通大学,2008.

[3] 古奕端. 基于RFID 的大宗货物物流管理系统设计及实现[D].成都:电子科技大学,2013.

[4] 石蕾 , 陈敏雅 . RFID 系统中阅读器的设计与实现 [J]. 电脑开发与应用 , 2008,(07) .

[5] 陈冲 , 徐志 , 何明华 . 一种新的 RFID 防碰撞算法的研究 [J].福州大学学报 ( 自然科学版 ), 2009,(03) .

作者简介:周健民(1972-11)男,汉族,人,硕士, 讲师,研究方向:电子技术应用。

*本文暂不支持打印功能

monitor