Sci论文 - 至繁归于至简,Sci论文网。 设为首页|加入收藏
当前位置:首页 > 计算机论文 > 正文

支持远程查询的化妆品包装瓶质量检测系统论文

发布时间:2023-03-23 10:21:23 文章来源:SCI论文网 我要评论














SCI论文(www.lunwensci.com)

  摘 要:为保证每个化妆品包装瓶都符合标准要求,设计了产品质量检测系统,系统由上位机和下位机两部分组成,下 位机采用欧姆龙的 CP1H PLC。在包装瓶注塑成型后,通过工业相机抓取图像信息,将获得的图像与标准图像进行比较,完成 产品合格性检查,如果包装瓶无裂痕、无缺口,则为合格,否则为不合格。若包装瓶合格,则存入成品箱 ;若不合格,则触发 PLC 将包装瓶剔除,推入废品箱。所有包装瓶剔除信息通过 Fins-UDP 通信协议发送到上位机,存入到 SQL Server 数据库中, 供查询和追溯。为了实现包装瓶生产质量的异地查询,采用JavaWeb 编写服务器程序,发布到 Tomcat 上,进行数据远程查询。

  关键词: 图像信息对比,Fins-UDP 通信协议,SQL Server 数据库,远程查询

  Cosmetic Bottle Quality Detection System Supporting Remote Query

  YIN Xin1. WANG Pengcheng2

  (1.Intelligent Manufacturing Institute, Qingdao West Coast New Area Sino-german Applied Technology School, Qingdao Shandong 266000;2.Qingdao Hisense Hitachi Air Conditioning System Co., Ltd., Qingdao Shandong 266000)

  【Abstract】: In order to ensure that every cosmetic packaging bottle meets the standard requirements, a product quality detection system is designed. The system consists of two parts: The upper computer and the lower computer. The lower computer uses Omron's CP1H PLC. After the injection molding of the packaging bottle, grab the image information through the industrial camera, compare the obtained image with the standard image, and complete the product qualification inspection. If the packaging bottle has no crack or gap, it is qualified, otherwise it is unqualified . If the packaging bottle is qualified, it will be stored in the finished product box; If it is unqualified, it will trigger PLC to remove the packaging bottle and push it into the scrap box. All bottle rejection information is sent to the upper computer through the Fins-UDP communication protocol and stored in the SQL Server database for query and traceability. In order to realize the remote query of packaging bottle production quality, JavaWeb is used to write the server program and publish it to Tomcat for remote data query.

  【Key words】: image information comparison;Fins-UDP communication protocol;SQL Server database;remote query

\

 

  0 引言

  随着现代工业生产中自动化和信息化发展,自动化 技术在现代工业生产中的应用场景变得越来越广泛,各 个工厂追求高效率、高标准的生产模式。某生产企业产 品种类复杂,日均产量非常大。在生产过程中如果化妆 品瓶出现漏检误检的情况会对后续生产流程造成严重影 响。为确保化妆品瓶的生产质量,同时对生产信息进行观察、统计和存储,方便人工直接观察数据变化,管理 人员能够远程查询生产信息,结合现代计算机技术的发 展和应用,设计了支持 Web 查询的化妆品瓶质量检测 系统。本系统通过工业相机进行图像识别生成开关量信 号传输到 PLC 中。PLC 统计产品总数并且根据识别结 果做出相应动作,若不合格,产品进行剔除操作,代替 原先人工检测记录的方式。化妆品瓶检测系统集合计算机、通信等方便的知识,实现了企业产品的质量检测和 计数功能,使用 SQL Server 数据库显示对产品生产质 量信息数据的存储与查询功能,采用 Java 编写服务器 对 Web 网页查询 SQL Server 数据库提供支持,为管 理人员随时随地的观测生产情况提供方便,显著提高 了产线的工作效率,减少办公环节,降低了时间和空间 的束缚 [1]。

  1 硬件结构

  化妆品瓶质量检测系统由上位机、欧姆龙 CP1H PLC、CMOS 数字相机、编码器和光电开关组成。

  包装瓶经过产线两侧的工业相机时,位于传送带位 置的光电开关传感器检测到包装瓶通过,将信息传输到 PLC 中,上位机读取 PLC 标志位触发工业相机抓取产 品图像,对产品质量信息进行比对,用开关量信号将比 对结果传送到 PLC 中 ;PLC 根据开关量信号的实际值 做出动作。通过编码器和光电开关确定包装瓶的位置, 若经视觉判断产品无裂痕、缺口等不良现象,包装品瓶 流水线继续运行,存入成品箱。若产品出现裂痕、缺口 现象,则触发剔除器动作,将产品推入废品箱。PLC 通 过计数器计数以 50 个为一组数据的形式进行统计,将 统计后的结果信息通过 Fins-UDP 协议实时显示在上位 机的监视画面中,同时,也存储到 SQL Server 数据库 中。编写服务器程序将其发布到 Tomcat 上,使 SQL Server 数据库数据能通过互联网连接的方式进行数据 查询,大大提高了生产效率,降低生产线实际情况的限 制,降低了成本和生产错误率 [2]。

  系统硬件结构如图 1 所示。

\

 

  2 图像采集与识别

  选用大恒公司的 M3Z1228-mp 镜头, DH-HV1302UM-T CMOS 数字相机,获取传送带上的化妆品瓶图 像,根据化妆品瓶的实际规格,光源采用 200×200 的 LED 背光红光光源。采用触发抓拍的图像获取方式, 使用欧姆龙公司的 E3Z-T86 反射型传感器和 E39R1S 反射板,对数字相机反射触发。图像采集模块获取到图 像,经相机接口传输到上位机的图像处理平台中进行判 断。通过机器视觉软件分析、对比后,判定产品是否存 在裂痕、缺口等不良情况,并将结果输出到 PLC, PLC 根据判断结果做出响应动作 [3]。

  本设 计采用 的是 Euresys 公 司 的 Evision 6.7.1. 该软件在图像比对及图像质量检测方面是一款功能强 大的视觉处理软件,提供了一个较为全面的数据处理 库,涵盖了所有常用的高级图像处理方法,提供了机器 视觉应用程序中经常用到的一些工具,比如 Blob 分析、 EsayGauge 测量、EasyFind 匹配等算法操作。根据实 际需求, 利用 Evision6.7.1 的强大功能, 对其进行二 次开发,达到产品质量检测的目的。

  3 上位机程序设计

  3.1 Fins-UDP 通信协议

  Fins-UDP 命令根据功能分为读命令帧和写命令帧, 两者存在些许不同,但命令帧格式是一致的,采用 16 进制字来表示相应功能,命令帧格式如表 1 所示。

\

 

  ICF :发送接收标志字节,发送报文为 ICF=80.响 应报文为 ICF=C0 ;

  RSV+GCT 固定为 0002 ;

  DNA: 目标网络号,本次网络号为 00 ;

  DA1 :目标节点号,即以太网通信中 PLC 网络 IP 地址的最后一位的值 ;

  DA2 :目标单元号,PLC 硬件设置 Unit 的值 ;

  SNA :源网络号,计算机网络号为 0 ;

  SA1 :源节点号,计算机 IP 地址的最后一位 ;

  SA2 :源单元号,可设置为与目标单元号相同 ; SID :服务 ID,默认 00 ;

  上述为 Fins-UDP 命令报头, 根据欧姆龙 PLC 网 络地址和计算机网络地址进行相应设置,在通信过程 中,无论读命令还是写命令,上述命令报头总是不变的 [4]。

  3.2 Fins-UDP 读 / 写命令

  在生产过程中,产品经过光电开关时触发, PLC 计数器则会相应加 1 来统计数量,当计数器数值为 50 时, PLC 往 D100 寄存区写入 50 并且计数器清零, 如果在 0 到 50 的过程中存在不良的情况,剔除器动作一次, PLC 就是往 D101 标志位置 1 表示出现不良,上位机循 环读取 D100 和 D101 寄存区的数据, 如果 D101 为 1 则上位机废品数加 1 并且标志位置零,如果 D100 区域 数据为 50 时,将时间、日期、产品总数、成品数、成 品率等信息,封装成一条数据存储到 SQL Server 数据 库中。

  读 D100、D101 数据的命令为 :01018200640002. 其中, 0101 为读数据的命令代码, 82 为 DM 地址代码, 006400 为 100 的十六进制字,0002 为读取数据个数。 写命令时,因为 D100 与 D101 数据置零不同步,所以 分为两条命令分别置零,本文以 D100 置零的命令为例。

  写 D100 数据 的命令 为 :01028200640000010000. 其中,0102 为写数据的命令代码,82006400 表示 D100 寄存区, 0001 为写一个数据, 0000 表示写的数据是 0000.

  3.3 上位机程序实现

  上位机程序由 Visual Basic 6.0 编程语言来编写, 读命令通过 Timer 定时器以 0.5s 时间间隔循环读取 PLC 寄存区数据并且将响应帧反馈到上位机。截取响 应帧第 32 位到第 36 位的数据,判断是否等于 50.若 是赋值给 Text1 文本框,即为产品总数。截取响应帧 第 36 位到第 40 位的数据判断是否为 1.若是则变量 x 加 1.即废品数为 x,成品数 = 产品总数 - 废品数,将 成品数赋值给 Text2 文本框,计算成品率将结果赋值给 Text3 文本框 [5]。

  调用 ADODC 控件连接 SQL Server 数据库,将时 间、日期及文本框中的信息封装成一条数据添加到数据 库中。调用 Datagrid 控件绑定数据源,将数据库数据 实时显示到上位机。上位机主界面如图 2 所示。

\

 

  4 Web 远程查询

  考虑到办公的便利性和降低实际生产环境的限制, 特别地开发了 JSP 网页用作 Web 客户端,提供对产品 生产信息通过互联网能够随时随地查询的功能。整个 Web 网页由 Web 前端程序和 Java 服务器程序组成。 Web 前端程序基于 JSP 动态网页技术设计网页布局, 将接收到的 Java 服务器发送的封装数据,通过 JSTL 技术将数据显示到 JSP 页面。Java 后台程序严格按照 Web 层、Service 层和 Dao 层三层架构的 Java 开发框 架进行开发,实现通过服务器 IP 地址访问 Web 网页, 根据条件查 SQL Server 数据库并封装数据转发给 Web 网页。

  4.1 Web 前端程序

  Java 服务器根据需求数据库进行查询,将查到的结 果集封装到 Request 域对象中 Key 为 Productlist, 将 域对象通过 Dispatcher 转发器转发到JSP 动态网页。在 JSP 动态网页中,结合 EL 技术与JSTL 技术将数据从域 对象中遍历取出并显示出来。其中, EL 从 Request 域 中获取, 采用全域查找的方法 ${productlist}, 找到后 台发送的结果集对象。JSTL 为 JSP 标准标签库,采用 标签, 遍历结果集获得实体 类对象 product, 通过 ${product. 列名 } 的方式分别 获取 SQL 语句查到的每列字段,搭配 等表格 标签将其展示到 JSP 页面 [6]。

\

 

  4.2 Java 服务器程序

  4.2.1 创建实体类

  实体类主要是作为数据管理和业务逻辑处理的一个 载体,数据库中的表等同于一个实体类,一条记录是类 中的一个对象,一行中每列的数据就是这个类的属性。 本文中数据库每列的字段名分别为 data、time、total、 products、productRate,在实体类中也应创建 String 类型的属性,权限为 Private。

  4.2.2 Java 查询 SQL Server 数据库

  Java 查询 SQL Server 数据库可以通过 JDBC 注册 驱动, 获取 Connection 对象的方式查询数据库, 也可 以 DBCP 连接池连接数据库, 获取 BasicDataSource 对 象的方式查询数据库,这种方式封装性强,方便快捷 [7]。

  本次设计采用 DBCP 连接池连接数据库的方式查 询数据, 因 SQL Server 使用 Windows 身份验证方式 登录数据库, 所以无需在 Driver 中配置用户名和密码。 使 用 DBUtil 工 具 类 QueryRunner 对 象 中 Query 方 法查询数据库, DBUtil 会自动映射封装,将 Map 中的 数据根据 Key 与实体类的属性的对应关系封装到一起, 只要 Key 的名称与实体的属性名称一致就会自动封装到实体类中。

\

 

  4.2.3 向 Web 发送数据

  要向 Web 发送封装好的数据,首先要创建 Servlet 的实现类。Servlet 是运行在服务端的Java 小程序,用 来处理客户端请求或响应,通过JavaAPI 动态的向客户 端输出内容。但是在开发中一般不会直接去实现 Servlet 接口,常用方法是创建类继承 HttpServlet。

\

 

  在 HttpServlet 子类中重写 doGet 方法, 创建 Service 对象调用 findproduct() 方法, 返回值是一个 List 的 集合, 集合里存储的是已经封装好查询结果的 product 实体类对象。为 HttpServletRequest 添加属性, 通过 RequestDispatche 请求转发器, 将 List 集合发送到JSP 页面地址,程序代码如下 :

\

 

  通过手机或者计算机访问已发布的 Web 网页, Web访问效果如图 3 所示。

\

 

  5 结语

  本文根据企业实际生产需求,结合欧姆龙 CP1H PLC 与 Visual Basic 6.0 开发的上位机程序, 和基于Java 语言 和 JSP 技术开发的 Web 访问服务器以及 Web 客户端, 设计并开发了支持 Web 查询的化妆品瓶质量检测系统, 包括图像比对、产品剔除、数据存储和数据远程访问等 功能,能够识别化妆品包装瓶的缺陷将产品剔除出去, 并将数据实时发送到服务器上。该系统目前已在企业投 入使用,系统稳定可靠,方便快捷,大大减少了人工负 担,提高了办公效率,降低了出厂产品失误率。

  参考文献

  [1] 孙怀远,廖跃华,周夫之,等.基于HALCON的药品包装瓶批号检测技术研究[J].包装工程,2008(8):71-73.

  [2] 魏松林.基于机器视觉的玻璃瓶在线检测系统研究与实现 [D].武汉:华中科技大学,2013.

  [3] 贾真真,张涛,曹兴强,等.基于机器视觉的食品内包装缺陷检 测装置设计与实现[J].食品与机械,2018.34(7):111-114.

  [4] 纪浩,戴锦春,何锋杰,等.基于CP1H的弧形闸门启闭机控制 系统的设计[J]. 自动化与仪表,2013.28(2):37-40.

  [5] 樊新乾,潘存海.基于Modbus/TCP协议台达PLC与上位机 VB软件之间的通信[J].制造业自动化,2012.34(20):33-35+45.

  [6] 徐亚坤,李鸣,杨大勇.基于Java Web的工业生产过程参数访 问系统[J].测控技术,2017.36(7):97-100.

  [7] 韩彩路.基于JSP和JavaBean的网上书店管理系统的设计与 实现[D].天津:天津大学,2016.
 
 
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!

文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jisuanjilunwen/53497.html

相关内容

发表评论

Sci论文网 - Sci论文发表 - Sci论文修改润色 - Sci论文期刊 - Sci论文代发
Copyright © Sci论文网 版权所有 | SCI论文网手机版 | 鄂ICP备2022005580号-2 | 网站地图xml | 百度地图xml