浔之漫智控技术(上海)有限公司总部
主营西门子模块 , PLC模块 , 变频器模块 , 触摸屏模块
中央处理器CPU主机6ES7512-1DM03-0AB0

中央处理器CPU主机6ES7512-1DM03-0AB0中央处理器CPU主机6ES7512-1DM03-0AB0

6ES7512-1DM03-0AB0

SIMATIC DP,CPU 1512SP-1 PN 针对 ET 200SP, 中央处理器,带 工作存储器 400 KB 用于 程序及 2 MB 用于数据, 第 1 个接口:PROFINET IRT 带 3 接口交换机, 25 ns Bit-Performance, 需要 SIMATIC 存储卡, 需要总线适配器用于 接口 1 和 2 * *** 认证和证书 根据条目 109817615 在 support.industry.siemens.com 请注意!

在S7-1200PLC中,还支持SCL的编程,使用SCL的编程对一些复杂的数据处理会带来很大的方便,下面还是以前面的例子为例说明使用SCL如何编写程序实现。

例子说明:

假设需要从一组数据中找出一个大值,并记录这个大值是这组数据中的第几个数据。80.jpg

使用SCL编程来完成这个例子,这里我们需要用到两个语句

(1) 用于条件判断的语句

IF (条件) THEN (执行语句)

END_IF;

解析:如果条件满足,则执行THEN后面的语句。

举例:IF “DATA_A”<100 HEN

“DATA_A”:= “DATA_A”+1;

END_IF;

如果DATA_A的值小于100,则DATA_A的值等于自身加1.

(2) 用于循环执行的语句

FOR (执行变量):= (起始值) TO (结束值)BY(自增量)DO (后面需要执行的语句);

END_FOR;

解析:从“起始值”开始循环到执行,每循环一次,“执行变量”的值会根据“自增量”的多少进行变化,直到执行到“结束值”时,停止循环执行。

举例:FOR “count”: = 0 TO 4 BY 1 DO

“Data[count]”=10;

END_FOR;

把数值10填入到数值Data中的Data[0]到Data[4]的五个元素中,次循环时把10填入到Data[0],第二次循环时把10填入到Data[1],依次下去。

了解这两条语句后,接下来我们可以设计一个程序,这里我们可以把他建立为一个功能块(FB),方便以后使用。

步:

添加一个全局DB块,在全局DB块中建立一个变量名为Data的数组,元素个数可以视情况进行设置。如下图所示,元素个数设置为5个。


第二步:

添加一个FB块,同时把编程语言选择为SCL的编程语言。然后在FB的接口去中分别去定义相应的变量,


第三步:

用SCL语言编写功能块程序,如下所示

第四步:

在OB1中调用该功能块,由于使用的是FB,因此在调用时需要分配相应的背景DB,如下图所示:

西门子CPU主机存储卡6ES7512-1DM03-0AB0西门子模块代理商西门子PLC模块代理商西门子电缆代理商西门子电源模块代理商

6ES7512-1DM03-0AB0

6AG2512-1DM03-1AB0

SIPLUS ET 200SP CPU 1512SP-1 PN 导轨 基于 6ES7512-1DM03-0AB0 带防腐蚀涂层 OT2:-40...+55°C ST1/2:70°C,10 分钟 . 中央处理器,带 工作存储器 400 KB 用于 程序及 2 MB 用于数据, 第 1 个接口:PROFINET IRT 带 3 接口交换机, 25 ns Bit-Performance, 需要 SIMATIC 存储卡, 需要总线适配器用于 接口 1 和 2


展开全文