QQ登录

只需一步,快速开始

S7-300通过PROFIBUS DP对RF300进行操作

[ 复制链接 ]
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进行操作

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进行操作

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进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图3:UDT10

其中命令控制字(参数 DB 的 DBW18)对于编程、操作、和状态监视都非常重要。图4

S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作

图4:DB45.DBW18

字节318—320,ASM456第二个通道的状态和控制位,用于指示过程信息和错误。

3.1.3 错误及其他状态信息

字节21—26,ASM456第一个通道的错误及其他状态信息。如图5

S7-300通过PROFIBUS DP对RF300进行操作

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进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图6:设备连接图

4.1.1 模块连结
将ASM456 ECOFAST 连结模块到基本模块,如图7

S7-300通过PROFIBUS DP对RF300进行操作

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进行操作

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进行操作

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进行操作

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进行操作

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进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图12:STEP7硬件组态

ASM456 逻辑首地址256。如图13

S7-300通过PROFIBUS DP对RF300进行操作

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进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图14:例子程序

拷贝例子程序到项目中。

由UDT10生成的DB45是MOBY 参数DB,其中包含ASM456逻辑地址,通道号,命令DB号,以及命令DB的起始地址。如图15

S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图15:DB45

该程序是RF300单载体操作,因此,参数DB中参数MOBY_mode选择5,RESET_Long参数选择1(True)。如图16

S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作
图16:DB45

4.2.5 编程序
在OB100(S7-300启动初始化程序)中置位每一个通道的init_Run。如图17

S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作

图17:OB100程序

在OB1中周期性执行FC45,启动MOBY命令。如图18

S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作

图18:OB1程序

OB 122 评估出ASM 模块故障信号。如图19

S7-300通过PROFIBUS DP对RF300进行操作

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进行操作

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进行操作

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 ...

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在线帮助。



S7-300通过PROFIBUS DP对RF300进行操作

S7-300通过PROFIBUS DP对RF300进行操作
回复

使用道具 举报

快速回复 返回列表 客服中心 搜索