广西西门子S7-1200代理商(欢迎您)总代理西门子S7-1200的间接寻址功能
前面给大家介绍了西门子S7-200系列PLC的间接寻址功能,接下来给大家介绍下西门子S7-1200系列PLC的间接寻址的功能,S7-1200系列的PLC间接寻址功能不同于S7-200系列PLC的间接寻址功能,S7-1200系列PLC的间接寻址功能主要是对DB块中所建立的数组进行寻址,根据对数组下标值的访问和修改来实现对数组中元素值的读取或写入。
在S7-1200PLC中,若需要根据数组下标值来对数组中元素的访问有两种方式可以实现,一是通过大家熟悉的梯形图来编写程序实现,二是可以通过SCL的编程方式来编写这样的程序实现。这里通过一个简单的例子为例,分别通过这两种方式如何实现通过索引数组的下标值来实现对数组中元素的访问。
例子说明:
假设需要从一组数据中找出一个值,并记录这个值是这组数据中的第几个数据。
先以大家相对来讲比较熟悉的梯形图的方式来实现此功能。这里我们需要用到通过读取域或写入域的指令,该指令根据索引的下标值来读取数值中相对应元素的值或写入数到数组中相对应的元素里。此例子中只需要用到读指令,指令位于移动操作指令中的“原有”文件加中。
读取数组中元素值的指令格式如下:
名称 | 数据类型 | 功能描述 |
INDEX | DINT | 数组的下标值 |
MEMBER | 取决数组中所建立元素的数据类型 | 数组中的个元素 |
VALUE | 取决数组中所建立元素的数据类型 | 存放根据下标值读取出来的数组元素中的值 |
举例:
表示把数据中的data这个数组中的data[5]这个元素的值读取出来放入到MW100这个变量中。
写入数组中元素值的指令格式如下:
名称 | 数据类型 | 功能描述 |
INDEX | DINT | 数组的下标值 |
VALUE | 取决数组中所建立元素的数据类型 | 把该值写入到通过下表指定的对应的数组元素中 |
MEMBER | 取决数组中所建立元素的数据类型 | 数组中的个元素 |
举例:
表示把数据20写入到数据块1中的变量名为data的数组中的data[3]元素的存储器中。
在本例中,我们只需要用到个指令,接下来设计一个如例题中所要求的梯形图程序。
程序编写思路:
本例题要去找出值,并把值所处的位置记录下来,编程思路:假设变量MAX_DATA作为值的存储器,然后根据下标值(INDEX)的多少去读取相应数值中对用的元素的值放于TEMP_DATA变量中,然后与MAX_DATA做比较,若MAX_DATA的值要小,则进行交换,同时记录INDEX值。然后INDEX加1,可以指向数组中的下一个元素。
注:流程图不太标准,但希望对大家理解这个编程思路有所帮助,接下来主要对程序的编写进行介绍
介绍了读取和写入数组中元素值的指令Field Read和Field Write两条指令,同时给大家简单的分析了程序的设计思路。接下来就使用Field Read来实现本功能,在程序的设计过程中可能还需要用到循环跳转指令。
例子说明:
假设需要从一组数据中找出一个值,并记录这个值是这组数据中的第几个数据。
步:
添加一个全局DB块,并在DB块中建立一个变量名为data_1#,数据类型为数组的变量,用于存储需要找出的数据,同时建立一些相应的变量,如下图所示。
第二步:
初始化相应的存储器并把存储值的存储器的值设置为Z小值。程序如下所示:
第三步:
编写判断数据的挨个比较是否完成,当执行的次数与设定的次数相等时,则表示完成,可以跳出值查找的程序,让程序跳转到执行。程序如下所示:
第四步:
编写读取数组中元素的值,然后与存储值的存储器中的值做比较,用于判断数据存储器存储的值是否是值,若不是值进行数据交换,同时记录位置,然后INDEX的值加1,同时记录执行次数并与设定次数做比较,如未达到设定次数,则跳转换前面继续通过Field Read指令读取数据出来继续做比较。
程序仅供参考,希望对大家在以后使用此功能上时有所帮助。
广西西门子S7-1200代理商(欢迎您)总代理
IO-link通过通信标准 IO-link,可将传感器和分断装置智能连接到控制层。IO-link 促进了控制柜和现场层中了所有部件的集成,实现直至终过程仪表的大集成度和无缝通信。
西门子的 IO-link 解决方案可确保任何生产系统实现高精度和经济实用性。IO-link 已完全集成在全集成自动化 (TIA) 中,具有众多优点。
借助于开放式标准,可以将来自不同厂商的设备联网
简易接线促进了安装过程
接线工作量减少,节省了安装时间与成本
GX工程组态功能促进了组态与调试
高速诊断可确保缩短工厂停产时间,实现较高工厂可用性
较高的过程透明度可实现GX能源管理
SIMATIC ET 200S – 功能全面的 I/O 设备:
可通过多导线连接进行独立的模块化配置
因具有广泛的模块而功能多样:电机起动器、变频器、安全技术、分布式智能以及 IO-link 模块
可在危险区域 (Zone 2) 中使用
也可以带集成数字量 I/O 的可扩展 I/O 模块的形式提供:SIMATIC ET 200S COMPACT。
SIMATIC ET 200M – 多通道 S7-300:
使用标准 SIMATIC S7-300 模块的模块化设计;也可进行冗余设计
故障安全 I/O 模块
适合在高 Zone 2 的危险区中使用,传感器和执行器可在高 Zone 1 的危险区中使用
可进行冗余配置、热插拔并在运行过程中进行配置更改,因此可获得很高的工厂可用性。
SIMATIC ET 200L – 数字量 I/O 设备:
低成本数字量 I/O 设备
具有多 32 个通道的数字式电子模块。
SIMATIC ET 200iSP – 适合在危险区域中使用本质安全型 I/O 设备:
模块化设计,也可进行冗余配置
坚固可靠的本质安全设计
可在高 Zone 1/21 的危险区域中使用,传感器和执行期甚至可在 Zone 0/20 危险区域中使用
可进行冗余配置、热插拔并在运行过程中进行配置更改,因此可获得很高的工厂可用性。
Overview
用于 IM 151-7 (R) CPU/IM 151-8 (F) PN/DP CPU 接口模块的 PROFIBUS DP 主站接口模块
集成的12 Mbit/s PROFIBUS DP主站接口使用Cu(铜质的)型
允许两个 PROFIBUS DP 接口在一个 IM 151-7 CPU 模块上的并行操作
使 PROFIBUS DP 接口能够运行在 IM 151-8(F) PN/DP CPU 上
增强了系统和设备的可用性
功能方面,相当于按照S7-314 CPU的 DP主站那样组态的接口。
编程采用 STEP 7,版本为 V5.2, 采用服务包 1。
西门子6ES7 153-1AAO3-OXA5
Overview
用于 SIMATIC ET 200S、带有集成故障安全 CPU 的接口模块
带 DP/MPI 接口
用于组态故障安全型自动化系统,提高工程的安全需求
满足安全保护功能的要求,可以达到: SIL 3 符合 IEC 61508 标准, IEC 62061 和 Cat.4 类标准(EN 954-1 标准)
故障安全 I/O 模块可通过 DP 主站模块 (PROFIsafe) 连接在分布式配置中
ET 200S PROFIsafe 的故障安全 I/O 模块可连接在一个集中配置中
支持没有安全保护功能的标准模块
Overview
SIPLUS ET 200S 带集成 CPU S7-314 的接口模板
用于 ET 200S 中的高性能控制解决方案
提高设备和机械的系统使用率。
针对Z多 128 个 IO 设备的 PROFINET IO 控制器
PROFINET I-Device,用于连接作为智能 PROFINET 设备、带 SIMATIC 或第三方 PROFINET I/O 控制器的 CPU
PROFINET 接口,带集成 3 端口换机
经由 PROFINET 的等时同步模式