©AB
B-1
-04
0102
3 C
JS
Control IT
Control Builder M
培训教材
©AB
B-2
-04
0102
3 C
JS
目标
学会使用 Control Builder M (IEC 61131-3标准)和 Control Modules的编程
This means that the focus is on the Control Builder functionality and benefits rather than on how to program 61131-3
©AB
B-3
-04
1023
CJS
启动控制器
©AB
B-4
-04
0102
3 C
JS
升级固件
确认控制器固件版本,使之与
Control Builder版本一致
用编程电缆连接控制器和PC AC800M 用 COM4
AC800C 用 COM0
升级(Serial Firmware Upgrade)
点击 Connect ,然后按 Reset 按钮
直到控制器
R 灯闪烁
点击 Upgrade ,直到看到完成信息
©AB
B-5
-04
0102
3 C
JS
设置IP地址
控制器的IP地址要与程序中的设置
匹配
用 Command Prompt和 ipconfig 命令来检查 PC的 IP 地址
©AB
B-6
-04
0102
3 C
JS
设置控制器的IP地址
从 Control Builder 菜单中启动启动
IPConfig 工具
确认 Settings / Com Port 端口要与串
行电缆连接的端口一致
点击 Connect ,然后按 Reset 按钮
直到控制器
R 灯闪烁
选择 Advance Mode 以便设置 IP
地址及子网掩码
键入控制器的IP 地址及子网掩码
©AB
B-7
-04
1023
CJS
Control Builder Layout
©AB
B-8
-04
0102
3 C
JS
Control Builder Layout
项目管理器窗口区域Project Explorer Pane
信息窗口区域Information Pane
©AB
B-9
-04
0102
3 C
JS
Control Builder 结构
Libraries – 重复使用方案
引入已开发的方案,或创建您
自己的方案
Applications – 控制逻辑
包括控制逻辑,数据类型,
功能块
Controller-控制器
定义硬件结构及任务
©AB
B-1
0-
0401
023
CJS
信息栏
Description
显示所选目标的描述
Check
显示所选目标的检查结果中的错
误信息
Message
显示在线或离线信息
©AB
B-1
1-
0410
23 C
JS
Controllers Hardware Setup 创建硬件结构
©AB
B-1
2-
0401
023
CJS
Control Builder 结构
Libraries – 重复使用方案
引入已开发的方案,或创建您
自己的方案
Applications – 控制逻辑
包括控制逻辑,数据类型,
功能块
Controller-控制器
定义硬件结构及任务
©AB
B-1
3-
0401
023
CJS
控制器
硬件
完全模拟设备结构
处理器CPU,
输入输出 I/O
总线设备 fieldbuses
©AB
B-1
4-
0401
023
CJS
项目管理器中的硬件树形结构
11
88
33 4455
66
112233
4455
66
7788
7722
©AB
B-1
5-
0401
023
CJS
如何添加新硬件
单击鼠标右键,插入需要的硬
件设备
©AB
B-1
6-
0401
023
CJS
激活需要配置的选项
编辑器显示可用的菜单项
如:
你只能在 CPU下添加通讯模件
然后在其下插入Profibus 设备
©AB
B-1
7-
0401
023
CJS
模件帮助信息
硬件配置详细文本信息可在左下角
列出
©AB
B-1
8-
0401
023
CJS
AC800 M CPU挂接何种设备, 如何连接?
如图所示:
数字代表硬件的物理位置
22
11
11
©AB
B-1
9-
0401
023
CJS
AC800C CPU挂接何种设备, 如何连接?88 77
112233445566
7788
11
2233
4455
66
©AB
B-2
0-
0401
023
CJS
PROFIBUS挂接的设备
AC800 C
Profibus Master
Profibus Slave on address 18
©AB
B-2
1-
0401
023
CJS
修正位置号
©AB
B-2
2-
0401
023
CJS
Settings (设置选项)
双击目标,进入设置窗口
也可单击鼠标右键,选择Editor
编辑对话框
可在不同栏之间切换
©AB
B-2
3-
0401
023
CJS
编程工具栏
使用现有设置,并关
闭窗口
使用现有设置 检查所选项是否有错误
©AB
B-2
4-
0401
023
CJS
Project Explorer工具栏
在线离线仿真不需要物理硬件,测试程序 下载程序并在线
在 Tools 菜单下,
可看到同样的选项
©AB
B-2
5-
0401
023
CJS
错误处理
在仿真的过程中如果出错,会得到
相应的提示
选中错误项,单击鼠标右键,选择Editor
选中错误项,单击鼠标右键,选择
Go to Error in Project Explorer
©AB
B-2
6-
0401
023
CJS
仿真方式
仿真
仿真方式是理想的离线测试工具,用
户可以不连接控制系统,运行其中的
应用程序及任务
如同真的在线运行一样,其性能与
PC性能有关
并且可以监控,或者强制变量数值
©AB
B-2
7-
0401
023
CJS
On-line help 在线帮助
可以按F1 找到相关帮助
Help about Control Builder functionality
Help about IEC 61131-3
Help about Hardware modules
使用
Index
Search capabilities
Favorites
也可以为用户自定义功能块编写帮助
文件
F1
©AB
B-2
8-
0401
023
CJS
可以在线浏览所有手册
©AB
B-2
9-
0410
23 C
JS
Program Editor
程序编辑
©AB
B-3
0-
0401
023
CJS
Control Builder 结构
Libraries – 重复使用方案
引入已开发的方案,或创建您
自己的方案
Applications – 控制逻辑
包括控制逻辑,数据类型,
功能块
Controller-控制器
定义硬件结构及任务
©AB
B-3
1-
0401
023
CJS
编程窗口
变量及功能块声明
控制逻辑
不同的编程语言,有不
同的外形风格,每个
CODE代表一段控制逻
辑
错误信息
工具栏
每个 Program 多至 100 个 CODE
©AB
B-3
2-
0401
023
CJS
变量
控制逻辑中使用的所有变量均需要
声明
可以使用program中的本地变量
local variable,也可使用在
Application 级声明的全局变量
Global Variables.全局变量可以在
Application 中的所有Programs 使 用
可以定义每个变量的属性
如:Initial Value (初始值)
I/O address ( I/O地址)
等……
©AB
B-3
3-
0401
023
CJS
变量名长度
变量名长度
Variables, functions, control modules, function blocks 等可到 32 个字符长
可包含字母 (a-z, A-Z), 数字 (0-9) 及下划线 (_)
第一个字符必须为字母或者下划线,不可以使用空格
为了增强可读性,可用下划线
Application, Library & Controller 名称限于 20 个字符
Task 名称可到 25个字符
其它的一般为20个字符
©AB
B-3
4-
0401
023
CJS
局部变量
双击Program可以看到变量及其属性
©AB
B-3
5-
0401
023
CJS
Global Variables (全局变量)
双击Application可以看到全局变量及其属性
©AB
B-3
6-
0401
023
CJS
变量属性
变量属性
ColdRetain
在热启动或冷启动状态,变量值不变
Constant
常量,不能更改其值
Retain
热启动时保持变量值,系统缺省为
retain,可清空或改写其属性
.
Initial Value
定义变量的初始值
I/O Address
定义变量所要连接的 I/O
Description
纯文本的方式描述变量功能属
性
©AB
B-3
7-
0401
023
CJS
数据类型
系统数据类型:
布尔型:BOOL
双整型:DINT
整型:
INT
无符号整型:UINT
双字型: DWROD
字型:
WORD
实型:
REAL
字符串型:STRING
©AB
B-3
8-
0401
023
CJS
数据类型
系统数据类型:
布尔型:BOOL 0, 1;
双整型:DINT 32 位包括符号位 –2147483648 ---- 2147483647;
整型:
INT 16位包括符号位- 32768 ---- 32767;
无符号整型:UINT 16位不包括符号位 0 --- 65536;
双字型: DWORD 32位string
字型:
WORD 16位string
实型:
REAL 32位浮点数
字符串型:STRING
©AB
B-3
9-
0401
023
CJS
数据类型—结构
定义
使用
©AB
B-4
0-
0401
023
CJS
编程窗口
包括控制逻辑
每个窗口可创建一种类型的
61131-3 控制逻辑
每个Program可编多至100个 Tab
鼠标右键单击 Tab
切换编程语言
改变名称
插入新的 tab
编程界面的风格因编程语言的不同
而不同
©AB
B-4
1-
0401
023
CJS
用TAB更好地组织程序
TAB:
• 每个TAB可以使用独立的编程语言
• 可以象MS Excel一样移动,重命名
•TAB定义程序执行的顺序
•单击鼠标右键可看到操作菜单
©AB
B-4
2-
0401
023
CJS
用数据输入助手,轻松编程
不必记住所有功能块的所有参数
声明你的类型,将其键入编辑器
输入类型的同时,数据输入助手会
随时弹出可能的参数,让你轻松编
程
©AB
B-4
3-
0401
023
CJS
简单的界面 – Browse for information
简单的输入列表,选择更方便
(Ctrl-J)
Variable 窗口
Ctrl-R 重复上次输入内容
用浏览功能将 variable指定到 I/O
变量窗口中Drag and drop变量即可赋
值给 I/O
编辑器根据所输入的字母,列出可能
的选项,如: 键入b – 编辑器会弹出
bool 类型
©AB
B-4
4-
0401
023
CJS
应用程序中可以使用Copy & Paste
如: Excel or Word 一样可以从
剪贴板 Copy , Paste
可能的操作实例:
Variable 声明
Structure Text 和 IL 文本及字符串
I/O 指定
1. 1. 在在ExcelExcel中定义中定义10 10 个个
Motor Motor
2. 2. 拷贝拷贝
3. 3. 粘贴到粘贴到Function Block Function Block 窗口窗口
©AB
B-4
5-
0401
023
CJS
Code pane中强大的搜索引擎
Standard Find
搜索字符串 string
跳至下一提示项
Ctrl-F
Find in Editor
键入查找的字符串等
”Find in Editor” 可列出所找到的字
符串所在的行
点击该行即可直接跳至目标位置
©AB
B-4
6-
0410
23 C
JS
Structure Text 结构文本
©AB
B-4
7-
0401
023
CJS
语法结构 (Syntax)
Statement 要以分号; 结尾
(* 注释 *)
可以在Windows application中使用COPY, PASTE
赋值 :=比较 =
©AB
B-4
8-
0401
023
CJS
使用 Insert Statement 快速编程
©AB
B-4
9-
0401
023
CJS
IF statement
©AB
B-5
0-
0401
023
CJS
FOR Statement
©AB
B-5
1-
0410
23 C
JS
Assign I/O I/O 赋值
©AB
B-5
2-
0401
023
CJS
Where to assign I/O
在Control Builder的Controller部分赋值
选择Controller 并浏览找到所需 I/O
双击 I/O 模件,弹出Settings 界面,
Connections界面等;
©AB
B-5
3-
0401
023
CJS
将 I/O 指定到信号
选择 I/O 模件,点击 browse
选择 I/O 通道
在程序编辑器中Program Editor可 以看到并修改赋值
©AB
B-5
4-
0410
23 C
JS
自动生成文档 Documentation
©AB
B-5
5-
0401
023
CJS
自动生成文档 Documentation
之前需要花大量时间记录 solutions 文档
通常打开 Word ,重复输入应用程序或记录
已有方案
使用 Control Builder 可以自动生成下列文档
Libraries
Applications
Controller 配置
©AB
B-5
6-
0401
023
CJS
生成Documentation
©AB
B-5
7-
0410
23 C
JS
How to structure your control logic
©AB
B-5
8-
0401
023
CJS
Why do you want to structure your application?
简便易读,易于理解
将控制逻辑分区
每个Code block 可以指定不同的
扫描周期,以及同一控制器中不同
的优先级
控制器之间的Code block 合理分
配
In Function Blocks
Application
Program
Function Block
In Control Modules
Application
Control Modules
Control Module
Function Blocks
©AB
B-5
9-
0410
23 C
JS
Task 任务
©AB
B-6
0-
0401
023
CJS
Structuring of your application
ProjectProject
Application1Application1 ApplicationxApplicationx
Program1Program1 ProgramXProgramX
Function Block1Function Block1 Function BlockXFunction BlockX
ProjectProject
Application1Application1 ApplicationXApplicationX
ControlModuleControlModule
ControlModuleXControlModuleX
Function Block1Function Block1 Function BlockXFunction BlockX
IEC 61131IEC 61131--33 Control ModulesControl Modules
ControlModule1ControlModule1
©AB
B-6
1-
0401
023
CJS
任务
6 个优先级
Time Critical – 0
Highest – 1
High – 2
Normal – 3
Low – 4
Lowest – 5
任务按其优先级执行
高优先级的任务可以中断低一级的
任务执行
每个任务可有其独立的扫描周期
优先级为 Time Critical 的任务只
可以有一个
Use tasks to make sure that you get the correct performance of your control logic
The performance of a controller is not unlimited
Pick the correct task for each application
©AB
B-6
2-
0401
023
CJS
Priority 0 任务 – Time Critical
高优先级的任务有如下特性:
此任务与其它任务执行不同,是由
系统实时时钟控制的精确任务
分辨率为 1 ms
Time Critical相关的优先级的任务
不能在线修改
离线修改Time Critical相关的优先
级的任务,需要重新编译应用程序
使用Priority 0 任务 ,要注意:
每个系统仅有1个任务可设为
Priority 0 任务
连接该任务的程序并不允许调用所
有功能
如包含非法指令,不能设为
Priority 0 任务
Priority 0 任务可在任意时刻中断
其它任务,如 mid-statement。
即使电源故障, Priority 0 任务仍
可执行完毕 (assuming that it can be completed within 1 millisecond)
如 warm start , time-critical task 中的code block 执行时间少于 1 ms
©AB
B-6
3-
0401
023
CJS
Structuring of the run-time environment
ProjectProject
Controller1Controller1 ControllerXControllerX
Task1Task1 TaskXTaskX
每个项目中可有多个控制器,每个控制器中可有多个任务
1 ms
10 ms
500 ms
100 ms
999 ms
Controller
©AB
B-6
4-
0401
023
CJS
Mapping between Control Logic and Controllers
ProjectProject
Application1Application1 ApplicationxApplicationx
Program1Program1 ProgramXProgramX
Function Block1Function Block1 Function BlockXFunction BlockX
ProjectProject
Application1Application1 ApplicationXApplicationX
ControlModule1ControlModule1 ControlModuleXControlModuleX
Function Block1Function Block1 Function BlockXFunction BlockX
可指定到控制器中的任务可指定到控制器中的任务
©AB
B-6
5-
0401
023
CJS
任务处理
建议使用建议使用offsetoffset预防控制器过载预防控制器过载
检查执行时间检查执行时间
强大的调试工具强大的调试工具run / halt run / halt 单步执行单步执行
设置优先级设置优先级
©AB
B-6
6-
0401
023
CJS
支持多任务
标准 tasks:
每个控制器可定义多至16 个任务
任务数量根据授权而不同 ,
(Control Builder license)
Basic 为 3 个任务
©AB
B-6
7-
0401
023
CJS
支持多控制器
合理分散负荷
合理分配应用程序,优化特性
合理分配应用程序,增加正常运行
时间特性
选择合适的控制器类型 ,达到
佳, 实用的效果
创建 new controller
©AB
B-6
8-
0401
023
CJS
支持多个应用程序
每个项目可以有多个应用程序
优化 code 结构
多个工程师编程
创建 new application
©AB
B-6
9-
0401
023
CJS
指定 application 到 controller
1. 1. 选择选择
Add ApplicationAdd Application
2. 2. 选择选择
ApplicationApplication
3. 3. 结果如下结果如下
©AB
B-7
0-
0401
023
CJS
将 code指定到不同的 controller
将 Application 指定到不同的控制
器 Controller
可提高性能
将重要的功能分散到不同的控制器
中
所有内部数据将自动定义
加速开发时间,减少人为错误
Application_No1Application_No1Application_No2Application_No2Application_No3Application_No3
MyProjectMyProject
Controller 1Controller 1
Controller 2Controller 2
©AB
B-7
1-
0401
023
CJS
指定 application 或
program 到 task
指定 program 到 task
指定 application 到 task
©AB
B-7
2-
0401
023
CJS
Applications 及 programs 在 Tasks中的分配
This controller can run both applications
This application runs in the Normal task of
Controller No1
This controller can run DemoApplication_No1
This program run in the Fast task of Controller No2
©AB
B-7
3-
0410
23 C
JS
Function Blocks
功能块
©AB
B-7
4-
0401
023
CJS
FBD Editor – 2 Panes
Structure Pane显示执行顺序
FBD Pane
可在两种视图中切换
©AB
B-7
5-
0401
023
CJS
插入功能块Inserte Function Blocks
没有 Function Blocks 时,
单击鼠标右键,Program Editor
至少有 1个Function Block 时,
选中1个
Function Block
单击鼠标右键
©AB
B-7
6-
0401
023
CJS
插入 Function Block 对话框
输入数量
点击自动弹出输入助手 Input Assistant
选择创建 Enable 信号
选择 Function Block
选择已声明的
功能块
©AB
B-7
7-
0401
023
CJS
连接FBD 功能块参数
1 (FBD to FBD )
选中输出
鼠标右键单击输入端,选择连接
Connect to Previous Selection
2 (FBD to FBD)
选中输出
按 Ctrl 键,并点击输入端
3 (FBD to Parm.)
选中输入/输出,右键点击,选择
”Connect”
1
2
3
©AB
B-7
8-
0401
023
CJS
Copy ,Paste 功能块
1. 选择功能块
2. 按 Ctrl-C ,然后 Ctrl-V
3 用 Motor2 代替 Motor1 ,点击OK
4. 功能块即被拷贝并重命名
©AB
B-7
9-
0401
023
CJS
自动声明变量
当连接 variables 到 Function Block时,自动声明
节约大量时间
当粘贴一个或一组功能块时
节约大量时间
©AB
B-8
0-
0401
023
CJS
FBD Editor – 分开 Code Pane将光标放至此处,拖动即可
split code pane
1 pane
2 pane
1 pane1 pane
©AB
B-8
1-
0401
023
CJS
FBD Editor – 功能块注释
注:也可在每页的第一个
功能块前加页注释
©AB
B-8
2-
0401
023
CJS
页及功能块Layout
设置页的 Layout
在 Structure View中可以用拖拽的方
法,重新排列功能块drag & drop
也可以剪切粘贴功能块 Cut & Paste, 并保持连接
©AB
B-8
3-
0410
23 C
JS
Ladder Diagrams
梯形图
©AB
B-8
4-
0401
023
CJS
类似功能块编程
Ladder 及 Function Block Editor 有许多相似点:
单击鼠标右键插入
insert Rungs
Function Blocks
拷贝,粘贴Copy , Paste 已有的
solutions
在行或者功能块处添加注释
连接pins时,自动声明变量
粘贴rungs 时,自动声明变量
©AB
B-8
5-
0401
023
CJS
插入行Inserting Rungs
在没有 Rungs的界面编程
在程序编辑界面右键单击鼠标
出现 Insert Rung
至少有一个元素时
选择 Rung ,右键单击鼠标
©AB
B-8
6-
0401
023
CJS
插入接点或功能块
选择元素,右键单击鼠标
梯形图中可以引用所有功能块
©AB
B-8
7-
0401
023
CJS
插入接点或功能块
插入接点
插入接点或功能块
©AB
B-8
8-
0410
23 C
JS
Instruction List
指令表
©AB
B-8
9-
0401
023
CJS
指令表编辑器
可跳转到的子程序
变量或者指令执行的操作数
指令的文本描述
执行指令
©AB
B-9
0-
0401
023
CJS
重要命令
LD - Load
Load the operand to the register
ST – Store
Store the register into the operand
JMP – Unconditional Jump
GT – Greater than
LT – Less than
JMPC –Conditional jump
Make a comparison in the instruction before
If the statement is true, then jump
R – Reset
Set the operand to 0 if the value of the register is 0
S – Set
Set the operand to 1 if the value of the register is 1
AND, OR, XOR, NOT, …
ADD, SUB, MUL , DIV
©AB
B-9
1-
0401
023
CJS
注释说明Comments
A comment starts with (# and ends with #)
©AB
B-9
2-
0401
023
CJS
指令表 IL 中调用功能块
变量 功能块
Instructions
©AB
B-9
3-
0410
23 C
JS
Sequential Function Charts
SFC
©AB
B-9
4-
0401
023
CJS
Sequential Function Charts
用于创建顺控程序
开泵Open Pump
启动电机 Start Motor
开加热器
50 s
降温
2 minutes
排空油箱Empty Tank
©AB
B-9
5-
0401
023
CJS
The SFC Editor
©AB
B-9
6-
0401
023
CJS
Step in details
步
进入该步执行的指令
此步内要完成的指令
退出此步时执行的命令
条件
©AB
B-9
7-
0401
023
CJS
How to end the lines
每一步的行结尾为分号
;
条件的结尾不需要分号 ;
©AB
B-9
8-
0401
023
CJS
Step in details
右键单击鼠标
Rename
步重命名 Rename
©AB
B-9
9-
0401
023
CJS
Possible steps and jumps
©AB
B-1
00-
0401
023
CJS
在线模式On-line mode
激活的步为蓝色
监控变量
©AB
B-1
01-
0401
023
CJS
Step Control
©AB
B-1
02-
0401
023
CJS
Step Timing
©AB
B-1
03-
0410
23 C
JS
Function Block Types
功能块类型
©AB
B-1
04-
0401
023
CJS
Function Block TypeInstances
Motor 1
Motor 2
Motor 3
Motor 4
不必重新开发,只需复用
Function Block Type
MotorControl
©AB
B-1
05-
0401
023
CJS
Control Builder 结构
Libraries – 重复使用方案
引入已开发的方案,或创建您
自己的方案
Applications – 控制逻辑
包括控制逻辑,数据类型,
功能块
Controller-控制器
定义硬件结构及任务
©AB
B-1
06-
0401
023
CJS
定义,使用功能块类型
Function Block Types
在 Library 中定义Function Block Types 在应用程序中使用
Function Block Types
©AB
B-1
07-
0401
023
CJS
变量,参数 Variables , Parameters
Variables 在 Function Block, Application ,Program等单元使用
Parameter 用于在功能块中传送数
据
Parameters
Variable
©AB
B-1
08-
0401
023
CJS
Parameters
用于在功能块类型中定义输入输出
Function Block Type
©AB
B-1
09-
0401
023
CJS
功能块中的变量类型
功能块类型中全局变量的连接双击功能块类型,并选择外部变量
Local Variable 局部变量双击功能块出现下列界面
在
Application中
定义全局变量
global variable
©AB
B-1
10-
0401
023
CJS
使用多种语言
A function block in FBD
Used in Structure Text
©AB
B-1
11-
0401
023
CJS
How to setup a PID in Control Modules
©AB
B-1
12-
0401
023
CJS
Insert ControlAdvancedLib
©AB
B-1
13-
0401
023
CJS
Open Control Modules
双击打开编辑器
©AB
B-1
14-
0401
023
CJS
Add a Converter from Real I/O to CC DataType
点击新的New Control Module
选择 AnalogInCC 转换输入信号在编辑器中定义其尺寸Size
©AB
B-1
15-
0401
023
CJS
设置名称 Name 和 Analog Input
Press the Hammer with the X to close the Window
结果
©AB
B-1
16-
0401
023
CJS
Add a Converter from CC to Real I/O Data Type
点击新 Control Module
选择 AnalogOutCC转换输出信号在编辑器中定义其尺寸Size
©AB
B-1
17-
0401
023
CJS
Add a Converter from CC to Real I/O Data Type
结果
©AB
B-1
18-
0401
023
CJS
增加 PID Controller
点击新 Control Module
©AB
B-1
19-
0401
023
CJS
Set the name of the PID Loop
结果
©AB
B-1
20-
0401
023
CJS
连接 AI 到 PID 的PV值
1. 点击连接 Connection
2. 双击下面
PID 连接,连到 PV值
可用 zoom 看其名称.
©AB
B-1
21-
0401
023
CJS
将 PID 输出Out 送至 AO
1. 点击
PID 输出连接
2. 双击 CC 连接到 AO , 可用 zoom 看其名称
Close the Control Module Editor
©AB
B-1
22-
0401
023
CJS
声明 Real I/O
双击
Application,打开全局变量窗口,声明变量
©AB
B-1
23-
0401
023
CJS
连接物理 I/O
©AB
B-1
24-
0401
023
CJS
仿真或加载 – Simulate 或 Download
双击编辑器
双击打开 Faceplate
©AB
B-1
25-
0401
023
CJS
b