西门子MM430代理商

发布时间:2018-03-07

西门子MM430代理商

西门子MM430代理商

西门子MM430代理商

_______________________

SIEMENS(西门子销售中心)

 上海朕锌电气设备有限公司

zx-plc.com 

联系人:万紫云(销售经理)

 机:(微信同步)

Q Q:27798 23058 zx-plc.com 

 机:

公司网址http://zhenxindianqi.cn/ 

 

______________________________________

SIEMENS) 诚信走天下,走遍天下有朋友 

上海朕锌电气设备有限公司是一家从事西门子工业自动化产品和数控系统销售、技术服务及培训的工程服务公司。

销售代理西门子WINCC组态软件,西门子PLC编程软件,西门子PLC,S7-200CN/S7-200/S7-300/S7-400/S7-1200/(6ES7/6GK/6AV/6FC/6SN/6FX/6SE/6RA/6DD/7ML/7MH/7KM/7MF/3RV/3RH/3TF)西门子PROFIBUS-DP总线,RS485总线接头,CP网卡,变频器,触摸屏,低压电器,数控伺服备件。

为了避免捕捉到不想要的计数脉冲,对于特定的应用是可以在运行时打开和关闭高速计数器的,例如那些由震动引起的干扰。 使用"HscGate" FB可以实现S7-1200高速计数执行的门控制。

 

"HscGate" FB
这个功能块是在STEP 7 V13 SP1 Update4中开发并用CPU 1211C DC/DC/DC固件V4.1.3进行测试的。
可以在循环组织块 "Main"中被调用。
 


Fig. 01

 

 名称数据类型描述
输入enableBool给"HscGate" FB使能
hscValueDInt高速计数器(计数值)的输入地址
hscHW_HSC高速计数器的硬件(HW ID)
输出countValueDInt(可调)高速计数器的计数值
statusWord

CTRL_HSC instruction (control High Speed Counter)的状态

输入输出resetBool重启高速计数器(在执行时候自动重启)

 "hscValue"和"hscHwId"输入可以从CPU属性里高速计数器的设置中获取。

  1. 为此,可以在STEP 7(TIA Portal)的项目导航中标记CPU并单击右键打开属性。 

  2. 到"General" 标签并导航到"High-speed counters (HSC)" 条目。

  3. 对于选定(使能)的高速计数器(HSC),打开子目录"Input addresses" 和 "HW identifier"。

  4. 以起始地址作为双字输入给"hscValue" 参数、硬件标识符给"hscHwId" 参数。


图. 02

程序流程图
 


图. 03

在“enable”给一个下降沿信号,将高速计数器的当前值传输到计数值 "newCV"中。
在“enable”给一个上升沿信号,在SFB "CTRL_HSC"的帮助下将高速计数器值设置成"newCV"的值。
在Reset指令("reset")下 ,在传送到高速计数器之前将计数值"newCV"置0。
当"enable" = TRUE,高速计数器的数值被传到"countValue" 输出。
因此,在使用"enable" = TRUE时,高速计数器的计数值与"countValue"输出值完全相同。                                         只有在"enable" = FALSE时高速计数器值与"countValue" 输出值不相同。
这样,当给高速计数器做事件组态时,"enable"输入变量的状态也要考虑在内。

下载
 Registration required STEP 7 Basic V13 SP1 Update 4 – Project with FB "HscGate" (2.3 MB)

创建环境
本FAQ的下载是用STEP 7 Basic V13 SP1 Update 4创建的。1 解决方案 1.1 项目介绍 图 1 PROFINET IO网络拓扑,用于SFC51/SFB52/SFB54的诊断。其中CPU319-3PN/DP用做IO控制器,SCALANCE X交换机和ET200S, ET200Eco作为IO设备进行连接。 ......

 

1 解决方案

1.1 项目介绍
图 1 PROFINET IO网络拓扑,用于SFC51/SFB52/SFB54的诊断。其中CPU319-3PN/DP用做IO控制器,SCALANCE X交换机和ET200S, ET200Eco作为IO设备进行连接。



图 1 PROFINET IO网络拓扑

本例中使用到的主要硬件和软件如下:

名称数量版本订货号
CPU319-3PN/DP1V2.8 6ES7 318-3EL00-0AB0
SCALANCE X2081V4.06GK5 208-0BA10-2AA3
SCALANCE X201-3P IRT1V4.16GK5 201-3BH00-2BA3
IM151-3 PN1V6.16ES7 151-3BA23-0AB0
IM151-3 PN FOC1V4.0 6ES7 151-3BB21-0AB0
PM-E2
6ES7 138-4CA01-0AA0
2DO HF2
6ES7 132-4BB01-0AB0
ET200 eco PN1
6ES7 142-6BG00-0AB0
Step71
V5.4+SP5

 

1.2 硬件组态
按照1.1中的硬件在Step7中进行组态。然后分配设备名,下载组态数据到CPU319中,具体设置设备名以及完成PROFINET通讯,请参考网站下载中心《S7-300 PROFINET IO 通讯快速入门》72325620


图 2 Step7的硬件组态

其中,“Ethernet(1):PROFINET-IO-System(100)”总线的100表示PROFINET总线的序号。IO设备例如SCALACNE X和ET200上从1到5,表示PROFINET IO的设备号。


2 SFC51诊断

2.1 介绍
系统状态列表(SSL)用于描述可编程逻辑控制器的当前状态。SSL的内容只能通过系统功能进行读取,而不能修改。换言之,部分列表是虚拟列表,只是在有特殊请求时由CPU的操作系统所创建。
SFC 51 “RDSYSST” 系统功能用于读取 “系统状态列表” (简写为SSL),部分列表或 CPU 的 SSL 列表摘录。对于 PROFINET IO,这些 SSL包含了 I/O 模块,PROFINET IO 主站系统或实际控制器的状态信息。当选择所用的、特别是在一个中断或启动 OB 中使用的 SSL ID 时,必须注意的是 SFC 仅能同步执行。如果执行 SFC 之后,Busy 位激活表明几个循环执行一次 SFC,数据还没有完全读出,因此数据是无效的。接收到的系统状态列表数据记录包括了诊断 PROFINET IO 设备上的信息概览。
PN通信部分列表是虚拟列表,只是在有请求时由CPU的操作系统所创建。虚拟列表来自 CPU 内部的PN IO控制器的缓冲区,缓冲区由控制器的启动和ALARM信息进行维护和刷新。
可以使用在PROFINET IO诊断的SSL_ID:

SSL_ID (W#16#...)部分列表(PROFINET)INDEX (W#16#...)
0C91PROFINET接口模块(集成的或外部的)上的模块的模块状态信息逻辑基地址,输出模块 bit15=1
0D91PROFINET中的所有模块的模块状态信息bits 0到10: 站号,bits 11到 14: PN IO系统总线号的后两位, Bit 15: 1
0094PROFINET接口模块(集成的或外部的)上站的预期状态100-115: PN IO系统总线号
0294读取实际的站点是否存在同上
0694读取实际的站点是否出错同上
0794读取实际的站点维护状态同上
0C96PROFINET中的所有模块的模块状态信息逻辑基地址,输出模块 bit15=1

通过SFC51只能获取站或模块的状态信息,例如,丢站,或者该模块有错误,并不能获取模板的故障的详细信息,例如哪一个模板的通道发生断线,短路等。

2.2 编程
这里使用SFC51来读取每一个站点的实际状态,判断该站是否发生丢站故障。在PLC中添加并下载空的OB86,防止测试丢站时,发生CPU停机现象。当然也可以使用OB86来读取每一个IO设备的实际状态,但需要更多的编写程序,关于使用OB86来获取IO站点的状态信息,请参考网站下载中心《使用OB8x诊断SIMATIC PLC(PN) 》87668286


在OB1中加入SFC51,关于参数设置,点击“F1”参考SFC51在线帮助。程序示例如下:

CALL "RDSYSST"
REQ :=M0.0
SZL_ID :=MW2
INDEX :=MW4
RET_VAL :=MW6
BUSY :=M0.1
SZL_HEADER:=DB1.SSL_HEADER
DR :=DB1.RECORD

按照上表在变量表中设置SSL_ID=0294 (MW2)和INDEX=16#64 (MW4),其中16进制64的十进制为100,表示PROFINET总线的序号,请参考图 2 Step7的硬件组态。添加要查看的变量,并使能M0.0为1。其中读取到的数据记录个数为1 (DB1.DBW2),该数据记录的长度为258bytes (DB1.DBW0)。DB1.DBW4表示PROFINET总线的序号,这里为100 (64H) 。对于DB1.DBB6为2#0011_1111,其中bit0表示组信息,如果为1,表示至少有一个IO设备与IO控制器进行通讯,如果为0,表示IO站点全部丢失。Bit1~Bit5表示设备号1~5的IO设备的状态,1表示IO设备存在,0表示IO设备丢站。至于其它Bit和高字节中的Bit依次类推,表示对应IO设备的状态。


图 3 根据变量表查看设备状态

根据这些位Bit1~5,可以很方便的在WinCC/WinCC Flexible中或任何第三方与PLC通讯的HMI上进行显示,方便用快速发现和维护现场故障。


3 SFB52诊断

3.1 介绍
SIMATIC S7 诊断数据记录提供了附加的详细信息的诊断性能。系统功能块SFB 52 “RDREC” 用于读取这些数据记录。
调用时,系统功能块对要诊断的站ID进行寻址,并以 INDEX 参数标明要读出的数据记录。这可能是中央机架或分布式组件(PROFIBUS DP或PROFINET IO)中的一个模块。如果没有诊断信息,则系统功能块执行后没有输出。由于 SFB 52 “RDREC” 是一个异步执行的 SFB,即执行过程横跨几个 SFB调用,因此该块只能在循环操作中使用。不能在诊断 OB 或定时中断 OB 中使用。除了出错的位置外,SFB 52 诊断数据记录还包含发生错误的类型信息。为了进一步分析,可对该信息进行评估。
在MLEN中要读取的多字节数。目标区域RECORD的选定长度至少应等于
MLEN字节的长度。输出参数VALID如为TRUE,则表明已将数据记录传送到目标区域RECORD中。此时,输出参数LEN包含所取得的数据的长度(以字节计)。输出参数ERROR用以指示是否发生数据记录传送错误。如果发生错误,则输出参数STATUS包含错误信息。
该功能块属于状态驱动类型,可以在OB1或者其它循环OB块中调用,用于读取诊断记录或者组态记录等数据记录。
PROFINET IO 设备模型说明了模块化和紧凑型现场设备的结构。 它根据 PROFIBUS DP 的基本特性构建。子模块和 API 的定义已添加至设备模型,以增加 IO 设备的灵活性。
一个 PROFINET IO 设备包括一个或多个“逻辑设备”, 这些设备依次包含一个或多个 API(应用程序进程标识符),至少包含 API 0。
设备的特性通过IO设备的基于XML的GSD(General Station Deion)文件来描述。可以通过PROFINET XML Viewer来读取GSDXML文件。
涉及到分级的概念,AP,API,SLOT,SUBSLOT。每个寻址级别都有一组可用的诊断记录和组态记录。 通过记录编号的首字母来区别各记录组的诊断级别,如下图 4 诊断级别。关于PROFINET IO设备模型和诊断的数据记录结构请参考 19289930


图 4 诊断级别

3.2 编程
这里使用SFB52来读取ET200S IM151-3PN FOC站点输出模块的状态,例如断线等,参考图 5 ET200S FOC的硬件组态列表。在PLC中添加并下载空的OB82,防止测试断线故障时,发生CPU停机现象。当然也可以使用OB82来读取IO设备的模块状态信息,但需要更多的编写程序,关于使用OB82来获取IO站点的模块的状态信息,请参考网站下载中心《使用OB8x诊断SIMATIC PLC(PN) 》87668286


图 5 ET200S FOC的硬件组态列表

双击该站的2DO DC24V/0.5AHF模板,设置使能通道0相关的诊断“断线”,参考图 6 ET200S 2DO模块的参数设置。


图 6 ET200S 2DO模块的参数设置

在OB1中加入SFB52,关于参数设置,点击“F1”参考SFB52在线帮助。程序示例如下:

CALL "RDREC" , DB52
REQ :=M0.2
ID :=MD8
INDEX :=MW12
MLEN :=MW14
VALID :=M0.3
BUSY :=M0.4
ERROR :=M0.5
STATUS:=MD18
LEN :=MW22
RECORD:=DB2.DB_RECORD

按照需要上表在变量表中设置ID=16#00008002 (MD8)和INDEX=16#800A (MW12),其中8002表示该输出模板的逻辑地址,请参考图 4 ET200S FOC的硬件组态列表。添加要查看的变量,并使能Q2.0为1,此时激活断线故障,DO模板、ET200S FOC接口模板以及CPU的SF灯亮。设置MLEN (MW14) 的数据长度为100,需要大于或等于实际读取到的数据记录的长度,否则无法读到相关的诊断的信息。然后使能M0.2为1,读取到的数据记录如下图 7 诊断数据记录。其中后一个字DB2.DBW24为16#0006,表示在该站的2 (DB2.DBW10) 号槽,1 (DB2.DB12) 号子槽的通道0 (DB2.DBW20) 发生“断路”故障,参考图 8 ChannelErrorType编码。更多详细的通道故障类型信息,请参考 19289930
也可以更高一级的诊断级别,例如AR级,设置ID=16#00001FDF (MD8) 接口模板的诊断地址和INDEX=16#E00A (MW12) 也可以读取到相同的诊断数据记录,不过由于该级别高,那么可以获得该站的各个模板和各个通道的详细诊断信息。
根据故障类型的编码,可以很方便的在WinCC/WinCC Flexible中或任何第三方与PLC通讯的HMI上设置诊断信息并进行显示,方便用快速发现和维护现场故障。
需要注意在Step7中调用SFB52时,不要一直触发REQ,也就是说REQ不要一直为1,好在需要的时候调用该功能块,因为一味的触发会占用PLC更多的资源和占用更多的带宽。


图 7 诊断数据记录

 


图 8 ChannelErrorType编码


4 SFB54诊断

4.1 介绍
SFB "RALRM" 从外围设备模块(集中结构)或从DP从站或PROFINET IO设备组件
接收中断及其所有相应信息。然后将此信息提供给输出参数。
带有附加详细输出参数中的信息包含被调用OB的启动信息以及中断源的信息。由于要检查外围设备中断,故只能在由CPU操作系统启动的中断OB中调用SFB 54。中断 OB 外的 SFB 54“RALARM” 调用是不的,因为此时不能获取诊断状态的重要信息。

在TINFO和AINFO数据缓存中,AINFO中的USI=16#8000 (WORD 26) 时快速获得诊断的一些重要信息如下:
TINFO 的 WORD 20 站号.
AINFO 的 WORD 4 中断类型
WORD 12 插槽号(SLOT)
WORD 28 通道号(CHANNEL)
WORD 32 出错类型

4.2 编程
这里使用SFB54来捕获ET200S IM151-3PN FOC站点输出模块的中断状态,例如断线等,参考图 5 ET200S FOC的硬件组态列表。在OB82中添加SFB54,用于捕获断线故障。当然也可以使用OB82来读取IO设备的模块状态信息,但需要更多的编写程序,关于使用OB82来获取IO站点的模块的状态信息,请参考网站下载中心《使用OB8x诊断SIMATIC PLC(PN) 》87668286

双击该站的2DO DC24V/0.5AHF模板,设置使能通道0相关的诊断“断线”,参考图 6 ET200S 2DO模块的参数设置。

在OB82中加入SFB54,关于参数设置,点击“F1”参考SFB54在线帮助。程序示例如下:

L #OB82_MDL_ADDR
T MD 30
CALL "RALRM" , DB54
MODE :=1
F_ID :=MD30
MLEN :=1000
NEW :=M1.0
STATUS:=MD36

6FC5410-0AY03-0AA1

6FC5410-0AY01-0AA0

6FC5410-0AY03-1AA0

6FC5410-0AY01-0AA1

6FC5410-0AY00-0AA0

6FC5410-0AY01-0AA0

6FC5410-0AY03-0AA0

6FC5410-0AY03-0AA2 

6FC5410-0AA01-0AA0 

6FC5410-0AX02-0AA0  

6FC5410-0AX02-1AA0  

6FC5410-0AA00-0AA0

6FC5110-0BA01-0AA0

6FC5110-0BA01-1AA0

6FC5110-0BB01-0AA1 

6FC5110-0BB01-0AA2

6FC5110-0BB02-0AA0

6FC5110-0BB02-0AA1 

6FC5110-0BB03-0AA0

6FC5110-0BB03-0AA1

6FC5110-0BB04-0AA1 

6FC5110-0CA01-0AA0

6FC5110-0CA01-0AA0

6FC5110-0CB01-0AA0 

6FC5110-0DA01-0AA0

6FC5110-0DA02-0AA0 

6FC5110-0DA02-0AA1

6FC5110-0DA03-0AA0

6FC5110-0DA04-0AA0 

6FC5110-0DB01-0AA1

6FC5110-0DB02-0AA0 

6FC5110-0DB02-0AA1

6FC5110-0DB02-0AA2 

6FC5110-0DB02-0AA3

6FC5110-0DB02-0AA4 

6FC5110-0DB02-1AA0

6FC5110-0DB03-0AA0 

6FC5110-0DB03-0AA1

6FC5110-0DB03-0AA2

6FC5110-0DB03-0AA3

6FC5110-0DB03-0AA4 

6FC5110-0DB03-1AA0

6FC5110-0DB04-0AA1

6FC5210-0DA00-1AA1

6FC5210-0DF31-2AA0

6FC5210-0DA20-2AA1

6FC5210-0DF00-0AA2

6FC5210-0DF00-1AA1

6FC5210-0DF20-0AA0

6FC5210-0DA00-0AA0

6FC5210-0DF22-2AA0

6FC5210-0DA20-0AA1

6FC5210-0DF00-0AA2

6FC5210-0DF00-1AA1 

6FC5210-0DA10-0AA0

6FC5210-0DA20-1AA0

6FC5210-0DA20-2AA1

6FC5210-0DA21-2AA1 

6FC5210-0DF01-0AA0

6FC5210-0DF02-0AA0 

6FC5210-0DF05-0AA0

6FC5210-0DF20-0AA0

6FC5210-0DF21-2AA0

6FC5210-0DF22-0AA0

6FX2007-1AD03

6FX2007-1AD13

6FX2006-1BG70

6FC5403-0AA20-1AA0

6FX2007-1AC04

6FX2007-1AC14

6FX2007-1AE04

6SN1123-1AA00-0HA1

6SN1123-1AA00-0AA1

6SN1123-1AA00-0AA2

6SN1123-1AA00-0BA0

6SN1123-1AA00-0BA1

6SN1123-1AA00-0BA2

6SN1123-1AA00-0CA0

6SN1123-1AA00-0CA1

6SN1123-1AA00-0CA2

6SN1123-1AA00-0DA0

6SN1123-1AA00-0DA1

6SN1123-1AA00-0DA2

6SN1123-1AA00-0EA0

6SN1123-1AA00-0EA1

6SN1123-1AA00-0EA2

6SN1123-1AA00-0FA0

6SN1123-1AA00-0GA0

6SN1123-1AA00-0HA0

6SN1123-1AA00-0HA1

6SN1123-1AA00-0HA2

6SN1123-1AA00-0JA0

6SN1123-1AA00-0JA1

6SN1123-1AA00-0KA0

6SN1123-1AA00-0KA1

6SN1123-1AA00-0LA0

6SN1123-1AA00-0LA1

6SN1123-1AA00-0LA2

6SN1123-1AA00-0LA3





上一篇:pe钢带增强螺旋波纹管配方分析
下一篇:图技FC8600-100