S7-300通过PROFIBUS DP对RF300进行操作
1、概述
无线射频识别技术(Radio Frequency Identification,RFID)是一种非接触的自动识别技术,其基本原理是利用射频信号和空间耦合(电感或电磁耦合)或雷达反射的传输特性,实现对被识别物体的自动识别和数据交换。 1.1 RFID基本组成: 数据存储器,用于存储数据。
读写器,实现数据读出和写入。
天线,在数据存储器和读写器间传递射频信号。
通信模块,用于系统集成的接口模块。 1.2 西门子主要的RFID产品
西门子RFID产品主要包括用于工业自动化的 MOBY E、MOBY I 、RF300、MOBY U等,见表1 RFID系统 | 频率 | 最大距离 | 最大存储 | 数据传输速率(b/s) | 使用温度
(最大) | 特性 | RF 300 | 13.56MHz | 0.15m | 20 byte
EEPROM
64Kb
FRAM | RF300
载体: 8000
ISO 载体:
400/600 | 读写器
-25˚C~+70˚C
载体
-40˚C~+85˚C
+220 ˚C | IQ-Sense
接口模块;
载体无需电池;
ISO 15693功能(RF310R/RF380R) | MOBY E | 13.56MHz | 0.1m | 752 byte
EEPROM | 350 | +150 ˚C | 载体无需电池 | MOBY I | 1.81MHz | 0.15m | 32 Kb FRAM | 1250 | +85˚C
+220 ˚C | 载体无需电池 | MOBY U | 2.45GHz | 3m | 32 Kb RAM | 4800 | 读写器
-25˚C~+70˚C
载体
-25˚C~+85˚C
+220 ˚C | 电池 |
表1:RFID产品 和用于物流管理的 MOBY D、RF600 ,见表2
S7-300通过PROFIBUS DP对RF300进行操作
表2:RFID产品 1.3 RF300系统集成 随着工业自动化程度的提高,以及应用领域的需求,RFID的技术被越来越多的集成于系统。由于全集成自动化是西门子产品设计的核心理念之一,因此,为RFID集成于自动化系统提供了多种解决方案。
通过RFID的通信接口模块,可将RFID 集成到PC,主流PLC,如: S5、S7、PROFIBUS DP、非西门子PLC、以太网等。
如图1
图1:RF300的集成方式
2、本文试验设备简介
2.1 硬件设备 RF360T:6GT2800-4AC00,RF300 数据存储器(移动载体)
RF380R:6GT2801-3AA10,RF300读写器
ASM456:6GT2002-0ED00,通讯模块,独立的PROFIBUS DP从站,可连接2个通道
的读写设备(SLG),用于将RFID系统集成到PROFIBUS DP/DP-V1 。
ECOFAST 连接块:6ES7194-3AA00-0AA0
PROFIBUS ECOFAST 混合直插头
插针型:6GK1 905-0CA00,每包 5 件
插座型:6GK1 905-0CB00,每包 5 件
PROFIBUS ECOFAST 终端电阻插头:6GK1 905-0DA10
RF300 SLG电缆:6GT2891-0FH50,5米 PS307:6ES7 307-1KA01-0AA0,S7-300电源模块
CPU315-2PN/DP:6ES7 315-2EH13-0AB0,S7-300 中央处理器
S7-300道轨
PROFIBUS DP电缆
2.2 软件 STEP 7 V5.4 SP5,用于组态、编程
MOBY 系统软件:6GT2 080-2AA10,GSD 文件,FC45,手册
3、FC45
FC45 是STEP 7为RFID识别系统所编写的功能块,SIMATIC S7-300/400 通过通信接口模块连接RFID读写器,通过FC45与RFID识别系统进行数据交换。
本文讲述了怎样使用S7-300,CPU315-2PN/DP 以及ASM 456与RF300的RF 380R连接,通过FC45 与RF300进行数据交换。
3.1 FC45 参数数据块(参数DB) 每一个读写设备,都需要预分配参数,并存储到参数数据块里(参数DB),该参数DB通过UDT 10(用户数据类型)生成。在UDT 10中,定义了输入参数、控制命令、过程信息、以及FC45 的内部变量等。 3.1.1 输入参数 字节0—16,ASM456第一个通道的输入参数,这些参数需要用户预先定义,用于初始化设备的。反之,当参数发生变化,需要进行初始化操作。如图2
字节300—316,是ASM456第二个通道的输入参数。
S7-300通过PROFIBUS DP对RF300进行操作
图2:UDT10 输入参数包含ASM逻辑地址,通道号,命令DB号,命令DB的起始地址,以及MOBY的控制参数。 其中,MDS_control 参数,取值范围0、1、2: MDS_control=0,Presence check 关闭,MDS_present状态无指示,MDS_Control关
闭,SLG 发射场只有在 Command_start 启动时才打开。该方式用于多
个SLG近距离安装的使用场合,通过控制Command_start的启动,有效
的避免相互间的干扰。 MDS_control=1,Presence check 打开,当MDS进场,MDS_present状态会置“1”,且
会通过MOBY设备(如ASM456)指示出来。MDS_Control关闭,SLG 发
射场总是处于打开状态,执行过程中MDS离场不出错。该方式为默认设
置方式。 MDS_control=2,仅适用于ASM454。Presence check 打开,MDS_present状态有指
示,MDS_Control打开。ASM Firmware 的选项命令,用于同步MDS用
户程 序。
(1)、ASM命令没执行完MDS离场,会出错
(2)、MDS穿过读写窗口,但用户程序没执行操作,会出错 3.1.2 状态和控制 字节18—20,ASM456第一个通道的状态和控制位,用于指示过程信息和错误。如图3
S7-300通过PROFIBUS DP对RF300进行操作
图3:UDT10 其中命令控制字(参数 DB 的 DBW18)对于编程、操作、和状态监视都非常重要。图4
S7-300通过PROFIBUS DP对RF300进行操作
图4:DB45.DBW18 字节318—320,ASM456第二个通道的状态和控制位,用于指示过程信息和错误。 3.1.3 错误及其他状态信息 字节21—26,ASM456第一个通道的错误及其他状态信息。如图5
S7-300通过PROFIBUS DP对RF300进行操作
图5:UDT10 字节321—326,ASM456第二个通道的错误及其他状态信息。 3.1.4 内部变量 字节28—299,FC45内部变量,用于ASM456第一个通道使用,编程时不需要关注。
字节328—599,FC45内部变量,用于ASM456第二个通道使用。 3.2 MOBY 命令 在MOBY启动前需定义MOBY命令。MOBY命令如表6
UDT20是用以定义MOBY命令DB的数据结构。 普通命令 | 组命令 | 命令意思 | 01 | 41 | 写数据到MDS(数据载体) | 02 | 42 | 从MDS读数据 | 03 | 43 | 初始化MDS | 04 | 44 | SLG(读写器)状态 | 06 | -- NEXT | 命令 | 08 | 48 | END命令;取消与MDS通信 | 0A | 4A | 天线ON/OFF | 0B | 4B | MDS状态 |
表6:MOBY命令 注:
01/41,02/42,03/43是MOBY基本命令,适用于所有MOBY SLG 和 ASM,其他命令要视MOBY 和 ASM 而定。
4、组态编程
4.1 连接设备 本文实验设备如图6
S7-300通过PROFIBUS DP对RF300进行操作
图6:设备连接图 4.1.1 模块连结
将ASM456 ECOFAST 连结模块到基本模块,如图7
S7-300通过PROFIBUS DP对RF300进行操作
图7:ASM456 ECOFAST模块 ASM456基本模块:6GT2002-0ED00
ECOFAST 连接块:6ES7194-3AA00-0AA0 4.1.2 设置PROFIBUS DP 地址
通过地址设定插头设置PROFIBUS DP 地址,如图8
S7-300通过PROFIBUS DP对RF300进行操作
图8:DP设置插头 PROFIBUS DP 地址设置插头:6ES7 194-1KB00-0XA0 4.1.3 连接ECOFAST 混合插头
连接PROFIBUS DP网线和电源,如图9
S7-300通过PROFIBUS DP对RF300进行操作
图9:ECOFAST 混合插头 插座:6GK1 905-0CA00,电源、DP线接入ASM456
插头:6GK1 905-0CA00,电源、DP线从ASM456接出到其他站
如果是DP末端站,ASM456需要使用终端电阻插头:6GK1 905-0DA10 4.1.4 连接RF360T 到ASM456 使用的RF300 SLG电缆:6GT2891-0FH50,5米,连接RF380R 到ASM456。 4.2 STEP 7创建项目 4.2.1 创建项目
打开STEP7 创建新项目 ASM456-FC45,见图10
S7-300通过PROFIBUS DP对RF300进行操作
图10:创建项目 4.2.2 安装ASM456 GSD 文件 两种方式找到ASM456 GSD文件: MOBY软件CD: \daten\profi_gsd. 或 4.2.3 组态ASM456 安装ASM456 GSD文件后,在STEP7硬件列表中出现该产品。如图11
S7-300通过PROFIBUS DP对RF300进行操作
图11:STEP7硬件列表 硬件组态,设置CPU315-2PN/DP MPI/DP 接口为DP 主站,ASM456 作为3号从站连接到主站。双击ASM456 ,选择User mode 为 FB45/FC45,MOBY mode 为MOBY U/D/RF300 normal addressing,通信传输速率115.2Kbaud。如图12
S7-300通过PROFIBUS DP对RF300进行操作
图12:STEP7硬件组态 ASM456 逻辑首地址256。如图13
S7-300通过PROFIBUS DP对RF300进行操作
图13:ASM456硬件地址 编译并下载到CPU315-2PN/DP,CPU 运行,通信建立。 4.2.4 打开FC45例子程序 解压MOBY 软件CD中的程序文件 , daten\FC45.ARJ。如图14
S7-300通过PROFIBUS DP对RF300进行操作
图14:例子程序 拷贝例子程序到项目中。 由UDT10生成的DB45是MOBY 参数DB,其中包含ASM456逻辑地址,通道号,命令DB号,以及命令DB的起始地址。如图15
S7-300通过PROFIBUS DP对RF300进行操作
图15:DB45 该程序是RF300单载体操作,因此,参数DB中参数MOBY_mode选择5,RESET_Long参数选择1(True)。如图16
S7-300通过PROFIBUS DP对RF300进行操作
图16:DB45 4.2.5 编程序
在OB100(S7-300启动初始化程序)中置位每一个通道的init_Run。如图17
S7-300通过PROFIBUS DP对RF300进行操作
图17:OB100程序 在OB1中周期性执行FC45,启动MOBY命令。如图18
S7-300通过PROFIBUS DP对RF300进行操作
图18:OB1程序 OB 122 评估出ASM 模块故障信号。如图19
S7-300通过PROFIBUS DP对RF300进行操作
图19:OB122程序
5、调试
5.1 MOBY启动 由于选择MDS_Control默认设置“1”,读写设备总在监测MDS是否进场。如果变量Ready=True,Error=false,一旦MDS进入读/写窗口,ASM456上PRE灯点亮,MOBY 状态字的MDS_Present 被置位,此时,通过Command_Start 即可启动MOBY命令。 如果Ready= false,则请检查是否在OB100中被初始化,或检查FC45是否在OB1中被周期性执行。 如果Error= True,则应检查错误原因。错误信息会被分别记录在error_MOBY,error_FC,或error_BUS。具体信息请参阅下文或FC45手册第五章。 5.2 MOBY命令 使用UDT 20可以生成命令DB块,本例命令DB块为DB47,通过修改命令DB块的命令参数和命令地址,可以实现对RF360T的读、写、初始化等操作。 5.2.1 写操作 例如,将数据从DB48的DBB0到DBB9共5个字节写到MDS地址0开始的地址。 命令格式:表3 命令
[hex] | 子命令
[hex] | 长度
[dec] | MDS地址
[hex] | DB块
[dec] | DB块起始地址[dec] | 1 | 0 | 10 | 0 | 48 | 0 |
表3:写命令
命令DB块。如图20
S7-300通过PROFIBUS DP对RF300进行操作
图20:DB47 5.2.2 读操作 例如,将数据从MDS地址0开始的10个字节读到DB50的DBB0到DBB9。 命令格式,如表4 命令
[hex] | 子命令
[hex] | 长度
[dec] | MDS地址
[hex] | DB块
[dec] | DB块起始地址
[dec] | 2 | 0 | 10 | 0 | 50 | 0 |
表4:读命令 命令DB块,如图21
S7-300通过PROFIBUS DP对RF300进行操作
图21:DB47 5.2.3 初始化MDS 例如,将RF360T初始化为0,RF360T为8Kbyte ,地址空间为2000H。 命令格式,如表5 命令
[hex] | 子命令
[hex] | 长度
[dec] | MDS地址
[hex] | DB块
[dec] | DB块起始地址
[dec] | 3 | 0 | -- | 2000 | -- | -- |
表5:初始化命令 命令DB块,如图22
S7-300通过PROFIBUS DP对RF300进行操作 1、概述 无线射频识别技术(Radio Frequency Identification,RFID ...
图22:DB47
6、错误诊断
MOBY的操作,一般有以下两种故障类型。 6.1 导致CPU停机的故障 ASM456有故障,而OB86没有下载到CPU;
ASM456有故障,OB122没有编程并下载到CPU;
如果只有当执行FC45时,CPU才故障停机,可能的故障原因有:
• 参数DB或参数DB的起始地址不正确;
• 命令DB不正确;
• 数据DB不存在或空间不够大。 6.2 error=1故障
当MOBY某通道的error 被置位,会有如下三类错误: 6.2.1 Error_MOBY
这类故障是由ASM和MOBY读/写设备引发的,主要有以下两种
• ASM456和MOBY读/写设备以及MDS之间的通信故障;
• ASM456不能执行命令。 此类故障发生时,ASM上ERR灯闪烁。 6.2.2 Error_FC FC45故障,主要原因是参数DB或命令DB中参数赋值错误。 6.2.3 Error_BUS 此类错误是发生在PROFIBUS DP传输层的故障,通过PROFIBUS的系统诊断软件(如PROFIBUS tracer)或BT200可得到详细的信息。FC45手册5.2给出的故障代码是SFC58/59的RET_VAL参数的一些值,具体信息请参考书册《S7-300/400系统和标准函数》或STEP7在线帮助。
|