Modicon M340
编程手册
2
目录
第 1 章 Unity Pro 软件介绍及安装. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Unity Pro 软件概述 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
      1.1.
      1.2.
Unity Pro 软件的全新特性  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
安装 Unity Pro 软件  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
      1.3.
安装要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
      1.3.1
安装过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
      1.3.2
      1.3.3
Unity Pro 软件的语言选择  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Unity Pro 软件的注册 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
      1.3.4
卸载 Unity Pro 软件  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
      1.4.
      1.5.
Unity Loader 软件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
第 2 章 新建项目  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
创建项目步骤 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
      2.1.
      2.2.
Unity Pro 软件项目结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
项目浏览器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
      2.2.1
      2.2.2
配置编辑器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
      2.2.3
数据编辑器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
语言编辑器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
      2.2.4
工具条  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
      2.2.5
输出窗口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
      2.2.6
      2.2.7
状态栏  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
      2.3.
调用在线帮助 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
第 3 章 硬件配置  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
机架及模块配置  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
      3.1.
      3.1.1
选择机架. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
选择模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
      3.1.2
      3.1.3
模块参数配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
      3.1.3.1 离散量输入模块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
      3.1.3.2 离散量输出模块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
      3.1.3.3 模拟量输入模块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
      3.1.3.4 模拟量输出模块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
      3.1.3.5 热电阻 / 热电耦输入模块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
      3.1.3.6 高速计数模块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3
      3.2.
网络及总线配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
      3.2.1
以太网配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
      3.2.2
Modbus 总线配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
      3.2.3
CANopen 总线配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38
第 4 章 变量数据编辑  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
变量分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
      4.1.
      4.2.
数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
      4.2.1
基本数据类型 (EDT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40
导出数据类型 (DDT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
      4.2.2
如何创建导出数据类型 (DDT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
      4.3.
      4.4.
如何定义变量  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43
第 5 章 编程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
如何创建程序段. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48
      5.1.
软件选项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
      5.2.
如何调用 FFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
      5.3.
通过 “FFB 输入助手”调用 FFB ( 推荐 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50
      5.3.1
      5.3.2
通过 “数据选择”调用 FFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52
通过 “类型库浏览器”中的拖放功能调用 FFB  . . . . . . . . . . . . . . . . . . . . . . . . . .52
      5.3.3
      5.4.
梯形图 (LD) 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53
如何使用 LD 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53
      5.4.1
      5.4.2
应用实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
      5.5.
结构化文本 (ST) 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
如何使用 ST 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
      5.5.1
应用实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
      5.5.2
      5.6.
功能块语言 (FBD) 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
      5.6.1
如何使用 FBD 编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
      5.6.2
应用实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63
第 6 章 用户自定义功能块 (DFB). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
      6.1.
创建 DFB 功能块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
      6.1.1
定义 DFB 参数  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
      6.1.2
DFB 功能块编程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
保护 DFB 功能块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
      6.2.
      6.3.
应用程序调用 DFB 功能块  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
第 7 章 专用功能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
高速计数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
      7.1.
      7.1.1
功能模式介绍  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
BMXEHC0200 2 通道计数模块功能模式  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
      7.1.1.1
      7.1.1.2
BMXEHC0800 8 通道计数模块功能模式  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
      7.1.2
模块参数配置  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
      7.1.2.1 添加计数器模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
      7.1.2.2 配置计数功能模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
      7.1.3
在线调试计数器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
4
      7.2.
运动控制. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
      7.2.1
第一步:CANopen 总线配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
      7.2.2
第二步:运动树管理配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
      7.2.3
第三步:编辑运动控制程序段  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
      7.3.
串口通讯举例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
以太网通讯举例  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
      7.4.
第 8 章 程序保护  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
      8.1.
程序段保护 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
      8.1.1
设置程序段保护  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
解除程序段保护  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
      8.1.2
DFB 功能块保护 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
      8.2.
第 9 章   操作员屏幕. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
第 10 章 下载和调试程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
PLC 仿真器  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
      10.1.  
      10.2.
连接 PC 到 M340 PLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
      10.2.1
USB 编程电缆连接 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
      10.2.2 以太网电缆连接  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
      10.3.
调试程序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
      10.3.1 程序动态显示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
      10.3.2 联机修改程序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
5
6
Unity Pro 软件介绍及安装
1
1.1. Unity Pro 软件概述
Unity Pro V3.0 版软件是用于 Modicon M340、 Premium、 Atrium 和 Quantum 的通
用 IEC 61131-3 编程、调试和运行软件。 Unity Pro 提供的一系列完整的功能,能够
实现更高的生产率和更好的软件协同能力。 Unity Pro 编程软件可以从减少停机时
间、缩减开发成本、优化运行等多方面保证优化客户的软件投资,降低培训成本,
在开发和兼容性方面提供无可匹敌的潜力。
7
Unity Pro 软件介绍及安装
1.2. Unity Pro 软件的全新特性
b Unity Pro 软件全面支持中文
在 Unity Pro V3.0 版软件中,中文得到了全面的支持。不仅在程序中可以使用中文
的变量名、注释、程序段名、程序名、操作屏,还具备全中文的工作窗口,菜单,
选项卡,在线帮助和用户手册。
b Unity Pro 软件集成完善的仿真功能
集成在 Unity Pro 中的 PLC 仿真器可以在 PC 上准确的再现目标程序的行为。在仿
真中所有调试工具均可使用:
 断点和观察点
 实时监测,用于显示运行中变量和逻辑的状态
 程序单步执行
b 支持 5 种 IEC61131-3 编程语言
Unity Pro 支持全部 5 种 IEC61131-3 编程语言,同一项目中的任一代码段均可选择
不同的语言编程。这 5 种编程语言包括:
 LD:梯形图
 ST:结构化文本
 IL:指令表
 FBD:功能块图
 SFC:顺序流程图
8