S7-200PLC编程及应用 作者 廖常初 第6章.ppt

S7-200PLC编程及应用 作者 廖常初 第6章.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第6章 PLC的功能指令 6.1 S7-200的指令规约 6.1.1 使能输入与使能输出 图6-1 EN与ENO LD I2.4 MOVW VW10, VW14 // VW10→VW14 AENO /I VW12, VW14 // VW14/VW12→VW14 AENO MOVB VB0, VB2 // VB0→VB2 除数VW12为0时无能流流出。删除AENO后两个方框变为并联。 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: 6.1.2 梯形图中的网络与指令 一个网络中只能有一块独立电路。 输入语句表指令时必须使用英文的标点符号。 ? 6.2 程序控制指令 1.条件结束指令与停止指令 2.监控定时器复位指令 3.循环指令 图6-2 循环程序 【例6-1】在I0.5的上升沿,求VB10~VB29中20个字节的异或值。 网络1 LD I0.5 EU // 在I0.5的上升沿 MOVB 0, AC0 // 清累加器0 MOVD VB10, AC1 // 累加器1(存储区指针)指向VB10 FOR VW0, 1, 20 // 循环开始 网络2 LD SM0.0 XORB *AC1, AC0 // 字节异或 INCB AC1 // 指针AC1的值加1,指向下一个变量存储器字节 网络3 NEXT // 循环结束 网络4 LD I0.5 EU MOVB AC0, VB40 // 保存异或结果 6.3 局部变量表与子程序 6.3.1 局部变量表 1.局部变量与全局变量 程序中的每个程序组织单元POU(Program Organizational Unit)均有由64字节L存储器组成的局部变量表。局部变量只在它被创建的POU中有效,全局符号在各POU中均有效。局部变量有以下优点: (1) 尽量使用局部变量的子程序易于移植到别的项目。 (2) 如果使用临时变量(TEMP),同一片物理存储器可以在不同的程序中重复使用。 2.局部变量的类型 TEMP (临时变量):暂时保存在局部数据区中的变量。主程序或中断程序的局部变量表只有TEMP变量。 IN (输入变量):由调用它的POU提供的传入子程序的输入参数。 OUT(输出变量):子程序返回给调用它的POU的输出参数。 IN_OUT(输入_输出变量):其初始值由调用它的POU提供,并用同一变量将子程序的执行结果返回给调用它的POU。 3.局部变量的赋值 4.在局部变量表中增加新的变量 5.局部变量的数据类型检查 6.3.2 子程序的编写与调用 1.子程序的作用 子程序将程序分成容易管理的小块,使程序结构简单清晰,易于查错和维护。子程序调用是有条件的,可以多次调用,使用子程序可以减少扫描时间。 2.子程序的创建 3.子程序的调用 图6-5 局部变量表与模拟量计算子程序 图6-6 在主程序中调用子程序 LD I0.4 CALL 模拟量计算, AIW2, VW20, +2356, VD40 4.子程序的有条件返回 5.子程序中的定时器 6.4 数据处理指令 6.4.1 比较指令 图6-9 比较指令 图6-10 自复位接通延时定时器 6.4.2 数据传送指令 1.字节、字、双字和实数的传送 2.字节立即读指令MOV_BIR读取1个字节的物理输入, 字节立即写指令MOV_BIW写1个字节的物理输出。 3.字节、字、双字的块传送指令 “BMB VB20, VB100, 4”指令将VB20~VB23中的数据被传送到VB100~VB103。 4.字节交换指令 6.4.3 移位与循环指令 1.右移位和左移位指令 2.循环右移位和循环左移位指令 图6-12 移位与循环移位指令 图6-13 移位寄存器 6.4.4 数据转换指令 1.段译码指令, 2.数字转换指令 3.实数转换为双整数的指令 ROUND将实数四舍五入后转换为双字整数,TRUNC是截位取整指令。 4.译码指令 5.编码指令

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档