收藏 分享(赏)

西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt

上传人:myk79025 文档编号:4232297 上传时间:2018-12-17 格式:PPT 页数:65 大小:1.34MB
下载 相关 举报
西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt_第1页
第1页 / 共65页
西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt_第2页
第2页 / 共65页
西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt_第3页
第3页 / 共65页
西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt_第4页
第4页 / 共65页
西门子S7-300+400高级编程培训教材,内部教材12、分布式+IO+和参数分配.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

1、S7/M7工程工具,SCL,CFC,SFC,S7/M7工程工具,SCL,CFC,SFC,S7/M7工程工具,SCL,CFC,SFC,S7- GRAPH 软件包,T1,T2,T3,T4,T5,用于顺控器编程的工具 与 IEC 61131-3兼容 为满足制造业要求而设计 以图形方式把流程 细分为步和转换条件 步包含动作 转换条件检验步的激活条件 自动执行下列工作 计划,组态 编程 调试 启动 维护,诊断,顺序控制系统的程序结构,T1 转换条件 1,电机,限位开关,步激活条件,T2 转换条件 2,输入 1,输入 2,步激活条件,步 1,动作,动作,步 2,动作,动作,创建顺控器 FB,S7- GRA

2、PH用户界面,1,2,3,顺控器视图,总览,单页,单步,顺控器元素,T1,T2,T3,初始步,转换,T4,T5,顺控器结束,选择分支,打开,并行分支,打开,选择分支,闭合,并行分支,闭合,顺控器 1,T6,T7,T9,顺控器 2,S8,T9,跳转到 步 8,动作编程,T20,NC “Forward“ L1 S Q 4.3 D M3.0T#4s N A := B - C,“Door_closed“,联锁,( ),“Time_off“,监控,( ),“输入1“,“输 2“,步激活条件,使用简单指令的动作块 N = 未保存的赋值 S = 设定值(已保存) D = 有延时,不保存赋值,延时时间为T L

3、 = 时间限制 ,在限定时间内不保存赋值 CALL = 块调用,Step_block _1 N M1.1 S M1.2 R M1.3 D M1.4T#1H2M3S L M1.5T#4MS CALL FC1,步中的标准动作,使用条件指令的动作块 条件 带有标识符“C”(条件)的动作,仅在步的联锁条件为真(“C”1)时执行。 条件为零时存在联锁错误,受条件C限制的动作不会被执行。将该步打上标志,并且发送错误信息“Error” 。,Step_block _2 NC M1.1 SC M1.2 RC M1.3 DC M1.4T#1H2M3S LC M1.5T#4MS CALLC FB5.DB3,由联锁决

4、定的动作,使用事件驱动指令的动作块 动作在事件发生的扫描周期 中执行一次 时间 A1 = 确认 L1 = 联锁错误到达 L0 = 联锁错误离开 S1 = 步已激活 S0 = 步已取消激活 V1 = 监控错误到达 V0 = 监控错误离开,Step_block _3 A1 N M1.1 L1 N M1.2 L0 N M1.3 S1 N M1.4 S0 N M2.4 V1 N M2.5 V0 N M2.6,由事件触发的动作,使用定时器与计数器的动作块,动作中的定时器和计数器,Step_block _4 S1 CU C3 A1 CSC C2C#123 S1 TL T5S5T#2M3S L1 TDC T

5、6S5T#4MS,总是与事件关联。 在发生事件的扫描循环中 引发执行一次动作 也可以与联锁条件C组合,计数器 CS = 设置计数 CU =增计数 CD =减计数 CR = 复位计数,定时器 TL = 扩展脉冲 TD = 延时开 TR = 复位时间,带指令的动作块,动作中的数学运算,Step_block _5 N MW0 := IW40 S1 NC A_1 := B_2 N C_1 := BCD_TO_NUM(IW4) A1 N E_5 := EXP(MD22) S1 N X_Diff := X_new - X_old S1 N Path:= V_act * Delta_T,总是需要动作 标识符

6、N 也可以关联到一个事件 或/且结合联锁条件C,赋值 直接赋值,例如:A := B 使用内置函数赋值 转换函数,例如C := ROUND(D) 数学函数,例如E := SQRT(D) 其它函数,例如F := RLDA(G) 使用算子赋值,例如A := B + C,转换条件、步联锁和步监控,T3 Valves_on,“Valve_1“,“Valve_2“,CMP =I,MW0,MW2,“Door_closed“,联锁,( ),“Time_off“,监控,( ),(步)联锁,(步)监视,转换,步,固定指令,顺控器前的固定指令,顺控器后的固定指令,“Limit switch“,“EMER_OFF“,

7、“Brake closed“,“Controller enable“,1,2,“Valve_2 open“,3,CALL FC1INIT:= (BOOL) (IN),“Safety door closed“,1,“Feed enable“,“Pushbutton“,固定条件固定块调用,2,3,CALL FC1INIT:= (BOOL) (IN),固定条件固定块调用,CALL FC5TEMP:= (INT) (IN)PRESS:= (INT) (IN) RESULT:= (INT) (OUT),创建可执行块,“Motor“,“Limit switch“,Step-enabling conditi

8、ons,“Input 1“,“ Input 2“,Step-enabling conditions,保存顺控器为 Blocks中的可执行S7块,FB17,保存顺控器为SO中 的S7-GRAPH源文件,S7-GRAPH 源文件,在OB1中集成FB调用,块创建或者调用 中的参数集 最小调用参数 1个输入参数,用于控制顺控器 标准调用参数 12个输入参数,用于控制顺控器 7个输出参数,用于显示运行状态 最大参数集 17个输入参数,用于控制顺控器 12个输出参数,用于显示运行状态,标准参数集,最小参数集,激活调试功能,步骤 下载顺控器FB和背景数据块 使用菜单项PLC - Download,把顺控序列

9、FB和背景数据块下载到PLC 选择背景数据块 通过选择下列菜单项,选择希望用于测试的背景数据块 Debug - Test Environment 启动“Monitor”功能 选择顺控系统需要使用的部分。当前可见部分的状态信息将在打开的窗口中显示。 激活菜单项 Debug - Monitor(打勾) 退出“Monitor”功能 取消激活菜单项 Debug - Monitor,S7- HiGraph 软件包,1,2,4,位置,凸轮开关,索引输入,索引输出,旋紧/松开,计数器轴承,工件,左转,右转,电机,使用状态图表 编程的工具: 机器划分为功能单元 对每个功能单元创建状态图 状态包含动作 状态图以

10、消息方式通信 可以使用S7-HiGraph优化 自动化项目中的以下阶段: 计划,组态 编程与调试 启动 维护,诊断 支持重新利用,状态图方法的原理,1,2,4,位置,凸轮开关,索引输入,索引输出,旋紧/松开,计数器轴承,工件,左转,右转,电机,实例:铣床轮盘 功能单元(FU) 电机 索引 计数器轴承 状态图 每个FU一张图 附加一张协调图,状态图的组件,状态0,1, . 表示为圆圈 静态状态 动态状态 总是有一个激活状态 状态配有动作 转移 表示为箭头 转移配有转移条件和动作,0,4,1,2,3,1,1,2,1,1,1,实例:电梯控制器的状态图,电机,三楼 门的 状态图,二楼 门的 状态图,一

11、楼 门的 状态图,电梯状态图,三楼,二楼,一楼,带门的电梯,0,6,3,1,5,4,2,1,1,1,1,1,1,1,1,3,2,0,1,1,1,1,1,3,2,0,1,1,1,1,1,3,2,0,1,1,1,1,1,创建状态图,HiGraph用户界面,1,2,3,插入状态和转移条件,动作编程,转移条件编程,固定指令编程,图组编程,分配实际参数,选中的 实例,状态图之间的消息交换,电梯状态图,. . .,电梯的接口声明,状态2的入口动作,A To_floor_2; S Door_2_opn;,名称 数据类型 消息 Door_2_opn bool out,A Door_opn,t01的转移条件,门

12、的状态图,门的接口声明,名称 数据类型 消息 Door_opn bool in,Door_2_opn/Door_opn,0,6,3,1,5,4,2,1,1,1,1,1,1,1,1,3,2,0,1,1,1,1,1,为消息分配实际值,选中的 实例,保存和编译,建立执行顺序 菜单: Edit - Execute Order 编译 菜单: File - Compile 在OB1中集成 参数INIT_SD赋值,FC 图组,DB 图组的 数据,S7-HiGraph中的调试功能,S7- SCL高级语言编程,编写PLC程序的高级语言与IEC 61131-3文本兼容 (ST=结构化文本) PLCopen基础级认

13、证 包含高级语言的全部典型元素,例如算子、表达式、控制语句 集成PLC功能, 例如访问 I/O、定时器、计数器.) 优势: 结构清晰,易于阅读程序 支持复杂算法和大数据量,FUNCTION_BLOCK Integrator VAR_INInit : BOOL; / 输出值复位 x : REAL; / 输入值 Ta : TIME; / 采样时间,ms Ti : TIME; / 集成时间,msulim : REAL; / 输出值上限llim : REAL; / 输出值下限END_VARVAR_OUTPUTy : REAL:= 0.0; / 初始化输出值为0 END_VARBEGIN IF TIME

14、_TO_DINT(Ti)= 0 THEN / 被?除OK := FALSE; y := 0.0; RETURN;END_IF;IF Init THEN y:= 0.0;ELSE y := y+TIME_TO_DINT(Ta)*x/TIME_TO_DINT(Ti); IF y ulim THEN y := ulim; END_IF; IF y llim THEN y := llim; END_IF; END_IF; END_FUNCTION_BLOCK,SCL源文件结构,. .,FUNCTION_BLOCK FB10,END_FUNCTION_BLOCK,声明部分,表达式部分,属性,块的声明部分

15、,声明部分,Begin(* 语句部分 *),FUNCTION_BLOCK fb_name,END_FUNCTION_BLOCK,属性,CONSTCONSTANT:=5;P_Part:=0.8; END_CONSTVARVal1,Val2,Val3 :INT; END_VAR,块的语句部分,声明部分,Begin(* 语句部分 *),FUNCTION_BLOCK fb_name,END_FUNCTION_BLOCK,属性,Begin/赋值实例Measured value:=0 ;/控制表达式 /的实例IF I1.1 THENN:=0;SUM:=0.0;ELSIF START = TRUE THEN

16、N:=N+1;SUM:=SUM + IN;ELSEOK:=FALSE;END_IF;/ 子程序调用实例FB11.DB22(Pass:=10);,S7-SCL中的表达式、算子和操作数,表达式 数学表达式 (3+CONST_INT)*(VAR_INT * 37)/ 3.14) 比较表达式 A =9 逻辑表达式 (n 5)AND(n 、=、= 逻辑算子 NOT、AND或&、XOR、OR 操作数 常量 30. 0、FACTOR、SIEMENS 扩展变量 Status、IB5、DB10.DW5、Motor.Current、 FC12(A:=On) 括号中的表达式 (3+CONST_INT)*(VAR_I

17、NT * 37),S7-SCL中的语句,赋值 实例: A := B + C; 控制语句 IF语句 IF I 1.1 THEN . ELSIF . ELSE . END_IF CASE语句 CASE SELECTOR OF 1: .; 2: . ELSE: . END_CASE FOR语句 FOR INDEX := 1 TO 49 BY 2 DO . END_FOR WHILE语句 WHILE INDEX = 50 DO . END_WHILE REPEAT语句 REPEAT . UNTIL INDEX:= 51 . END_REPEAT CONTINUE语句 WHILE BOOL_1 DO .

18、 CONTINUE . END_WHILE EXIT语句 WHILE BOOL_1 DO . EXIT . END_WHILE GOTO语句 IF INDEX 23 THEN GOTO MARK; . RETURN语句 IF ENABLED THEN RETURN; . 功能块和功能调用 FB或SFB调用 FB11.DB20(IN:=VAL1, BY:=VAL2); FC或SFC调用 RETURN := FC32(IN:=VAL1,OUT:=VAL2);,S7-SCL中的赋值,局部变量 基本数据类型 COUNTER :=(5 + RUNVAR)* 2; 结构 整个结构 STRUCT_1 :=

19、STRUCT_2; 分量 STRUCT_1.COMP3 := STRUCT_2.COMP1; 数组 整个数组 ARRAY_1 := ARRAY_2; 分量 ARRAY_1I := ARRAY_2 J; 全局变量 CPU存储区 绝对地址 VALUE := IW10; 符号地址 VALUE := INPUT ; / 符号表中的“INPUT” 变址 VALUE := IWINDEX; 数据块 绝对地址 VALUE := DB11.DW5; 符号地址 VALUE := MOTOR.CURRENT; / MOTOR和CURRENT必须 变址 VALUE := MOTOR.DWIndex; / 在符号表中

20、存在 通过输入参数 VALUE := I_PAR.DWIndex; / I_PAR 被声明为VAR_IN,S7-SCL中的IF语句,语法IF THEN ELSIF THEN /可选.ELSE /可选END_IF 实例IF INPUT_OK THENN := 0; SUM := 0.0; OK := FALSE; / 设置OK标志为FALSEELSIF START_OK THENN := N + 1; SUM := SUM + IN;ELSEOK := FALSE;END_IF;,S7-SCL中的WHILE语句,语法WHILE DO END_WHILE 实例FUNCTION_BLOCK SEAR

21、CH / SEARCH在符号表中声明VAR INDEX : INT; KEYWORD : ARRAY150 OF STRING;END_VARBEGININDEX := 1;WHILE INDEX KEYDO INDEX := INDEX + 2;END_WHILE; END_FUNCTION_BLOCK,调用功能块,作为全局实例调用 绝对调用FB10.DB20(X1 := 5, X2 := IW12,.); (* 调用FB10,带背景数据 块DB20 *) 符号调用DRIVE.ON(X1 :=5, X2 := IW12,.); (* DRIVE和ON 在符号表中声明*) 作为局部实例调用 使

22、用标识符调用VAR MOTOR : FB10;END_VARBEGIN . . . (* 可能在其它功能块中 MOTOR(X1 := 5, X2 := IW12,.); 作为局部实例调用*),用于辨识出错的“OK”标志,用于错误检测的全局位 (在块末尾复制到BR位)实例:/ 设置OK变量为TRUE,激活 / 一个检测,以查看 / 以下动作是否被正确 / 执行OK := TRUE; SUM := SUM + IN; IF OK THEN / 加法执行正确 . ELSE / 加法溢出 . END_IF;,编译SCL源文件,连续监视,设置和编辑断点,用于SIMATIC S7和SIMATIC M7的C

23、FC,CFC(连续功能图): 用于写PLC 程序的图形化工具 将功能块放置到一个绘图片上,然后将各个块互连 可以在下列单元之间互连:- 在 I/O 域之间 - 连接到其他图表的块 在页边栏中管理互连的源 块和目的块优点 面向工艺工程师的编程方式 加速程序编写、调试和启动 过程,1. 插入块,2. 为块设置参数,并相互连接,3. 匹配参数属性,4. 编译/下载,5. 调试,6. 完成,不用编程即可组态CFC应用程序,STEP 7项目中的图表,CFC编辑器,图表总览,表单视图,块概念插入块,通过拖放插入,COMPARE块家族,块,运行时间属性,块类型,已连接 的输入,输出,块体,块头,块名称,注释

24、,已赋值的参数输入,数据类型,互连输入/输出,信号取反,多连接,连接到全局地址,使用符号表进行选择,地址输入,页边条目,块属性,块文件夹中FB的序号,FB的背景数据块,块属性,在更多OB中安装,运行时间属性,块输入/输出,数据类型,缺省值,参数不显示在CFC中,参数名称,参数类型,编译和下载程序,CFC不能使用 的FC序号,CFC不能使用 的DB序号,下载,测试和调试,测试模式 打开/关闭,监视启动,添加I/O,移除I/O,监视登记的I/O,未添加的I/O,通过S7- SFC组态顺序控制系统,S7-SFC:顺控序列 编程工具 根据过程自动化 的要求而设计 与 IEC 61131-3兼容 步分配数值给 CFC中的块 转移检查 步激活条件 创建时检查语法直接连接到CFC 用“拖放”传递数值 交叉索引选择WinCC中的可视化,CFC/SFC与SCL的协作,CFC,使用SCL进行 动作组态,SFC,CFC/SFC 的协作,

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

当前位置:首页 > 实用文档 > 简明教程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报