LC在伺服控制系统中的应用.ppt

上传人:小飞机 文档编号:4850059 上传时间:2023-05-19 格式:PPT 页数:77 大小:1.05MB
返回 下载 相关 举报
LC在伺服控制系统中的应用.ppt_第1页
第1页 / 共77页
LC在伺服控制系统中的应用.ppt_第2页
第2页 / 共77页
LC在伺服控制系统中的应用.ppt_第3页
第3页 / 共77页
LC在伺服控制系统中的应用.ppt_第4页
第4页 / 共77页
LC在伺服控制系统中的应用.ppt_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《LC在伺服控制系统中的应用.ppt》由会员分享,可在线阅读,更多相关《LC在伺服控制系统中的应用.ppt(77页珍藏版)》请在三一办公上搜索。

1、第5章 PLC在伺服系统中的应用 5.1 PLC在步进电机控制中的应用,5.1.1 PLC直接控制步进电机 使用PLC直接控制步进电机时,可使用PLC产生控制步进电机所需要的各种时序的脉冲。例如三相步进电机可采用三种工作方式:三相单三拍三相双三拍三相单双六拍,可根据步进电机的工作方式,以及所要求的频率(步进电机的速度),画出A、B、C各相的时序图。并使用PLC产生各种时序的脉冲 例如:采用西门子S7-300PLC控制三相步进电机的过程。要求通过PLC可实现三相步进电机的起停控制、正反转控制,以及三种工作方式的切换(每相通电时间为1秒钟)。变量约定如下:输入:启动按钮SB1:I0.0 方向选择开

2、关SA1:I0.1 停止按钮SB2:I0.2 三相单三拍方式选择SA2:I0.3 三相双三拍方式选择SA3:I0.4 三相单双六拍方式选择SA4:I0.5,输出:A相加电压:Q0.0 B相加电压:Q0.1 C相加电压:Q0.2 启动指示灯:Q0.3 三相单三拍运行方式:Q0.4 三相双三拍运行方式:Q0.5 三相单双六拍运行方式:Q0.6 输出脉冲显示灯:Q0.7,三相单三拍正向时序图三相双三拍正向时序图,三相单双六拍正向时序图编程方法1:使用定时器指令实现各种时序脉冲的要求:使用定器产生不同工作方式下的工作脉冲,然后按照控制开关状态输出到各相对应的输出点控制步进电机。,M0.0作为总控制状态

3、位,控制脉冲发生指令是否启动。一旦启动,采用T0、T1、T2以及它们的组合可以得到三相单三拍和三相双三拍的两种工作方式下,各相的脉冲信号。如T0的状态为三相单三拍工作状态下A相的脉冲。同理可使用类似程序得到三相单双六拍时各相所需的脉冲信号。,编程方法2:使用移位指令实现各相所需的脉冲信号。例如在MW10中进行移位,每次移位的时间为1秒钟。如图为三相单双六拍正向时序流程图,三相单三拍可利用相同的流程图,从M11.0开始移位,每次移两位,而三相双三拍从M11.1开始,每次移两位。,在程序段1中,先产生周期为1秒钟的脉冲信号。,在不同的工作方式下赋予MW10不同的初值。,程序段2:三相单三拍或三相单

4、双六拍工作方式,此时均从M11.0开始移位,两种工作方式均为M11.6为“1”时返回。程序段3:三相双三拍工作方式,此时从M11.1开始因为,而在M11.7时返回。程序段4:若按下停止按钮或没有选择工作方式时,MW10中的内容为“0”,则不会有输出。,在不同的工作方式下,将移位指令移动的位数保存在MW20中。,MW20,程序段5:三相单三拍或三相双三拍,每次应移动2位。程序段6:三相单双六拍,每次应移动一位。程序段7:为移位指令,由于T1的周期为1秒钟,因此每间隔1秒钟,移位指令左移指定的位数。再将MW10中对应的位控制相应的输出,可实现步进电机的控制。步进电机的反向控制可根据相同的办法来实现

5、。,5.1.2 PLC与步进电机驱动器配合 在对步进电机进行控制时,常常会采用步进电机驱动器对其进行控制。步进电机驱动器采用超大规模的硬件集成电路,具有高度的抗干扰性以及快速的响应性,不易出现死机或丢步现象。使用步进电机驱动器控制步进电机,可以不考虑各相的时序问题(由驱动器处理),只要考虑输出脉冲的频率(控制驱动器CP端),以及步进电机的方向(控制驱动器的DIR端),PLC的控制程序也简单得多。,但是,在使用步进电机驱动器时,往往需要较高频率的脉冲。西门子CPU312C、CPU313C、CPU313-2DP等型号,集成有用于高速计数以及高频脉冲输出的通道,可用于高速计数(最高频率30kHz)或

6、高频脉冲输出(最高频率2.5kHz)。下面以CPU313C为例,说明CPU模块集成的高频脉冲输出功能的控制过程。CPU313C集成有3个用于高速计数或高频脉冲输出的特殊通道,3个通道位于CPU313C集成数字量输出点首位字节的最低三位,这三位通常情况下可以作为普通的数字量输出点来使用。再需要高频脉冲输出时,可通过硬件设置定义这三位的属性,将其作为高频脉冲输出通道来使用。,作为普通数字量输出点使用时,其系统默认地址为Q124.0、Q124.1、Q124.2(该地址用户可根据需要自行修改),作为高速脉冲输出时,对应的通道分别为0通道、1通道、2通道(通道号为固定值,用户不能自行修改)。每一通道都可

7、输出最高频率为2.5KHZ(周期为0.4ms)的高频脉冲。,CPU313C中,X2前接线端子22、23、24号接线端子分别对应通道0、通道1、和通道3。另外,每个通道都有自己的硬件控制门,0通道的硬件门对应X2前接线端子的4号接线端子,对应的输入点默认地址为I124.2。1通道硬件门7号接线端子,对应的输入点默认地址为I124.5,而2号通道硬件门为12号接线端子,对应的输入点默认地址为I125.0。控制通道产生高频脉冲分为以下两个步骤:硬件设置 调用系统功能块SFB49,(1)硬件设置需先将Count的工作模式设置为:Pulse-width modulation(脉宽调制)然后再在Pulse

8、-Width Modulation标签内对设置脉冲参数。输出格式(output-format)有两种选择,每密耳(Per mile)和S7模拟量值(S7 analog value)。选择Per mil,则输出格式取值范围为(01000),选择S7 analog value,则输出格式取值范围为(027648,S7模拟量的最大取值为27648)。输出格式的取值在调用系统功能块SFB49时设置的,这一取值将会影响输出脉冲的占空比,具体内容将在后面介绍SFB49时提到。,时基(Time base)也有两种选择(0.1ms,和1ms),可根据实际需要选择合适的时基,要产生频率较高的脉冲,可选择较短的时

9、基(0.1ms)。接通延时(On-delay):当控制条件成立时,对应通道将延时指定时间后输出高频脉冲。指定时间值为设置值*时基。取值范围为065535。Period:指定输出脉冲的周期。取值范围为465535。周期=设置值*时基。,最小的脉冲宽度(Minimum pulse):指定输出脉冲的最小脉宽,最小脉宽的取值范围为2Period/2。注意:在指定了最小脉冲宽度以后,应该保证根据占空比计算出来的高低电平的时间不小于最小脉冲宽度,否则脉冲将不能正常输出。硬件门(Hardware gate):如果选中硬件,则高频脉冲的控制需要硬件门和软件门同时控制,如果不选,则高频脉冲输出单独由软件门控制。

10、,Hardware Interrupt(硬件中断选择):一旦选中硬件门控制以后,此选项将被激活,用户可根据需要选择是否在硬件门起动时刻,调用硬件中断组织块OB40中的程序。(2)调用系统功能块SFB49 除上述设置外,要想在相应的通道上获得脉冲,除了硬件设置以外,还必须在程序中调用产生脉冲的系统功能块SFB49(符号名为“PULSE”),并分配SFB49的参数。系统功能块SB49的参数很多,可根据自己的控制需要进行选择性填写。,在SFB49的所有输入参数中主要有两部分,一部分是用来控制脉冲输出或作为数字量输出的控制变量;另外一部分则是用来修改脉冲参数:例如脉冲周期,延时时间,最小脉宽等。参数L

11、ADDR:子模块的地址,数据类型为字。可在硬件组态时进行地址配置。其默认值为W#16#300,即输入输出映像区第768个字节。若通道集成在CPU模块中,则此参数可以不用设置,若通道在某个子功能模块上,则必须保证此参数的地址与模块设置的地址一致。参数CHANNEL:通道号,数据类型为整数。此参数指定启用的通道号,CPU313C具有3个通道的高频脉冲输出,通道号分别为0、1、2。如启动2号通道,则参数值为:2。若通道号大于2,则在执行功能块时,将发出出错信息。,参数SW_EN:为软件控制门,数据类型为BOOL。SFB49是通过门功能(Gate Function)控制高频脉冲的起动输出的。门功能中包

12、括硬件门(hardware gate)和软件门(software gate)两种:可根据需要设置为单独使用软件门控制或同时使用硬件门和软件门控制。门功能工作过程如图所示。,单独使用软件门控制时,在硬件设置时,不能启用硬件门(hardware gate)控制。此时,高频脉冲输出单独由软件门SW_EN端控制,即SW_EN端为“1”时,脉冲输出指令开始执行(延时指定时间后输出指定周期和脉宽的高频脉冲),当SW_EN端为“0”时,高频脉冲停止输出。,采用硬件门和软件门同时控制时,需要在硬件设置中,启用硬件门控制。当软件门的状态先为“1”,同时在硬件门有一个上升沿时,将启动内部门功能,并输出高频脉冲(延

13、时指定时间输出高频脉冲)。当硬件门的状态先为“1”,而软件门的状态后变为“1”,则门功能不启动,若软件的状态保持“1”,同时在硬件门有一个下降沿发生,也能启动门功能,输出高频脉冲。当软件门的状态变为“0”,无论硬件门的状态如何,将停止脉冲输出。,参数MAN_DO:手动输出使能端。一旦通道在硬件组态时设置为脉宽调制功能,则该通道不能使用普通的输出线圈指令对其进行写操作控制,要想控制该通道必须调用功能块SFB49对其进行控制。如果还想在该通道得到持续的高电平(非脉冲信号),则可以通过MAN_DO控制端实现。当MAN_DO端为“1”时,指定通道不能输出高频脉冲,只能作为数字量输出点使用。当MAN_D

14、O端为“0”时,则指定通道只能作为高频脉冲输出通道使用输出指定频率的脉冲信号。,参数SET_DO:数字量输出控制端。当MAN_DO端的状态为“1”时,可通过SET_DO 端控制指定通道的状态是为高电平“1”,还是低电平“0”。如果MAN_DO端的状态为“0”,则SET_DO端的状态不起作用,不会影响通道的状态。参数OUTP_VAL:输出值设置。输出值参数数据类型为整数。在硬件设置中我们只指定了脉冲的周期,延时时间以及最小脉宽等,并没有指定脉冲的占空比。参数OUTP_VAL就是用来指定脉冲占空比的。,输出脉冲高电平时间长度为:在硬件设置时,如果选择输出形式(Output-format)为Per

15、mil,则:Pulse width(脉宽)=(OUTP_VAL/1000)*period(周期)在硬件设置时,如果选择输出形式为S7模拟量值(S7 analog value)时,则:Pulse width(脉宽)=(OUTP_VAL/27648)*period(周期),5.2 PLC在伺服控制的中应用,5.2.1 高速计数器在伺服控制中的应用 数字式位置伺服里经常采用旋转编码器作为检测元件,根据其脉冲计数值间接测得位置值。由于编码器的脉冲频率较高,不能通过PLC的普通DI口输入。为此一些PLC专门为编码器这类的高速脉冲输入信号设计了高速计数器。如S7-300C类的PLC的CPU模块中就集成了高

16、速计数器。使用集成计数器功能可方便地完成对增量型编码器脉冲的计数,从而实现伺服系统中的角度和位移检测,借助软件也可实现速度的检测。,1.计数器的计数功能计数模式:连续计数、一次计数、周期性计数 门功能:用于开始、停止和中断计数功能。锁存器功能:可使用此功能在数字输入出现正跳沿时保存当前的内部计数值。比较器:可在 CPU 中存储比较值。根据计数值和比较值,可激活数字输出或生成硬件中断。滞后:可指定数字输出的滞后。这样,当计数值在比较值范围内时,可防止因编码器信号的每次轻微抖动而造成数字输出抖动。硬件中断 周期测量:可以测量计数信号(最大计数频率为 1 kHz)的周期。,与计数功能相关的端子,地址

17、对照:,(1)硬件设置 1)工作模式:,连续计数:CPU 从 0 或装载值开始计数。向上计数达到上限时,它将在出现下一正计数脉冲时跳至下限处,并从此处恢复计数。向下计数达到下限时,它将在出现下一负计数脉冲时跳至上限处,并从此处恢复计数。一次计数:CPU 从装载值开始计数一次。计数限值处发生上溢或下溢时,计数器将跳至相反的计数限值,且门自动关闭。要重新启动计数,必须在门控制处生成一个正跳沿。停止门控制时,将从当前计数开始重新计数。取消门控制时,将从装载值开始重新计数。,周期性计数:CPU 根据声明的缺省计数方向执行周期性计数。无缺省计数方向时:CPU 从装载值开始计数。CPU 向上或向下计数。在

18、相应的计数限值处上溢或下溢时,计数 器将跳至装载值并从该值开始恢复计数。计数限值设置为最大范围。缺省为向上计数:CPU 从装载值开始计数。CPU 向上或向下计数。计数器沿正方向计数到结束值-1 后,将在出现下一个正计数脉冲时跳回至装载值,并从该值开始恢复计数。,缺省为向下计数:CPU 从装载值开始计数。CPU 向上或向下计数。计数器沿负方向计数到值 1 后,将在出现下一个负计数脉冲时跳回至装载值(开始值),并该值开始恢复计数。,)计数选型卡设置,计数选项参数说明:,(2)通过用户程序控制计数器 要从用户程序中控制计数器,可用 SFB COUNT(SFB 47)。可使用下列功能:通过软件门 SW

19、_GATE 启动/停止计数器 启用/控制输出 DO 读出状态位 读取当前计数值和锁存器值 用于读/写内部计数寄存器的作业 读出当前周期(不与块互连,但仅在背景数据块中可用),SFB47的输入参数:LADDR:WORD型,在“HW Config”中指定的子模块 I/O 地址。CHANNEL:INT型,通道号SW_GATE:BOOL型,软件门,用于控制计数器的启动/停止。CTRL_DO:BOOL型,启用输出。SET_DO:BOOL型,控制输出。除上述参数外,还有许多未与模块连接的一些输入参数。,STS_GATE:BOOL型,内部门状态。STS_STRT:BOOL型,硬件门状态STS_LTCH:BO

20、OL型,锁存器输入状态STS_DO:BOOL型,输出状态STS_C_DN:BOOL型,向下计数的状态。始终指示最后的计数方向。在第一次调用 SFB 之后,STS_C_DN 的值为 FALSE。STS_C_UP:BOOL型,向上计数的状态。始终指示最后的计数方向。在第一次调用 SFB 之后,STS_C_UP 的值为 TRUE。COUNTVAL:DINT型,当前计数值 LATCHVAL:DINT型,当前锁存器值,可以使用作业接口来读/写计数寄存器JOB_REQ:BOOL型,作业请求(正跳沿)。JOB_ID:WORD型,作业号(16进制)。00不带有功能的作业;01写入计数值;02写装载值;04写入

21、比较值;08写入滞后;10写入脉冲持续时间;82读装载;84读比较值;88读取滞后;90读取脉冲持续时间 JOB_VAL:DINT型,写作业的值。JOB_DONE:BOOL型,可启动新作业。JOB_ERR:BOOL型,错误作业。JOB_STAT:WORD型,作业错误编号JOB_OVAL:DINT型,读取作业的输出值,JOB_DONE:BOOL型,可启动新作业JOB_ERR:BOOL型,错误作业JOB_STAT:WORD型,作业错误编号JOB_OVAL:DINT型,读取作业的输出值,SFM47的调用,2.位置伺服 在位置伺服中,高速计数器可与增量型编码器配和使用,从而获得位置信息。位置信息是相对

22、某一起始位置的相对位移,编码器试需要可安装在电机轴或传动轴上。依编码器发出的脉冲数,通过计算可得到位置信息。下面示例是一个伺服电机丝杠系统位置计算程序。此例中,编码器安装在电机轴上。该程序是一个FC程序,包括两个输入参数,其中,CNT_PV0是某一位置时SFB47的计数值,CNT_PV是SFB47的当前计数值,这两个参数是在其它程序块中通过SFB47得到的。该FC的输出POSI_PV是当前位置值(mm)。,此程序是通用计算程序,对于确定的系统也可采用简单的方式获得:位移=脉冲当量数*脉冲数 脉冲当量数是事先计算好的每个脉冲代表的实际位移量。,利用位置信息可以进行位置控制,通常PLC进行位置控制

23、时,是通过伺服电机驱动器来控制电机的。位置控制时,控制器一般采用纯比例控制器。,比例控制,驱动器,伺服电机,传动机构,编码器,位置计算,设定,PLC,有时也可采用不使用比例控制器的简单闭环控制形式。此方式下进行位置控制时,一般是在远离目标点时,令伺服电机高速运行,以便快速靠近目标。当到达目标附近时,为获得较为精确的位置控制,通常要进行减速。然后,在到达目标时,使电机停转。若系统惯性较大,还应注意停转预量的设置,即提前停转。下面的示例是采用比较方式的部分程序。其中,#MA是到位信号,可用此信号控制电机停转。,3.速度伺服 速度控制可用于速度单闭环控制,也可作为位置控制时的内环使用。速度控制器一般

24、采用PI控制器。,驱 动 器,伺服电机,传动机构,编码器,位置计算,设定,PLC,P控制器,PI控制器,速度计算,利用编码器脉冲信号计算速度时,可采用一定时间段的脉冲计数值来计算速度。例如:在100ms内高速计数器的脉冲计数值为N,若编码器每转的脉冲数为K,则转速为:n=N1060/K 对于采用伺服驱动器的系统,一般驱动器的速度控制信号是电压或电流信号,可由PLC的D/A通道控制。下面示例给出了速度控制的部分程序。,5.2.2 S7-300PLC的定位控制功能 某些型号的CPU模块内集成了定位功能,如CPU314C-2DP/PtP集成了一个轴的定位功能,可采用模拟输出或数字输出来进行定位控制。

25、使用模拟输出时,固定使用集成的模拟量输出0通道作为输出通道。(单极性电源时需使用集成的Q0.7 点控制方向)使用数字量输出时,固定使用集成的数字量输出点Q1.0、Q1.1、Q1.2和 Q1.3作为输出点,视组态的控制模块来控制快速/慢速、正转/反转。使用24位增量编码器作为位置反馈。,端子分配X1,端子分配X2,1.使用模拟量输出进行定位(1)硬件组态 基本参数的组态方法与与前面计数器中基本参数的组态类似。然后是与定位控制相关的选项卡的组态,包括驱动器参数组态、轴参数组态和编码器参数组态。此外还有诊断参数组态。,驱动器参数组态,轴参数组态,编码器组态,(2)系统功能块SFB44 为便于在程序中

26、使用和控制定位功能,系统提供了一个系统功能块SFB44,具有点动、参考点逼近、相对增量逼近及绝对增量逼近 等控制模式。,输入参数其它输入参数与具体运行模式有关。,输出参数,1)点动模式(MODE_IN=1)通过置位控制位 DIR_P 或 DIR_M 启动驱动器。每次调用 SFB 时,都会对 DIR_P 和 DIR_M 这两个控制位进行评估以便检查逻辑级的更改。如果这两个控制位均为 FALSE,则运行将减速。如果这两个控制位均为 TRUE,则运行也将减速。当其中一个控制位置位为 TRUE 时,轴将在相应方向上移动。,2)参考点逼近模式(MODE_IN=3)需要参考点开关以确保参考信号始终具有相同

27、的参考点(零标记),以及用于更改为参考点逼近速度,动作如图所示。,参考点,3)相对增量逼近模式(MODE_IN=4)在“相对增量逼近”模式下,驱动器将自上一个目标(LAST_TRG)开始,在指定方向上移动一段相对距离(TARGET指定的以脉冲数表示的距离)。起始点不是实际位置,而是上一个指定目标(LAST_TRG)。因此,定位精度不会累加。启动定位后,由参数 LAST_TRG 来指示实际目标。4)绝对增量逼近模式(MODE_IN=)在“绝对增量逼近”模式下,驱动器将在指定方向上移动到TARGET指定的以脉冲数表示的绝对位置)。,模拟输出定位过程,2.使用数字量输出进行定位使用数字量输出进行定位

28、式也需先进性硬件设置,其方法与使用模拟量输出进行定位时类似,与其对应的系统功能块是SFB46。有四种工作模式可在组态时选择,各模式下四个数字量输出点的用途有所不同。,控制电路示例,5.3 S7-300PLC的计数和定位模块,这些模块属于S7-300系列PLC的功能模块(FM),通过相应的设置软件设置后,可独立完成各自的功能。计数模块 计数模块主要是为编码器配置的计数模块,包括FM350-1和FM350-2。FM350-1为单通道计数器模块,可检测最高500kHz的脉冲,有连续计数、单向计数和循环计数 3种工作模式。FM350-2为8通道计数器模块,计数最高频率为10kHz,有7种工作模式。,定位模块 定位模块 包括FM351、FM353、FM354和FM357。FM351是双通道定位模块,可以控制两个相互独立的轴的定位,采用开关量输出控制,具有点动模式、绝对增量定位模式、相对增量定位模式及参考点定位模式,并使用编码器测量位置。FM353为步进电机定位模块,FM354为伺服电机定位模块,FM357可用于最多4个差补轴的协同定位,可用于伺服电机和步进电机。上述各模块需与相应的驱动器配合来控制各类伺服电机或步进电机。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号