公司不替换词
登录
西门子6ES7211-1BE40-0XB0
西门子6ES7211-1BE40-0XB0
产品介绍

问题:在S7-CPU中使用嵌套程序需要注意什么,如何使用?
回答:S7-CPU支持嵌套程序,但对于不同的CPU类型,在使用时需要注意一些问题。
1. 不同的CPU类型,支持的嵌套程序深度不同,用户可在CPU的技术数据中查到此参数,以6ES7315-2AG10-0AB0为例。


图1:CPU的嵌套深度参数

2. 用户可以按照如下方式使用嵌套功能:

a) 在某个**级组织块中调用多个嵌套FC/FB。例如,在OB1 (**级为1)调用FC1,FC1中调用FC2,FC2中调用FC3,等等,一直到FC7,与OB1共8层深度。如果在FC7 中又调用了FC8 ,此时会导致CPU 停机,在CPU在线信息界面中可查看到此情况,如图2所示。用户也可在OB35(**级为12)调用FC11,FC11中调用FC12,FC12中调用FC13,等等,一直到FC17。


图2:嵌套调用

b) 在某个**级中调用某个FC,此FC多次调用自身。例如,在OB1 (**级为1)调用FC1,FC1中仍然调用FC1,用户在FC1 的程序中必须编程累计FC1被调用的次数,如果达到了7次,则需要从FC1 中跳出调用(此方法即为软件行业广泛应用的递归编程方法)。如果在FC1 调用自身次数**出了CPU允许的嵌套深度,此时会导致CPU 停机。

3. 当用户在使用嵌套功能时,可能出现几种错误:

a) The nesting depth of block calls (U-Stack) is too high(嵌套深度太高)。例如:
? 用户在某个**级(如OB1)中调用嵌套程序深度**出所使用CPU支持深度,如*2节(a) 部分所描述。
? 用户在某个**级(如OB1)中调用嵌套程序深度**出所使用CPU支持深度,如*2节(b) 部分所描述。
此时CPU将报16#4575错,如图3所示:


图3:同步错误嵌套1

b) The nesting depth of synchronous errors is too high(同步错误嵌套深度太高)。例如:
? 用户在OB1中使用L DB1.DBB0 语句(CPU中并未下载DB1),
? 此时CPU出现编程错误,将调用OB121。
? 如果用户在下载的OB121中又使用了L DB1.DBB0 指令,将导致CPU停机
此时CPU将报16#4573错,如图4所示:


图4:同步错误嵌套2

c) Error during allocation of local data (分配本地数据错误) 。对于S7-CPU每个**级都有对本地数据大小的限制,如果用户使用的范围**出了此限制,CPU将出现错误。以6ES7315-2AG10-0AB0为例,其每个**级下的本地数据大小为512 BYTE。如下错误使用都可能导致此错误:
? OB1 调用FC1,FC1 中定义的local data(TEMP数据类型)与OB1中定义的local data(TEMP数据类型)总和**出了CPU 对此**级分配的local data 数量。
? OB1 中嵌套调用多个FC, 这些FC 使用的local data 与OB1中定义的local data(TEMP数据类型)总和**过了分配给此**级的local data 数量。
此时CPU将报16#3576错,如图5所示:


图5:分配本地数据错误

? 对于S7-400CPU, 用户可以在硬件配置中调节每个**级下的本地数据大小,以6ES7412-2XG04-0AB0为例,如图6所示:


图6:分配本地数据

4. 当用户在使用嵌套功能出现错误时,对于支持OB88的CPU(例如S7-400CPU),可用通过下载OB88来防止CPU停机,此时CPU将处于SF状态,但OB88不可以再出现嵌套使用错误,否则CPU将进入停机状态。对于不支持OB88的CPU(例如S7-300CPU),当出现嵌套调用错误时,无法避免CPU进入停机状态。

描述
S7-PLCSIM 支持以下通讯块来实现两个S7-400 CPU模块间的通信:

  • SFB8 "USEND"
  • SFB9 "URCV"
  • SFB12 "BSEND"
  • SFB13 "BRCV"
  • SFB15 "PUT"
  • SFB14 "GET"
  • SFB19 "START"
  • SFB 20 "STOP"
  • SFB 22 "STATUS"
  • SFB 23 "USTATUS"

要求

  • 需要S7-PLCSIM V5.4 SP3(或更高版本)。
  • 在STEP 7(TIA Portal)中建立一个项目,对两个S7-400 CPU进行硬件组态和网络组态。
  • 在模块之间已经组态了S7连接和通信连接。
  • 在主动站S7-400 CPU的用户程序中,调用“BSEND”指令来给被动站CPU发送数据。
  • 在被动站S7-400CPU中调用“BRCV”指令来接收来自主动站S7-400 CPU的数据。

注意
本条目提供的项目包含两个S7-400 CPU的组态和连接组态以及用户程序。

以下步骤列出了如何使用PLCSIM仿真通讯。下载附件中的STEP 7(TIA Portal)项目包含了两个S7-400站通过工业以太网通信 。

Station_1中的OB1包含计数器的程序,将其输出值传送到Station_2。

  1. 在项目导航中选中“Station_1”并打开S7-PLCSIM,可以通过菜单命令“Online > Simulation > Start”或者菜单栏的“Start simulation” 图标打开。实例编号为“S7-PLCSIM1”的**个仿真CPU的对话框被打开。
     
  2. 如果是**仿真这个项目,就会打开“Extended download to device”对话框。在“PG/PC Interface”中选择如图1所示的设置,并单击“Start search”。   
     


    图. 1
     

  3. 当在线连接已经建立时,单击“Load”按钮。
     
  4. 然后,在打开的“Load preview”对话框中,继续单击“Load”按钮。
     
  5. 在S7-PLCSIM 中使用“Add”菜单来加载子窗口“Input”和“Counter”,用来监视和控制程序。对于“Station_1”需要“EB2”和“Z1”。
     
  6. 在S7-PLCSIM1的“CPU”子窗口中,将运行模式从“STOP”切换到“RUN-P”。


    图. 2
     
  7. 选中项目导航中的“Station_2”并重复步骤1来打开*二个“S7-PLCSIM2”实例。
     
  8. 在“Load preview”对话框中单击“Load”按钮。
     
  9. 与步骤5相同,给实例“S7-PLCSIM2”添加“Output”。对于“Station_2”需要“AW1”。
     
  10.  在S7-PLCSIM2中的“CPU”子窗口中,将运行模式从“STOP”切换到“RUN-P”。

    西门子XC124交换机


    图. 3
     
  11. 在S7-PLCSIM1(仿真Station 1)中,EB2控制计数器Z1并将计数值传送到S7-PLCSIM2 (仿真Station 2)中的AW1。
  • E2.0: 自动向上计数的时钟标记
  • E2.1:向上计数
  • E2.2: 向下计数
  • E2.3: 计数器的预设值
  • E2.4: 复位计数器

功能

  • 用于组态总线、星形和环形拓扑结构的电气和光学工业以太网
  • 借助于端口中集成的自动交叉功能,可使用选电缆
  • 通过集成交换机功能,断开负载
  • 方便的网络组态和网络扩展;
    将 SCALANCE XC-100 产品线的交换机级联使用时,对网络范围没有限制

网络拓扑结构和网络组态

SCALANCE XC-100 交换机一般可以与所连接的节点一起安装在控制柜中。可混合使用电缆和光缆在星型和总线型拓扑中使用这些交换机。

组态网络时,需要遵循下列限制条件:

  • 两个 SCALANCE XC 交换机之间的 TP 电缆长度:
    • 长 100 m,对于工业以太网快速连接产品
  • 光纤长度:
    • 长 5 km,采用工业以太网玻璃纤维光缆

采用 SCALANCE XC124 的星形网络拓扑结构

采用 SCALANCE XC106-2 和 XB004-2,可实现电气和光纤总线型拓扑;通过 SCALANCE X108PoE,可通过以太网供电 (PoE) 功能连接数据终端设备并供电

采用 SCALANCE X106-2 的光学星形拓扑结构

诊断

现场通过 LED 灯显示以下信息:

  • 电源
  • 端口状态
  • 数据通讯

SCALANCE XC-100 系列工业以太网交换机还可使用浮置信号触点监控。

显示更多
产品参数
联系方式
相关分类 更多 收起
热门分类 全部分类 更多 收起
相关地区
热门地区全部分类
最新产品
八方资源网 产品 机械 电工电气
进入商铺 电话咨询 在线洽谈 免费注册