1. 系统概述
1.1. TwinCAT 3 Runtime的运行条件
1.2. TwinCAT 3功能介绍
1.2.1. TwinCAT的实时性
1.2.2. TwinCAT PLC的数据区
1.2.3. TwinCAT PLC的数据存储
1.2.4. TwinCAT与外设IO的连接
1.3. 选型设计
1.3.1. 控制器
1.3.2. 系统扩展模块
1.3.3. I/O系统
1.4. 安装和接线
2. 编程入门
2.1. 概述
2.2. 在编程PC上安装TwinCAT开发环境
2.2.1. 在PC上安装TwinCAT开发环境
2.2.2. 升级TwinCAT开发环境
2.2.3. 在TC3和TC2之间切换
2.3. 初步认识开发环境
2.3.1. TC 3 图标和TC 3 Runtime的状态
2.3.2. TC 3 快捷菜单的功能
2.3.3. 启动TC3的帮助系统
2.3.4. TC3 Quick Start教程
2.3.5. 启动示例程序
2.3.6. 获取和注册正版授权
2.4. 编程准备:添加路由(Add ADS Router)
2.4.1. 设置IP地址
2.4.2. 设置NetID
2.4.3. 在TC3的System | Routes中添加路由
2.5. 开发第一个PLC项目
2.5.1. 建一个TwinCAT项目
2.5.2. 建一个PLC项目
2.5.3. PLC变量映射和激活配置
2.5.4. 设置开机自启动
2.6. 上传、下载和比较
2.6.1. PLC程序的上传下载和比较
2.6.2. TwinCAT项目的下载上传和比较
3. TwinCAT 3开发环境的深入介绍
3.1. 变量声明
3.1.1. 变量声明的基本语法
3.1.2. 新增变量类型UNION和WSTRING
3.1.3. PLC变量地址、ADS地址和地址对齐
3.1.4. 变量声明中的赋初值
3.1.5. 自动分配IO地址和tpy文件
3.1.6. 变量声明时的缩写输入法
3.1.7. 变量的属性
3.1.8. PLC之外的全局数据类型
3.1.9. PLC变量的刷新周期
3.2. 编程语言和新增功能
3.2.1. ST中增加了Continue和Jump语句。
3.2.2. 指令:BitAdr(),用于定位到Bit。
3.2.3. UML ChartSate编程
3.2.4. 指针和枚举的新增功能
3.2.5. 支持变量作为Bit值访问
3.2.6. 通过程序注释实现特殊功能
3.3. 诊断和调试功能
3.3.1. 兼容TC2 System Manager中的Watch window
3.3.2. 兼容TC2的Watch List
3.3.3. 其它功能提示:
3.4. 任务和程序
3.4.1. PLC程序下的多个Task
3.4.2. 为Task指定CPU、优先级、周期等等。
3.4.3. 关于Task的其它提示
3.5. 隐含的变量和函数
3.5.1. TwinCAT_SystemInfoVarList
3.5.2. 除零溢出及指针校验
3.5.3. 隐含的函数
3.6. 编程环境的设置
3.6.1. TwinCAT 快捷键
3.6.2. Smart Coding
3.6.3. 项目默认路径设置
3.6.4. 编程环境的其它设置
3.7. 兼容TC2的功能
3.7.1. 多语言混合编程(Action)
3.7.2. 可供使用的操作符、函数和功能块
3.7.3. 数组和指针
3.7.4. Funtion的安装和使用
3.7.5. 添加EtherCAT 第三方从站设备
3.8. 禁止TwinCAT的开机自启动
3.9. Bit变量合并成Word的用法
3.10. Reference用于双向操作变量
3.11. 其它提示
3.11.1. 弹出窗和提示。
3.11.2. TC2的控制器可以刷TC3的IMAGE试用
4. TwinCAT 3扩展功能
4.1. 引用库文件
4.1.1. 引用Beckhoff Aumation GmbH的库
4.1.2. 升级TC2的库文件
4.1.3. 引用第三方的库文件
4.1.4. 命名空间
4.2. Measurement
4.2.1. 基本操作
4.2.2. TC3 Scope Server,免费版与收费版的功能差别
4.2.3. Scope导出数据
4.2.4. 常见问题
4.3. 程序归档
4.3.1. Measurement项目的存储路径
4.3.2. TwinCAT项目的存储路径
4.3.3. 项目打包和解包
4.3.4. PLC程序的打包和解包
4.3.5. POU、DataType、Global VarList的导出和导入
5. 面向对象编程
5.1. 概述
5.1.1. 什么是面向对象编程
5.1.2. 关键名词:Function Block和Interface
5.1.3. 关键动词:Extend
5.1.4. 面向对象编程的3个用法
5.2. 建立一个带Method和Property的FB
5.2.1. 示例
5.2.2. 关于Method和Property的FAQ
5.3. 建立一个FB的扩展FB(Extend)
5.3.1. 示例
5.3.2. 关于Extend的FAQ
5.4. 建立一个Interface并实现(Impement)
5.4.1. 示例
5.4.2. 关于Interface的FAQ
5.5. 其它说明
5.5.1. 静态变量(Static)和临时变量(Temp)
5.5.2. 特殊的Method:FB_Init, FB_Exit, FB_Reinit
6. TwinCAT 3 PLC HMI
6.1. 基本操作
6.1.1. 画面编辑的基本步骤
6.1.2. 启用画面全屏运行功能
6.2. 中文显示
6.2.1. 中文文本的输入
6.2.2. 操作系统安装中文字体
6.2.3. 启用Unicode编码
6.3. 语言切换和动态文本
6.3.1. 用途
6.3.2. 动态文本的例子
6.3.3. 语言切换
6.3.4. 添加语言和TextList的导出导入
6.4. 安装、授权和全屏运行
6.4.1. 安装和授权
6.4.2. CE系统下如何全屏运行
6.4.3. Win7系统下如何全屏运行
6.5. 新增的控件
6.5.1. ComboBoxInteger和ComboBoxTable
6.5.2. GroupBox、RadioButton、CheckBox
6.5.3. TabControl
6.6. 报警功能
6.7. Place Holder的用法
6.8. FAQ
6.8.1. 改变风格
6.8.2. 其它问题
7. C++ 编程
7.1. C++编程环境的安装
7.1.1. 安装VS2012或者VS2013。
7.1.2. 安装TwinCAT 3。
7.1.3. 安装WINDDK7插件。
7.1.4. 添加环境变量。
7.1.5. 安装数字证书
1) 创建证书
2) 激活测试证书
3) 添加环境变量
4) 验证数字证书是否生效
7.2. 创建第1个C++项目
7.2.1. 基于模版新建一个C++项目
1) 新建项目
2) 添加一个C++程序
3) 观察一个空白的C++程序,包含哪些内容
4) 生成TMC代码
5) 编译C++模型
7.2.2. 建立基于Module的对象
7.2.3. 添加一个任务
7.2.4. 把模块实例指定给任务
7.2.5. 激活配置,看运行结果
7.3. 简单编辑C++模块
7.3.1. 修改接口变量
1) 找到编辑变量的介面
2) 增减变量
3) 生成TMC代码
7.3.2. 修改C++代码
1) 编辑代码
2) 编译程序
7.3.3. 激活更新后的项目
1) 激活运行
2) 在Symbol Watch中查看变量
7.4. 普通C++模块的发布和引用
7.4.1. C++模块的发布
1) 确定导出平台
2) 更新TMC文件。
3) 模型导出
4) 验证模型导出是否成功
7.4.2. C++模块的引用
1) 添加Task
2) 加入TcCom组件的实例对象。
3) 把C++的实例对象分配给前面添加的任务
4) 添加和编辑PLC程序
5) 在PLC变量映射到C++模型对象变量
7.5. 发布和引用带Interface的C++模块
7.5.1. 为C++模块添加Interface
1) 添加变量
2) 添加Interface
3) 实现Interface
4) 生成TMC代码
7.5.2. 为 Interface添加代码
7.5.3. 建立引用C++模块Interface的PLC程序
7.5.4. 指定PLC对象与C++模型对象的对应关系
7.5.5. 激活项目并运行
7.6. C++程序的调试和诊断
7.6.1. 使用TwinCAT Live Watch监视C++变量
1) 启用C++ Debugger功能
2) Attach to processs
3) Start new instance
4) 使用Live Watch观察和修改变量值
7.6.2. 在C++代码中使用断点
7.7. 集成客户现有的C++代码
7.7.1. 哪些代码可以集成
7.7.2. 集成C++代码步骤
7.7.3. TC3中的C++代码限制
7.7.4. 如何实现Win32 API的同等功能
7.8. FAQ
7.8.1. VS2013中打开低版本例程
7.8.2. CMoulde对象的ADS接口
8. 从TwinCAT 2 到TwinCAT 3
8.1. 概述
8.2. TC3的新功能
8.2.1. TC3的继承性
8.2.2. TC2与TC3的适用范围
8.3. TC2转换TC3的解决方案
8.3.1. TC2项目的转换
8.3.2. TC3 ADS通讯的转换
8.3.3. HMI的转换
附录:TcCOM技术