本文主要介绍了如何使用CPU 1217C通过PROFINET 连接SINAMICS V90伺服系统实现位置闭环控制。其中对S7-1200 V4.0、V4.1固件版本的运动控制功能、工艺对象的组态和V90 PN的相关参数设置作了简要介绍。
S7-1200 CPU固件版本从V3.0开始已经支持最多4路PTO输出,以CPU1214C(6ES7214-1AG31-0XB0)为例,其CPU本体支持4路PTO输出,其中PTO 1、PTO 2的频率范围为 2 Hz ≤ f ≤ 100 kHz,PTO 3 、PTO 4的频率范围为2 Hz ≤ f ≤ 20 kHz。
S7-1200 CPU V4.0固件版本虽然也只支持4路PTO输出,但是PTO的信号类型可以进行选择,支持的信号类型见表2-1 PTO 信号类型所示。
信号类型 |
脉冲发生器输出数目 |
脉冲 A 和 方向 B(禁用方向输出) |
1 |
脉冲 A 和 方向 B |
2 |
加计数 A 和减计数 B |
2 |
A/B 相移 |
2 |
A/B 相移 - 四倍频 |
2 |
表2-1 PTO信号类型
V4.0固件版本的CPU高速脉冲信号发生器输出地址可以自由分配给PTO,输出地址分配与输出频率范围见表2-2 脉冲信号发生器地址分配所示。
CPU本体 |
Q0.0 |
Q0.1 |
Q0.2 |
Q0.3 |
Q0.4 |
Q0.5 |
Q0.6 |
Q0.7 |
Q1.0 |
Q1.1 |
CPU1211C (DC/DC/DC) |
100KHz |
100KHz |
100KHz |
100KHz |
— |
— |
— |
— |
— |
— |
CPU1212C (DC/DC/DC) |
100KHz |
100KHz |
100KHz |
100KHz |
30KHz |
30KHz |
— |
— |
— |
— |
CPU1214C (DC/DC/DC) |
100KHz |
100KHz |
100KHz |
100KHz |
30KHz |
30KHz |
30KHz |
30KHz |
30KHz |
30KHz |
CPU1215C (DC/DC/DC) |
100KHz |
100KHz |
100KHz |
100KHz |
30KHz |
30KHz |
30KHz |
30KHz |
30KHz |
30KHz |
CPU1217C (DC/DC/DC) |
1MHz |
1MHz |
1MHz |
1MHz |
100KHz |
100KHz |
100KHz |
100KHz |
100KHz |
100KHz |
表2-2 脉冲信号发生器地址分配
以CPU1214C CPU本体输出地址(6ES7214-1AG40-0XB0)为例,示例几种可能的PTO信号类型组合方式,见表2-3 脉冲方向组态所示:
l 示例1:4-100KHz PTO,不带方向输出。
l 示例2:2-100KHz PTO 和 2-30KHz PTO,脉冲A+方向B输出。
l 示例3:4-100KHz PTO,脉冲A+方向B输出,其中脉冲A 100KHz,方向B 30KHz。
表2-3 脉冲方向组态
S7-1200 CPU V4.1固件版本不仅支持通过PTO输出方式对伺服电机进行开环控制,而且支持通过PROFIdrive或者模拟量输出(AQ)方式对伺服电机进行闭环控制,见表2-4驱动器连接方式所示。本文中例子就是使用PROFIdrive方式对SINAMICS V90 PN进行闭环控制。
驱动器连接 |
轴的闭环/开环控制 |
编码器连接 |
PTO |
速度控制、开环 |
- |
模拟量输出 |
位置控制、闭环 |
• 高速计数器 (HSC) 上的编码器 • 工艺模块 (TM) 上的编码器 • PROFIdrive 编码器(位于PROFINET) |
PROFIdrive |
位置控制、闭环 |
• 驱动器上的编码器 • 高速计数器 (HSC) 上的编码器 • 工艺模块 (TM) 上的编码器 • PROFIdrive 编码器(位于 PROFINET) |
表2-4 驱动器连接方式
SINAMICS V90 是西门子推出的一款小型、高效便捷的伺服系统。SINAMICS V90 驱动器与 SIMOTICS S-1FL6 电机组成的伺服系统是面向标准通用伺服市场的驱动产品,覆盖0.05kW~7kw 功率范围。
2016 年 7 月底,推出了带PROFINET 接口的 V90 驱动器,配合SIEMENS PLC, 能够组成一套完善的、经济的、可靠的运动控制解决方案。SINAMICS V90 PROFINET (PN) 版本有 2个RJ45 接口用于与 PLC 的 PROFINET 通信连接,支持 PROFIdrive 运动控制协议。它也可以集成到博途中与 S7-1200,S7-1500 连接。
当前版本V90 PN (V10000)重要信息及限制:
(1) 不支持驱动中的 IPos 控制方式,不支持 SIMATIC 控制器的 SINA_POS 功能块,只支持SINA_SPEED 功能块。
(2) SINAMICS V90 PN 支持 SIMATIC PLC 的工艺对象(TO),可通过 TO 实现位置及速度的控制,如 S7-1500 T-CPU, S7-1500 及 S7-1200。
(3) 机器的动态响应与负载及电机的转动惯量比有关,建议不要大于 5:1。对于低速运行、高精度或高动态响应的应用,不建议选择 TTL 编码器的电机。
(4) SINAMICS V90 PN 版本独立于当前的 SINAMCIS V90 脉冲串的控制器,它不支持 PTI、脉冲加方向、模拟量和USS/Modbus RTU 通信等控制方式。
(5) SINAMICS V90 PN 只支持 PROFINET 通信,支持西门子标准报文 1,2,3,5,102,105,支持 DSC控制。
注:本例中 SINAMICS V90 PN 需要选择标准报文3。
PROFINET IO 是一种基于以太网的实时协议。在工业自动化应用中作为高级网络使用。一个完整的POFINET IO 网络包括以下设备:
l IO 控制器:典型的是 PLC,用于控制整个系统
l IO 设备:一个分散式 IO 设备(例如,编码器,传感器),通过 IO 控制器控制
l IO 检测器:HMI(人机接口)或个人计算机,用于诊断或调试
PROFINET 提供两种实时通信,PROFINET IO RT(实时)和 PROFINET IO IRT(等时实时)。实时通道用于 IO 数据和报警的传输。在 PROFINET IO RT 通道中,实时数据通过优先以太网帧进行传输。没有特殊的硬件要求。
SINAMICS V90 PN基于PROFINET IO RT(实时),其循环周期可达到 4 ms。基于PROFINET IO IRT 通道可用于传输具有更加精确时间要求的数据。其循环周期可达 2 ms,但需要具有特殊硬件的 IO 设备和开关的支持。
所有的诊断和配置数据通过非实时(NRT)通道进行传输。使用 TCP/IP 协议。因而,没有可确定的循环周期,其循环周期可能超过 100 ms。
SIMATIC S7-1200 目前仅支持PROFINET IO RT 通讯,所以后面章节所讲的与 SINAMICS V90 PN 连接做位置控制是通过PROFINET IO RT 通讯来实现的。
图 3-1提供了自动化任务的概述。S7-1200 CPU 通过PROFINET 网络控制V90 PN 伺服驱动器。
图3-1 自动化任务概述
本文例子基于以下使用环境创建。
组件 |
数量 |
订货号 |
注解 |
SIMATIC S7-1200 CPU |
1 |
6ES7 217-1AG40-0XB0 |
V4.1.3 |
SINAMICS V90 PN 200V |
1 |
6SL3210-5FB10-1UF0 |
100W |
SIMOTICS S-1FL6 motor |
1 |
1FL6024-2AF21-1AA1 |
100W |
组件 |
数量 |
注解 |
TIA Portal |
1 |
V13 SP1 |
SINAMICS V-ASSISTANT |
1 |
V1.04.00 |
选择报文列表如图3-2。本例中选择标准报文 3。
图 3-2选择报文
图 3-3 配置IP地址和设备名称
1.配置设备名称:在本例中,设备名称为 sinamics-v90-pn。
2.配置 IP 地址:在本例中,IP 地址为192.168.0.2。
3.在配置完设备名称以及 IP 地址之后,必须保存参数并重启驱动来激活配置。
4.配置完的信息可以在右侧栏中查看。
注:配备名称和 IP 地址也可以在 TIA Portal 中进行配置。
图3-4 配置斜坡函数发生器
注:由于 S7-1200 轴工艺对象中已经组态了轴运行的加减速时间,所以在 SINAMICS V-ASSISTANT 侧需要激活斜坡功能模块并将斜坡上升时间和斜坡下降时间设置为0.0000 S即可。
1.打开TIA 博途软件并创建新项目
图3-5 创建新项目
2.进入到项目视图添加S7-1200 CPU到项目
图3-6 添加S7-1200 CPU到项目
3.进入到网络视图并打开硬件目录
图3-7 网络视图
可以在以下网址下载V90的GSD文件。
SINAMICS V90: PROFINET GSD file
https://support.industry.siemens.com/cs/ww/en/view/109737269
1.安装GSD文件
图3-8安装GSD文件
2.找到GSD文件,点击安装。
图3-9点击安装
3.右侧硬件目录树中“其他现场设备”中选择V90 PN。
图3-10 选择V90 PN
4.双击V90 PN或拖拽V90 PN到网络视图
图3-11网络视图
双击 PLC CPU进入CPU属性。
图3-12 进入CPU属性
在“PROFINET接口(X1)”中可以设置IP地址,设备名称等信息。
图3-13 设置IP地址,设备名称等信息
1. 双击 SINAMICS V90 PN进入属性区域。在“PROFINET接口(X1)”中可以设置IP地址,设备名称等信息。
图3-14 设置IP地址,设备名称等信息
2.硬件目录下,在子模块中选择标准报文
图3-15选择标准报文3
组态完SINAMICS V90 PN 和S7-1200 CPU后,需要连接SINAMICS V90 PN 和S7-1200 CPU。
1.在网络视图单击“未分配”,选择PLC_1.PROFINET接口_
图3-16选择PLC_1.PROFINET接口_
2.连接后网络视图如下所示:
图3-17网络视图
3. 然后在网络视图中右键单击PROFINET网络为SINAMICS V90 PN “分配设备名称”。
图3-18分配设备名称
注:PROFINET设备名称非常重要,一定要确保设备名称的正确。
在左侧“工艺对象”列表下双击“插入新对象”。在弹出的“新增对象”对话框中选择“TO_PositioningAxis”,并为新增对象命名,然后点击“确定”按钮插入一个新的工艺对象。
图3-19插入新对象
1.在“基本参数”的“常规”页面下,你可以对添加的工艺对象轴的名称进行配置。
2.驱动器类型选择“PROFIdrive”。
3.测量单位默认为 mm,你可以从下拉列表中选择其它单位,如 m、in、ft、脉冲以及度等。
图3-20基本参数配置
1.在“基本参数”的“驱动器”页面下,需要选择驱动器。
2.在选择好驱动器后,你可以对数据交换的参数进行配置。例:最大转速,本例中为3000.0 r/min。
图3-21驱动器参数配置
1.在基本参数的“编码器”页面中,选择编码器的连接方式。对本例来说,选择“驱动装置上的编码器”。
2.在选择完编码器的连接方式之后,需要配置编码器的类型以及高精度参数进行配置。对于本例来说,我们使用的是 2500 ppr 增量式编码器,细分精度为 2。
图3-22编码器参数配置
工艺对象的扩展参数,具体介绍请参考:
S7-1200 连接 SINAMICS V90 实现位置闭环控制
https://support.automation.siemens.com/CN/view/zh/109477411
工艺对象一般的组态方法请参考:
《SIMATIC STEP 7 S7-1200 Motion Control V13 SP1》。
https://support.automation.siemens.com/CN/view/zh/108577079。
本文只描述针对于本例的组态。
在扩展参数下,可以配置如下参数:
参数 |
说明 |
机械 |
• 编码器安装类型 • 位置参数,即电机每转对应的负载位移。 |
模数 |
• 启用模态轴 • 配置模态轴参数 |
位置限制 |
设置位置限制相关的参数 |
动态 |
• 设置速度限幅 • 设置加减速时间 • 设置加速度 • 设置急停参数,如加减速时间等 |
回原点 |
• 设置回零模式 • 设置各种回零模式下的回零参数等 |
位置监视 |
• 设置定位监控参数 • 设置跟随误差 • 设置停止信号相关的参数 |
控制回路 |
设置位置环的增益和前馈时间 |
表3-1 扩展参数
S7-1200 CPU 在创建闭环运动控制工艺对象时,会自动地创建用于执行工艺对
象的组织块,其中 MC-Servo[OB91]用于位置控制器的计算,MC-Interpolator[OB92]用于生成设定值、评估运动控制指令和位置监控功能。这两个组织块彼此之间出现的频率关系始终为 1:1,MC-Servo[OB91]总是在 MC-Interpolator[OB92]之前执行。可以根据控制质量和系统负载需求,指定 MC-Servo[OB91]的应用循环周期性调用时间,如果循环时间过短,则可能造成 CPU 发生溢出,造成 CPU 停机。鼠标右键 OB91 组织块,在弹出的 OB91 属性对话框中可以修改其循环时间。可根据所使用的轴数量设置运动控制应用循环,
运动控制应用循环时间 = 2 ms +(位置控制轴的数量 x 2 ms)
图3-23组态循环时间
编译并将项目下载到 S7-1200 CPU 后,即可进行调试。
至此S7-1200与V90的组态配置已经初步完成,可以打开工艺对象的调试界面进行调试,然后就可以编写运动控制程序了。运动控制程序的介绍可参考帮助文档,这里不再详述。
另外,轴控制面板还提供调节功能,可用于调整CPU 位置控制器的增益和预控制值,并可以监视轴的运行轨迹。
图3-24轴控制面板
当CPU 位置控制器的预控制值保持不变的情况下,修改“增益”参数可用于组态控制回路的增益系数,轴的机械硬度越高,可设置的增益系数就越大;较大的增益系数可以减少随动误差,实现更快的动态响应;但是过大的增益系数将会使位置控制系统振荡。效果如下:
图3-25预控制100.0%,增益10.0
图3-26预控制100.0%,增益30.0
图3-27预控制100.0%,增益50.0
图3-28预控制100.0%,增益70.0
当CPU 位置控制器的增益保持不变的情况下,修改“预控制”参数可用于修改控制回路的速度预控制百分比。不同预控制值时的轴运行轨迹修改预控制值效果如下所示。
图3-29预控制100.0%,增益20.0
图3-30预控制50.0%,增益20.0
图3-31预控制0.0%,增益20.0
本文仅针对 CPU 1217C连接V90 PN实现闭环运动控制进行了简单的描述,目的是为了能够让初次接触该系统的用户能够快速的建立控制系统,本文无法替代 S7-1200运动控制的相关硬件手册和功能手册。更多关于该功能的使用信息请参考《SIMATIC STEP 7 S7-1200 Motion Control V13 SP1》手册。