您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 制造加工工艺 > 基于Modbus协议的数控排钻伺服定位系统
基于Modbus协议的数控排钻伺服定位系统本文设计了基于交流伺服驱动和Modbus通信协议的数控排钻PLC控制系统。采用一体化PC机作上位机,利用VB编程的人机界面实现基于Modbus协议的PLC通信,完成交流伺服电机的精确定位控制:采用防碰撞算法解决了多台伺服电机定位过程中可能发生碰撞的问题。经现场调试,该系统达到了满意的定位控制效果。0引言数控钻床是实现工件上各种类型孔自动定位和钻削的高精度机床,广泛应用于工业和电子行业的零件加工,其数控系统是机床的核心,一般多采用伺服系统来实现精确定位。伺服系统融合了电机、计算机、电力电子、自动控制、精密机械和新材料等多种高新技术,是装备制造、工业自动化、办公自动化和家庭生活自动化等不可缺少的重要技术。目前,国内的计算机数字控制(computernumericalcontrol,CNC)数控钻床大多为进口设备,每次定位只能钻单个孔,而木工机械行业中经常需要钻大量的排孔,致使CNC数控钻床定位次数大大增加,无法体现效率,而且其价格昂贵,无法普及。基于此问题,笔者采用现代伺服系统设计了新型数控排钻。采用交流伺服驱动器与可编程逻辑控制器(programmablelogiccontroller,PLC)作为控制系统的核心,结合VB编程的上位机人机界面,同时使用4台伺服电机,依次分布于数控排钻的运动导轨(即x轴)上,每台伺服电机分别拖动1台钻孔定位器来实现定位。这样的设计每次最多可实现4个孔的同时定位,效率较高。1系统设计数控排钻伺服定位系统总体设计原理如图1所示。该系统采用1台触摸屏电脑作为上位机,上位机提供VB程序操作界面,并发送定位目标数据到下位机PLC中;PLC根据当前位置与目标位置的关系再经过一系列计算,把定位距离转换为精确脉冲数发送给伺服驱动器;伺服驱动器实时响应PLC所发脉冲,配合自增益调整采用SVPWM控制方式驱动伺服电机;伺服电机通过蜗轮蜗杆减速器带动钻孔定位器做直线运动,实现x轴准确定位。该定位方式具有响应速度快、定位精度高、动态特性好等优点。伺服驱动器提供位置、速度、扭矩3种基本控制模式,本设计采用位置模式,脉冲列+方向控制方式。另外x轴运动方向上还安装了4个光电传感器供伺服电机做原点回归使用。PLC一方面发送脉冲控制x轴定位;另一方面根据数控钻床控制要求,控制各执行继电器动作。上位机与PLC之间使用RS232接口进行通信,采用Modbus通信协议。图1数控排钻伺服定位系统总体设计框图1.1硬件设计1)上位机。上位机采用宇联公司QC-156工业级触摸屏电脑,操作界面采用VB编程语言编写。VB是一种结构化面向对象的程序设计语言,采用事件驱动的程序机制,可高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。上位机主要为用户提供人性化操作界面,设定各种运行参数,实时显示钻孔定位器的位置与运行速度,接收定位目标位置并发送给PLC。2)下位机。下位机采用台达DVP-40EH型PLC,可同时支持2组AB相200kHz脉冲输出(Y0,Y1)(Y2,Y3),与2点200kHz脉冲输出(Y4,Y6)。内置RS-232与RS-485通讯端口,兼容ModbusASCII/RTU通讯协议,且内置4组硬件高速计数器,可同时控制4台伺服电机实现定位。3)伺服驱动器。采用台达ASDA-B2型伺服驱动器,内置高性能32位DSP芯片,配合增益自动调整技术,对伺服电机进行闭环控制,对其各种信息做出快速、准确反应,处理随时变化的信号。4)台达伺服电机。本设计要求快速、准确地实现控制目标,决定配套采用台达ECMAC20807系列交流伺服系统。此系列伺服电机配合台达B2型伺服驱动器组成的伺服系统,已广泛应用于数控机床、机器人、自动化生产线等各种有精确调速、定位要求的场合。1.2伺服系统接线伺服驱动器的位置控制指令脉冲有3种类型,分别是:正向脉冲+反向脉冲,脉冲+方向,相位相差90°的AB两相脉冲。本文选用脉冲+方向方式,伺服驱动器的CN1接口中的Pulse41号引脚接收PLC的脉冲信号,Sign37号引脚接收方向信号。PLC的输出端口Y0,Y1构成一组脉冲控制信号,总共4组,分别控制4台伺服电机运行。伺服电机的转速南Y0口脉冲发送频率决定,移动距离由Y0口发送脉冲的个数决定。每个伺服驱动器控制1台伺服电机,伺服驱动器与PLC之间的接线如图2所示。图2PLC与伺服驱动器接线图2上位机与PLC之间的通信实现上位机与台达PLC之间采用Modbus通信协议。Modbus协议具有以下优点:开放性好、易实现、扩展性好、帧格式简单、可靠性高,可支持多种电气接口,可在各种介质上传送,如双绞线、光纤、无线等,因而具有广阔的应用前景,被越来越多的设备厂商所支持。不同厂商生产的控制设备可以连成Modbus工业网络。Modbus的实质是一种主从应答的通讯协议,其通讯遵循以下过程:主机准备请求并向从机发送请求;从机接收主机请求后进行校验,然后处理,并向主机发送回复;如果出现差错,从机将返回一个异常的功能码。在Modbus系统中有2种传输模式可选择,一种是美国信息交换码(ASCII),另一种是远程终端单元(remoteterminalunit,RTU)。ASCII采用的格式和校验相对简单,本设计采用ASCII格式,LRC校验。VB与台达PLC通讯的基本流程,如图3所示。上位机读PLC中相应数据寄存器的数值时,应输入正确的寄存器号,并按照通讯协议生成正确的发送字符串,触发MSComm控件,在其OnComm事件中调用公用模块中的PublicSubMSComml_OnComm10过程,对所获取字符串进行处理及显示。向PLC中的数据寄存器写人数值操作时,应输入正确的寄存器号与数值,生成发送字符串后触发MSComm控件的OnComm事件,向PLC中写入数值。图3上位机与PLC通讯基本流程图3防碰撞算法由于4个伺服定位器在数控钻床X轴方向上依次分布,运动过程中要防止它们相互间的碰撞。所以在设计过程中采取了防碰撞保护措施。首先,在轴导轨的下方依次安装4个光电接近传感器做定位校准使用,将这4个光电传感器依次接到PLC的4个输入点上,作为伺服定位系统的零点传感器。当伺服系统每次开机运行时,使用dzrn指令可使4台伺服定位器分别移动到4个光电传感器的位置,然后把此位置换算成脉冲数,赋给伺服驱动器里的脉冲计数器作为定位初值。当伺服定位器移动时,脉冲计数器会根据PLC所发脉冲数自动增减。根据脉冲计数器的数值即可知道伺服定位器的精确位置,再将4个脉冲计数器的数值经过一定的换算关系,转换为轴导轨上4个伺服定位器的实际位置,即可在运行过程中不断监视4个定位器的位置差。在程序中设定4台伺服定位器的防碰撞安全距离,一旦监视到伺服定位器之间的距离差小于或等于防碰撞安全距离,则立即停止PLC脉冲输出,使伺服电机停止转动,从而防止碰撞发生。PLC防撞的部分程序如下:图4伺服系统定位流程图4结语本文通过台达交流伺服控制器、PLC及其t位机的组合来完成一个数控排钻的运动控制实现,上位机与PLC采用基于Modbus协议的串口通信实现。由于采用了PLC与上位机人机界面,可采用不同的控制算法,对系统采用不同的控制方式,控制实现上有较大的灵活性。经过一段时问的使用,该数控排钻伺服定位系统运行良好,在定位精度、控制可靠性、运行稳定性方面效果较好。
本文标题:基于Modbus协议的数控排钻伺服定位系统
链接地址:https://www.777doc.com/doc-2534573 .html