S7-1200系列PLC通过PROFINET与V90 PN伺服驱动器搭配进行位置控制,实现的方法主要有以下三种:
• 方法一、在PLC中组态位置轴工艺对象,V90使用标准报文3,通过MC_Power、MC_MoveAbsolute等PLC Open标准程序块进行控制, 这种控制方式属于中央控制方式(位置控制在PLC中计算,驱动执行速度控制)。
• 方法二、在PLC中使用FB284(SINA_POS)功能块,V90使用西门子111报文,实现相对定位、绝对定位等位置控制,这种控制方式属于分布控制方式(位置控制在驱动器中计算)。
• 方法三、在PLC中使用FB38002(Easy_SINA_Pos)功能块,V90使用西门子111报文,此功能块是FB284功能块的简化版,功能比FB284少一些,但是使用更加简便。
V90 PN配置要点
• 对于方法一:设置控制模式为"速度控制(S)",配置通信报文为标准报文3。
• 对于方法二或三:设置控制模式为"基本定位器控制(EPOS)",配置通信报文为西门子报文111。
• V90在线后点击"设置PROFINET->配置网络",设置V90的IP地址及设备名称:注意:设置的设备名称一定要与1200项目中配置的相同。
注意:如果出现一些故障无法解决——参数保存后需重启驱动器才能生效。
方法一:使用标准报文3和工艺对象
首先在V-ASSISTANT中设置:设置控制模式为"速度控制(S)",配置通信报文为标准报文3。
1、添加新设备S7-1200,添加V90 PN(GSD)
2、建立V90PN 与1200PLC的网络连接,并分别设置S7-1200和V90 PN的IP地址和设备名称
3、设备视图中添加标准报文3——双击V90设备
4、插入一个位置轴
在OB1中使用MC_Power、MC_MoveAbsolute等PLC Open标准程序块编写轴的位置控制程序,PLC Open指令位于工艺指令目录下的运动控制文件夹中。
故障:A1932
解决方法:V90 PN出厂时默认设置的通信报文是105,它用于等时同步IRT应用。如果PLC组态V90时选择了其他报文,如3号报文,驱动器就会出现A1932报警。请在PLC和V90中使用相同的通信报文。配置正确后报警自动消失。
故障:MC_Power的Error为16#800E,ErrorID为16#0043
错误说明:硬限位开关极性反转,轴无法释放。此时要在博图的轴组态中将硬限位的输入点对换,或者在PLC中将此两个输入点的线对换。然后重启PLC和伺服驱动器。
注意:通过MC_Reset是无法复位此故障的,直接重启PLC和伺服驱动器。
故障:MC_Power的Error为16#8003或者16#8004,ErrorID为16#000E
当启动回原点时,走到硬限位开关就停下时,然后报此故障。
处理方法:在轴组态中——勾选——允许硬限位开关处自动反转
方法二:使用西门子报文111和FB284(SINA POS)
第1步:在V-ASSISTANT中将V90 PN设置控制模式为"基本位置控制(EPOS)"
第2步:V90 PN与PLC采用PROFINET RT通信方式并使用西门子报文111。
第3步:在博图中V90 PN的设备视图中更改报文为:报文111
第4步:安装博图功能库文件
此种方法需要调用驱动功能库文件,可以通过以下两种方法进行安装:
方法⑴:安装Startdrive软件,在TIA 博途软件中就会自动安装驱动库文件
Startdrive软件V14.1:
https://support.industry.siemens.com/cs/us/en/view/68034568
SINAMICS Startdrive V15:
https://support.industry.siemens.com/cs/us/en/view/109754382
SINAMICS Startdrive V15.1:
https://support.industry.siemens.com/cs/us/en/view/109760845
方法⑵:在TIA 博途中安装SINAMICS Blocks DriveLib
https://support.industry.siemens.com/cs/ww/en/view/109475044
第5步:在OB1中将DriveLib_S7_1200_1500中的SINA_POS(FB284)功能块拖拽到编程网络中(此功能块只能与报文111配合使用),进行位置控制。
第6步:在FB284中——功能块参数——HWIDSTW及HWIDZSW的赋值(下图中的硬件标识符)
第7步:其他相关参数块——说明
实际简单测试:EnableAxis是使能伺服,ExecuteMode这个要激活了才会动。
SINA_POS功能块的运行模式
一、运行条件
1、轴通过输入 EnableAxis= 1 使能,如果轴已准备好并驱动无故障(AxisError=0),输出 AxisEnabled 信号变为 1。
2、ModePos 输入用于运行模式的选择。可在不同的运行模式下进行切换,如: 连续运行模式(ModePos=3) 在运行中可以切换到绝对定位模式(ModePos=2)。
3、输入信号 CancelTraversing,IntermediateStop 对于除了点动之外的所有运行模式均有效,在运行时必须将其设置为 1,设置说明如下:
⑴设置 CancelTraversing=0,轴按最大减速度(P2573)停止,放弃当前运行任务,轴停止后可以进行运行模式的切换。
⑵设置 IntermediateStop=0,使用当前设置的减速度值进行斜坡停车,当前运行任务保持,如果重新再设置IntermediateStop=1 后轴会继续运行,可理解为轴的暂停。可以在轴静止后可以进行运行模式的切换。
4、激活硬件限位开关
⑴如果使用了硬件限位开关,需要将 FB284 功能块的输入 ConfigEPos.%X3 置1,激活硬件限位功能。
⑵正、负向的硬件限位开关可连接到 V90 PN 驱动器的定义为 CWL、CCWL的 DI点( DI1 至 DI4 )。
如果激活了硬件限位开关功能,只有在硬件限位开关信号为高电平时才能运行轴。
5、激活软件限位开关
⑶如果使用了软件限位开关,需要将 FB284 功能块的输入 ConfigEPos.%X2 置 1激活软件限位功能。
⑷在驱动中设置 p2580(负向软限位位置)、p2581(正向软限位位置)。
二、主动回零
此功能允许轴按照预设的回零速度及方式沿着正向或反向进行回零操作,激活驱动的主动回零。
要求:
——运行模式选择 ModePos=4
——轴使能 EnableAxis=1
——回零开关须连接到 PLC 的输入点,其信号状态通过 FB284 功能块的ConfigEPos.%X6 发送到驱动器中。
步骤:
——通过输入参数 OverV、OverAcc、OverDec 指定速度、加减速度的百分比
——运行条件 CancelTraversing 及IntermediateStop 必须设置为 1,Jog1 及Jog2 必须设置为 0
——运行方向由 Positive 及 Negative 决定
通过 ExecuteMode 的上升沿触发回零运动,在回零过程中应保持为高电平。激活命令的当前状态或通过 EPosZSW1、EPosZSW2 进行监控,回零完成后AxisRef 置1,当运行过程中出现错误,则输出参数 Error 置 1。
三、相对定位运行模式
相对定位运行模式可通过驱动相对定位功能来实现,它采用 SINAMICS 驱动的内部位置控制器来实现相对位置控制。
要求:
——运行模式选择 ModePos=1
——轴使能 EnableAxis=1
——轴不必回零或绝对值编码器可以处于未被校正的状态
——如果切换模式大于 3,轴必须为静止状态,在任意时刻可以在 ModePos=1,2,3 时进行切换
步骤:
——通过输入参数 Position,Velocity 指定目标位置及速度
——通过输入参数 OverV、OverAcc、OverDec 指定速度、加减速度的百分比
——运行条件 CancelTraversing 及 IntermediateStop 必须设置为 1,Jogl 及Jog2 必须设置为 0
——在相对定位中,运动方向由 Position 中设置值的正负来确定
通过 ExecuteMode 的上升沿触发定位运动,激活命令的当前状态或通过 EPosZSW1、EPosZSW2 进行监控,当目标位置到达后AxisPosok 置 1 ,当定位过程中出现错误,则输出参数 Error 置 1。
注意:当前正在运行的命令可以通过 ExecuteMode 上升沿进行新命令的替换,但仅用于运行模式 ModePos 1,2,3。
四、绝对定位运行模式
绝对定位运行模式可通过驱动绝对定位功能来实现,它采用 SINAMICS 驱动的内部位置控制器来实现绝对位置控制。
要求:
——运行模式选择 ModePos=2
——轴使能 EnableAxis =1
——轴必须已回零或编码器已被校正
——如果切换模式大于 3,轴必须为静止状态,在任意时刻可以在 ModePos=1,2,3 时进行切换
步骤:
——通过输入参数 Position, Velocity,指定目标位置及速度
——通过输入参数 OverV、OverAcc、OverDec 指定速度、加减速度的百分比
——运行条件 CancelTraversing 及 IntermediateStop 必须设置为 1,Jog1 及Jog2 必须设置为 0
——在绝对定位中,运行方向按照最短路径运行至目标位置,此时输入参数Positive 及 Negative 必须为 0。如果是模态轴,则方向可以通过 Positive或者 Negative 指定
通过 ExecuteMode 的上升沿触发定位运动,激活命令的当前状态可以通过 EPOsZSW1、EPosZSW2 进行监控,当目标位置到达后 AxisPosok 置 1 ,当定位过程中出现错误,则输出参数 Error 置1。
注意:当前正在运行的命令可以通过 ExecuteMode 上升沿进行新命令替换,但仅用于运行模式 ModePos 1,2,3。
五、连续运行模式(按指定速度运行)
连续运行模式允许轴在正向或反向以一个恒定的速度运行
要求:
——运行模式选择 ModePos=3
——轴使能 EnableAxis=l
——轴不必回零或绝对值编码器可以处于未被校正的状态
——如果切换模式大于 3,轴必须为静止状态,在任意时刻可以在 ModePos=1,2,3 时进行切换
步骤:
——通过输入参数 Velocity 指定运行速度
——通过输入参数 OverV、OverAcc、OverDec 指定速度、加减速度的百分比
——运行条件 CancelTraversing 及 IntermediateStop 必须设置为 1,Jog1 及Jog2 必须设置为0
——运行方向由 Positive 及 Negative 决定
通过 ExecuteMode 的上升沿触发定位运动,激活命令的当前状态或通过 EPosZSW1、EPosZSW2 进行监控,通过放弃任务而轴停止后 AxisPos0k 置 1 ,当运行过程中出现错误,则输出参数 Error 置 1。
注意:当前正在运行的命令可以通过 ExecuteMode 上升沿进行新命令替换,但仅用于运行模式 ModePos 1,2,3。
六、运行程序段
此程序块运行模式允许创建自动运行的运动任务、运行至固定档块(夹紧)、设置及复位输出等功能。
要求:
——运行模式选择 ModePos=6
——轴使能 EnableAxis=1
——轴当前处于静止状态
——轴必须已回零或绝对值编码器已校正
步骤:
——工作模式、目标位置及动态响应已在驱动的运行程序段参数中进行设置,速度的OverV 参数对于程序块中的速度设定值进行百分比缩放
——运行条件 CancelTraversing 及 IntermediateStop 必须设置为 1,Jog1 及Jog2 必须设置为 0
——程序块号在输入参数 Position 中设置,取值应为 0~15
——运动的方向由与工作模式及程序段中的设置决定,与 Positive 及 Negative 参数无关,必须将它们设置为 0
选择程序段号后通过 ExecuteMode 的上升沿来触发运行,激活命令的当前状态或通过 EPosZSW1、EPosZSW2 进行监控,当运行过程中出现错误,则输出参数 Error 置 1。
注意:在运行过程中,当前的运行命令可以被一个新命令通过ExecuteMode触发进行替代,但仅限于相同的运行模式下。
七、直接设置回零位置
此运行模式允许轴在任意位置时对轴进行零点位置设置。
要求:
——运行模式选择 ModePos=5
——轴可以处于使能状态,但执行模式时须为静止状态
步骤:
——轴静止时通过 ExecuteMode 的上升沿设置轴的零点位置
注意:零点位置可使用驱动参数 P2599 进行设置。
八、按指定速度点动
点动运行模式通过驱动的 Jog 点动功能来实现
要求:
——运行模式选择 ModePos=7
——轴使能 EnableAxis=l
——轴处于静止状态
——轴不必回零或绝对值编码器可以处于未被校正的状态
步骤:
——点动速度在驱动器中设置,速度的 OverV 参数对于点动速度设定值进行百分比缩放
——运行条件 CancelTraversing 及 IntermediateStop 与点动运行模式无关,默认设置为 1
注意:
——Jog1 及 Jog2 用于控制 EPOS 的点动运行,运动方向由驱动中设置的点动速度来决定,默认设置为 Jogl=负向点动速度,Jog2=正向点动速度 ,与Positive 及 Negative 参数无关
——激活命令的当前状态可以通过 EPosZSW1、EPOsZSW2 进行监控,点动结束(Jogl 或Jog2=0) 轴静止时 AxisPosOK 置 1 ,当运行过程中出现错误,则输出参数 Error 置 1
九、按指定距离点动
点动增量运行模式通过驱动的 Jog 点动功能来实现。
要求:
——运行模式选择 ModePos=8
——轴使能 AxisEnable=1
——轴处于静止状态
——轴不必回零或绝对值编码器可以处于未被校正的状态
步骤:
——点动速度在驱动中设置,速度的 OverV 参数对于点动速度设定值进行百分比缩放
——运行条件 CancelTraversing 及 IntermediateStop 与点动运行模式无关,默认设置为 1
注意:
——Jog1 及 Jog2 用于控制轴按指定的距离点动运行,运动方向由驱动中设置的点动速度来决定,点动距离增量值默认设置为Jogl traversingdistance/Jog2 traversing distance =1000LU, Positive 及Negative 参数无关
——激活命令的当前状态可以通过 EPosZSW1、EPosZSW2 进行监控,点动结束(Jog1或Jog2=0) 轴静止时 AxisPosOK 置1 ,当运行过程中出现错误,则输出参数 Error 置 1
十、基于ModePos值的运行模式切换说明
方法三: 使用西门子报文111和FB38002 (Easy_SINA_Pos)
第1步:在V-ASSISTANT中将V90 PN设置控制模式为"基本位置控制(EPOS)"。——同方法二
第2步:V90 PN与PLC采用PROFINET RT通信方式并使用西门子报文111。——同方法二
第3步:在博图中V90 PN的设备视图中更改报文为:报文111。——同方法二
第4步:导入库文件——选择解压出来的库文件
并将库中的Easy_SINA_Pos功能块拖拽到左侧"程序块"中
FB38002(Easy_SINA_Pos)是FB284(SINA_POS)的简化版,功能比FB284少一些,但是使用更加简便。
第5步:硬件标识符
注意:对功能块参数HWI DSTW及HWI DSZW的赋值可以通过点击参数,在下拉菜单中选择对应的西门子报文111选项。
也可以参看下图,在设备视图的报文属性中查询硬件标识符的数值。
FB38002功能块输入输出参数说明