CPU1513与西克RFID的PROFINET通讯以及使用方法

已锁定

Z.P.

  • 帖子

    53
  • 精华

    0
  • 被关注

    5

论坛等级:侠客

注册时间:2018-05-05

普通 普通 如何晋级?

CPU1513与西克RFID的PROFINET通讯以及使用方法

6769

2

2019-03-22 15:04:07

1. 配置RFID

1.1. 前往SICK官网下载RFID调试软件

       官网地址https://www.sick.com/cn/zh

       进入官网后直接在搜索栏搜索SOPAS,然后会有如下画面,


直接点击添加至愿望清单即可下载。

1.2.打开PROFINET功能

     打开RFID配置软件,输入设备名称,注意此处的设备名称一定要和博途中组态的RFID设备名称一致。

         配置IP地址,IP地址要与CPU在同一个网段,切与博途组态中的IP地址相同。


2.博途配置

2.1.前往西克官网下载RFID的GSD文件

选择适用于PROFINET功能的GSD文件进行下载。

2.2.在博途中导入GSD文件

2.2.1.打开博途

在工具栏里找到“选项”→“管理通用站描述文件”,将先前下载的GSDML

文件导入,如下图直接点击安装即可将GSD文件导入完成。

2.2.2.安装完成后,打开博途右侧的“硬件目录”→“其他现场设备”→“PROFINET IO”→“ident system”→“SICK AG”→“RFH6xx”,具体如下图所示。


2.3.硬件组态

2.3.1.将西克RFID拖放到组态窗口中,必须使用握手模式:Handshake(HS),此模式下,每次数据传输都需要PLC 进行回应;支持长数据的快速传输;非握手模式,通常用于短数据传输和通讯测试。


2.3.2.开始进行RFIDIP以及名称配置,具体配置方法与博途中配置其他硬件相同,在这里要必须注意,我们在博途中配置的RFIDIP地址和名称必须与RFID配置软件中的配置参数必须一致。

2.3.3.添加RFID控制字,如下图所示,我们可以根据自己需求选择8位到128位控制字。


2.4.安装SICKRFID库文件

2.4.1.首先进入西克官网下载RFID库文件,在这里我们选择S7功能块,因为本次用的CPU为1500,所以选择S7-1200/1500 TIA专用的功能块。如下图点击下载即可。


2.4.2.在博途中添加库文件,点击博途右侧“库”在全局库中安装刚才下载好的库文件。

2.4.3.开始添加功能块,将SICK AG中的程序包添加到程序块中,将SICK AG中的数据包添加到PLC数据类型中,如下图所示。


2.5.开始程序编写

2.5.1.创建一个RFID专用的全局DB数据块,在DB块中创建一个专用的数据,数据类型选择RFID库中的数据类型,如下图。


2.5.2.调用RFID功能块


管脚介绍:

HWInputIdent                  Input 硬件标识符,具体数据如下图所示在博途中查看


 

HWOutputIdent              Output 硬件标识符,具体数据如下图所示在博途中查看


HWInputlength               PLC分配给RFID input数据长度,本次我们使用的是32位。  

HWOutputlenth              PLC分配给RFID output数据长度,本次我们使用的是32位。

Tout                                  设置超时时间,可以用时间量填入其中,系统默认为5s

CANId                               设置can 网的站号,如果整套系统采用Master/Slave 或Multiplexer/Server 的多组                                          组合(单个连接不需要设置)

Req                                   启动功能块,最后启动此bool 量。

TriggerOn                        类似于SOPAS 触发,根据Output format 的设置输出。

ReadTag                          用作读取Block 的值。

WriteTag                          用作写入Tag 的值。

ReqBusy                          RFID读/写开始,启动功能块,此布尔量置位,读/写结束后复位。

ReqDone                         RFID读/写成功后置位,到下一次读/写开始复位。

Error                                RFID读/写错误后置位

ErrorCode                       RFID读/写报错代码,具体代码含义参见手册。

Triggeron                        RFID初次上电启动此布尔量后再置位Req启动功能块,此动作是用来初始化功                                          能块,否则无法启动RFID进行读/写操作。

Data                                 将上一步所创建的固定变量作为此管脚的输入数据

其他管脚可以不做处理。

2.6.RFID读写数据

2.6.1.打开我们创建的RFID固定变量

首先我们设置读数据的一些参数,

iStartBlock                     读起始地址,默认为0

iNumBlocks                   RFID中INumBlock*4=iDatalength ,因为此次项目选择的为32位数据读取,                                         所以此处iNumBlocks值设置为8.

iDatalength                   读数据长度,无需更改,自动变换


我们设置写数据的一些参数,

iStartBlock                     写起始地址,默认为0

iNumBlocks                   RFID中INumBlock*4=iDatalength ,因为此次项目选择的为32位数据读取,                                         所以此处iNumBlocks值设置为8.

iBlocksize                       此参数设置为4,不可更改。

2.6.2.读写操作

RFID第一次上电必须进行初始化操作,即

将功能块中的“TriggerOn”置“1”,然后将“Req”置“1”,正常完成后ReqDone 会置TRUE,闹证明初始化完成。

通过功能块读数据操作步骤:

将功能块中的“ReadTag”置”1”再将“Req”置“1”,直到“REQDONE”置“1”为读取成功。可以在创建的固定数据块中查看读取数据值,如下图

通过功能块写数据操作步骤:

将功能块中的“WriteTag”置”1”再将“Req”置“1”。直到“REQDONE”置“1”为写入成功,可以将下图中的数据值写入到RFID电子标签中。


上述步骤均为本次自己所做项目使用的RFID的配置步骤,自己通过查找手册以及SICK售后服务人员的帮助完成,仅供各位参考,如有误,敬请指正。


 


CPU1513与西克RFID的PROFINET通讯以及使用方法 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有8656条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。