您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > PLC控制伺服电机应用实例
PLC控制伺服电机应用实例,写出组成整个系统的PLC模块及外围器件,并附相关程序。PLC品牌不限。以松下FP1系列PLC和A4系列伺服驱动为例,编制控制伺服电机定长正、反旋转的PLC程序并设计外围接线图,此方案不采用松下的位置控制模块FPG--PP11\12\21\22等,而是用晶体管输出式的PLC,让其特定输出点给出位置指令脉冲串,直接发送到伺服输入端,此时松下A4伺服工作在位置模式。在PLC程序中设定伺服电机旋转速度,单位为(rpm),设伺服电机设定为1000个脉冲转一圈。PLC输出脉冲频率=(速度设定值/6)*100(HZ)。假设该伺服系统的驱动直线定位精度为±0.1mm,伺服电机每转一圈滚珠丝杠副移动10mm,伺服电机转一圈需要的脉冲数为1000,故该系统的脉冲当量或者说驱动分辨率为0.01mm(一个丝);PLC输出脉冲数=长度设定值*10。以上的结论是在伺服电机参数设定完的基础上得出的。也就是说,在计算PLC发出脉冲频率与脉冲前,先根据机械条件,综合考虑精度与速度要求设定好伺服电机的电子齿轮比!大致过程如下:机械机构确定后,伺服电机转动一圈的行走长度已经固定(如上面所说的10mm),设计要求的定位精度为0.1mm(10个丝)。为了保证此精度,一般情况下是让一个脉冲的行走长度低于0.1mm,如设定一个脉冲的行走长度为如上所述的0.01mm,于是电机转一圈所需要脉冲数即为1000个脉冲。此种设定当电机速度要求为1200转/分时,PLC应该发出的脉冲频率为20K。松下FP1---40T的PLC的CPU本体可以发脉冲频率为50KHz,完全可以满足要求。如果电机转动一圈为100mm,设定一个脉冲行走仍然是0.01mm,电机转一圈所需要脉冲数即为10000个脉冲,电机速度为1200转时所需要脉冲频率就是200K。PLC的CPU输出点工作频率就不够了。需要位置控制专用模块等方式。有了以上频率与脉冲数的算法就只需应用PLC的相应脉冲指令发出脉冲即可实现控制了。假设使用松下A4伺服,其工作在位置模式,伺服电机参数设置与接线方式如下:一、按照伺服电机驱动器说明书上的“位置控制模式控制信号接线图”接线:pin3(PULS1),pin4(PULS2)为脉冲信号端子,PULS1连接直流电源正极(24V电源需串连2K左右的电阻),PULS2连接控制器(如PLC的输出端子)。pin5(SIGN1),pin6(SIGN2)为控制方向信号端子,SIGN1连接直流电源正极(24V电源需串连2K左右的电阻),SIGN2连接控制器(如PLC的输出端子)。当此端子接收信号变化时,伺服电机的运转方向改变。实际运转方向由伺服电机驱动器的P41,P42这两个参数控制,pin7(com+)与外接24V直流电源的正极相连。pin29(SRV-0N),伺服使能信号,此端子与外接24V直流电源的负极相连,则伺服电机进入使能状态,通俗地讲就是伺服电机已经准备好,接收脉冲即可以运转。上面所述的六根线连接完毕(电源、编码器、电机线当然不能忘),伺服电机即可根据控制器发出的脉冲与方向信号运转。其他的信号端子,如伺服报警、偏差计数清零、定位完成等可根据您的要求接入控制器构成更完善的控制系统。二、设置伺服电机驱动器的参数。1、Pr02----控制模式选择,设定Pr02参数为0或是3或是4。3与4的区别在于当32(C-MODE)端子为短路时,控制模式相应变为速度模式或是转矩模式,而设为0,则只为位置控制模式。如果您只要求位置控制的话,Pr02设定为0或是3或是4是一样的。2、Pr10,Pr11,Pr12----增益与积分调整,在运行中根据伺服电机的运行情况相应调整,达到伺服电机运行平稳。当然其他的参数也需要调整(Pr13,Pr14,Pr15,Pr16,Pr20也是很重要的参数),在您不太熟悉前只调整这三个参数也可以满足基本的要求.。3、Pr40----指令脉冲输入选择,默认为光耦输入(设为0)即可。也就是选择3(PULS1),4(PULS2),5(SIGN1),6(SIGN2)这四个端子输入脉冲与方向信号。4、Pr41,Pr42----简单地说就是控制伺服电机运转方向。Pr41设为0时,Pr42设为3,则5(SIGN1),6(SIGN2)导通时为正方向(CCW),反之为反方向(CW)。Pr41设为1时,Pr42设为3,则5(SIGN1),6(SIGN2)断开时为正方向(CCW),反之为反方向(CW),正、反方向是相对的,看您如何定义了,正确的说法应该为CCW,CW。5、Pr48、Pr4A、Pr4B----电子齿轮比设定。此为重要参数,其作用就是控制电机的运转速度与控制器发送一个脉冲时电机的行走长度。其公式为:伺服电机每转一圈所需的脉冲数=编码器分辨率×Pr4B/(Pr48×2^Pr4A)伺服电机所配编码器如果为:2500p/r5线制增量式编码器,则编码器分辨率为10000p/r如您连接伺服电机轴的丝杆间距为20mm,您要做到控制器发送一个脉冲伺服电机行走长度为一个丝(0.01mm)。计算得知:伺服电机转一圈需要2000个脉冲(每转一圈所需脉冲确定了,脉冲频率与伺服电机的速度的关系也就确定了)。三个参数可以设定为:Pr4A=0,Pr48=10000,Pr4B=2000,约分一下则为:Pr4A=0,Pr48=100,Pr4B=20。从上面的叙述可知:设定Pr48、Pr4A、Pr4B这三个参数是根据我们控制器所能发送的最大脉冲频率与工艺所要求的精度。在控制器的最大发送脉冲频率确定后,工艺精度要求越高,则伺服电机能达到的最大速度越低。松下FP1---40T型PLC的程序梯型图如下:S7—200PLC在数字伺服电机控制中的应用首先了解plc如何控制伺服电机1、电机的连线及控制本应用实例选择的是位置控制模式,脉冲输入方式有集电极开路方式和差动驱动方式两种,为了方便的实现同时对两部电机的控制,采用差动驱动方式。与PLC的接线图如图所示。PLC与伺服放大器接线图图中L+为公共PLC端子,接24VDC正端,通过控制内部晶体管的开关使得输出Q呈现不同的电平信号或发出脉冲信号。L+一PG—PlM—L+为脉冲输入回路,PLC控制该回路中的发光二极管的亮灭,形成脉冲编码输入。L+一NG—NP一1M—L+为电机旋转方向控制回路,当该回路的发光二极管点亮时,电机正转,否则反转。由于伺服放大器内部电阻只有100欧,为了防止电流过大烧坏内部的发光二极管,需要外接电阻R,其阻值的计算如下:根据公式(1),可以选择R=3.9KO2、电子齿轮比数字交流伺服系统具有位置控制的功能,可通过上位控制器发出位置指令脉冲。而伺服系统的位置反馈脉冲当量由编码器的分辨率及电机每转对应的机械位移量等决定。当指令脉冲当量与位置反馈脉冲当量二者不一致时,就需要使用电子齿轮使二者匹配。使用了电子齿轮功能,就可以任意决定一个输入脉冲所相当的电机位移量。具有电子齿轮功能的伺服系统结构如图3所示。若机械传动机构的螺距为w,指令脉冲当量为△L,编码器每转脉冲数为P,又考虑到一般电机轴与传动丝杠为直接相连,则位置反馈脉冲当量△=W/4P。具有电子齿轮功能的伺服系统结构图由于脉冲当量与反馈脉冲当量不一定相等,就需要使用电子齿轮比来建立两者的关系。具体计算公式为:AL=3M×CMX/CDV。因此根据一个指令脉冲的位置当量和反馈脉冲的位置当量,就可以确定具体的电子齿轮比。三菱该系列伺服电机的电子齿轮比的设定范围对于输入的脉冲,可以乘上其中任意倍率使机械运行。下面是plc控制私服的具体应用3、PIC控制原理及控制模型本例采用了西门子s7.200系列CPU226作为主控制器。它是s7.200系列中的高档PLC,本机自带24个数字输人口、l6个数字输出口及两个RS-422/485串行通讯口,最多可扩展7个应用模块j。实际项目中,通过扩展EM231模拟量输入模块来采集电压信号,输入的模拟信号可在0~10V±5V、0~20mA等多种信号输入方式中选择。最终,PLC根据输入电压信号的大小控制脉冲发送周期的长短,从而达到控制伺服电机速度的目的。3.1高速数字脉冲输出西门子s7.200系列AC/DC/DC(交流供电,直流I/O)类型PLC上集成了两个高速脉冲输出口,两个高速脉冲输出口分别通过Qo.0、Qo.1两个输出端子输出,输出时可选择PWM(脉宽调制)和PIO(脉冲串)方式。PIO方式每次只能发出固定脉冲,脉冲开始发送后直到发送完毕才能开始新的脉冲串;PWM方式相对灵活,在脉冲发送期间可随时改变脉冲周期及宽度,其中脉冲周期可以选择微秒级或毫秒级。3.2PID功能特性该系列PLC可以通过PID回路指令来进行PID运算,在一个程序中最多可以用8条PID指令,既最多可同时实现8个PID控制算法。在实际程序设计中,可用STEP7-Micro/Win32中的PID向导程序来完成一个闭环控制过程的PID算法,从而提高程序设计效率。3.3控制模型控制模型方框图如下图所示,其中Uset为极间电压给定值(此时产气状态最佳),Uf为极间电压采样值,Vout为伺服电机运转速度。通过对电弧电压采样值与弧间电压给定值的比较并经过PLC的PID调节回路控制,可以得出用于控制伺服电机旋转的脉冲发送周期T,从而使伺服电机的送棒速度不停的得到调整,这样就达到了控制两极间距的目的。保证了两极间距的相对稳定,也就保证了极间电压的稳定性。PID调节控制原理框图根据极间距对极间电压的影响,可以设定PLC的PID调节回路调整策略如下:Uset—uf0,T减小;Uset—uf0,T增大。通过上述控制方法,能够比较精确的实现对UF的控制。4、程序设计以下应用程序是经过简化的,没有涉及异常情况。其设计以本文前面所述方法及原理为依据,并给出了详尽的程序注释。4.1主程序NErW0RK1①IJDSM0.1//SM0.1=1仅第一次扫描有效②MOVW+0,VW450//PID中断计数器初始化③MOVB100,SMB34//设置定时中断时间间隔为lOOms④ATCHINT—PWM—PID,10//设定中断,启动PID执行⑤ENI//开中断4.2中断程序①NETWORK1LDSM0.0//SM0.0=1每个扫描周期都有效ICWVVW450//调用中断程序次数加1②NETWORK2LDW=VW450.+10//检查是否应进行PID计算M0VW+0,VW450//如果如此,清计数器并继续N0TJMP0//否则,转人中断程序结尾③NETWORK3//计算并装载PIDPV(过程变量)IDSM0.0RPSXORWVW464,VW464//清除工作区域M0VWArW0.VW466//读取模拟数值AV466.7M0VW16#FFFF.VW464//检查符号位,若为负则扩展符号LRDDTRVD464.VD396//将其转化成实数并装载人PVLPP/R32000.0,VD396//正常化至0.0至1.0之间的数值④NETWORK4IDSM0.0MOVRVIM00,VIM00//VIM00为设定值⑤⑥NETWORK6IDSM0.0PIDVB396,0//进行PID计算⑦NETWORK7LDSM0.0M0vRVD404.VD464//装载PID输出至工作区+RVD400,VD464*R1000.0.VIM64//缩放数值TRUNCVD464,VD464//将数值转化成整数MOVWVW466.VW1000//VW1000为PLC输出脉冲周期⑧NETWORK8//伺服电机右反转控制(PWM)//SMW68/78lIFO周期值//SMW70/80PWM脉冲宽度//SMD72/82lIFO脉冲计数值LDSM0.0MOVB16#D3.SMB77//输出脉冲周期为500微秒MOVWVW1000,SMW78MOVWVW1000.VW1118/I+2.VWl118MOVWVW1118.SMW80PIS1⑨NETWORK9LBL0本例给出了利用西门子PLC的高速脉冲输出及PID控制功能,实现对数字式交流伺服电机进行控制的原理及相应编程方法。此控制方
本文标题:PLC控制伺服电机应用实例
链接地址:https://www.777doc.com/doc-6937476 .html