如何读STL程序

上传人:油条 文档编号:47752183 上传时间:2018-07-04 格式:PPT 页数:21 大小:253.50KB
返回 下载 相关 举报
如何读STL程序_第1页
第1页 / 共21页
如何读STL程序_第2页
第2页 / 共21页
如何读STL程序_第3页
第3页 / 共21页
如何读STL程序_第4页
第4页 / 共21页
如何读STL程序_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《如何读STL程序》由会员分享,可在线阅读,更多相关《如何读STL程序(21页珍藏版)》请在金锄头文库上搜索。

1、Automation and Drives如何读STL程序:如果读程序时发现自己不明白的语言,可以: 1,转换成梯形图:快捷键ctrl1,当然大多数 都转换不过去; 2,按下F1寻求帮助; 3,下载此程序到模拟器中,单步观察效果,看 一看哪些寄存器发生改变。系统的逻辑错误造成的停机往往是由于提示错 误前面的错误引起的。Automation and DrivesSTL指令及其结构:语句指令: 操作码 操作数执行该操作所需要的信息 有些语句指令不带操作数,它们操作的对象是唯一的。NOT /对逻辑操作结果(RLO)取反。 A I 0.1 /对输入继电器 I 0.1 进行与操作L MW10 /将字MW

2、10装入累加器1定义要执行的功能Automation and Drives操作数:操作数: 标识符 标识参数L M W 10表示操作数在该存储区域 内的具体位置 主标识符:表示操作数所在的存储区 主要有:I(输入映像区),Q(输出映像区) ,M(位存储区),PI(外部输入),PQ(外部 输出),T(定时器),C(计数器),DB( 数据块),L(本地数据)等 辅助标识符进一步说明操作数的位数长度 包括有:X(位),B(字节),W(字2字节),D(双字4字节) 表示操作数存放区域及操作数 位数(位、字节、字等) Automation and Drives操作数表示:存储区域 位字节字双字输入映像区

3、(I) I IB IW ID输出映像区(Q) Q QB QW QD位存储区(M) M MB MW MD外部输入存储区(PI) PIB PIW PID外部输出存储区(PQ) PQB PQW PQD数据块(用“OPN DB”打开 ) DBX DBB DBW DBD数据块(用“OPN DI”打开 ) DIX DIB DIW DID临时堆栈(L) L LB LW LDAutomation and Drives寻址方式 :立即寻址立即寻址SET /把 RLO (Result of Logic Operation)置“1”L 27 /把整数27装人累加器1L C#0100 /把 BCD码常数0100装入累

4、加器1 立即寻址立即寻址:对常数或常量的寻址方式,操作数本身包含在指 令中Automation and Drives编程、调 试及故障 排除现场设备 详细介绍系统及网 络介绍数据格式:7654321010.710.610.510.410.310.210.1 10.0MB10MB11MB12MB13MB14MW10MW12MW11MD11MB15MD12MD10Automation and Drives编程、调 试及故障 排除现场设备 详细介绍系统及网 络介绍实例:数据分配举例Automation and Drives数字表示方法:BYTE:L B#16#10L byte#16#10 WORD:

5、L 2#1000000000000L W#16#1000L word#16#1000 DWORD:L DW#16#A21234L dword#16#A21234INT:L 1 D INT :L L#1 REAL:L 1.234567e+13 TIME:L S5T#1H1M50SAutomation and Drives寻址方式 :直接寻址直接寻址A I0 . 0 /对输入位I0.0进行“与”逻辑操作S L20 . 0 /把本地数据位L20.0置1= M115 . 4 / 将RLO的内容传给位存储区中的位M115.4L DB1 . DBD 12 /把数据块DB1双字DBD12中的内容传送给累加器

6、1/双字表示32位,如浮点数为32为双字直接寻址寻址:在指令中直接给出操作数的存储单元地址Automation and Drives寻址方式 :存储器间接寻址存储器间接寻址存储器间接寻址间接寻址 :标识参数由一个存储器给出,存储器的内容对应该标识参数的值(该值又称为地址指针)这种寻址方式能动态改变操作数存储器的地址,常用于程序循环过程中的寻址。 A IMD 2 /对由MD 2指出的输入位进行“与”逻辑操作,如: MD 2值为/2#0000 0000 0000 0000 0000 0000 0101 0110表示I 10. 6L IBDID 4 /将由双字DID 4指出的输入字节装入累加器1,如

7、:DID 4值为/2#0000 0000 0000 0000 0000 0000 0101 0000表示对IB10操作OPN DBMW 2 /打开由字MW2指出的数据块,如MW2为3,则打开DB3 Automation and Drives寻址方式 :寄存器间接寻址寄存器间接寻址( (指针指针) )寄存器间接寻址间接寻址 :在S7中有两个地址寄存器(AR1和AR2)地址寄存器的内容 偏移量 地址指针L P#8.6 /将P#8.6装入A 1LAR1 /将累加器1的内容传送至地址寄存器1L P#10.0 /将P#10.0装入A1LAR2 /将累加器1的内容传送至地址寄存器2A IAR1,P#1.0

8、 /AR1+偏移量(9.6)= QAR2,P#4.1 /AR1+偏移量(14.1)LAR1 P#STAT53 / 把指针指向STAT53 L 0 / 把0装入ACCU1 T DIW AR1,P#0.0 /把地址寄存器内指向起始地址区的数据赋值Automation and Drives在线监视很多时候 需要在线 监视的。在线监视 的情况如 图,各个 寄存器的 情况详见 下页。Automation and Drives系统的内部寄存器:S7 CPU的寄存器有(7个):累加器 32位累加器1 (ACCU1) 主 累加器2 (ACCU2) 辅2个32位累加器*地址寄存器 32位 地址寄存器1 (AR1

9、)地址寄存器2 (AR2)2个32位地址寄存器*数据块地址寄存器 32位共享数据块 DB 背景数据块 DI 2个32位数据块地址寄存器状态字寄存器 16位状态位 1个16位状态字寄存器* Automation and Drives系统存储区:S7300 CPU有三个基本存储区:外设I/O存储区 P输出(映像区) Q输入(映像区) I位存储区 M定时器 T计数器 C系统存储区系统存储区存放操作数据(I/O、位存储、定时器等 )物理上是CPU的RAM ,存储区的大小因CPU型号而异。临时本地数据存储区 (L堆栈)可执行用户程序: 逻辑块(OB、FB、 FC) 数据块(DB)工作存储区工作存储区存放

10、CPU运行时,所执行的用户程序单 元逻辑块(OB、FB、FC)、数据块( DB)的复制件;存放临时本地数据 ,这部分存储区称L堆栈(主要是存放 用户程序的临时变量)物理上是CPU模块的部分RAM动态装载存储区: 存放用户程序装载存储区装载存储区存放用户程序物理上是CPU的部分RAM、EEPROM、外置FEPROM等Automation and Drives名 称 存储区 存 储 区 功 能 输入(I) 过程输入映像 表 每个扫描周期开始,读取过程输入值,记录输入映像表 访问方式:位、字节、字、双字 输出(O) 过程输出映像 表 扫描周期结束,输出映像表内容输出端口 访问方式:位、字节、字、双字

11、 外设输入(PI) 外设输出(PO) 外设输入/输出 外设存储区允许直接访问现场设备 访问方式:字节、字、双字(不能访问位) 位存储区(M) 中间的变量存放程序运行的中间结果,访问方式:位、字节、字、双字 定时器(T) 定时器 计时时钟访问该存储区中的计时单元 定时器指令可以访问该存储区和计时单元 计数器(C) 计数器 计数器指令可以访问该存储区 临时本地数据存储 区(L) L堆栈 在FC、OB块运行时,块变量声明表中临时变量存放在该存 储区。 数据块(DB) 数据块 DB块存放数据信息,可被所有逻辑块访问(共享数据块) 或被FB块特定占用(背景数据块使用DI访问) 1,外设访问(P)不通过映

12、像区;2,有些变频器等超出了映像区的范围所以,只能使用外设访问(P) ;3,外设访问(P)在程序执行到此位置时进行读写操作,而普通的输入输出,则在程序开始读入,结 束输出;Automation and Drives状态字:15876543210BR CC1 CC0 OSOVORSTARLO FC首次检测位首次检测位 * *逻辑操作结果逻辑操作结果* * 状态位状态位 或位或位 溢出位溢出位 溢出状态保持位溢出状态保持位 条件码条件码0 0 条件码条件码1 1 二进制结果位二进制结果位 状态字表示CPU执行指令时所具有的状态,用户程序可以访问和检测状态字,并可以根据状态字中的某些位决定程序的走向

13、和进程。 Automation and Drives逻辑操作结果(RLO):Result of Logic Operation, RLO位置:状态字位 “1”作用:存储位逻辑指令或算术比较指令的结果。无法判断RLO的数值时,可以查看FC位的情况。 在某行按下F1,就知道该指令是否影响RLO。见下 页Automation and DrivesSTA STA表示被操作的数据的当前状态,0或者1; 仅表示布尔量; 非布尔量的数值以ACCU累加器表示 例如第一句为 AN I0.0 I0.0 现在为0,则STA为0; 但是执行完毕后RLO为1。Automation and DrivesFC/RLO的变化

14、示例:语句表 实际状态 检测结果 RLO FC说明 0 FC0:下一条指令开始新逻辑串 A I 0.0 1 111首次检测结果存放RLO,FC置1 AN I 0.1 0 111检测结果与RLO运算,结果存 RLO =Q1.0 10RLO赋值给Q1.0,FC清0 I0.0I0.1Q1.0Automation and DrivesDI 和 DB 的区别 访问背景数据块时,使用DI;当然也 可以使用DB访问背景数据块; DI的作用体现在:再单个FB里面调用 了除背景数据块外的其他数据块时, 可以用DB进行操作,而背景数据块可 以使用DI进行操作。如右图:可以 OPN DB DBMS /以后所有的DB* 操作均是对应DB4, 而所有的DI*操作均对应DB433 CDB交换数据块内容,例如把 背景数据块里面的内容与共享 数据块交换,可以访问共享数 据块,进行操作处理。Automation and DrivesL 的对应好多程序里面直 接使用L变量, 此时你可以上 Temp里面查看 ,寻求对应关系 ,如果找不到对 应关系也无所谓 ,当一个临时变 量使好了,出了 这个块就什么都 没了。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号