BECKHOFF GUANGZHOU
TwinCAT NC PTP
实用教程
LizzyChen
2/20/2013
Version 1.07
Based on motion control library TcMc.lib and TcMc2.lib
TwinCAT Version 2.11 Build 2224
Chapter 11-14 are to be updated recently since the hardware had been changed from 2010.
前 言
进入 2000 年代,中国作为世界制造基地的地位日益确立和稳固,产业机械迅猛发展。随着
人力成本的不断升高,提高产业机械自动化程度成为业界的共识。
因为伺服驱动系统相对于传统机械中大量使用的气缸、变频电机和步进电机驱动,具有精度
高、动态性能好的优点,可以大幅提升整机的生产效率,越来越多的产业机械在关键工序采
用伺服驱动。对于国内的工业自动化工程师而言,控制伺服驱动器和电机,成为一门不可回
避的必修课。
控制伺服驱动器和电机,通常有 3 种方式,
A:使用伺服驱动器的厂家的软件工具;
B:使用独立于伺服驱动器的第三方运动控制系统;
可控制任意伺服驱动器和电机
C:使用 PLC 厂家的运动控制系统。
以控制 PLC 厂家的驱动器为主
方式 B 可控制任意伺服驱动器和电机,A、B 两种方式都会不同程度地涉及到运动控制系统
和 PLC 的通讯,方式 C 不存在通讯问题,但是用户往往受限于使用 PLC 厂家的伺服驱动器
和电机。
TwinCAT NC 是德国 BECKHOFF 公司推出的基于 PC 的运动控制软件,结合了方式 B 和 C
的优势,不但实现了 NC 与 PLC 的无缝集成,而且支持几乎所有的伺服驱动器接口:脉冲、
模拟量、现场总线和以太网,这意味着用户可以在伺服驱动器和电机的选择上拥有更多的自
由。
TwinCAT NC 的另一个优势在于,即使在脱离伺服驱动器和电机的条件下,开发人员也可以
在任意计算机上模拟调试自己的 PLC 和 NC 程序。辅以 BECKHOFF 公司提供的示波器软件
Scope View,用户可以观察任意变量的曲线。
本书的作者在 BECKHOFF公司长期从事技术和培训工作,支持了大量的客户和不同的应用,
在此将相关的经验和体会整理发布。书中不仅系统阐述了 TwinCAT NC 软件的工作原理、软
件模型,而且将工作中遇到的各种应用的知识要点、操作步骤汇集成册,随书光盘中还按章
节配有相关例程的源代码和使用说明。TwinCAT NC 软件开发版及 Scope View 工具都可以
从 BECKHOFF 公司网站免费下载。
本书将使您在运动控制编程方面打下坚实的基础,并带给您编程的自由和乐趣。
0.1 本书读者对象
本书的目的是教您如何尽可能快捷地运用 TwinCAT NC PTP 编写有用的程序,并假定您已经
熟练掌握了 TwinCAT PLC 编程。为了照顾到初次使用 TwinCAT 的读者,本书的最后一章简
单介绍了 TwinCAT 基本操作和调试组态画面的编辑。如果需要更深入的 PLC 编程知识,请
到 Beckhoff 官方网站下载相关技术文档。
本书适合于以下情况:
对于运动控制的初学者。
他们选择从 TwinCAT NC PTP 开始学起,这是一个很好的选择!TwinCAT NC PTP
不仅容易学易用,而且功能强大。尤其对于大专院校的学生和暂无实际项目需求的工程
师,TwinCAT NC 模拟运行调试无需硬件,软件可免费获得,另一方面,TwinCAT NC
完全兼容 PLC Open 国际标准化组织的运动控制指令,因此,选择 TwinCAT NC PTP 来
学习运动控制,不仅节约投资,而且适用面极为广泛。
对于曾使用其它运动控制系统,但第一次使用 TwinCAT NC 的初学者。
运动控制系统开发过程中常用的功能,在此书中均有详尽的说明。本书将带领着您
从最基本的 TwinCAT NC 轴的配置、调试界面,循序渐进,直到 TwinCAT NC 控制程序
的编写、调试。
曾经使用TwinCAT NC及其它运动控制系统的有经验的工程师。
软件方面,不仅介绍了基本的运动控制指令,还详细介绍了从文件装载凸轮表、动
态修改凸轮表关键点、位置补偿、收放卷及张力控制、位置外部设定值发生器(External
set value generation)等某些特定机械设备常用的功能。
硬件方面,本书除了通用的 TwinCAT NC 软件和 AX5000 伺服驱动器带 BECKHOFF
电机的操作之外,还详细介绍 AX5000 带第三方同步及异步伺服电机的调试步骤,以及
TwinCAT NC 带 EtherCAT、CanOpen(DS402)、 KL2531/2541 步进电机端子、发脉冲控
制、模拟量控制等 5 种硬件接口类型的伺服轴的所需要的特别设置和操作步骤。
上述软硬件功能,不是每个项目都会全部用到的。因此,即使是有经验的运动控制
工程师,针对特定的软件功能或者硬件接口,也可以从此书获得帮助。
0.2 本书主要内容
第 1 章,TwinCAT NC PTP 的系统概述。
第 2-3 章,TwinCAT System Manager 中独立于硬件的 Axis 配置和调试界面。
第 4-5 章,TwinCAT PLC Control 中独立于硬件的单轴及多轴运动控制程序的编写。
第 6-7 章,TwinCAT NC 带 AX5000 驱动器的调试步骤,含第三方同步、异步伺服电机。
第 8 章,TwinCAT NC 带 BECKHOFF 公司的 KL2531/2541 步进电机端子的调试步骤。
第 9-11 章,TwinCAT NC 带第三方伺服驱动器的 3 种接口类型:脉冲、模拟量和现场总线。
第 12 章,TwinCAT NC 带 Beckhoff 公司的伺服驱动模块 EL7201
第 13 章,其它运动控制功能:探针,凸轮输入,硬件安全限位等设置
第 14 章,TwinCAT 基本操作以及集成组态工具 TwinCAT HMI 的使用
0.3 版本说明
本书所提供的操作截图、程序代码都基于 TwinCAT 2.11。所述部分例程基于 TcMc.Lib,该
库兼容于 PLC Open Motion Control Version1.1。部分例程基于 TcMc2.Lib,该库兼容于 PLC
Open Motion Control Version2.0。由于两个版本的库文件的功能块常有重名,当重名的功能
块接口类似时,直接描述 TcMc.Lib。TcMc2.Lib 新增的功能块以及重名功能块有新增参数的
情况,则单独描述。截至目前,由于 BECKHOFF 公司的 TwinCAT 软件仍然会持续升级和
更新,我们不排除后续版本的操作界面会发生变化,而例程中的代码也有可能不适用于后续
版本。
开发及模拟调试 TwinCAT NC PTP 程序需要 Windows NT/2000/XP/Win 7 操作系统。
0.4 勘误表
尽管我们竭尽所能来确保在正文和代码中没有错误,但也难免会发生错误。如果您在本书中
发现了错误(例如拼写错误或者代码错误),我们将非常感谢您的反馈。发送勘误表将节省
其它读者的时间,同时也会帮助我们提供更高质量的信息。
请发邮件至 TcNcPtp@Beckhoff.com.cn,该邮箱由作者本人查收,我会检查您的反馈信息。
如果是正确的,将在本书的后续版本中使用。
0.5 感谢
用户的需求是我们成长的动力,在此感谢以下长期给予我们学习动力的客户:
中国科学院西安光学精密机械研究所
哈尔滨工业大学多智能体与机器人研究中心
震德塑料机械有限公司研发中心
深圳华强智能股份有限公司
中国科学院顺德工业与信息技术育成中心
深圳捷佳创机器制造有限公司
本书的编写得到 BECKHOFF 中国运动控制中心及工程应用部门同事的大力支持,在此特别
感谢运动控制中心经理王建成,以及倍福德国总部驱动事业部工程师刁岩斌。同时非常感谢
倍福广州分公司我的同事万文博和郭禅禅,没有你们的帮助,我不可能完成这本书。
本书的出版受到 ETG 中国代表范斌和倍福技术部经理周耀刚的努力推动,文字校对由倍福
市场部程玲完成,作者和读者都应感谢各位的尽心尽力。
最后,希望有更多工程师,用 TwinCAT 这个强大的工具,开发出更先进的机器,生产更多
更优质的产品。
科技,让生活更美好!
作者 2013-02-06 于广州
目 录
1 TwinCAT NC PTP 系统概述 ..................................................................................................... 6
1.1 TwinCAT NC PTP 与 TwinCAT PLC 的关系 ........................................................................ 7
1.2 TwinCAT NC PTP 控制的轴的类型和数量.......................................................................... 8
1.3 TwinCAT NC PTP 的控制周期 ............................................................................................. 9
1.4 TwinCAT NC PTP 的配置、编程、调试.............................................................................. 9
2 TwinCAT NC 轴的配置 .......................................................................................................... 11
2.1 添加一个 Axis ...................................................................................................................... 11
2.2 NC 轴的参数设置 ................................................................................................................ 14
2.2.1 Enc 编码器设置 ................................................................................................................ 14
2.2.2 Drive 驱动器设置 ............................................................................................................. 18
2.2.3 Ctrl 控制参数设置 ............................................................................................................ 21
2.2.4 NC 轴参数的 ADS 信息................................................................................................... 25
2.3 NC 轴与 PLC 程序的对应 ................................................................................................... 26
3 TwinCAT NC 轴的调试 .......................................................................................................... 28
3.1 Axis 调试界面 ...................................................................................................................... 28
3.1.1 General .............................................................................................................................. 28
3.1.2 Settings .............................................................................................................................. 29
3.1.3 Parameter ........................................................................................................................... 30
3.1.4 Dynamic ............................................................................................................................ 33
3.1.5 Online ................................................................................................................................ 34
3.1.6 Functions ........................................................................................................................... 35
3.1.7 Coupling ............................................................................................................................ 36
3.1.8 Compensation .................................................................................................................... 36
3.2 使能和点动 .......................................................................................................................... 38
3.2.1 准备工作 ........................................................................................................................... 38
3.2.2 使能 ................................................................................................................................... 38
3.2.3 点动 ................................................................................................................................... 39
3.3 Function 测试 ....................................................................................................................... 40
3.4 调试动态性能 Dynamics ..................................................................................................... 41
3.5 测试双轴联动 ...................................................................................................................... 42
3.5.1 齿轮联动 ........................................................................................................................... 42
3.5.2 凸轮联动 ........................................................................................................................... 43
3.6 位置补偿 .............................................................................................................................. 52
3.7 飞锯 ...................................................................................................................................... 54
4 编写 NC 单轴控制的 PLC 程序 ............................................................................................ 55
4.1 准备工作 .............................................................................................................................. 55
4.1.1 引用引用运动控制功能库 ............................................................................................... 55
4.1.2 声明轴变量 ....................................................................................................................... 56
4.1.3 PLC 程序说明 ................................................................................................................... 56
4.1.4 TcMc2.lib 对比 TcMc.lib 的改进 ..................................................................................... 57
4.2 轴的管理 .............................................................................................................................. 61