S7-200 SMART PLC读取V90绝对值编码器数值

1.概况

SINAMICS V90是西门子推出的一款小型、高效便捷的伺服系统。它作为 SINAMICS 驱动系列家族的新成员,与SIMOTICS S-1FL6 伺服电机完美结合,组成最佳的伺服驱动系统,实现位置控制、速度控制和扭矩控制。目前1FL6电机有两种编码器类型,即增量编码器类型及绝对值编码器类型。
西门子的小型自动化S7-200 SMART PLC可以控制V90驱动器,本文介绍如何实现SMART PLC读取1FL6伺服电机的绝对值编码器数值。
关于如何实现SMART PLC控制V90实现定位控制请参见《SIMATIC S7-200 SMART 系统手册》及《S7-200 SMART连接SINAMICS V90 实现位置控制》。

2.使用的硬件及软件

硬件

序号

设备名称

订货号

1

PS207电源 24 V DC/2.5 A

6EP1 332-1LA00

2

SIMATIC S7-200 SMART CPU ST60

6ES7288-1ST60-0AA0

3

V90驱动器

6SL3210-5FE10-4UA0

4

伺服电机

1FL6042-1AF61-0LG1

5

V90 动力电缆 (含接头)

6FX3002-5CL01-1AD0

6

伺服电机编码器电缆
(含接头,用于绝对值编码器)

6FX3002-2DB10-1AD0

7

V90 控制信号电缆(含 50 针接头及 1m 电缆线)

6SL3260-4NA00-1VB0

8

SIMATIC Field PG M3

6ES7715-1BB23-0AA1

9

Mini USB电缆

 

软件

序号

说  明

1

Window 7 旗舰版 32位

2

STEP 7-Micro/WIN SMART 编程软件

3

SINAMICS_V-ASSISTANT

3.实现方法

 3.1概述

如图1,使用PG通过标准mini USB电缆与V90连接,打开SINAMICS V—ASSITANT软件设置驱动器的参数。

图1 PG与V90连接
如图2所示,PLC通过V90上的RS485通讯读取编码器调整状态并且通过V90的数字量输出检查V90的驱动器状态,判断绝对位置是否有效。如果V90的DO1=1,DO2=0和DO3=1且r2507=3,这意味着PLC可以有效地读取编码器的绝对位置,此时可以通过RS485 USS通讯读取绝对位置(r2521[0]),否则r2521是无效的。PLC可以通过数字量输出报警或面板来提示用户当前r2521无效。读取r2521值后,PLC可以通过PTI方式输出脉冲给驱动器执行相应的运动控制。     

图2 PLC与V90系统连接图

3.2实现步骤

根据SIMATIC S7-200 SMART CPU ST60的运动控制功能信号分配和V90端子定义进行接线(详见《SINAMICS V90 OPI操作手册》);使用SINAMICS_V-ASSISTANT对SINAMICS V90进行参数设置以及对电机的绝对值编码器进行调试;使用STEP 7-Micro/WIN SMART编程软件对CPU ST60进行组态和参数化,操作步骤如表1所示。
表1.操作步骤

步骤

内容

1

接线

2

进行外部脉冲位置控制模式(PTI)下的系统调试

3

STEP 7-Micro/WIN SMART连接S7-200 SMART

4

组态运动轴

5

组态轴工艺对象的参数

6

下载到PLC

7

用轴控制面板调试轴

8

编程

9

下载到PLC

10

试运行

3.3接线

S7-200 SMART与V90的485通讯连接:
SINAMICS V90 伺服驱动通过 RS485 接口(X12)使用 USS 协议与 PLC RS485(端口 0) 进行通讯,接线如图3所示。

图3  S7-200 SMART CPU 与V90通讯线连接

S7-200 SMART通过PTI方式控制V90定位的控制信号接线如图4所示:

图4  S7-200 SMART CPU 与V90控制信号连接

3.4 伺服驱动器的参数

3.4.1 位置控制相关的参数
按照表2所示对伺服驱动器的位置控制相关的参数进行设置
表2.V90 位置控制参数


参数

说明

设置

P29003

控制模式设定为PTI

P29003 = 0

P29250

使能PTI 绝对位置模式

P29250 = 1

P29010~P29014

PTI控制模式下的相关参数

根据实际条件设置

P29012 P29013
P29247~P29249

位置控制相关的参数
P29012 P29013是电子齿轮比

根据实际条件设置

3.4.2 USS通讯相关的参数
按照表3所示对伺服驱动器的USS通讯相关的参数进行设置
表3. V90 USS通讯参数


参数

说明

设置

USS波特率

USS 波特率8(38400bits/s)

缺省值

P29004

USS 地址

0-31

PKW/PZD

USS PZD/PKW 长度为0/4

缺省值

注意:
PLC的 RS485接口的波特率和驱动器USS地址要求与V90一致, 因此, 需要对V90里的参数P29004设置一致的USS地址。并且V90 USS RS485端口的波特率设置为38400bits/s,报文长度为4个PKW和0个PZD的USS协议。

3.5 PLC组态及编程

在PLC的编程软件中组态运动轴,详细步骤参见《SIMATIC S7-200 SMART系统手册》,注意在组态轴工艺对象的参数中需启用从驱动器里读取1FL6伺服电机绝对值编码器的位置,如图5所示。

图5  启用从驱动器里读取1FL6伺服电机绝对值编码器的位置
在PLC中编程如表4所示:

表4. PLC编程

启用和初始化运动轴:执行AXISx_CTRL 。

使用手动模式运行轴运动:执行AXISx_MAN,输入RUN、JOG_P 或 JOG_N之一,使轴速度或位置点动运行。

 

通过 SINAMICS V90 伺服驱动器读取绝对位置值:
–执行AXIS0_ABSPOS
–把伺服驱动器返回的当前绝对位置放到VD326里

总结:

ABSPOS指令用途:

AXISx_ABSPOS 指令用于读取SINAMICS V90 伺服驱动器绝对值编码器数值。读取绝对位置值的目的是为了更新运动轴中的当前位置值。
SINAMICS V90 伺服驱动器与安装了绝对值编码器的 SIMOTICS-1FL6 伺服电机结合使用时,支持此功能。

ABSPOS指令D_POS:

AXISx_ABSPOS 指令的D_Pos 输出,指示SINAMICS V90 伺服驱动器绝对值编码器数值,该数值只在AXISx_ABSPOS 指令的完成位=1时有效,
为了保证D_Pos读数的稳定值,需要采用完成位的上升沿转移该数值。该数值显示方式因为运动控制组态向导不同而显示不同。如下所示:

(1)、测量系统选择:工程单位

如果测量系统选择为“工程单位”,则AXISx_ABSPOS.D_Pos的计算公式如下:

AXISx_ABSPOS.D_Pos  ,数据类型为real 。
其中:r2521显示V90 的编码器实际位置值,r2521正确显示必须先将V90驱动器ABS。
 注:上边公式的假设条件为P29247 = 2^20=1048576, P29248 = 1, P29249 = 1

(2)、测量系统选择:相对脉冲
如果测量系统选择为“相对脉冲”,则AXISx_ABSPOS.D_Pos的计算公式如下:
AXISx_ABSPOS.D_Pos  ,数据类型为DINT。

SINAMICS V90手册链接:V90手册