王婧,朱军,韩冬斌,张环宇,荣胜波
(1.中国科学院沈阳自动化研究所,辽宁沈阳 110016;2.中国科学院大学,北京 100049;3.宝鸡钢管辽阳钢管厂,辽宁辽阳 111000)
在钢管生产线中,每个工位信息的准确传递对于钢管质量的跟踪至关重要。因此,要建立电子化的质量信息系统,提高质量保障能力,实现整条生产线的自动化。钢管信息自动跟踪是保证整条生产线自动化的基本条件[1]。
条形码技术,是在钢管表面贴条形码或喷印管号,使用激光条形码扫描器获取管号。目前,条码识别技术已在焊管行业的带卷跟踪上得到实际应用,应用在钢管跟踪上还有很多技术问题亟待解决[2]。由于钢管生产车间光照不均、钢管位置存在偏差以及在生产流程中钢管翻转等原因,钢管管号识别是钢管跟踪的难题之一。目前焊管生产企业钢管信息跟踪多采取人工识别、手工输入的方式,信息化系统可以把与该管号相关的信息进行对应收集存储。实现管号自动识别,是国内焊管生产企业信息化建设过程中遇到的共同课题[3]。
此课题属于宝鸡钢管辽阳钢管厂大口径螺旋焊管生产线数字化自动控制技术研究项目的一部分,依据现场工况,设计了一套钢管管号自动识别系统,替代了原有的人工操作,实现钢管数据自动采集、汇总和存储。
自动识别系统机械装置如图1所示。
图1 钢管管号自动识别系统装置机构图
在相应工位设置扫描器定位装置,通过相应方向的调整,使扫描器到达设定位置,能够保证稳定的扫描距离。两组电机分别实现水平和垂直方向的动作,满足不同管径钢管的条码读取需求。系统读码流程如图2所示,待扫描钢管到达指定位置,管端检测开关检测到到位信号后,调整定位装置使扫描器到达指定位置。利用安装于辊道上的驱动辊,使钢管沿管轴线旋转,在钢管旋转过程中扫描器读取条码信息至计算机。在设定的时间内如果没有检测到有效的识别成功信号,PLC报警。扫描完成后装置退回初始位置,准备下一根钢管。
图2 系统流程图
扫描器定位装置由水平伸缩和垂直升降两部分运动机构组成。这两个机构均采用丝杆螺母副作为运动机构,每一套丝杆螺母副分别通过独立的伺服电机带动丝杆传动,最终驱动螺母作直线运动,从而使固定在螺母上的固定扫描器实现水平方向的前后运动、垂直方向的上下运动。
系统具有自动和手动两种操作模式。自动模式下,各伺服电机和扫描器的动作都是按照程序流程由PLC进行全自动控制,不需要人的参与。而手动模式主要用于系统调试及突发情况的处理,通过按钮操作台和人机操作触摸屏按钮可实现各动作部件的单步控制。
设计的钢管管号自动识别系统包括上位机、PLC、固定扫描器、伺服控制器、伺服电机、位控模块、限位开关、传感器、各种通信模块和自制电控柜等。控制系统框图如图3所示。
PLC配置以太网通信模块CP243-1,与上位机、数据服务器采用RJ45网线连接到交换机,建立以太网。PLC适时地给出数字量输出激活扫描器,完成条码信息的读取。
图3 控制系统框图
上位机采用性能稳定的工业控制计算机,通过交换机建立以太网,与PLC通信,将钢管信息传输到PLC,计算得到不同方向伺服电机运动参数,用于控制扫描定位装置移动过程。根据系统过程监控、信息采集、模式选择等各方面要求,设计了一套加载于上位机的人机界面程序,通过上位机就可以简单明了地执行各种操作和监视系统信息。
PLC采用西门子S7-200 CPU 224XP,集成14个数字量输入点,9个数字量输出点。其中数字量输入点与4个带灯按钮、4个限位开关、3个2位选择开关相连接。带灯按钮用于控制水平方向、垂直方向的扫描定位机构启动,同时按钮灯显示系统部分状态。选择开关用于选择系统操作模式,控制扫描器在水平方向伸出退回、垂直方向上升下降,完成扫描器定位过程。数字量输出点与伺服控制器状态点相连,通过指示灯显示系统伺服状态;与扫描器状态点相连,指示扫描器报警。PLC各数字量输入输出点功能和地址分配如表1所示[5]。PLC通过RS485总线与伺服控制器通信,根据上位机得到的钢管管径等信息给出相应指令,控制扫描器定位过程。固定式条码扫描器采用Leuze BCL 21,该扫描器可对运动速度最高达254 cm/s的条形码进行全方向解码,适用于对转动中的钢管进行条码识别;扫描距离最远可达450 mm,可适应不同管径产品的扫描;可对条码类型和条码质量自动检测,通过扫描器软件BCLconfig对成功读取条码、未成功读取条码、检测到坏码的情况进行输出信号的配置。
表1 PLC数字量输入输出点功能和地址对应关系表
伺服控制器采用路斯特ServoC产品,可通过驱动电缆连接到配套的伺服电机,具有操作简单、性能稳定的特点。两组伺服系统分别配置在水平方向和垂直方向,每个轴上均设置了两个限位开关,将信号线连接到伺服控制器相应输入点,结合伺服控制器软件DRIVEMANAGER,选择相应模式,以限制各轴运动范围。在设置限位开关的同时,在轴一侧放置零位开关,检测扫描定位机构是否在零位,使结构处于安全位置,防止工位上钢管运动造成的撞击。整套电气设备与机械机构相结合,根据现场不同工况完成管号自动识别过程。
该系统软件结构由三部分组成,分别是S7-200程序、伺服控制器程序和人机界面程序。
PLC作为核心控制单元,接收来自上位机、控制台按钮、限位开关等控制及状态信号,并控制系统运动及设备状态。PLC程序用STEP7-MicroWIN编写,包括主程序、上位机通信子程序、扫描器通信子程序、各伺服轴运动控制子程序、故障子程序[6]。与上位机通信,读取定位装置位置信息,并向上传输伺服控制器状态、伺服电机位置等信息。与扫描器通信,激活或取消激活扫描器,接收扫描成功条码信息。与伺服控制器通信,控制驱动器状态。若伺服控制器出现故障警报应及时采取措施,并将故障代码传输到上位机人机界面显示。
伺服程序由DRIVEMANAGER软件编写,语句少而灵活,有一套自己的指令规约[7]。两台伺服控制器分别控制水平方向、垂直方向电机动作,扫描器定位过程中两个方向动作如下:
水平方向:驱动移动定位装置的前进和后退。设备上电后,若定位装置不在零点位,则回零操作;若在零电位且待扫描钢管已就位,驱动定位装置向前匀速运动,检测到管端信号后慢速前进,一定距离后停止,驱动辊带动钢管开始旋转,扫描器同时开始扫描。扫描成功后快速返回零点,防止钢管运动时撞击到扫描机构。
垂直方向:驱动扫描器的上升和下降。在水平方向前进过程中扫描器慢速上升到给定位置,该位置信息由PLC根据不同管径计算得出,结束扫描后返回零点。
为了准确定位,两个方向的动作必须同时协调进行,若单独对每个方向进行程序编写,不仅语句麻烦而且容易造成通信紊乱。因此将每个方向的动作分解为多个子步骤,采取统一的程序结构,不仅降低了编程难度,而且PLC只需对同一指令存储区进行赋值,就可以实现不同方向电机的不同动作[8]。其程序结构如下所示:
H030即伺服指令存储区,H031,H032,……,H03?中提前赋不同值,如从H031开始依次赋1,2,…,n,则当H030=H031=1时,执行步骤1,当值为2即H030=H032=2时,执行步骤2,依次类推,而且每个步骤能重复调用,便于多次作业。
人机界面程序用C#语言编写,由多个画面组成,可分为参数设定及显示界面、工作过程监控、设备运行界面三类。
参数设定及显示界面,包括扫描器位置参数设定及下载、各伺服电机的速度参数设定及下载、S7-200通信参数设定与连接。
工作过程监控界面,包括系统的启动停止、操作模式的选择、报警信息等,显示PLC、扫描器、伺服控制器等设备工作状态,对各轴电机的动作进行模拟同步显示,与各设备通过以太网实时通信,更新数据和显示数据。当出现故障时,根据故障代码弹出相应的报警画面。
设备运行界面,指在一个画面上通过控件调用扫描器、伺服控制器和PLC运行界面。调用扫描器运行界面,可以设置条码类型、显示条码识别状态,显示与条码相关联的工位信息、钢管质量参数等,将当前工位相关信息和质量参数与条码进行绑定,实现数据的更新。在长时间无操作时关闭扫描器。调用伺服控制器程序运行界面,完成编写伺服程序、控制伺服动作等操作。调用PLC运行界面,显示PLC的连接状态。
文中系统通信网络由两部分构成,上位机和PLC通过工业以太网连接,PLC和伺服控制器、扫描器通过RS485接口连接。PLC与伺服控制器进行基于LustBus的RS232通信,作为控制端可以对ServoC驱动器执行读参数和写参数操作。PLC与扫描器间的通信选择自由口通信方式,一次读写操作的步骤包括:PLC发出写命令,扫描器收到后作出“准备好接收”的响应;PLC收到此响应则连续发出数据块,若扫描器完成读响应,则回应PLC“接收正确”的信号,相反若在规定的空闲内没收到数据块,则回应PLC“接收错误”的信号。这样收发2次数据,完成一次数据的读写。程序通过使用接收中断、传送中断、发送指令 (XMT)和接收指令 (RCV)控制通信端口操作[9]。
S7-200 PLC在自由口模式下,通信协议完全受通信代码的控制,通信参数需要根据与其进行通信的设备的通信格式进行设定。利用Leuze扫描调试软件检测BCL 21的通信参数设置,通信的数据位为7,停止位1,偶校验,波特率可以自由设定。BCL21与PLC利用ASCII码进行通信,其ASCII码消息命令格式如下[10]:
<STX> < 命令 > <命令参数 > <CR> <LF>其中:STX为报文前缀,CR、LF为报文后缀。报文中ASCII码最终转换成16进制进行发送。为了保证通信成功率,在进行读写操作时需要先对参数进行转化,将报文每一位转换为相应的ASCII码,交换报文结束通信后,再将ASCII码转换为十六进制数。PLC与扫描器通信读写参数中断程序流程如图4所示。
图4 PLC与扫描器读写参数中断流程图
结合条形码技术,设计了钢管管号自动识别系统,为实现大量数据信息的自动采集、绑定、汇总和存储提供了可靠的技术手段。该系统采用PLC控制伺服控制器,驱动两部伺服电机运动,实现了精确的定位控制,能够准确地实现扫描与定位之间的运动转换。该系统电气设备与机械结构分别完成后,经过在现场一个多月的组装调试,目前运行良好,不影响整个生产线上的钢管运动,完全满足设计需求。通过识别管号对每根钢管生产的全程进行了精确跟踪,可以及时了解钢管的生产信息、缺陷状态及修复情况,为企业决策管理层提供详实准确的决策依据。
[1]王晓香.焊接钢管技术的新进展[J].焊管,2011,34(3):5-11.
[2]韩宝云,胡娜.钢管管号识别技术的对比分析[J].钢管,2013,42(2).
[3]方文,张军锋,刘华光,等.钢管自动喷码与识别装置[J].钢管,2013,42(1):67-70.
[4]李子伟,王成杰,张鑫.焊管制造信息化系统[J].焊管,2010,33(2):60-63.
[5]廖常初.S7-200PLC编程及应用[M].北京:机械工业出版社,2007.
[6]丁莉君,李宏艳.上位机与PLC通信的设计及应用[J].机床与液压,2009,37(9):231-232.
[7]ServoC Operation Maual[R].Shanghai:LTi DriveSystems,2011.
[8]赵星,朱军,张环宇,等.钢管自动喷码系统研究与设计[J].制造业自动化,2013,35(6):27-31.
[9]许静,朱晓民,程金,等.利用西门子 S7-200自由通讯接口实现与条码扫描枪的通讯[J].制造业自动化,2011,33(20):82-84.
[10]Leuze electronic.BCL 21/22 Bar Code Readers[M].2010.