《LC在伺服控制系统中的应用.ppt》由会员分享,可在线阅读,更多相关《LC在伺服控制系统中的应用.ppt(77页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第5章章PLC在伺服系统中的应用在伺服系统中的应用5.1PLC在步进电机控制中的应用在步进电机控制中的应用l5.1.1PLC直接控制步进电机直接控制步进电机l 使用使用PLCPLC直接控制步进电机时,可使用直接控制步进电机时,可使用PLCPLC产生控制步产生控制步进电机所需要的各种时序的脉冲。例如三相步进电机可进电机所需要的各种时序的脉冲。例如三相步进电机可采用三种工作方式:采用三种工作方式:l三相单三拍三相单三拍l三相双三拍三相双三拍l三相单双六拍三相单双六拍l可根据步进电机的工作方式,以及所要求的频率(步进电可根据步进电机的工作方式,以及所要求的频率(步进电机的速度),画出机的速度),画
2、出A、B、C各相的时序图。并使用各相的时序图。并使用PLC产生产生各种时序的脉冲各种时序的脉冲l例如:采用西门子例如:采用西门子S7-300PLC控制三相步进电机的过程。控制三相步进电机的过程。l要求通过要求通过PLC可实现三相步进电机的起停控制、正反转控制,可实现三相步进电机的起停控制、正反转控制,以及三种工作方式的切换(每相通电时间为以及三种工作方式的切换(每相通电时间为1秒钟)。秒钟)。l变量约定如下变量约定如下:l输入:启动按钮输入:启动按钮SB1:l方向选择开关方向选择开关SA1:l停止按钮停止按钮SB2:l三相单三拍方式选择三相单三拍方式选择SA2:l三相双三拍方式选择三相双三拍方
3、式选择SA3:l三相单双六拍方式选择三相单双六拍方式选择SA4:l输出:输出:A相加电压:相加电压:B相加电压:相加电压:C相加电压:相加电压:启动指示灯:启动指示灯:三相单三拍运行方式:三相单三拍运行方式:三相双三拍运行方式:三相双三拍运行方式:三相单双六拍运行方式:三相单双六拍运行方式:输出脉冲显示灯:输出脉冲显示灯:l三相单三拍三相单三拍正向时序图正向时序图l三相双三拍三相双三拍正向时序图正向时序图l三相单双六拍正向时序图三相单双六拍正向时序图l编程方法编程方法1:l使用定时器指令实现各种时序脉冲的要求:使用定使用定时器指令实现各种时序脉冲的要求:使用定器产生不同工作方式下的工作脉冲,然
4、后按照控制开器产生不同工作方式下的工作脉冲,然后按照控制开关状态输出到各相对应的输出点控制步进电机。关状态输出到各相对应的输出点控制步进电机。l作为总控制状态位,控制脉冲发生指令是作为总控制状态位,控制脉冲发生指令是否启动。一旦启动,采用否启动。一旦启动,采用T0、T1、T2以及它以及它们的组合可以得到三相单三拍和三相双三拍的们的组合可以得到三相单三拍和三相双三拍的两种工作方式下,各相的脉冲信号。如两种工作方式下,各相的脉冲信号。如T0的状的状态为三相单三拍工作状态下态为三相单三拍工作状态下A相的脉冲。同理相的脉冲。同理可使用类似程序得到三相单双六拍时各相所需可使用类似程序得到三相单双六拍时各
5、相所需的脉冲信号。的脉冲信号。l编程编程方法方法2:l使用移位指令实现各相所需的使用移位指令实现各相所需的脉冲信号。脉冲信号。l例如在例如在MW10中进行移位,每次中进行移位,每次移位的时间为移位的时间为1秒钟。如图为三相秒钟。如图为三相单双六拍正向时序流程图,三相单双六拍正向时序流程图,三相单三拍可利用相同的流程图,从单三拍可利用相同的流程图,从M11.0开始移位,每次移两位,开始移位,每次移两位,而三相双三拍从而三相双三拍从M11.1开始,每开始,每次移两位。次移两位。l在程序段在程序段1中,先产生周期为中,先产生周期为1秒钟的脉冲信号。秒钟的脉冲信号。l在不同的工作方式下赋予在不同的工作
6、方式下赋予MW10MW10不同的初值。不同的初值。l程序段程序段2:三相单三拍或三相单双六拍工作方式,:三相单三拍或三相单双六拍工作方式,此时均从开始移位,两种工作方式均为为此时均从开始移位,两种工作方式均为为“1”时返回。时返回。l程序段程序段3:三相双三拍工作方式,此时从开始因:三相双三拍工作方式,此时从开始因为,而在时返回。为,而在时返回。l程序段程序段4:若按下停止按钮或没有选择工作方式:若按下停止按钮或没有选择工作方式时,时,MW10中的内容为中的内容为“0”,则不会有输出。,则不会有输出。l在不同的工作方式下,将移位指令移动的位数在不同的工作方式下,将移位指令移动的位数保存在保存在
7、MW20中。中。MW20l程序段程序段5:三相单三拍或三相双三拍,每次应移:三相单三拍或三相双三拍,每次应移动动2位。位。l程序段程序段6:三相单双六拍,每次应移动一位。:三相单双六拍,每次应移动一位。l程序段程序段7:为移位指令,由于:为移位指令,由于T1的周期为的周期为1秒钟,秒钟,因此每间隔因此每间隔1秒钟,移位指令左移指定的位数。秒钟,移位指令左移指定的位数。再将再将MW10中对应的位控制相应的输出,可实现中对应的位控制相应的输出,可实现步进电机的控制。步进电机的反向控制可根据相步进电机的控制。步进电机的反向控制可根据相同的办法来实现。同的办法来实现。l5.1.2PLC与步进电机驱动器
8、配合与步进电机驱动器配合l在对步进电机进行控制时,常常会采用步进在对步进电机进行控制时,常常会采用步进电机驱动器对其进行控制。步进电机驱动器采用电机驱动器对其进行控制。步进电机驱动器采用超大规模的硬件集成电路,具有高度的抗干扰性超大规模的硬件集成电路,具有高度的抗干扰性以及快速的响应性,不易出现死机或丢步现象。以及快速的响应性,不易出现死机或丢步现象。使用步进电机驱动器控制步进电机,可以不考虑使用步进电机驱动器控制步进电机,可以不考虑各相的时序问题(由驱动器处理),只要考虑输各相的时序问题(由驱动器处理),只要考虑输出脉冲的频率(控制驱动器出脉冲的频率(控制驱动器CP端),以及步进端),以及步
9、进电机的方向(控制驱动器的电机的方向(控制驱动器的DIR端)端),PLC的控制的控制程序也简单得多。程序也简单得多。ll但是,在使用步进电机驱动器时,往往需要较但是,在使用步进电机驱动器时,往往需要较高频率的脉冲。西门子高频率的脉冲。西门子CPU312C、CPU313C、CPU313-2DP等型号,集成有用于高速计数以及高等型号,集成有用于高速计数以及高频脉冲输出的通道,可用于高速计数(最高频率频脉冲输出的通道,可用于高速计数(最高频率30kHz)或高频脉冲输出(最高频率)。)或高频脉冲输出(最高频率)。l下面以下面以CPU313C为例,说明为例,说明CPU模块集成的高模块集成的高频脉冲输出功
10、能的控制过程。频脉冲输出功能的控制过程。lCPU313C集成有集成有3个用于高速计数或高频脉冲输个用于高速计数或高频脉冲输出的特殊通道,出的特殊通道,3个通道位于个通道位于CPU313C集成数字量集成数字量输出点首位字节的最低三位,这三位通常情况下可输出点首位字节的最低三位,这三位通常情况下可以作为普通的数字量输出点来使用。再需要高频脉以作为普通的数字量输出点来使用。再需要高频脉冲输出时,可通过硬件设置定义这三位的属性,将冲输出时,可通过硬件设置定义这三位的属性,将其作为高频脉冲输出通道来使用。其作为高频脉冲输出通道来使用。l作为普通数字量作为普通数字量输出点使用时,其输出点使用时,其系统默认
11、地址为、系统默认地址为、(该地址用户可根(该地址用户可根据需要自行修改),据需要自行修改),作为高速脉冲输出作为高速脉冲输出时,对应的通道分时,对应的通道分别为别为0通道、通道、1通道、通道、2通道(通道号为固通道(通道号为固定值,用户不能自定值,用户不能自行修改)。每一通行修改)。每一通道都可输出最高频道都可输出最高频率为(周期为)的率为(周期为)的高频脉冲。高频脉冲。lCPU313C中,中,X2前接线端子前接线端子22、23、24号接号接线端子分别对应通道线端子分别对应通道0、通道、通道1、和通道、和通道3。另外,。另外,每个通道都有自己的硬件控制门,每个通道都有自己的硬件控制门,0通道的
12、硬件通道的硬件门对应门对应X2前接线端子的前接线端子的4号接线端子,对应的输号接线端子,对应的输入点默认地址为。入点默认地址为。1通道硬件门通道硬件门7号接线端子,号接线端子,对应的输入点默认地址为,而对应的输入点默认地址为,而2号通道硬件门为号通道硬件门为12号接线端子,对应的输入点默认地址为。号接线端子,对应的输入点默认地址为。l控制通道产生高频脉冲分为以下两个步骤:控制通道产生高频脉冲分为以下两个步骤:l硬件设置硬件设置l调用系统功能块调用系统功能块SFB49l(1)硬件设置)硬件设置l需先将需先将Count的工作模式设置为:的工作模式设置为:Pulse-widthmodulation(
13、脉宽调制)(脉宽调制)l然后再在然后再在Pulse-WidthModulation标签内对设置标签内对设置脉冲参数。脉冲参数。l输出格式(输出格式(output-format)有两种选择,每密)有两种选择,每密耳(耳(Permile)和)和S7模拟量值(模拟量值(S7analogvalue)。)。选择选择Permil,则输出格式取值范围为,则输出格式取值范围为(01000),选择),选择S7analogvalue,则输出格式,则输出格式取值范围为(取值范围为(027648,S7模拟量的最大取值为模拟量的最大取值为27648)。输出格式的取值在调用系统功能块)。输出格式的取值在调用系统功能块SF
14、B49时设置的,这一取值将会影响输出脉冲的时设置的,这一取值将会影响输出脉冲的占空比,具体内容将在后面介绍占空比,具体内容将在后面介绍SFB49时提到。时提到。l时基(时基(Timebase)也有两种选择(,和)也有两种选择(,和1ms),可根据实际需要选择合适的时基,要),可根据实际需要选择合适的时基,要产生频率较高的脉冲,可选择较短的时基()。产生频率较高的脉冲,可选择较短的时基()。l接通延时(接通延时(On-delay):当控制条件成立时,):当控制条件成立时,对应通道将延时指定时间后输出高频脉冲。指对应通道将延时指定时间后输出高频脉冲。指定时间值为设置值定时间值为设置值*时基。取值范
15、围为时基。取值范围为065535。lPeriod:指定输出脉冲的周期。取值范围为:指定输出脉冲的周期。取值范围为465535。l周期周期=设置值设置值*时基。时基。l最小的脉冲宽度(最小的脉冲宽度(Minimumpulse):指定输):指定输出脉冲的最小脉宽,最小脉宽的取值范围为出脉冲的最小脉宽,最小脉宽的取值范围为2Period/2。注意:在指定了最小脉冲宽度以。注意:在指定了最小脉冲宽度以后,应该保证根据占空比计算出来的高低电平后,应该保证根据占空比计算出来的高低电平的时间不小于最小脉冲宽度,否则脉冲将不能的时间不小于最小脉冲宽度,否则脉冲将不能正常输出。正常输出。l硬件门(硬件门(Har
16、dwaregate):如果选中硬件,):如果选中硬件,则高频脉冲的控制需要硬件门和软件门同时控则高频脉冲的控制需要硬件门和软件门同时控制,如果不选,则高频脉冲输出单独由软件门制,如果不选,则高频脉冲输出单独由软件门控制。控制。lHardwareInterrupt(硬件中断选择):一(硬件中断选择):一旦选中硬件门控制以后,此选项将被激活,用旦选中硬件门控制以后,此选项将被激活,用户可根据需要选择是否在硬件门起动时刻,调户可根据需要选择是否在硬件门起动时刻,调用硬件中断组织块用硬件中断组织块OB40中的程序。中的程序。l(2)调用系统功能块)调用系统功能块SFB49l除上述设置外,要想在相应的通
17、道上获得除上述设置外,要想在相应的通道上获得脉冲,除了硬件设置以外,还必须在程序中调脉冲,除了硬件设置以外,还必须在程序中调用产生脉冲的系统功能块用产生脉冲的系统功能块SFB49(符号名为(符号名为“PULSE”),并分配),并分配SFB49的参数。系统功能的参数。系统功能块块SB49的参数很多,可根据自己的控制需要进的参数很多,可根据自己的控制需要进行选择性填写行选择性填写。l在在SFB49的所有输入参数中主要有两部分,的所有输入参数中主要有两部分,一部分是用来控制脉冲输出或作为数字量输出的一部分是用来控制脉冲输出或作为数字量输出的控制变量;另外一部分则是用来修改脉冲参数:控制变量;另外一部
18、分则是用来修改脉冲参数:例如脉冲周期,延时时间,最小脉宽等。例如脉冲周期,延时时间,最小脉宽等。l参数参数LADDR:子模块的地址,数据类型为字。子模块的地址,数据类型为字。可在硬件组态时进行地址配置。其默认值为可在硬件组态时进行地址配置。其默认值为W#16#300,即输入输出映像区第,即输入输出映像区第768个字节。若个字节。若通道集成在通道集成在CPU模块中,则此参数可以不用设置,模块中,则此参数可以不用设置,若通道在某个子功能模块上,则必须保证此参数若通道在某个子功能模块上,则必须保证此参数的地址与模块设置的地址一致。的地址与模块设置的地址一致。l参数参数CHANNEL:通道号,数据类型
19、为整数。此通道号,数据类型为整数。此参数指定启用的通道号,参数指定启用的通道号,CPU313C具有具有3个通道个通道的高频脉冲输出,通道号分别为的高频脉冲输出,通道号分别为0、1、2。如启。如启动动2号通道,则参数值为:号通道,则参数值为:2。若通道号大于。若通道号大于2,则在执行功能块时,将发出出错信息。则在执行功能块时,将发出出错信息。l参数参数SW_EN:为软件为软件控制门,数据类型为控制门,数据类型为BOOL。SFB49是通过是通过门功能(门功能(GateFunction)控制高频脉)控制高频脉冲的起动输出的。门功冲的起动输出的。门功能中包括硬件门能中包括硬件门(hardwaregat
20、e)和软)和软件门(件门(softwaregate)两种:可根据需要设置两种:可根据需要设置为单独使用软件门控制为单独使用软件门控制或同时使用硬件门和软或同时使用硬件门和软件门控制。门功能工作件门控制。门功能工作过程如图所示。过程如图所示。l单独使用软件门控制时,在硬件设置时,不能单独使用软件门控制时,在硬件设置时,不能启用硬件门(启用硬件门(hardwaregate)控制。此时,高频)控制。此时,高频脉冲输出单独由软件门脉冲输出单独由软件门SW_EN端控制,即端控制,即SW_EN端为端为“1”时,脉冲输出指令开始执行时,脉冲输出指令开始执行(延时指定时间后输出指定周期和脉宽的高频(延时指定时
21、间后输出指定周期和脉宽的高频脉冲),当脉冲),当SW_EN端为端为“0”时,高频脉冲停时,高频脉冲停止输出。止输出。l采用硬件门和软件门同时控制时,需要在硬采用硬件门和软件门同时控制时,需要在硬件设置中,启用硬件门控制。当软件门的状态件设置中,启用硬件门控制。当软件门的状态先为先为“1”,同时在硬件门有一个上升沿时,同时在硬件门有一个上升沿时,将启动内部门功能,并输出高频脉冲(延时指将启动内部门功能,并输出高频脉冲(延时指定时间输出高频脉冲)。当硬件门的状态先为定时间输出高频脉冲)。当硬件门的状态先为“1”,而软件门的状态后变为,而软件门的状态后变为“1”,则门功,则门功能不启动,若软件的状态
22、保持能不启动,若软件的状态保持“1”,同时在,同时在硬件门有一个下降沿发生,也能启动门功能,硬件门有一个下降沿发生,也能启动门功能,输出高频脉冲。当软件门的状态变为输出高频脉冲。当软件门的状态变为“0”,无论硬件门的状态如何,将停止脉冲输出。无论硬件门的状态如何,将停止脉冲输出。l参数参数MAN_DO:手动输出使能端。一旦通道在手动输出使能端。一旦通道在硬件组态时设置为脉宽调制功能,则该通道不硬件组态时设置为脉宽调制功能,则该通道不能使用普通的输出线圈指令对其进行写操作控能使用普通的输出线圈指令对其进行写操作控制,要想控制该通道必须调用功能块制,要想控制该通道必须调用功能块SFB49对对其进行
23、控制。如果还想在该通道得到持续的高其进行控制。如果还想在该通道得到持续的高电平(非脉冲信号),则可以通过电平(非脉冲信号),则可以通过MAN_DO控控制端实现。当制端实现。当MAN_DO端为端为“1”时,指定通时,指定通道不能输出高频脉冲,只能作为数字量输出点道不能输出高频脉冲,只能作为数字量输出点使用。当使用。当MAN_DO端为端为“0”时,则指定通道时,则指定通道只能作为高频脉冲输出通道使用输出指定频率只能作为高频脉冲输出通道使用输出指定频率的脉冲信号。的脉冲信号。l参数参数SET_DO:数字量输出控制端。当数字量输出控制端。当MAN_DO端的状态为端的状态为“1”时,可通过时,可通过SE
24、T_DO端控制指定通道的状态是为高电平端控制指定通道的状态是为高电平“1”,还是低电平,还是低电平“0”。如果。如果MAN_DO端的端的状态为状态为“0”,则,则SET_DO端的状态不起作用,端的状态不起作用,不会影响通道的状态。不会影响通道的状态。l参数参数OUTP_VAL:输出值设置。输出值参数数输出值设置。输出值参数数据类型为整数。在硬件设置中我们只指定了脉据类型为整数。在硬件设置中我们只指定了脉冲的周期,延时时间以及最小脉宽等,并没有冲的周期,延时时间以及最小脉宽等,并没有指定脉冲的占空比。参数指定脉冲的占空比。参数OUTP_VAL就是用来就是用来指定脉冲占空比的。指定脉冲占空比的。l
25、输出脉冲高电平时间长度为:输出脉冲高电平时间长度为:l在硬件设置时,如果选择输出形式(在硬件设置时,如果选择输出形式(Output-format)为)为Permil,则:,则:lPulsewidth(脉宽)(脉宽)=(OUTP_VAL/1000)*period(周期)(周期)l在硬件设置时,如果选择输出形式为在硬件设置时,如果选择输出形式为S7模拟量模拟量值(值(S7analogvalue)时,则:)时,则:lPulsewidth(脉宽)(脉宽)=(OUTP_VAL/27648)*period(周期)(周期)5.2PLC在伺服控制的中应用在伺服控制的中应用l5.2.1高速计数器在伺服控制中的应
26、用高速计数器在伺服控制中的应用l数数字字式式位位置置伺伺服服里里经经常常采采用用旋旋转转编编码码器器作作为为检测元件,根据其脉冲计数值间接测得位置值。检测元件,根据其脉冲计数值间接测得位置值。l由由于于编编码码器器的的脉脉冲冲频频率率较较高高,不不能能通通过过PLC的的普普通通DI口口输输入入。为为此此一一些些PLC专专门门为为编编码码器器这这类类的的高高速速脉脉冲冲输输入入信信号号设设计计了了高高速速计计数数器器。如如S7-300C类类的的PLC的的CPU模模块块中中就就集集成成了了高高速速计计数器。数器。l使使用用集集成成计计数数器器功功能能可可方方便便地地完完成成对对增增量量型型编编码码
27、器器脉脉冲冲的的计计数数,从从而而实实现现伺伺服服系系统统中中的的角角度度和位移检测,借助软件也可实现速度的检测。和位移检测,借助软件也可实现速度的检测。l1.计数器的计数功能计数器的计数功能l计数模式:计数模式:连续计数、连续计数、一次计数、一次计数、周期性计数周期性计数l门功能:用于开始、停止和中断计数功能。门功能:用于开始、停止和中断计数功能。l锁存器功能:可使用此功能在数字输入出现正跳锁存器功能:可使用此功能在数字输入出现正跳沿时保存当前的内部计数值。沿时保存当前的内部计数值。l比较器:可在比较器:可在CPU中存储比较值。根据计数值和中存储比较值。根据计数值和比较值,可激活数字输出或生
28、成硬件中断。比较值,可激活数字输出或生成硬件中断。l滞后:可指定数字输出的滞后。这样,当计数值滞后:可指定数字输出的滞后。这样,当计数值在比较值范围内时,可防止因编码器信号的每次轻在比较值范围内时,可防止因编码器信号的每次轻微抖动而造成数字输出抖动。微抖动而造成数字输出抖动。l硬件中断硬件中断l周期测量:可以测量计数信号(最大计数频率为周期测量:可以测量计数信号(最大计数频率为1kHz)的周期。)的周期。l与计数功能相关的端子与计数功能相关的端子l地址对照:地址对照:l(1)硬件设置)硬件设置l1)工作模式:)工作模式:l连续计数:连续计数:lCPU从从0或装载值开始计数。或装载值开始计数。l
29、向上计数达到上限时,它将在出现下一正计向上计数达到上限时,它将在出现下一正计数脉冲时跳至下限处,并从此处恢复计数。数脉冲时跳至下限处,并从此处恢复计数。l向下计数达到下限时,它将在出现下一负计向下计数达到下限时,它将在出现下一负计数脉冲时跳至上限处,并从此处恢复计数。数脉冲时跳至上限处,并从此处恢复计数。l一次计数:一次计数:lCPU从装载值开始计数一次。从装载值开始计数一次。l计数限值处发生上溢或下溢时,计数器将跳计数限值处发生上溢或下溢时,计数器将跳至相反的计数限值,且门自动关闭。至相反的计数限值,且门自动关闭。l要重新启动计数,必须在门控制处生成一个要重新启动计数,必须在门控制处生成一个
30、正跳沿。正跳沿。l停止门控制时,将从当前计数开始重新计数。停止门控制时,将从当前计数开始重新计数。l取消门控制时,将从装载值开始重新计数。取消门控制时,将从装载值开始重新计数。l周期性计数:周期性计数:lCPU根据声明的缺省计数方向执行周期性计根据声明的缺省计数方向执行周期性计数。数。l无缺省计数方向时:无缺省计数方向时:lCPU从装载值开始计数。从装载值开始计数。lCPU向上或向下计数。向上或向下计数。l在相应的计数限值处上溢或下溢时,计数在相应的计数限值处上溢或下溢时,计数器将跳至装器将跳至装载值并从该值开始恢复计数。载值并从该值开始恢复计数。l计数限值设置为最大范围。计数限值设置为最大范
31、围。l缺省为向上计数:缺省为向上计数:lCPU从装载值开始计数。从装载值开始计数。lCPU向上或向下计数。向上或向下计数。l计数器沿正方向计数到结束值计数器沿正方向计数到结束值-1后,将在出现下一个后,将在出现下一个正计数脉冲时跳回至装载值,并从该值开始恢复计正计数脉冲时跳回至装载值,并从该值开始恢复计数。数。l缺省为向下计数:缺省为向下计数:CPU从装载值开始计数。从装载值开始计数。lCPU向上或向下计数。向上或向下计数。l计数器沿负方向计数到值计数器沿负方向计数到值1后,将在出现下一个后,将在出现下一个负计数脉冲时跳回至装载值(开始值),并该值负计数脉冲时跳回至装载值(开始值),并该值开始
32、恢复计数。开始恢复计数。l)计数选型卡设置)计数选型卡设置l计数选项参数说明:计数选项参数说明:l(2)通过用户程序控制计数器)通过用户程序控制计数器l要从用户程序中控制计数器,可用要从用户程序中控制计数器,可用SFBCOUNT(SFB47)。l可使用下列功能:可使用下列功能:l通过软件门通过软件门SW_GATE启动启动/停止计数器停止计数器l启用启用/控制输出控制输出DOl读出状态位读出状态位l读取当前计数值和锁存器值读取当前计数值和锁存器值l用于读用于读/写内部计数寄存器的作业写内部计数寄存器的作业l读出当前周期(不与块互连,但仅在背景数读出当前周期(不与块互连,但仅在背景数据块中可用)据
33、块中可用)lSFB47的输入参数:的输入参数:lLADDR:WORD型,在型,在“HWConfig”中指定中指定的子模块的子模块I/O地址。地址。lCHANNEL:INT型,通道号型,通道号lSW_GATE:BOOL型,型,软件门,用于控制计软件门,用于控制计数器的启动数器的启动/停止。停止。lCTRL_DO:BOOL型,启用输出。型,启用输出。lSET_DO:BOOL型,控制输出。型,控制输出。l除上述参数外,还有许多未与模块连接的一除上述参数外,还有许多未与模块连接的一些输入参数。些输入参数。lSTS_GATE:BOOL型,型,内部门状态。内部门状态。lSTS_STRT:BOOL型,型,硬
34、件门状态硬件门状态STS_LTCH:BOOL型,型,锁存器输入状态锁存器输入状态lSTS_DO:BOOL型,输出状态型,输出状态lSTS_C_DN:BOOL型,向下计数的状态。型,向下计数的状态。l始终指示最后的计数方向。在第一次调用始终指示最后的计数方向。在第一次调用SFB之之l后,后,STS_C_DN的值为的值为FALSE。lSTS_C_UP:BOOL型,向上计数的状态。型,向上计数的状态。l始终指示最后的计数方向。在第一次调用始终指示最后的计数方向。在第一次调用SFB之之l后,后,STS_C_UP的值为的值为TRUE。lCOUNTVAL:DINT型,型,当前计数值当前计数值lLATCHV
35、AL:DINT型,型,当前锁存器值当前锁存器值l可以使用作业接口来读可以使用作业接口来读/写计数寄存器写计数寄存器lJOB_REQ:BOOL型型,作业请求(正跳沿)。作业请求(正跳沿)。JOB_ID:WORD型,型,作业号(作业号(16进制)。进制)。00不带有功能的作业;不带有功能的作业;01写入计数值;写入计数值;02写装载值;写装载值;04写入比较值;写入比较值;08写入滞写入滞后;后;10写入脉冲持续时间;写入脉冲持续时间;82读装载;读装载;84读比较值;读比较值;88读取滞后;读取滞后;90读取读取脉冲持续时间脉冲持续时间 JOB_VAL:DINT型,型,写作业的值。写作业的值。l
36、JOB_DONE:BOOL型,可启动新作业。型,可启动新作业。JOB_ERR:BOOL型,错误作业。型,错误作业。JOB_STAT:WORD型,作业错误编号型,作业错误编号JOB_OVAL:DINT型,读取作业的输出值型,读取作业的输出值lJOB_DONE:BOOL型,可启动新作业型,可启动新作业lJOB_ERR:BOOL型,错误作业型,错误作业lJOB_STAT:WORD型,作业错误编号型,作业错误编号lJOB_OVAL:DINT型,读取作业的输出值型,读取作业的输出值lSFM47的调用的调用l2.位置伺服位置伺服l在位置伺服中,高速计数器可与增量型编码器在位置伺服中,高速计数器可与增量型编
37、码器配和使用,从而获得位置信息。配和使用,从而获得位置信息。l位置信息是相对某一起始位置的相对位移,位置信息是相对某一起始位置的相对位移,编码器试需要可安装在电机轴或传动轴上。依编编码器试需要可安装在电机轴或传动轴上。依编码器发出的脉冲数,通过计算可得到位置信息。码器发出的脉冲数,通过计算可得到位置信息。l下面示例是一个伺服电机下面示例是一个伺服电机丝杠系统位置计算丝杠系统位置计算程序。此例中,编码器安装在电机轴上。程序。此例中,编码器安装在电机轴上。l该程序是一个该程序是一个FC程序,包括两个输入参数,程序,包括两个输入参数,其中,其中,CNT_PV0是某一位置时是某一位置时SFB47的计数
38、值,的计数值,CNT_PV是是SFB47的当前计数值,这两个参数是的当前计数值,这两个参数是在其它程序块中通过在其它程序块中通过SFB47得到的。该得到的。该FC的输出的输出POSI_PV是当前位置值(是当前位置值(mm)。)。l此程序是通用计算程序,对于确定的系统也此程序是通用计算程序,对于确定的系统也可采用简单的方式获得:可采用简单的方式获得:l位移位移=脉冲当量数脉冲当量数*脉冲数脉冲数l脉冲当量数是事先计算好的每个脉冲代表的脉冲当量数是事先计算好的每个脉冲代表的实际位移量。实际位移量。l利用位置信息可以进行位置控制,通常利用位置信息可以进行位置控制,通常PLC进行位置控制时,是通过伺服
39、电机驱动器来控进行位置控制时,是通过伺服电机驱动器来控制电机的。位置控制时,控制器一般采用纯比制电机的。位置控制时,控制器一般采用纯比例控制器。例控制器。比例控制比例控制驱动器驱动器伺服电机伺服电机传动机构传动机构编码器编码器位置计算位置计算设定设定PLCl有时也可采用不使用比例控制器的简单闭环有时也可采用不使用比例控制器的简单闭环控制形式。此方式下进行位置控制时,一般是在控制形式。此方式下进行位置控制时,一般是在远离目标点时,令伺服电机高速运行,以便快速远离目标点时,令伺服电机高速运行,以便快速靠近目标。当到达目标附近时,为获得较为精确靠近目标。当到达目标附近时,为获得较为精确的位置控制,通
40、常要进行减速。然后,在到达目的位置控制,通常要进行减速。然后,在到达目标时,使电机停转。若系统惯性较大,还应注意标时,使电机停转。若系统惯性较大,还应注意停转预量的设置,即提前停转。停转预量的设置,即提前停转。l下面的示例是采用比较方式的部分程序。其中下面的示例是采用比较方式的部分程序。其中,#MA是到位信号,可用此信号控制电机停转。是到位信号,可用此信号控制电机停转。l3.速度伺服速度伺服l速速度度控控制制可可用用于于速速度度单单闭闭环环控控制制,也也可可作作为为位位置置控控制制时时的的内内环环使使用用。速速度度控控制制器器一一般般采采用用PI控控制器。制器。驱驱动动器器伺伺服服电电机机传传
41、动动机机构构编码器编码器位置计算位置计算设定设定PLCP控控制制器器PI控控制制器器速度计速度计算算l利用编码器脉冲信号计算速度时,可采用一利用编码器脉冲信号计算速度时,可采用一定时间段的脉冲计数值来计算速度。例如:在定时间段的脉冲计数值来计算速度。例如:在100ms内高速计数器的脉冲计数值为内高速计数器的脉冲计数值为N,若编,若编码器每转的脉冲数为码器每转的脉冲数为K,则转速为:,则转速为:ln=N1060/Kl对于采用伺服驱动器的系统,一般驱动器的对于采用伺服驱动器的系统,一般驱动器的速度控制信号是电压或电流信号,可由速度控制信号是电压或电流信号,可由PLC的的D/A通道控制。通道控制。l
42、下面示例给出了速度控制的部分程序。下面示例给出了速度控制的部分程序。l5.2.2S7-300PLC的定位控制功能的定位控制功能l某某些些型型号号的的CPU模模块块内内集集成成了了定定位位功功能能,如如CPU314C-2DP/PtP集集成成了了一一个个轴轴的的定定位位功功能能,可采用模拟输出或数字输出来进行定位控制。可采用模拟输出或数字输出来进行定位控制。l使使用用模模拟拟输输出出时时,固固定定使使用用集集成成的的模模拟拟量量输输出出0通通道道作作为为输输出出通通道道。(单单极极性性电电源源时时需需使使用用集成的集成的Q0.7点控制方向)点控制方向)l使使用用数数字字量量输输出出时时,固固定定使
43、使用用集集成成的的数数字字量量输输出出点点、和和作作为为输输出出点点,视视组组态态的的控控制制模模块块来控制快速来控制快速/慢速、正转慢速、正转/反转。反转。l使用使用24位增量编码器作为位置反馈。位增量编码器作为位置反馈。l端子分配端子分配X1l端子分配端子分配X2l1.使用模拟量输出进行定位使用模拟量输出进行定位l(1)硬件组态)硬件组态l基本参数的组态方法与与前面计数器中基本基本参数的组态方法与与前面计数器中基本参数的组态类似。然后是与定位控制相关的选参数的组态类似。然后是与定位控制相关的选项卡的组态,包括驱动器参数组态、轴参数组项卡的组态,包括驱动器参数组态、轴参数组态和编码器参数组态
44、。此外还有诊断参数组态。态和编码器参数组态。此外还有诊断参数组态。l驱动器参数组态驱动器参数组态l轴参数组态轴参数组态 l编码器组态编码器组态l(2)系统功能)系统功能块块SFB44l为便于在程序为便于在程序中使用和控制中使用和控制定位功能,系定位功能,系统提供了一个统提供了一个系统功能块系统功能块SFB44,具有,具有点动、参考点点动、参考点逼近、相对增逼近、相对增量逼近及绝对量逼近及绝对增量逼近增量逼近等控等控制模式。制模式。l输入参数输入参数l其它输入参数与具体运行模式有关。其它输入参数与具体运行模式有关。l输输出出参参数数l1)点动模式()点动模式(MODE_IN=1)l通过置位控制位
45、通过置位控制位DIR_P或或DIR_M启动驱动启动驱动器。器。l每次调用每次调用SFB时,都会对时,都会对DIR_P和和DIR_M这两个控制位进行评估以便检查逻辑级的更改。这两个控制位进行评估以便检查逻辑级的更改。l如果这两个控制位均为如果这两个控制位均为FALSE,则运行将减,则运行将减速。速。l如果这两个控制位均为如果这两个控制位均为TRUE,则运行也将,则运行也将减速。减速。l当其中一个控制位置位为当其中一个控制位置位为TRUE时,轴将在时,轴将在相应方向上移动。相应方向上移动。l2)参考点逼近模式()参考点逼近模式(MODE_IN=3)l需要参考点开关以确保参考信号始终具有相需要参考点
46、开关以确保参考信号始终具有相同的参考点(零标记),以及用于更改为参考同的参考点(零标记),以及用于更改为参考点逼近速度,动作如图所示。点逼近速度,动作如图所示。参考点l3)相对增量逼近模式()相对增量逼近模式(MODE_IN=4)l在在“相对增量逼近相对增量逼近”模式下,驱动器将自上一个模式下,驱动器将自上一个目标目标(LAST_TRG)开始,在指定方向上移动一段相对开始,在指定方向上移动一段相对距离(距离(TARGET指定的以脉冲数表示的距离)。指定的以脉冲数表示的距离)。l起始点不是实际位置,而是上一个指定目标起始点不是实际位置,而是上一个指定目标(LAST_TRG)。因此,定位精度不会累
47、加。启动定位。因此,定位精度不会累加。启动定位后,由参数后,由参数LAST_TRG来指示实际目标。来指示实际目标。l4)绝对增量逼近模式()绝对增量逼近模式(MODE_IN=)l在在“绝对增量逼近绝对增量逼近”模式下,驱动器将在指定方模式下,驱动器将在指定方向上移动到向上移动到TARGET指定的以脉冲数表示的绝对位指定的以脉冲数表示的绝对位置)。置)。l模拟输出定位过程模拟输出定位过程l2.使用数字量输出进行定位使用数字量输出进行定位l使使用用数数字字量量输输出出进进行行定定位位式式也也需需先先进进性性硬硬件件设设置置,其其方方法法与与使使用用模模拟拟量量输输出出进进行行定定位位时时类类似,与
48、其对应的系统功能块是似,与其对应的系统功能块是SFB46。l有有四四种种工工作作模模式式可可在在组组态态时时选选择择,各各模模式式下下四个数字量输出点的用途有所不同。四个数字量输出点的用途有所不同。l控制电路示例控制电路示例5.3S7-300PLC的计数和定位模块的计数和定位模块l这这些些模模块块属属于于S7-300系系列列PLC的的功功能能模模块块(FM),通通过过相相应应的的设设置置软软件件设设置置后后,可可独独立立完完成各自的功能。成各自的功能。l计数模块计数模块l计计数数模模块块主主要要是是为为编编码码器器配配置置的的计计数数模模块块,包包括括FM350-1和和FM350-2。lFM3
49、50-1为为单单通通道道计计数数器器模模块块,可可检检测测最最高高500kHz的的脉脉冲冲,有有连连续续计计数数、单单向向计计数数和和循循环环计数计数3种工作模式。种工作模式。lFM350-2为为8通通道道计计数数器器模模块块,计计数数最最高高频频率率为为10kHz,有,有7种工作模式。种工作模式。l定位模块定位模块l定定位位模模块块 包包括括FM351、FM353、FM354和和FM357。lFM351是是双双通通道道定定位位模模块块,可可以以控控制制两两个个相相互互独独立立的的轴轴的的定定位位,采采用用开开关关量量输输出出控控制制,具具有有点点动动模模式式、绝绝对对增增量量定定位位模模式式、相相对对增增量量定定位位模模式及参考点定位模式,并使用编码器测量位置。式及参考点定位模式,并使用编码器测量位置。lFM353为为步步进进电电机机定定位位模模块块,FM354为为伺伺服服电电机机定定位位模模块块,FM357可可用用于于最最多多4个个差差补补轴轴的的协同定位,可用于伺服电机和步进电机。协同定位,可用于伺服电机和步进电机。l上上述述各各模模块块需需与与相相应应的的驱驱动动器器配配合合来来控控制制各各类伺服电机或步进电机。类伺服电机或步进电机。