欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    TwinCAT编程指南.ppt

    • 资源ID:5451291       资源大小:387.50KB        全文页数:108页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    TwinCAT编程指南.ppt

    ,TwinCAT PLC ControlIEC 61131-3 编程热线电话:,2023/7/8,德国倍福电气有限公司上海代表处,Page 2,TwinCAT,Runtime,TwinCAT,System Manager,TwinCAT,PLC,TwinCAT,NC/CNC,TwinCATTotal Windows Control and Automation Technology,2023/7/8,德国倍福电气有限公司上海代表处,Page 3,国际上承认的标准 逐步的在不远的将来所有供应商将采用它 统一的结构,语言和操作处理方式将来自所有供应商 它节省你的时间 统一的软件模式和数据类型概念 对来自不同的PLC类型你只需学习一次 减少了误解和错误 标准的函数和功能块 测试软件的可重复使用性,IEC(International Electrotechnical Commission)61131-3是 IEC 61131国际标准的第三部分,是第一个为工业自动化控制系统的软件设计提供标准化编程语言的国际标准。,IEC 61131-3的优势,2023/7/8,德国倍福电气有限公司上海代表处,Page 4,支持安全和高质量编程设计 轻松和舒适的结构 数据类型避免了编程错误 对每个问题提供了最佳编程语言 一致的 5 种编程语言规范 文本和图形语言 高级语言的可用性 不同语言混合编程,IEC 61131-3的优势,2023/7/8,德国倍福电气有限公司上海代表处,Page 5,PLCopen是使PLC软件不依靠于供应商和独立于产品的世界组织.它通过发布和强化IEC 61131-3 软件开发标准,给工业控制系统的用户带来很大的价值.,IEC 61131 标准给出了可依据的准则资格证书给用户提供了通向真正 IEC 61131-3 编程系统的引导(例如 PLC开放资格表列出符合该标准的产品),PLCopen国际组织是一个独立于制造商和产品的国际组织,总部位于荷兰。致力于IEC61131标准的推广并取得了很大成功。,PLCopen 组织,2023/7/8,德国倍福电气有限公司上海代表处,Page 6,为消除混乱,PLCopen.已规定了3 层具有特性建立的编译.已规定了鉴定资格程序.有了资格测试协会.开发好的测试软件,在成员中共享.已规定了证书程序.并有了已被鉴定产品的成员,PLCopen 组织,2023/7/8,德国倍福电气有限公司上海代表处,Page 7,应用程序,整个编译层(未来目标)可转载的应用程序,携带层(正在进行)可转载的函数(功能块)库,基本层(已存在)可转载的最小系统,PLCopen 组织,2023/7/8,德国倍福电气有限公司上海代表处,Page 8,IEC61131-1 通用信息(1992)IEC61131-2 装置要求与测试(1992)IEC61131-3 编程语言(1993)IEC61131-4 用户导则(1995)IEC61131-5 通信服务规范(2000)IEC61131-7 模糊控制编程软件工具实施(2000)IEC61131-8 IEC61131-3语言实现导则(2001)2000年8月由PLCopen组织向IEC提出增加IEC61131-X 功能 安全性,目前尚处在草案阶段。,IEC 61131 概况,2023/7/8,德国倍福电气有限公司上海代表处,Page 9,在这个标准中的定义和术语相关/参照 IEC 标准的列表可编程控制器系统的主要功能特性,通用信息,IEC 61131 标准 第1部,2023/7/8,德国倍福电气有限公司上海代表处,Page 10,对可编程控制器和关联外设的电气,机械和功能要求服务,储存和运输条件厂商提供的资料为确认可编程控制器和关联外设资格的测试方法和程序,装置要求与测试,IEC 61131 标准 第2部,2023/7/8,德国倍福电气有限公司上海代表处,Page 11,软件-,通讯-和 编程-模式5 种内部连接编程语言的定义两种文本和两种图形语言的语法和语句:指令表(IL),结构化文本(ST),梯形图(LD)和功能块图(FBD)顺序功能图(SFC)-为组建程序结构,编程语言,IEC 61131 标准 第3部,2023/7/8,德国倍福电气有限公司上海代表处,Page 12,帮助用户在:利用可编程控制器标准的其它部分为应用程序详细说明需求选择和实现系统,用户导则,IEC 61131 标准 第4部,2023/7/8,德国倍福电气有限公司上海代表处,Page 13,基于 MMS(制造商信息规范),通信服务规范,IEC 61131 标准 第5部,2023/7/8,德国倍福电气有限公司上海代表处,Page 14,从上至下或从底向上的编程 以程序组织单元为单位(POUs)Program Organization Unit 逐级构建程序,良好的结构,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 15,编译器探测不同数据类型的分配 减少编程错误,强大的数据类型测定,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 16,不同的任务具有不同的优先级和不同的PLC循环时间,全执行控制,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 17,功能流程图 具有步骤,动作和转移的流序 可选分枝和同步分枝流程,复杂的流程控制,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 18,用户定义数据元素 包含不同的基本的或用户定义的数据元素 通过自己的POU传递数据结构,数据结构,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 19,两种文本语言(IL,ST)三种图形语言(FBD,LD,SFC)针对问题选择适当的语言,灵活的语言选择,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 20,服从 IEC 61131-3标准 基本层鉴定(PLCopen)输入/输出接口,独立于供应商的软件,IEC 61131 主要特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 21,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 22,最高层,描述了整个控制系统的架构。一个配置可被比作一个可编程控制器系统。在一个配置里可以定义一个或几个资源。在TwinCAT 中 一个或多个PLC,配置 Configuration,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 23,一个配置有一个或多个资源“实质”PLC:自己的全局变量,POU,任务等.在 TwinCAT:就是一个 PLC 运行核(Runtime),资源 Resources,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 24,对一个相关程序的周期的执行,实施控制单元一个资源有一个或多个任务有优先级时序排列(03,共四个级别)优先权和循环时间任务调用一个或多个程序任务决定了所关联程序的时间调度。,任务 Task,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 25,程序,是根据控制器过程的需要,包含了函数和功能块的一个逻辑组合的POU。任务调用程序 程序调用功能块和函数TwinCAT:程序调用其它程序,程序 Program,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 26,程序调用功能块功能块可调用功能块或函数FB 有输入,输出变量FB 有运算法则:每次FB被执行,就是运行一段程序编码,功能块(FB)Function Block,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 27,程序或功能块可调用函数函数有输入变量,和一个输出变量函数有运算法则:每次函数被执行,就是运行一段程序编码函数可以调用另外的函数,但不能调用功能块,函数 Function,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 28,FB:例程,全部数据分配内存地址 函数:没有指定的内存分配地址 FB:多个输出变量或没有输出变量函数:一个输出变量FB:可调用功能块或函数函数:可调用函数,但不能调用功能块,功能块和函数之间的区别,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 29,变量在一个POU(程序,功能块或函数)中定义说明.只能在这个POU中访问,局部变量,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 30,变量在一个资源(PLC 运行核-runtime)中定义说明 每个POU都可访问,全局变量,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 31,具有固定地址的变量 地址:输入(I),输出(Q),标记(M)类型:位(X),字节(B),字(W),双字(D)例如:%IW12,%QX1.1,%MB5,直接描述变量,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 32,所有变量被初始化默认初始值或用户定义的初始值被分配给所有变量使能所有任务,开始执行任务,“冷“启动,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 33,不进行变量初始化 原值被使用使能所有任务,开始执行任务,“热“启动,IEC 61131 软件模型,2023/7/8,德国倍福电气有限公司上海代表处,Page 34,字母不分大小写(abc=Abc=ABC)语法术语关键字是敏感字母,总是大写字母 没有特殊的国家字符,限制字符设定,IEC 61131 共有特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 35,第一个字符不能是数字 不能连续使用多于一个的下划线(_)允许的:ab_c,AB_de,_AbC 不允许的:1abc,_abc,a_bc 头 32 个字符有意义,标识符,IEC 61131 共有特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 36,特殊字(如 FUNCTION)被保留语法术语关键字总是大写字母 你不能使用语法术语关键字作标识符,语法术语关键字,IEC 61131 共有特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 37,注释语用(*和*)框住可将注释语放在任何地方,但不能插在语句中对语句表(IL)有些限制注释语允许几行表示注释语不允许嵌套,注释,IEC 61131 共有特性,2023/7/8,德国倍福电气有限公司上海代表处,Page 38,不同的基本的数据类型数据类型有整数,浮点数,位和位组,时间和日期值 和字符串,数据类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 39,类型名描述 占用内存 SINT短整型 8 INT整型16 DINT双整型 32 LINT长整型 64(not available)USINT无符号短整型 8 UINT无符号整型16 UDINT无符号双整型 32 ULINT无符号长整型 64(not available),整型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 40,允许十进制,十六进制(16#),八进制(8#)和 二进制(2#)表示可用下划线(_)作单元分隔对INT的十进制表示:-123,+234,0,1_000对INT的十六进制表示:16#F1,16#0A_1B对INT的二进制表示:2#0001_0011_0111_1111,整型表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 41,类型名描述 占用内存 REAL实数 32 LREAL 长实数 64,浮点数类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 42,十进制小数或指数表示 1000.23;1.23e3;1.23E3 和 1.23E03 是同样的,浮点数(实数)表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 43,类型名描述 占用内存 TIME时间 32,时间数据类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 44,在文字前加 TIME#,t#或 T#允许溢出(例如 25 小时)使用d 表示天,h 表示小时,m 表示分,s 表示秒和 ms 表示毫秒可使用下划线(_)作单元分隔T#2d_26h_4m_12s_123ms,持续时间表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 45,类型名 描述 占用内存DATE 日期32TIME_OF_DAY或 TOD 一天中的时间32DATE_AND_TIME或 DT 日期和时间32,日期和时间数据类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 46,用 DATE#或 D#表示日期 用 TIME_OF_DAY#或 TOD#表示一天中的时间 用 DATE_AND_TIME#或 DT#表示日期和时间 日期:D#1998-12-07表示 7th July 1998 一天中的时间:TOD#12:00:00.123日期和时间:DT#1998-12-07-12:00:00.123,日期和时间表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 47,类型名描述 占用内存STRING字符串 取决于字符长度(N+1)Byte,字符串数据类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 48,用 引括字符 用$插到特殊字符前(换行$L,制表$T等)字符串表示:this is a line feed character$L 空字符串:,字符串表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 49,类型名描述 占用内存BOOL bit 1BYTE 8 位 8WORD16 位 16DWORD32 位 32LWORD64 位 64(not available),位和位组数据类型,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 50,TRUE 或 1 FALSE 或 0 用十进制,十六进制,八进制 或 二进制表示 字-WORD:234,16#ff,2#1001_1100_0011_1111,位和位组表示,IEC 61131 基本数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 51,根据基本数据类型或其它用户定义的数据类型建立自己 的数据类型 用一个 TYPE.END_TYPE 结构框架定义你的数据类TYPEmyOwnReal:REAL;END_TYPETYPEmyArray:ARRAY0.1000 OF BOOL;END_TYPE,IEC 61131 派生数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 52,根据基本数据类型或其它用户定义的数据类型建立自己的 数据结构类型用一个 STRUCT.END_STRUCT 结构框架定义你的结 构数据类型 TYPE myStruct:STRUCTstatus:BOOL;inputValue:REAL;END_STRUCTEND_TYPE,IEC 61131 派生数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 53,建立自己的枚举数据类型 用括弧中的变量数值定义你的枚举数据类型TYPE Modes:(Initialisation:=0,Running:=1,Idle,Reset,Faulty);END_TYPE Initialisation=0,Running=1.,IEC 61131 派生数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 54,数组是一个具有同样数据类型(基本类型或用户定义类型)的 数值集合 允许三维数组TYPE matrix:ARRAY1.23,0.1 OF INT;END_TYPE,IEC 61131 派生数据类型,2023/7/8,德国倍福电气有限公司上海代表处,Page 55,具有基本类型或用户定义类型的局部和全局变量用一个 VAR.END_VAR 结构框架声明变量同样数据类型的变量用逗号列出 VARa,b,c:REAL;d,e:BOOL;f:ARRAY1.12 OF BOOL;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 56,在程序,函数或功能块(FB)中的输入变量 用一个 VAR_INPUT.END_VAR 结构框架声明变量VAR_INPUTa,b,c:REAL;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 57,在程序和功能块(FB)中的输出变量 用一个 VAR_OUTPUT.END_VAR 结构框架声明变量VAR_OUTPUTd,e:INT;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 58,在程序和功能块(FB)中的输入和输出变量 在 POU内部允许更改变量 用一个 VAR_IN_OUT.END_VAR 结构框架声明变量VAR_IN_OUTx:STRING;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 59,全局变量 允许从所有 POU 中读写的变量用一个 VAR_GLOBAL.END_VAR 结构框架声明变量VAR_GLOBALvar:UDINT;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 60,变量属性 RETAIN:在关电后,值被保存.并且TwinCAT启动 后,值恢复.CONSTANT:值不能被修改 AT:变量被指配存储器位置(固定地址),IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 61,直接表示变量 以字符%起始 第二个字符为 I 对应 输入地址区INPUT,Q 对应 输出地址区OUTPUT和 M 对应 内存地址区MEMORY,标识符 AT 地址:数据类型;,%I,%Q,%M,AT,标识符,X,B,W,D,Byte,Data type,Byte,Bit,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 62,直接表示变量 第三个字符为 X 对应 位,B 对应 字节,W 对应 字,D 对应 双字和 L 对应 长字(not available).例如:%IB24,%QX1.1,%MW12,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 63,直接表示变量地址可以交迭%MB12 是%MW12 的第一个字节,也是%MD12 的第一个字节%MX12.0 是%MB12 的第一位,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 64,变量初值设定 每个变量在启动期间被赋初值 所有变量可改变默认初值 VARa:INT:=13;b:STRING:=this is a string;c:REAL:=1.1;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 65,派生数据类型变量的初值设定 结构:用括弧和对每个成员名赋初值VARa:myStruct:=(status:=TRUE,inputValue:=2.5);END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 66,派生数据类型变量的初值设定 数组:使用逗号分隔设定多重初值VARa:ARRAY1.10 OF INT:=1,2,2,4,5,6,7,8,9,10;END_VAR,IEC 61131 变量,2023/7/8,德国倍福电气有限公司上海代表处,Page 67,内部数据不存储几个输入值一个输出值用户定义的函数可以用各种语言编辑代码(除了SFC)函数名必须是返回值的名,IEC 61131 函数,2023/7/8,德国倍福电气有限公司上海代表处,Page 68,例如FUNCTION Average:REAL(*variable declaration*)VAR_INPUTIN1,IN2:REAL;END_VAR(*code body programmed in ST*)Average:=(IN1+IN2)/2;END_FUNCTION,返回值的数据类型,返回值名=函数名,IEC 61131 函数,2023/7/8,德国倍福电气有限公司上海代表处,Page 69,超载函数 一些函数可以处理不同的数据类型(调用操作)a,b:REAL;c,d:INT;a:=ABS(b);(*用 REAL 作输入和输出*)c:=ABS(d);(*用 INT 作输入和输出*),IEC 61131 函数,2023/7/8,德国倍福电气有限公司上海代表处,Page 70,数据类型转换函数在不同数据类型之间需转换数值,你必需使用转换函数a:REAL;b:INT;b:=REAL_TO_INT(a);,IEC 61131 函数,2023/7/8,德国倍福电气有限公司上海代表处,Page 71,标准 IEC 61131-3 函数 位组 AND,OR,XOR,NOT,SHL,SHR,ROL,ROR 数学 ADD,SUB,MUL,DIV,MOD,EXPT,ABS,SQRT,LN,LOG,EXP,SIN,COS,TAN,ASIN,ACOS,ATAN 类型转换例如 BOOL_TO_BYTE,REAL_TO_DINT 选择 SEL,MIN,MAX,LIMIT,MUX 比较 GT,GE,EQ,LT,LE,NE 字符串LEN,LEFT,RIGHT,MID,CONCAT,INSERT,DELETE,REPLACE,FIND,IEC 61131 函数,2023/7/8,德国倍福电气有限公司上海代表处,Page 72,设立输入,输出和内部变量运算法则建立新的输出和内部变量参数被保持到下次执行(在存储器中)功能块例程是一个结构,包含所有输入,输出和内部变量一个FB 允许建立多个例程,IEC 61131 功能块,2023/7/8,德国倍福电气有限公司上海代表处,Page 73,在 FB 的外部只有输入,输出和输入/输出变量传递参数在其它FB或程序中,以不同的编程语言使用 FB 调用一个 FB 例程在调用的 FB/程序中是一个变量或全局变量FB例程可以是对其它FB/程序的输入变量,IEC 61131 功能块,2023/7/8,德国倍福电气有限公司上海代表处,Page 74,FUNCTION_BLOCK CounterVAR_INPUTMode:INT;(*0=Reset,1=Count*)END_VARVAR_OUPUTOut:INT;(*actual counter value*)END_VARIF Mode=0THENOut:=0;(*reset*)ELSIF Mode=1THENOut:=Out+1;END_IF;END_FUNCTION_BLOCK,老的计数值加 1 得到新的记数值,IEC 61131 功能块,2023/7/8,德国倍福电气有限公司上海代表处,Page 75,标准 IEC 61131-3 功能块 触发器SR,RS,SEMA 沿探测R_TRIG,F_TRIG 记数器CTU,CTD,CTUD 定时器TP,TON,TOF,RTC,IEC 61131 功能块,2023/7/8,德国倍福电气有限公司上海代表处,Page 76,程序可以有输入,输出,局部变量和算法的程序代码部分不同于FB:程序没有例程程序没有存储器在程序中使用各种语言程序由任务来调用(TwinCAT:可由其它程序调用),IEC 61131 程序,2023/7/8,德国倍福电气有限公司上海代表处,Page 77,PROGRAM MainVARcounter_1:Counter;(*instance of FB Counter*)actCount:INT;END_VARIF bfirstCycleTHENcounter_1(Mode:=0);(*call FB with reset mode*)ELSEcounter_1(Mode:=1);(*call FB with count mode*)END_IFactCount:=counter_1.Out;(*use output variable of*)(*counter_1*)END_PROGRAM,IEC 61131 程序,2023/7/8,德国倍福电气有限公司上海代表处,Page 78,用任务控制执行执行不同循环时间的程序指派任务的优先级(要求无间断运行的程序必需有最高优先级)TwinCAT:每个PLC运行核(Runtime)有四个任务 强制优先时序,IEC 61131 任务,2023/7/8,德国倍福电气有限公司上海代表处,Page 79,0,10,20,30,40,50,t(ms),任务 1 具有优先级 0 和 循环时间 10 ms任务 2 具有优先级 1 和 循环时间 30 ms任务 3 具有优先级 2 和 循环时间 40 ms,任务 1 中断 任务 2,任务 1 中断任务 3,IEC 61131 任务,2023/7/8,德国倍福电气有限公司上海代表处,Page 80,文本语言 结构文本(ST Structured Text)指令表(IL Instruction List)图形语言 功能块图(FBD Function Block Diagram)梯形图(LD Ladder Diagram)顺序功能图(SFC Sequential Function Chart),IEC 61131 编程语言,2023/7/8,德国倍福电气有限公司上海代表处,Page 81,高级语言(类似 PASCAL)复杂公式(赋值命令)具有条件和反复陈述的流控 用制表符和注释使得编码易读,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 82,分配值和表达式赋值Ai:=B;Ai+1:=SIN(SQRT(Ai+3);C:=timer.Q;(*timer is an instance from FB TOF*)D:=E/F+COS(Ai+1);bFlag:=X AND Y OR Z;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 83,条件语句 IF THENELSIF THENELSEEND_IF,(*示例:*)IF temp20 THEN heating_on:=TRUE;ELSE heating_on:=FALSE;END_IF;(*温度低于20度,加热器打开,否则关闭。*),IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 84,CASE OF:.:ELSEEND_CASE;,(*示例:*)CASE INT1 OF1:BOOL1:=TRUE;BOOL2:=FALSE;2:BOOL1:=FALSE;BOOL2:=TRUE;ELSE BOOL1:=FALSE;BOOL2:=FALSE;END_CASE;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 85,循环语句FOR TOBY DOEND_FOR;,(*示例:*)FOR i:=1 TO 100 BY 1 DOai:=0;END_FOR;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 86,WHILE DOEND_WHILE;,(*示例:*)i:=1;WHILE i 100 DOai:=0;i:=i+1;END_WHILE;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 87,REPEATUNTIL END_REPEAT;,(*示例:*)i:=1;REPEATai:=0;i:=i+1;UNTIL i 100 END_REPEAT;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 88,EXIT在 EXIT 语句被执行后,在反复循环后的下个语句将被执行RETURN执行了RETURN 语句后,当前的POU(FB or 函数)执行被中断,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 89,调用功能块例子VARtimer:TOF;out:BOOL;END_VARtimer(IN:=TRUE,PT:=T#1s);.timer(IN:=FALSE);out:=timer.Q;,IEC 61131 结构文本(ST),2023/7/8,德国倍福电气有限公司上海代表处,Page 90,低级语言(类似汇编程序)面向累加器的每行只允许一个操纵,如存储一个值到累加寄存器用跳转和标号控制流程注释在每行的后面,IEC 61131 指令表(IL),2023/7/8,德国倍福电气有限公司上海代表处,Page 91,标号操作符 操作数 注释LDTRUE(*load TRUE*)STvar1(*store in var1*)JMPClabel1(*jump conditional*)LDFALSE(*load FALSE*)STvar2(*store var 2*)label1:LD12(*load int literal*)ADDvar4(*add*)STvar3(*store var3*),IEC 61131 指令表(IL),2023/7/8,德国倍福电气有限公司上海代表处,Page 92,调用函数和功能块 使用 CAL 操作,IEC 61131 指令表(IL),2023/7/8,德国倍福电气有限公司上海代表处,Page 93,三种方法调用 FB:使用输入一个列表CAL FB1(in:=TRUE,mode:=4)在调用前装填输入LDTRUEST FB1.inLD 4ST FB1.modeCALFB1 使用输入参数只适用于标准FB,使用标准变量名(例如.counter-up 的输入变量 CU),IEC 61131 指令表(IL),2023/7/8,德国倍福电气有限公司上海代表处,Page 94,操作符,操作数,有条件跳转,标号,IEC 61131 指令表(IL),2023/7/8,德国倍福电气有限公司上海代表处,Page 95,图形表示 FB,函数和程序以及它们的相互关联图全图形式块图“线连“在一起允许跳转和返回,IEC 61131 功能图(FBD),2023/7/8,德国倍福电气有限公司上海代表处,Page 96,行号,段注释,函数,分配值,IEC 61131 功能图(FBD),2023/7/8,德国倍福电气有限公司上海代表处,Page 97,继电器梯形图,利于复杂的 AND 和 OR 逻辑网图 基于 US 编程形式 左端垂直电源线连带触点和线圈 触点表示布尔变量 允许跳转返回,IEC 61131 梯形图(LD),2023/7/8,德国倍福电气有限公司上海代表处,Page 98,行号,触点,调用功能块,左电源线,右电源线,线圈,IEC 61131 梯形图(LD),2023/7/8,德国倍福电气有限公司上海代表处,Page 99,描述复杂的序列的语言 具有 动作 和 转移 的状态系统 通过划分成小部分来编复杂的部分每个单元(动作-action,转移-transition)可以用任何 IEC 语言编程,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 100,步骤 表示流程的一个状态 特殊步骤:初始化步骤 转移 条件,当为 TRUE 时,下一步骤激活,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 101,选择性:分枝和合并在所有选择性路径的转移指定是否这个路径被选择转移在选择性路径的末端从左到右优先,同步性:分枝和合并 在所有同步路径上的所有步骤同时起动 在末端有一个转移,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 102,初始化步骤,普通步骤,转移,选择性分枝,选择性合并,同步性分枝,同步性合并,跳转,动作,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 103,Init.X,Step1.X,Step2.X,a,b,c,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 104,步骤(step)普通步骤有步骤名 初始化步骤,每个图只用一个 激活标记用.X 释放时间用.T 转移(transition)带有布尔结果的变量,语句 或 ST 表达式,动作(action)用所有5种语言编程 使用限定控制执行,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 105,N,None不存储 R复位一个存储动作 S设定一个动作(存储)L时间限制动作,在给定的周期后停止 D时间延迟动作,在给定的周期后启动 P脉冲动作,步骤激活时动作一次和步骤失效时动作一次 SD存储和时间延迟,在给定的周期后设定 DS动作被延迟和存储 SL存储和时间限制,动作限定,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 106,动作限定,Init.X,Step1.X,Step2.X,Action1,Action2,set,reset,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 107,动作限定,Action1,Action2,c,Step2.X,2s,2s,1s,1s,IEC 61131 功能流程图(SFC),2023/7/8,德国倍福电气有限公司上海代表处,Page 108,谢谢大家!,

    注意事项

    本文(TwinCAT编程指南.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开