首页 > 其他分享 >S7-1200对V90 PN进行位置控制的三种方法

S7-1200对V90 PN进行位置控制的三种方法

时间:2024-11-05 13:46:47浏览次数:1  
标签:V90 报文 S7 1200 BOOL PLC PN 功能块

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和工艺对象

V90 PN与PLC采用PROFINET RT通信方式并使用报文3,项目步骤如下:

1. 创建项目后,添加新设备S7-1200 PLC

2. 在网络视图中添加V90 PN设备(使用GSD)

2. 建立V90 PN与PLC的网络连接,并分别设置S7-1200及V90 PN的IP地址及设备名称:

3. 在设备视图中为V90配置标准报文3

4. 插入一个位置轴

"驱动器"选择"PROFIdrive" :

配置轴的驱动,选择连接到PROFINET总线上的V90 PN:可以手动设置参考转速及最大转速,也可以选择"自动传送设备中的驱动装置参数"。

配置编码器的数据交换:

用户可以根据实际的需要选择和填写后续的信息,完成工艺对象的配置。

5. 在OB1中使用MC_Power、MC_MoveAbsolute等PLC Open标准程序块编写轴的位置控制程序,PLC Open指令位于工艺指令目录下的运动控制文件夹中,命令相关说明请查看博途的帮助文件。

方法二 使用西门子报文111和FB284(SINA_POS)

V90 PN与PLC采用PROFINET RT通信方式并使用西门子报文111,V90 PN设置控制模式为"基本位置控制(EPOS)"。

1. PLC与V90 PN的项目配置与方法一中的步骤1-3相同。

2. 在V90 PN的设备视图中插入西门子报文111

3. 编写程序

此种方法需要调用驱动功能库文件,可以通过以下两种方法进行安装:
(1) 安装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
(2) 在TIA 博途中安装SINAMICS Blocks DriveLib,下载链接:
https://support.industry.siemens.com/cs/ww/en/view/109475044

在OB1中将DriveLib_S7_1200_1500中的SINA_POS(FB284)功能块拖拽到编程网络中(此功能块只能与报文111配合使用),进行位置控制。

注意:功能块参数HWIDSTW及HWIDZSW的赋值请参看下图:

4. FB284功能块输入输出块参数说明

输入参数:

输入信号类型含义
ModePos INT 运行模式:
1 = 相对定位
2 = 绝对定位
3 = 连续运行模式(按指定速度运行)
4 = 主动回零
5 = 直接设置回零位置
6 = 运行程序段 0~15
7 = 按指定速度点动
8 = 按指定距离点动
EnableAxis BOOL 伺服运行命令:
0 = 停止(OFF1)
1 = 启动
CancelTraversing BOOL 0 = 取消当前的运行任务
1 = 不取消当前的运行任务
IntermediateStop BOOL 暂停任务运行:
0 = 暂停当前运行任务
1 = 不暂停当前运行任务
Positive BOOL 正方向
Negative BOOL 负方向
Jog1 BOOL 点动信号1
Jog2 BOOL 点动信号2
FlyRef BOOL 此输入对V90 PN无效
AckError REAL 故障复位
ExecuteMode BOOL 激活请求的模式
Position DINT ModePos=1或2时的位置设定值[LU]
ModePos=6时的程序段号
Velocity DINT ModePos=1、2、3时的速度设定值[LU]
[1000LU/min]
OverV INT 设定速度百分比0~199%
OverAcc INT ModePos=1、2、3时的设定加速度百分比 0~100%
OverDec INT ModePos=1、2、3时的设定减速度百分比 0~100%
ConfigEPOS DWORD 可以通过此参数控制基本定位的相关功能,位的对应关系见下表
HWIDSTW HW_IO V90设备视图中报文1的硬件标识符
HWIDZSW HW_IO V90设备视图中报文1的硬件标识符

ConfigEPOS位的对应关系:

输出参数:

输出信号类型含义
AxisEnabled BOOL 驱动已使能
AxisPosOk BOOL 目标位置到达
AxisSpFixed BOOL 设定位置到达
AxisRef BOOL 已设置参考点
AxisWarn BOOL 驱动报警
AxisError BOOL 驱动故障
Lockout BOOL 位置环设定值到达目标位置
ActVelocity DINT 实际速度[十六进制的40000000h对应 p2000参数设置的转速]
ActPosition DINT 当前位置LU
ActMode INT 当前激活的运行模式
EPosZSW1 WORD POS ZSW1的状态
EPosZSW2 WORD POS ZSW2的状态
ActWarn WORD 驱动器当前的报警代码
ActFault WORD 驱动器当前的故障代码
Error BOOL 1=存在错误

更加详细的说明文档可点击下述链接:
http://www.ad.siemens.com.cn/download/docMessage.aspx?Id=15024

方法三 使用西门子报文111和FB38002 (Easy_SINA_Pos)

V90 PN与PLC采用PROFINET RT通信方式并使用西门子报文111,V90 PN设置控制模式为"基本位置控制(EPOS)"。

1. PLC与V90 PN的项目配置与方法二中的步骤完全相同。

2. FB38002(Easy_SINA_Pos)是FB284(SINA_POS)的简化版,功能比FB284少一些,但是使用更加简便,可以通过如下链接下载库文件:

http://support.automation.siemens.com/WW/view/en/109747655

3.在TIA 博途中添加库文件,并将库中的Easy_SINA_Pos功能块拖拽到左侧"程序块"中

4.在OB1中调用Easy_SINA_Pos功能块,为功能块各参数添加变量:

注意:对功能块参数HWI DSTW及HWI DSZW的赋值可以通过点击参数,在下拉菜单中选择对应的西门子报文111选项。
也可以参看下图,在设备视图的报文属性中查询硬件标识符的数值:


5. FB38002功能块输入输出参数说明

输入信号类型含义
ModePos INT 运行模式:
1 = 相对定位
2 = 绝对定位
4 = 主动回零
7 = 按指定速度点动
EnableAxis BOOL 伺服运行命令:
0 = 停止(OFF1)
1 = 启动
Jog1 BOOL 点动信号1
Jog2 BOOL 点动信号2
MDIPosition DINT MDI运行模式下的位置设定值[LU]
MDIVelocity DINT MDI运行模式时的速度设定值[1000LU/min]
ExecuteMode BOOL 激活请求的模式
RefCamInput BOOL 回零开关信号
RefDirection BOOL 选择回零开始的方向:
0 = 正向寻零
1 = 反方向寻零
AckError BOOL 故障复位
HWLimitEnable BOOL 激活硬件限位开关:
1 = 激活
SWLimitEnable BOOL 激活软件限位开关:
1 = 激活
HWIDSTW HW_IO 符号名或SIMATIC S7-1x00设定值槽的HW ID
HWIDSTW HW_IO 符号名或SIMATIC S7-1x00设定值槽的HW ID

 

输出信号类型含义
ModeError BOOL ModePos不在1-7范围内
CommunicationError BOOL 使用SFC14/15 于驱动器进行通讯发生故障
DiagID WORD 通信错误,在执行SFB 调用时发生错误
AxisEnabled BOOL 驱动已使能
AxisError BOOL 驱动故障
AxisWarn BOOL 驱动报警
AxisPosOk BOOL 目标位置到达
AxisRef BOOL 已设置参考点
ActVelocity DINT 实际速度[十六进制的40000000对应 p2000参数设置的转速]
ActPosition DINT 当前位置LU
ActMode INT 当前激活的运行模式
ActWarn WORD 驱动器当前的报警代码
ActFault WORD 驱动器当前的故障代码

详细文档点击此处查看

常问问题

 S7-1200 可以控制几个V90 PN?

在不挂其他PROFINET设备下,最多可以控制16个V90 PN。

标签:V90,报文,S7,1200,BOOL,PLC,PN,功能块
From: https://www.cnblogs.com/ZBO123/p/18527703

相关文章

  • centos7安装
    centos系统安装及初始配置一.centos安装(自己喜好)分区:/boot1024MBext4/boot/efi50MB/swap64GB/余下的容量ext4网络名称改为:node01右下角configure里网络连接勾选上AUTO二.换源1.备份原有yum源mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS......
  • centos7升级openssh
    环境:OS:Centos71.查看当前的ssh和ssl版本[root@localhost~]#ssh-VOpenSSH_7.4p1,OpenSSL1.0.2k-fips26Jan2017 2.下载最新的版本OpenSSH9.8:wgethttp://down.tag.gg/Openssh/rpm/el7/openssh-9.8/openssh-9.8p1-1.el7.x86_64.rpmwgethttp://down.tag.gg/Openssh......
  • centos7-kernel-upgrade-内核升级
    CentOS7升级内核版本yum安装参考1参考2参考3首先查看当前系统的内核版本uname-rs导入ELRepo仓库的公钥信息rpm--importhttps://www.elrepo.org/RPM-GPG-KEY-elrepo.org安装指令#RHEL-7,SL-7orCentOS-7yuminstallhttps://www.elrepo.org/elrepo-release-7.e......
  • S7-1500PLC通过存储卡清除项目数据的具体方法演示
    S7-1500PLC通过存储卡清除项目数据的具体方法演示存储卡的功能S7-1500使用SIMATIC存储卡作为程序存储器。SIMATIC存储卡主要有以下功能:1、作为CPU的装载存储区,离开存储卡CPU就无法运行。2、可以用于更新S7-1500CPU及集中式IO模块的固件版本。3、读取服务数据......
  • centos7,yum安装mongodb
    yum安装mongodb1.配置MongoDB的yum源2.安装Mongodb3.启动Mongodb4.配置远程访问5.设置mongo密码1.配置MongoDB的yum源1.创建yum源文件,输入命令:vim/etc/yum.repos.d/mongodb-org-5.0.repo然后在文件中输入以下内容并保存:[mongodb-org-5.0]name=MongoDBReposit......
  • 搞人工智能开源大语言模型GPT2、Llama的正确姿势s7
    (如果想及时收到人工智能相关的知识更新,请点击关注!!)序言:目前我们每一小节的内容都讲解得非常慢,因为这是人工智能研发中的最基础知识。如果我们不能扎实掌握这些知识,将很难理解后续更复杂且实用的概念。因此,我们甚至采用一个概念一节的方式来编排内容,区分得清清楚楚、明明白白,以便......
  • 帝国CMS7.5数据库密码忘记了如何找回(找回帝国CMS 7.5数据库密码的方法)
    定位配置文件路径:e/config/config.php查找数据库配置信息在config.php文件中找到以下代码段:$ecms_config['db']['dbusername']='';//数据库用户名$ecms_config['db']['dbpassword']='';//数据库密码获取数据库密码查看$ecms_con......
  • centos7下redis安装
    第1:下载地址网页地址:https://redis.io/download下载链接:http://download.redis.io/redis-stable.tar.gz版本:Linux版,支持CentOS等其他Linux操作系统备注:也可以直接通过Linux去下载Redis安装包下载命令:wgethttp://download.redis.io/releases/redis-5.0.5.tar.gz第2:Redis安装......
  • Centos7系统docker部署Ferry工单系统
    1.更新yum源国内阿里1.1备份当前yum仓库配置sudocp/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.repo.backup1.2下载阿里云的centos7源配置文件sudowget-O/etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo或sudocurl-......
  • centos7 查看防火墙开放3306端口
    在CentOS7中,系统默认使用firewalld作为防火墙管理系统。要查看防火墙是否开放了特定端口(如MySQL的3306端口),您可以按照以下步骤操作:1.查看当前防火墙规则首先,您可以查看当前防火墙的规则,确认是否已经有3306端口被开放:sudofirewall-cmd--list-all这条命令......