S7-1500 高级功能:编程语言、系统架构、访问方式

一、首先讲一讲业界公认的5大高级功能

1.S7-1500所有编程语言的等级相同, S7-300/S7-400部分语言需要转换

2.S7-1500的块访问机制,在兼容S7-300/S7-400非优化访问方式的同时还支持优化快访问,优化块访问时,应灵活使用下载但不重新初始化功能

3.S7-1500中有多个硬件中断时,每一个都可以指定独立的OB块;S7-1500进行错误处理时支持全局处理和本地错误处理

4.S7-1500通过slice结构访问,有无需定义,高效编程,快速访问控制位的优点;通过AT结构访问快接口部分参数内容,需手动定义,支持所有结构,高度灵活的特点

5.通过快照方式(三种)进行在线备份

递归,就是在运行的过程中调用自己。

构成递归需具备的条件:

1. 子问题须与原始问题为同样的事,且更为简单;

2. 不能无限制地调用本身,须有个出口,化简为非递归状况处理。

典型的递归:阶乘、斐波那契数列、汉诺塔、排序

在V14的SCL中,S7-1200 (V3.0及其以上)/S7-1500(不包括S7-300/S7-400)的FC/FB开始支持,调用深度限值为24级,且不支持多重背景。(在之前的版本包括STEP7只是LAD/STL支持递归。)

个人认为用FC,配合RETURN做比较简单,类似于高级语言的编程,这个FB的递归,很难想象如何使用,等待高手的解惑。

但是对于S7-1200,嵌套深度:

16(从程序循环 OB 或启动 OB 开始);

6(从任意中断事件 OB 开始)

所以S7-1200递归的调用深度也只有16级。

举个简单的阶乘例子:

S7-1200的DINT/UDINT最大只支持12!,所以整数阶乘程序只能计算到12!

还有需要注意的:

1.更改调用环境监视也只能监视到跳出条件,看不到中间过程。

2.修改该块引脚下载,需要停止CPU,CPU认为修改块过多。

三、看看同行如何评价

S7-1500PLC的编程比S7-300优化了好多地方,用起来非常的快捷高效。所有的编程语言等级相同,这样一来,语句表似乎优势又少了哈。之前用到有OB10的中断功能,每次下载需下载硬件,改成1500之...

S7-1500PLC的编程比S7-300优化了好多地方,用起来非常的快捷高效。所有的编程语言等级相同,这样一来,语句表似乎优势又少了哈。之前用到有OB10的中断功能,每次下载需下载硬件,改成1500之...

1500已经开始逐步替代300系列了,要想赶得上发展,努力学习啊,否则会被落下,干自动化,每几年就得集中学习一次,继续吧

S7-1500所有编程语言的等级相同, S7-300/S7-400部分语言需要转换2.S7-1500的块访问机制,在兼容S7-300/S7-400非优化访问方式的同时还支持优化快访问,优化...