1       免责声明

本使用手册及样例包目录内所包含文档、PLC程序、机床可执行程序(MPF、SPF、…)、电气图,可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。

对于在使用中发生的人员、财产损失本公司不承担任何责任,由使用者自行承担风险。

以上声明内容的最终解释权归西门子(中国)有限公司所有,后续内容更新不做另行通知。

 

2       概述

由于SINUMERIK ONE内部集成了S7-1500的PLC,因此可以使用S7-1500的工艺对象来对RFID系统进行组态,从而简化了调试过程。本文采用RF185C作为通讯模块,RF340R Gen2阅读器来读写RFID芯片,读写的数据与NC的GUD变量进行交互。

 

3       RFID硬件

·         RFID芯片,安装时注意不能直接贴在金属表面,中间需要加非金属垫片。

image.png

 

·         RFID信号接收模块RF340R Gen2

image.png

image.png

 


·         RF18xC通讯模块,它涵盖了操作SIMATIC Ident RFID阅读器和光学阅读器的所有领域。应用程序可以在控制启、PC上实现现场级运行或在IT级别运行。

image.png


       image.png

 


4       RFID组态

·         从硬件目录中选择RF185C

image.png

·         将RF185C连接到NCU的X150接口

       image.png

与其他Profinet组件相同,需要给RF185C模块分配IP和Profinet设备名称

·         在“工艺对象“目录下创建”SIMATIC Ident“对象,在打开的对话框中左侧按钮中选择SIMATIC Ident图标,在右侧的树状结构中选中SIMATIC Ident目录下的TO_Ident项,点击确定关闭对话框。

     image.png

 

·         此时在工艺对象目录下会出现刚才创建的SIMATIC Ident工艺对象

     image.png

 

·         双击“组态“对RFID对象进行配置

     image.png

 

·         基本参数页面的“Ident设备“项,如下图选中硬件组态中添加的RF185C阅读器

     image.png

然后在“阅读器参数分配“项中选择:RF300 Gen2 general,与实际的RF340 Gen2对应

 

·         阅读器参数页面“复位错误LED“项选择:复位命令或成功命令后

·         “转发器类型“根据实际阅读器类型选择,此处选择了RF300

     image.png

·         至此,RFID硬件组态和工艺对象的建立完成。


 

5       PLC程序

对于S7-1500的PLC,建立了工艺对象后,可以使用“指令“à”选件包“页面àSIMATIC Ident目录下的相关指令对RFID芯片进行读写等操作,首先需要创建DB块用于存储读写的数据,本例中创建了100字节的读缓冲和100字节的写缓冲:

image.png

 

具体读写数据编程,以RFID三种最基本操作为例:

5.1      复位

·         用鼠标双击或直接将Reset_Reader块拖入PLC程序中,根据需要创建背景数据块,此处使用多重实例,使用上级FB块的背景数据块。

image.png

image.png  

 

·         接口参数中“HW_CONNECT“填写工艺对象的名称,其他接口由于是FB块调用,可以不填写,在下面的编程中直接使用接口即可。举例如下:

        image.png


5.2      读取RFID数据并写入NC的String类型GUD变量

·         用鼠标双击或直接将Read块拖入PLC程序中,创建背景数据块

        image.png

 

·         PLC编程读取RFID芯片数据

      image.png


 

·         读取到的字符串以字符数组的形式存储在DB块中,例如字符“TEST”在DB块中的存储方式为:

“RFID_DATA”.RFIDread[0]=‘T’

“RFID_DATA”.RFIDread[1]=‘E’

“RFID_DATA”.RFIDread[2]=‘S’

“RFID_DATA”.RFIDread[3]=‘T’

 

·         调用字符转换功能块,将字符数组的内容转换为字符串变量的值。该功能块位于“扩展指令“页的”字符串+字符“目录下”Chars_TO_Strg“,如下图

      image.png

      image.png

 

·         调用FB5(LBP_ReadGUD)功能块获取GUD变量的Token,NC中GUD变量的名称为“READRFID“,类型String。在FB块的Static变量表中建立该变量的Token变量RdRFIDToken、GUD变量名RdRfidGudName和值变量RdRfidGUDValue。

其中Token变量可以使用Toolbox中的PLC数据类型 ”LBP_typeNCVariableTokenString”来直接创建

      image.png

 

PLC程序如下:

      image.png

 

·         调用FB3将RFID芯片的数据写入GUD变量

     image.png

     image.png

5.3      读取String类型的GUD变量并写入RFID芯片

此过程与5.2章节相似,调换功能块调用顺序即可。

·         建立写变量的Token,通过FB5读取GUD变量

    image.png

    image.png


·         将读取到的字符串转换成字符数组,使用Strg_TO_Chars功能块

    image.png

·         调用SIMATIC Ident下的Write功能块将字符数组的内容写入RFID芯片

    image.png


 

5.4      测试

·         系统上电,复位后,RF340R阅读器指示灯为绿色

·         将RFID芯片靠近RF340R阅读器,指示灯为蓝色,阅读器读数据

·         通过界面按钮或PLC变量触发"RFID_DATA".ReadTrigger信号,NC中GUD变量READRFID的内容立即变为RFID芯片中的字符串内容

·         修改GUD变量WRITERFID,通过界面按钮或PLC变量触发"RFID_DATA".WriteTrigger信号,即将GUD变量里的字符串写入RFID芯片

 

6       作者/联系人

杨晨

2021.6

 

7       参考资料

·         SIMATIC Ident RFID系统SIMATIC RF300 系统手册 2019/02

·         在TIA中使用RF186C 入门(S7-1500) v1.0

 

8       版本信息

版本

日期

修改内容

V1.0

2021-6