[西门子] 【原创教程】Smart200通过Modbus RTU实现V90位置控制的方法(进...

[复制链接]
查看17430 | 回复0 | 2024-8-23 17:07:10 | 显示全部楼层 |阅读模式
1  绪论

1.1 本文的目的

S7-200Smart可通过标准的Modbus功能块发送伺服驱动器的控制指令及读写驱动器的参数。本文详细叙述了S7-200SMARTPLC通过ModbusRTU通信连接SINAMICSV90实现内部位置的MDI功能。(MDI(ManualDataInput)称为设定值直接给定运行方式。即上位控制器直接设置目标位置、速度、加减速度后,轴自动移动到目标位置的定位方式。MDI也是实际应用中最常使用的一种定位功能。)     



1.2 准备工作

1.2.1 硬件

SIMATIC S7-200 SMART CPU ST60:6ES7288-1ST60-0AA0

V90 驱动器 :6SL3210-5FE10-4UA0(V1.05 版本以上)

伺服电机:1FL6042-1AF61-0LG1,电机及编码器配套电缆

1.2.2 软件

SMRT200PLC编程软件:STEP 7-Micro/WIN SMART

V90伺服调试软件:SINAMICS V-ASSISTANT V1.02

1.3 硬件接线

1.3.1 通信接线

SINAMICS V90 伺服驱动通过 RS485 电缆与 PLC 连接,使用标准 Modbus 通信协议进行通讯。通过 Modbus PLC 给 V90 发送伺服使能和停止命令并且可以读取伺服驱动器的状态及故障代码。

SINAMICS V90 伺服驱动通过 RS485 接口(X12)使用 MODBUS 协议与 PLC RS485(端口 0) 进行通讯,接线如图所示。



2  参数设置及说明

2.1 V90 Modbus 寄存器说明

V90内部控制的控制数据寄存器如表2-1所示。



表2-1 V90的内部位置控制数据寄存

IPOS控制模式寄存器 40100控制字的定义如表2-2所示。



表 2-2 寄存器 40100 控制字的定义

2.2 V90 参数设置

打开软件SINAMICS V-ASSISTANT,选择在线,若为绝对值电机,可以在线直接读取电机型号参数,若为增量值电机,需要根据实际电机型号在线选取型号参数。按照表 2-3 设置伺服驱动器的相关参数,下载进V90伺服。注意改变参数之后要回车。通过 Modbus RTU 通信的V90 IPOS定位功能中没有软限位功能,只具有硬限位功能。



表 2-3 伺服驱动器的相关参数

2.3 螺距及减速比参数设置

打开SINAMICS V-ASSISTANT—设置参数—设置机械结构,如果包含减速机,按实际减速比填写N/M值,若无减速机,N/M位1/1。螺距若为10mm/转,负载转动一圈对应的长度单位为10000,定位前进60mm时,定位数据应写入60000。



2.4 原点设置

电动机轴上的编码器通常可分为绝对值编码器及增量编码器两种类型。

1)对于绝对值编码器,仅需要进行一次绝对值编码器的零点校正即可;通过V-ASSISTANT,设置电机当前位置对应的参考点位置坐标值,默认为0点击设置回参考点按钮执行保存参数到ROM。



2)对于增量编码器,由于位置无法保持,因此每次设备上电后,必须通过执行主动回零运动来确定轴的机械零点坐标。

共计五种回参考点模式可用:

0• 通过数字量输入信号 REF 设置回参考点

如下图,可以通过V-ASSISTANT软件把DI7分配为REF功能,DI8分配为SREF功能。在信号 REF 上升沿(即DI7上升沿)时,当前位置设为零,伺服驱动回参考点:



1• 外部参考点挡块(信号 REF)和编码器零脉冲

回参考点由信号SREF触发。然后,伺服驱动加速到p2605中指定的速度来找到参考点挡块。搜索参考点挡块的方向(CW或CCW)由p2604定义。当参考点挡块到达参考点时(信号REF:0→1),伺服电机减速到静止状态。然后,伺服驱动再次加速到p2608中指定的速度,运行方向与p2604中指定的方向相反。信号REF(1→0)应该关闭。达到第一个零脉冲时,伺服驱动开始向p2600中定义的参考点以p2611中指定的速度运行。伺服驱动到达参考点(p2599)时,信号REFOK输出。关闭信号SREF(1→0),回参考点成功。

整个过程如下图所示



2• 仅编码器零脉冲

该模式下,挡块不可用。回参考点由信号SREF触发。然后,伺服驱动加速到p2608中指定的速度,运行方向(CW或CCW)由p2604指定。达到第一个零脉冲时,伺服驱动开始向p2600中定义的参考点以p2611中指定的速度运行。伺服驱动到达参考点(p2599)时,信号REFOK输出。关闭信号SREF(1→0),回参考点成功



3• 外部参考点挡块(信号 CWL)和编码器零脉冲

驱动器首先较快的向正方向移动,直到撞到正限位开关ON才减速停止;然后驱动器慢速返回,寻找目标零位位置。本回零方法的目标零位位置是离开限位开关后编码器的第一个零脉冲位置。

回参考点由信号SREF触发。然后,伺服驱动加速到p2605中指定的速度来找到参考点挡块。搜索参考点挡块的方向(CW)由参数p2604定义。当检测到信号CWL时(1→0),伺服驱动以最大减速度减速至静止状态。然后,伺服驱动再次加速到p2608中指定的速度,运行方向(CCW)与p2604中指定的方向相反。信号CWL切换至高电平(0→1)。达到第一个零脉冲时,伺服驱动开始向p2600中定义的参考点以p2611中指定的速度运行。伺服驱动到达参考点(p2599)时,信号REFOK输出。关闭信号SREF(1→0),回参考点成功。整个过程如下图所示



4• 外部参考点挡块(信号 CCWL)和编码器零

驱动器首先较快的向负方向移动,直到撞到负限位开关ON才减速停止;然后驱动器慢速返回,寻找目标零位位置。此回零方法的目标零位位置是离开限位开关后编码器的第一个零脉冲位置。

回参考点由信号SREF触发。然后,伺服驱动加速到p2605中指定的速度来找到参考点挡块。搜索参考点挡块的方向(CCW)由参数p2604定义。当检测到信号CCWL时(1→0),伺服驱动以最大减速度减速至静止状态。然后,伺服驱动再次加速到p2608中指定的速度,运行方向(CW)与p2604中指定的方向相反。信号CCWL切换至高电平(0→1)。达到第一个零脉冲时,伺服驱动开始向p2600中定义的参考点以p2611中指定的速度运行。伺服驱动到达参考点(p2599)时,信号REFOK输出。关闭信号SREF(1→0),回参考点成功。整个过程如下图所示



3 PLC编程

3.1 编程

3.1.1 初始化Modbus通信接口

初始化Modbus通信接口,需确保 PLC 的波特率与驱动设置一致,设置 PLC 校验方式为偶校验(parity = 2)。



3.1.2 写控制字

通过寄存器 40100 写入需要的控制字。必须设置寄存器 40100 的位 10 为 1 以允许PLC 控制驱动。使能驱动器,先将16进制数 40E 写入寄存器 40100 中,然后再写入40F。Slave为V90站号,RW为1表示写入,为0表示读取。DataPtr为PLC传输数据的地址。MBUS_MSG功能块需要按顺序一个个执行,所以指令完成之后,需要把此程序段的EG复位,再执行下一个MBUS_MSG功能块。



如果需要对带增量编码器驱动执行回参考点操作,保持驱动为伺服使能状态,可通过写控制字 40100 第13位,执行回参考点操作。

3.1.3 把设定值写入寄存器

通过MBUS_MSG功能块,将位置设定值和速度设定值写入寄存器 40932、40933、40934、40935、40102 和40103 中。



3.1.4 读取伺服当前值



3.2 40100控制寄存器操作

3.2.1 MDI相对定位的40100控制寄存器操作:

(1) 在IPos 控制模式中,控制字的位6=0选择相对定位模式(40F)

(2) 控制字的位5=0,设置使用上升沿来接收MDI 设定值(40F)

(3) 将表2-1中的寄存器,写入需要的值 (如40934及40935写入十六进制的4000, 40932/40933写入MDI速度值,40102/40103写入MDI的位置值) 后,通过PLC发送控制字的位4上升沿来接收设定值,驱动进行MDI运行(41F)

3.2.2 MDI绝对定位的40100控制寄存器操作:

(1) 在IPos 控制模式中,控制字的位6=1来选择绝对定位模式(44F)

(2) MDI设定值的生效有两种:MDI设定值立即生效:控制字的位5=1,设置接收的MDI设定值立即生效(46F);

上升沿来接收MDI 设定值:控制字的位5=0,设置使用上升沿来接收MDI 设定值(44F)

(3) 将表2-1中的寄存器写入需要的值 (如40934及40935写入十六进制的4000,40932/40933写入MDI速度值,40102/40103写入MDI的位置值)后,如果是MDI设定值立即生效,则驱动进行MDI运行。如果是通过上升沿接收MDI设定值,则通过PLC发送控制字的位4的上升沿来接收设定值(45F),驱动进行MDI运行


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则