APP下载

基于WinCC的PCBA模块监控系统研究

2019-10-21朱肖谣范秋华黄凡

关键词:监控系统

朱肖谣 范秋华 黄凡

摘要:针对传统的印刷电路板组装件检测流水线存在的问题,设计了一种电表PCBA模块功能检测的监控系统。该系统利用WinCC内置的全局脚本编辑器对MSComm控件进行编程,实现对下位机的控制和上行数据的读取,并将读取的数据存放在WinCC内部变量中,进行数据解析、判断、归档、导出等操作,提高了WinCC的组态效率。该系统解决了WinCC没有集成串口通讯驱动的缺陷,实现了WinCC与具有串行通讯接口的智能仪器仪表直接通讯,在PCBA模块功能检测方面具有广阔的应用前景。该系统已在实际项目中正常运行,运行稳定,能够实现对检测过程的监控和控制,满足企业对生产效率和准确度的要求。

关键词:印刷电路板组装件; 监控系统; 视窗控制中心; 全局脚本编辑器; 串口通讯

随着国家智能电网的发展,为了满足智能电网发展的需求,智能电表的功能越来越多样化[1-3]。电表中印刷电路板组装件(printed circuit board assembly,PCBA)的精度和复杂度也不断随之提高。因此,为了保证智能电表的功能性完备,在智能电表PCBA模块批量生产过程中,根据最初设计的功能和要求,对PCBA模块进行功能测试[4-5]十分必要,而传统的检测流水线主要靠人工操作检测装置,并需要人工目检[6]来判断模块电源指示灯的状态,不仅消耗人力,效率低,而且会随着人眼的疲劳导致误判率升高。寻求一种能够代替人工目检的方法,减少对劳动力的需求,降低误判率,实现检测过程的自动化、可视化是目前最重要的研究内容之一。为解决人工目检的问题,闫梦涛等人[7]基于机械视觉,实现对PCBA元器件的实时检测;陈臣[8]利用自动光学检测系统,通过元器件的颜色特征,准确判定是否存在插件错误,降低了误判率;倪晨鸿等人[9]利用光敏电阻,实现对发光二极管(light emitting diode,LED)指示灯的检测。但考虑模块电源指示灯处于不停闪烁的工作状态,通常是10块模块一起检测,存在电源指示灯闪烁不统一,检测难度高等问题。目前,尚未见到多块PCBA模块同步识别检测的文献。基于此,本文以星瞳OpenMV3 CamM7作为视觉识别装置,采用颜色识别的方式来捕捉闪烁的红绿电源指示灯,能够在模块进行功能测试的时间段内对所有模块的电源指示灯进行检测,并利用WinCC组态软件内置脚本编程调用MSComm控件,实现串口通讯,对检测过程中的上行数据进行读取、解析、存储,并建立人机交互界面。该研究满足企业对生产效率和准确度的要求。

1 系统总体设计方案

本系统以装有WinCC的研华工控机为主站,以视觉识别装置和功能检测装置为从站。视觉识别装置负责识别测试过程中红绿LED指示灯是否正常;功能测试装置用来检测PCBA的静态电源、载波抄表、静态弱电引脚等是否存在异常;下位机接受到上位机指令对模块进行检测、测试,完成后将得到的数据通过串行接口上传至计算机。通过西门子WinCC组态软件开发上位监控系统,可实现实时监控、数据处理归档、报警记录等功能。上位系统作为系统的数据处理核心,对上传的结果进行解析、判断完成模块是否存在不良,对判断结果进行存储,并通过人机界面进行展示。系统硬件基本结构如图1所示。

2 硬件组成

2.1 视觉识别装置

选用深圳市星瞳科技有限公司的OpenMV3CamM7,处理器为ARM32bitCortexM7,镜头焦距为28 mm,视野角度为115°,具有红外滤光功能,检测范围足够覆盖所有PCBA模块,且在光照条件下仍可正常运行。现场调试捕捉的画面如图2所示。接收到PC端的指令后,OpenMV通过颜色追踪,确定PCBA模块在功能测试过程中LED指示灯产生的色块中心坐标,待功能测试结束,PC端发送停止检测上传指令,然后将检测的坐标上传至PC端,PC端将坐标与坐标库中的值进行比对,确定指示灯异常的模块。

2.2 功能测试装置

该装置主控单片机选择基于ARMCortexTMM3为核心的STM32F101微控制器。STM32F101包含带高80 KB的SRAM、高达1 MB的闪存及36 MHz的中央处理器(central processing unit,CPU)。STM32 ARM CortexM332位闪存的低密度系列MCU产生的低功率和低电压相结合,具有实时功能的可靠性能。该装置能夠对PCBA模块进行功能测试(functionalcircuit test,FCT),即模拟正常投入使用时的工作环境,让测试目标板(unit under test,UUT)正常运行从运行状态的参数中判断测试目标板的状态是否存在功能缺陷[10-11]。功能检测装置的命令提示符(Command,CMD)定义如表1所示。

机和下位机之间通过RS 232串行通讯接口连接,采用串口通讯的方式实现数据的传输,将大量的数据传输到PC机,有利于对现场数据的实时采集、处理和监控,并可充分利用PC机强大的计算能力[12-15]。系统硬件设备通讯协议基本参数设置如表2所示。

3.1 基于MSCOMM控件的串口通讯

Microsoft公司提供的ActiveX控件MSComm,为应用程序提供了通过串行接口收发数据的简便方法[16-18]。因此,本文通过组态软件内置脚本编辑器,编写串口通讯程序,调用MSComm控件实现对串口的访问。该方法不仅解决了WinCC组态软件没有集成串口通讯控件的缺点,还能够减少对WinCC外部变量的占用,能够有效提高WinCC的运行效率。

3.2 串口通讯编程实现

1) 初始化打开串口。为确保建立的连接能够正常通讯,通讯两端的参数设置必须保持完全一致,因此要根据下位机的串口号、波特率、停止位、奇偶校验等串口参数,设置控件的相应参数,并对串口触发事件(OnComm事件)和读取缓冲区数据的方式进行设置。串口初始化程序如下:

4 WinCC人机界面的设计

设计一种具有实际应用价值的监控系统,在拥有人性化人机界面的同时,还应具备合适的硬件和软件程序。而视窗控制中心(windows control center,WinCC)[19-20],作为一个功能强大全面开放的上位机监控系统,能够很好的实现上述要求。操作工人可以通过人机界面随时了解和掌握整个系统的工作状态,并可根据实际的工作要求对其进行人工干预。本文利用WinCC组态软件功能编辑器主要实现以下功能。

1) 图形设计编辑器。根据该系统功能设计了不同的界面,包括主界面、手动界面、监控界面、报警记录界面、检测结果界面和数据归档界面。能够展示现场工作状态,工人也可通过人机界面进行人工干预。

2) 全局脚本编辑器。通过VBS编程实现数据的发送读取、报警、变量归档、图形动态化等控制。

3) 报警存档编辑器。监控系统中的各项数据是否在正常的范围内,可以将错误点显示在报警记录界面,待工作人员查看处理。

4) 变量存档编辑器。将检测结果和下位机上传的数据进行归档,可供工作人员进行查看审核是否存在误报,实现产品的信息化管理。

5) 用户管理和项目安全编辑器。设置不同的用户,操作人员具有操作和查看等权限;浏览用户仅可进行查看运行状态;管理员能够对操作人员、浏览用户进行增加删除。

4.1 系统串口通讯测试

在图形界面中加入2个装置的串口操作按钮,将32章对应的代码按照表2中的参数进行设置,实现点击按钮控制对应动作。接收数据程序写在MSComm控件OnComm事件中,当缓冲区字符达到“RThreshold”接收属性设置的数值时,产生OnComm事件读取数据。通讯测试及数据显示画面如图4所示。

4.2 系统报警组态测试

通过在界面中加入I/O输入输出域,并连接需要监控的变量,通过手动修改变量数值来模拟正常运行方式,观察当数值发生改变时是否会产生报警,再将数值改回报警是否会自动解除。报警记录界面如图5所示,图5中红色为产生的报警点,绿色为解除的报警点。

5 结束语

本文运用WinCC组态软件,设计了上位监控系统,结合视觉识别装置和功能测试装置,实现对电源指示灯的检测和模块功能的测试。上位机调用MSComm控件实现与智能仪器的通讯,解决了WinCC组态软件没有集成串口通讯控件的缺点,该方法在其它具有智能仪器仪表的监控系统中同样适用。利用OpenMV检测电源指示灯的异常,在提高效率的同时,还能减少资金的投入,OpenMV还支持红外热成像等功能,可在识别人和动物、夜晚视觉、检测温度热量等方面应用。该研究具有一定的实际工程意义。

参考文献:

[1] 贾海波, 王帅. 智能电网对智能电表的发展需求探析[J]. 通讯世界, 2018 (1): 245.

[2] 康琰, 李洁. 智能电表在智能电网中的作用与应用前景分析[J]. 技术与市场, 2015, 22(8): 190-191.

[3] 王晓霞. 智能电表在智能电网中的应用分析[J]. 通讯世界, 2015(1): 164-165.

[4] 梁向飞. 一种用于测试PCBA的功能测试装置[J]. 自动化应用, 2017(5): 45-46.

[5] 王莹. PCBA自动测试平台研究与软件系统设计[D]. 成都: 成都理工大学, 2014.

[6] 黄楠, 刘光昌. 基于LabVIEW的PCBA计算机视觉检测系统[J]. 计算机工程与设计, 2005, 26(10): 2783-2784, 2807.

[7] 闫梦涛, 苏玮, 冉海周. 基于机器视觉的PCBA元器件实时检测系统[J]. 无线电工程, 2018, 48(4): 272-277.

[8] 陈臣. 印刷电路板的自动光学检测系统的设计与研究[D]. 南京: 南京航天航空大学, 2010.

[9] 倪晨鸿, 宋春伟. 智能电表PCBA模块的功能性测试设备[J]. 电子测试, 2016(21): 150-151, 147.

[10] 李鹏, 王胜勇, 卢家斌, 等. 模块化的开放性PCBA功能测试平台[J]. 企业导报, 2013(4): 261-263.

[11] 王晏斌. 基于單片机的PCBA测试系统研究[J]. 科技资讯, 2011(3): 76, 78.

[12] 潘方. RS 232串口通信在PC机与单片机通信中的应用[J]. 现代电子技术, 2012, 35(13): 69-71.

[13] 邢庭炜. RS232串口通信在PC机与单片机通信中的应用[J]. 信息系统工程, 2016(8): 110-111.

[14] 王青. 单片机与PC机通信的设计与仿真[J]. 实验室研究与探索, 2016, 35(12): 100-103.

[15] 张杰. 单片机与PC串口通讯的实现[J]. 科技信息, 2010(19): 84, 89.

[16] 董红政, 王忠勇, 史晓鹏. 基于MSComm控件实现串行通信的方法[J]. 微计算机信息, 2007, 23(27): 145-147.

[17] 李现勇. Visual C++串口通信技术与工程实践[M]. 2版. 北京: 人民邮电出版社, 2004.

[18] 李江全. Visual Basic串口通信及测控应用实例详解[M]. 北京: 电子工业出版社, 2014.

[19] 苏昆哲. 深入浅出西门子WinCC V6[M]. 2版. 北京: 北京航空航天大学出版社, 2004.

[20] 武朝. 基于PLC与WINCC的转运小车及其控制系统设计与实现[D]. 武汉: 武汉理工大学, 2011.

猜你喜欢

监控系统
基于Ganglia和Nagios的云计算平台智能监控系统
KJJ58型井下移动目标监控系统在麦垛山煤矿的应用
无线广播电视安全优质播出的技术分析
县级区域雨量站观测设备监控系统的研究与设计
基于Zigbee技术的煤矿井下通风机监控系统设计