电工学习网

 找回密码
 立即注册
查看: 3270|回复: 0
打印 上一主题 下一主题

PLC数据类型UDT的用法

[复制链接]
跳转到指定楼层
楼主
发表于 2019-7-22 12:23:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
   首先我从S7-1200 Easy Plus 手册上搬来plc数据类型UDT的介绍:

  • UDT类型是一种由多个不同数据类型元素组成的数据结构,元素可以是基本数据类型,也可以是STRUCT、数组等复杂数据类型以及其它UDT等。UDT类型嵌套UDT类型的深度限制为 8 级。
  • UDT类型可以在DB、OB/FC/FB接口区处使用。 从TIA 博途 V13SP1 开始,S7-1200 V4.0开始,PLC变量表中的I和Q也可以使用UDT类型。
  • UDT类型可在程序中统一更改和重复使用,一旦某UDT类型发生修改,执行软件全部编译可以自动更新所有使用该数据类型的变量。
  • 理论上来说,UDT是Struct类型的升级替代,功能基本完全兼容Struct类型。
    具体的PLC数据类型实例如下图所示:

PLC数据类型UDT的用法

    下面我以S7-1200搭配CM CANopen模块控制埃斯顿伺服电机为例,详细说明PLC数据类型的用法,以下是整个系统的电气网络拓扑图:
PLC数据类型UDT的用法

    通过查看埃斯顿伺服电机的CANopen手册得知,CANopen协议有许多参数,如最重要的Controlword(控制字)以及Statusword(状态字)等,位置模式包含target_position(目标位置)、profile_velocity(运行速度)、profile_acceleration(运行加速度)和profile_deceleration(运行减速度)等,其他如回零模式、速度模式和转矩模式的参数在此不再赘述。整个伺服控制的过程本质上就是读写这些参数,因此建立分别建立2种数据类型AxisRPDO和AxisTPDO。具体如下图所示:

PLC数据类型UDT的用法

PLC数据类型UDT的用法

    埃斯顿伺服电机作为一个设备,其所需要的控制命令以及反馈参数即为它的接口,为此分别新建两个数据类型AxisWrite和AxisRead,如下图所示:

PLC数据类型UDT的用法
PLC数据类型UDT的用法

    然后在DB块中新建这几种PLC数据类型的变量,电机的控制的实质就是这几个变量间的数据转移,如下图所示:

PLC数据类型UDT的用法

    最终编写轴常用的功能块,如使能、复位、停止、位置模式运动、速度模式运动、回零模式运动和轴状态读写功能块等,以一个简单的“复位”功能块为实例,如下图所示:

PLC数据类型UDT的用法

    最终将这些简单的功能块加以汇总,形成轴控制功能块AxisControl,如下图所示:

PLC数据类型UDT的用法
来源:西门子工业技术论坛

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-23 14:03

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表