CFC基础知识培训.docx

上传人:b****5 文档编号:5382928 上传时间:2022-12-15 格式:DOCX 页数:8 大小:60.41KB
下载 相关 举报
CFC基础知识培训.docx_第1页
第1页 / 共8页
CFC基础知识培训.docx_第2页
第2页 / 共8页
CFC基础知识培训.docx_第3页
第3页 / 共8页
CFC基础知识培训.docx_第4页
第4页 / 共8页
CFC基础知识培训.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

CFC基础知识培训.docx

《CFC基础知识培训.docx》由会员分享,可在线阅读,更多相关《CFC基础知识培训.docx(8页珍藏版)》请在冰豆网上搜索。

CFC基础知识培训.docx

CFC基础知识培训

第一章CFC必备基础

本章目的是介绍关于CFC的基本信息:

1)介绍CFC是如何结合到STEP7软件包中的;

2)描述了块的概念;

3)创建工程、测试工程的基本步骤。

什么是CFC?

CFC(continuousfunctionchart)是与STEP软件包结合使用的一个可视

化图形编辑工具。

类似的其他的编程工具有:

SCL、STL、LAD、FBD

利用已经创建好的块来为某个CPU创建整个特定功能的软件框架

基本过程就是把块拖入功能图表,赋给一定参数,然后把块相互连接起来。

(所谓块与块的相互连接就是把某个块的输出的值通过各种通讯方式传递给其他一个或多个块的输入)

用CFC编程你不再需要自己去关注算法以及计算机资源的分配和管理(如定义变量时分配内存地址等),而只需要把注意力集中到应用程序的工艺逻辑方面。

(实际上这样做的坏处是把计算机资源

完全与用户隔离起来,也就是开发程序必须以siemens已经提供

的块为基础,其他的计算机资源用户是无法访问到的。

这样也就把很多原来的Plc编程时候常用的编程技术给废除了。

某个块或者一组块可以一起拷贝或者移动,而不会破环它们相互之间的连接,这可以为编程省下很多的时间。

(方法:

选上、ctrl+

鼠标拖动)

名词解释

Project

CPUProgramChartsfolder

ChartchartpartitionsSheetssheetbarsOverflowpageNestedchartChartoverviewsheetview

CFC中的块

块---block

块类型定义规定了这个块的算法,块的名字,以及数据接口(即输入输出参数)

块的名字一般是块功能的简化缩写。

块的数据接口,即输入输出参数的数据类型有:

实型、整型、布尔型等。

如下表示S7

Abb.

Keyword

Meaning

Bits

A

ANY

Pointertodataelemeint

80

BO

BOOL

Logicalnumber

1

BY

BYTE

Sequenceof8bits

8

C

CHAR

Singlecharacter

8

CR

COUNTER

NumberofanS7counter

16

D

DATE

Cate

16

DB

BLOCKDB

NumberofaDB

16

DI

DINT

Doubleinteger

32

DT

DATEAND.TIMEorDT

Dateandtime

64

DW

DWORD

Sequenceof32bits

32

FB

BLOCKFB

NumberofanFB

16

FC

BLOCK-FC

NumberofanFC

16

1

INT

Integer

16

P

POINTER

Pointertomemoryarea

48

R

REAL

Flotiting-poinfnumber

32

S

STRING

Textstringofan/length

256bytes

SD

BLOCKSDB

NumberofanSDB

16

SN

STRINGfn]

Textstringwithmaximumncharacters,1

ST

STRUCT

Parenthesisforelementarydatatypesandotherstructures(nestingdepth:

8)

T

TIMEOFDAYorTOD

Timer

32

Tl

TIME

Duration

32

TR

TIMER

NumberofanS7timer

16

T5

S5TIME

DurationinS5formal

16

W

WORD

Sequenceof16bits

16

块的实例---blockinstanee

当把某个类型的块从块的库里面拖出来放到CFC的chart里面的时

候,就已经为这个类型的块创建了一个实例了。

有点类似于C++里面的类的概念。

这样做的好处是,当对某个类型的块进行了升级之后,原来程序中已经创建了的块的实例也会全部被升级到新的代码。

复杂的块---complexblock

能够利用很多的子功能组合完成复杂的功能。

而这些子功能本身由是由很多不同的块的实例组合来完成的,把这些组合块一起按块编译就生成了自己创建的块。

这个技术可以灵活的应用于应用程序的编写,相当于把很多的块组织起来完成某个功能,然后编译成自定义一个块。

块的分类---blockfamily

块可以根据其功能特性来进行分类成不同的类别。

组织块---organizationblock

CPU上运行的操作系统和用户程序的接口由各种任务组成,在S7中

称为组织块。

利用这些组织块,可以规定特定的程序在特定的时刻或者特定的情况下执行。

有CPU冷启动时执行的OB块,热启动时执行的OB块,有过程中断时执行的OB块,还有周期执行的OB块。

组织块与一般的块在概念上有很大的区别,组织块是指抽象的,而一般的块是具体的。

块的运行时属性run-timepropertiesofblocks

参考第二章第一节第5段“修改CFC程序”

theCatalog

是用来放“块”(blocks),chart,libraries的一个容器。

程序创建的基本步骤

1)创建工程结构(CPU->program->chartfolder->CFCchart)

2)利用自己创建块,并将它们引入工程中(blocksfrom

libraries,otherprogramorself-createdblocks;Import)

3)把块拖入chart中(insert)

4)为块配置必须的参数并把它们相互连接起来

(parameters/interconnect)

5)调整块的运行时属性(run-timeproperties)

6)编译程序(compile)

7)下载程序(download)

8)调试程序(commissionandtesting)

第二章实例演示

本章目的是让初学者通过演示实际的例子尽快熟悉CFC的编程过程

创建一个闭环控制系统模拟过程控制

创建工程

使用SIMATICMANAGER的菜单命令创建新的工程;

使用Hwconfig配置系统的硬件,这一步必须在下载程序之前完成。

(昨天凌智已经讲解了!

步骤:

A)FILEnew;输入工程名称“CFCEXA_2”

B)选中工程文件夹,insertprograms7program;

C)选中s7program文件夹,inserts7softwarechartfolder

D)选中chart文件夹,inserts7softwareCFC;CFC

(1)chart就被创建了,把它命名为control;

E)双击controlchart打开。

配置chart

模拟过程控制,用两个块“SAMP_AVE”和“CONT_C”实现。

关于”SAMP_AVE”和“CONT_C”的信息参考在线帮助。

插入块的步骤:

A)打开theCATALOG

B)定位到CFCLIBRARY,这个库里面就是我们编程需要的块的

集合

C)打开ELEM_400

D)拖入CONT_C

E)拖入SAMP_AVE

F)从sheetoverviewSheetview;optioncustomizeblock/sheet

barwidth

连接块的步骤:

改变块的外观:

通过修改块的属性来实现,

属性页1:

general

Name:

Comment:

属性页2:

inputs/outputs

Inivisable

Watched

Moreinformationblockobjectpropertyhelp给块的输入输出设定参数步骤:

完成默认值的输入,设置调试时需要监控的输入输出的watched属性。

编译和下装

A)chartcompilechartasprogram

B)PLCdownload

测试程序

测试的目的:

通过监控块的输入和输出,或者改变块的输入,来调整程序满足用户的要求。

没法强制块的输出!

替代的方法是:

如果某一个关键的控制量需要进行强制,只能利用Nsw来实现。

测试模式相关命令和选项

Testmodeon/off(on二激活测试模式,off=激活编辑模式)

Testsetting(监控画面的更新周期定义)

Processmode(所有块的输入输出都不能被监控)

Laboratorymode(所有块的输入输出都被监控)

修改CFC程序

一个chart上面的块都有特定的运行时属性。

这些属性决定了这些块在CPU中什么时候以什么顺序运行。

在S7中,是用OB块来组织CPU中各种运行序列(runsequenee的。

在TDC中,是用11~18,以及T1~T5来组织CPU中各种运行序列

(runsequenee的。

OB块就是s7的CPU的操作系统和用户程序之间的接口。

11~18,以及T1~T5就是TDC的CPU的操作系统和用户程序之间的接口。

当在program文件夹中插入一个CFCchart对象时,系统将自动会创建一个以该chart对象为名字的运行时间组。

可以自己定义运行时间组。

举例实现。

运行时间组包含的所有的块必须包含在一个运行序列中(run

sequence。

运行时间组可以被动态的enable/disabla举例实现。

块可以不属于任何运行时间组。

举例实现。

运行时间组可以定义扫描率scanrate和计算偏移时间phase

offset。

创建一个带I/O的chart

带I/O的chart可以被用来圭寸装已经编写好的CFCchart,以作为以后调用。

Add4实例演示;

单独CPU,并且去掉@sima系统chart

新建的chart必须要定义相应得chartIO

新建的chart上面所有的块必须要属于同一个T运行周期。

把带IO的chart放到另外一个chart中

Add4插入另外一个chart的实例演示;

把带IO的chart编译成一个块

Add4编译成一个块的实例演示;

单独CPU,并且去掉@sima系统chart

新建的chart必须要定义相应得chartIO

新建的chart上面所有的块必须要属于同一个T运行周期。

第三章介绍虚拟连接和通讯的实现

虚拟连接的概念和作用

为了完成通讯过程,用来把数据打包的成虚拟连接。

TDC的通讯过程

CFC中建立虚拟连接由各种通讯模板上的数据接口提供交换缓存机制CTV、CRV通过数据通道进行虚拟连接的传送和接收

TDC的通讯方式

@LOCAL

@GLOB

@PRODP

@TCPIP

@SRACK

WinCC和TDC之间的通讯

实际举例

SRACK1的实际例子

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 专升本

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1