西门子电缆网线代理总经销商输出表格中的第一个值”的示例 (S7-1500)表格指令的移植过程(移植类别 4)“表格指令”组中的指令在 S7-1500 中不再可用,而且无法在移植过程中使用其它指令进行替代,因为这些指令都基于juedui寻址。 但是,S7-1500 中提供有可手动实现这些指令的其它函数。 以下以指令“FIFO: 输出表格的第一个值”为例,说明如何实现该函数功能。实现以下 STL 程序说明了如何实现“FIFO”表格函数: 本示例中的函数已可用作 SCL 中一个函数。下表列出了所用变量的声明:操作数 声明 数据类型 说明val Output INT 返回值tab InOut PLC 数据类型“Table10”包含有 10 行的表格x InOut INT 类型的ARRAY[0..9]每个 ARRAY 元素表示一行。本示例中使用 INT 类型的ARRAY。 但是,可创建任何数据类型的 ARRAY。 如,也可以使用 STRUCT 数据类型的ARRAY 或 PLC 数据类型的ARRAY。lng InOut INT 缓冲区的长度。 该值取决于“tab.x”的 ARRAY 中元素的数目。first InOut INT 第一个写入值last InOut INT 最后一个写入
与西门子品牌合作,只为能给中国的客户提供值得信赖的服务体系,我们
的业务范围涉及工业自动化科技产品的设计开发、技术服务、安装调试、销售及配套服务领域。建立现代化仓
储基地、积累充足的产品储备、引入万余款各式工业自动化科技产品,我们以持续的卓越与服务,取得了年销
售额10亿元的佳绩,凭高满意的服务赢得了社会各界的好评及青睐。其产品范围包括西门子S7-SMART200、 S7-200CN、S7-300、S7-400、S7-1200、S7-1500、S7-ET200SP 等各类工业自动化产品。西门子授权代理商、西门子一级代理商 西门子PLC模块代理商﹐西门子模块代理商供应全国范围:
与此同时,我们还提供。
西门子中国授权代理商—— 浔之漫智控技术(上海)有限公司,本公司坐落于松江工业区西部科技园,西边和全球zhuming芯片制造商台积电毗邻,
东边是松江大学城,向北5公里是佘山国家旅游度假区。轨道交通9号线、沪杭高速公路、同三国道、松闵路等
交通主干道将松江工业区与上海市内外连接,交通十分便利。
目前,浔之漫智控技术(上海)有限公司将产品布局于中、高端自动化科技产品领域,
PLC模块S7-200、S7-1200、S7-300、S7-400、ET200分布式I/O等
HMI触摸屏、SITOP电源、6GK网络产品、ET200分布式I/O SIEMENS 驱动产品MM系列变频器、G110 G120变频器、直流调速器、电线电缆、
驱动伺服产品、数控设备SIEMENS低压配电与控制产品及软起动器等
西门子中国有限公司授权——浔之漫智控技术(上海)有限公司为西门子中国代理商,主要供应全国范围:西门子PLC代理商SIEMENS可编程控制器PLC模块、HMI触摸屏、SITOP电源、6GK网络产品、ET200分布式I/O SIEMENS 驱动产品MM系列变频器、G110 G120变频器、直流调速器、电线电缆、
该函数将返回写入表格中的第一个值(先进先出)。 函数值“true”表示表格为空。SCL#h:=(#tab.first+1) MOD #tab.lng; // 递增索引 IF #h <> #tab.last THEN // 扫描以查看索引是否可以相互覆盖 #tab.first := #h; · // 保存下一个值的索引 #val := #tab.x[#h]; // 输出所需值 #Fifo:= false; ELSE #Fifo:= true; // 错误 >> 表格为空;不输出任何值 #val := #tab.x[#tab.first]; // 输出最后一个有效值 END_IF;移植“LIFO: 输出表格的最后一个值”的示例 (S7-1500)表格指令的移植过程(移植类别 4)“表格指令”组中的指令在 S7-1500 中不再可用,而且无法在移植过程中使用其它指令进行替代,因为这些指令都基于juedui寻址。 但是,S7-1500 中提供有可手动实现这些指令的其它函数。 以下以指令“LIFO: 输出表格的最后一个值”为例,说明如何实现该函数功能。实现以下 STL 程序说明了如何实现“LIFO”表格函数: 本示例中的函数已可用作 SCL 中一个函数。下表列出了所用变量的声明:操作数 声明 数据类型 说明val Output INT 返回值tab InOut PLC 数据类型“Table10”包含有 10 行的表格说明x InOut INT 类型的ARRAY[0..9]每个 ARRAY 元素表示一行。本示例中使用 INT 类型的ARRAY。 但是,可创建任何数据类型的 ARRAY。 如,也可以使用 STRUCT 数据类型的ARRAY 或 PLC 数据类型的ARRAY。lng InOut INT 缓冲区的长度。 该值取决于“tab.x”的 ARRAY 中元素的数目。first InOut INT 第一个写入值last InOut INT 最后一个写入值h Temp INT 辅助变量Ret_Val BOOL 函数值下表列出了如何实现函数“Lifo”:该函数返回写入表格中的最后一个值(后进先出)。 函数值“true”表示表格为空。SCL#h:=(#tab.last-1) MOD #tab.lng; // 递减索引 IF #h<0 THEN #h:=#h + #tab.lng; END_IF; // 只允许正数索引 IF #h <>#tab.first THEN // 扫描以查看索引是否可以相互覆盖 #tab.last := #h; // 保存下一个值的索引 #val := #tab.x[#h];// 输出所需值 #Lifo:= false; ELSE #Lifo:= true; // 错误 >> 表格为空;不输出任何值 #val := #tab.x[#tab.last]; // 输出最后一个有通信指令的移植过程 (S7-1500)SIMATIC NET CP/CM (S7-1500)移植程序块 (S7-1500)简介S7-300/400 将使用特定程序块以通过 SIMATIC NET CP 实现通信功能。 S7-1500 中包含有一个适用于这些通信功能的修订指令集。以下表格简要列出了 S7-300/400 中所使用的程序块的移植信息。有关“类别”列中规范的详细信息,请参见章节“有关移植指令的信息 (页 21)”。S7-300/400 使用特定的程序块,通过点对点 CP 实现通信功能。S7-1500 中包含有一个适用于这些通信功能的修订指令集。在移植期间,将询问是使用适用于 S7?1500 通信模块的修订指令集还是 S7?300/400 通信处理器的程序块。下表简要列出了移植 S7-300/400 中程序块时所使用的 S7-1500 指令。有关“类别”列中规范的详细信息,请参见章节“有关移植指令的信息 (页 21)”。将 LAD/FBD 程序移植到 S7-1500 (S7-1500)2.4.3.1 有关移植 LAD/FBD 程序的信息 (S7-1500)---(SAVE):将 RLO 保存到 BR 存储器该指令在 S7-1500 中不可用。在移植过程中,将对该指令进行以下处理:● 如果在一个块的最后一个程序段中使用“---(SAVE)”指令,则该指令将替换为带“RLO”参数的“---(RET)”指令。● 但如果没有在该块的最后一个程序段中使用“---(SAVE)”指令,则该指令将无法替换。应手动更改程序。例如,将 RLO 保存到一个 PLC 变量、DB 变量或局部变量中,并通过 --(RET) 指令将其返回到块结尾的调用块。---(CALL) 调用块,无参数该指令在 S7-1500 中不可用。在移植过程,系统将对程序进行相应修改,可通过一个指主控继电器在 S7-1500 中不可用。移植时将会报错。应手动更改程序。例如,使用临时变量根据条件执行指令或程序段。块中的语言变更寄存器、累加器和状态字中的数据仅适用于 STL 程序段。当 LAD 或 FBD 程序段位于 STL程序段之后时,无法从 LAD 或 FBD 程序段中访问先前在 STL 中设置的寄存器数据。但在下游 STL 程序段中,可重新使用该寄存器中的数据。逻辑运算结果异常:如果在语言更改时设置为“未定义”(undefined),则在下游程序段中不再可用。另请参见:语言变更时使用寄存器传递值 (页 63)2.4.3.2 LAD/FBD 中的不完全地址寻址 (S7-1500)简介寻址 DB 变量时未指定 DB 名称,称为部分限定寻址。 S7-1500 不支持 LAD/FBD 中进行部分限定寻址。 “---(OPN)”和“---(OPNI)”指令通常与部分限定寻址一起使用,在 S7-1500同样不支持。部分限定寻址的移植必要时,在移植过程中将对部分限定寻址进行以下处理:● 如果该数据库唯一,则在移植过程中将部分限定寻址替换为完全限定寻址,并指定相应的 DB。● 如果是由数据块寄存器间接指定该 DB,则无法明确指定该数据块。 此时,移植过程中将在块接口中添加一个“DB_Any”数据类型的参数。 这样,便将数据块的名称传递给该参数。 移植过程中,将使用以下语法 #