TukBest485转profinet模块在博图中的应用

电子说

1.3w人已加入

描述

一、产品功能
TP5404作为分布式IO的子模块,需要搭配适配器使用,如Profinet的TP8001,通过在组态里配置串口和寄存器地址等信息之后,可以将Modbus寄存器的输入和输出映射到PLC的QW和IW中,不用在PLC程序中编写协议来操作。

二、接线方法

Profinet

左侧4个端子皆为RS485的A端,右侧4个端子皆为RS485的B端,内部互通。

三、PLC组态
3.1配置485参数

Profinet
  • Baudrate: 从站设备波特率,接到同一个模块上的RS485从站,串口配置需要相同,4个通道共用串口配置
  • Parity: 串口校验等配置
  • Wait time: 寄存器指令等待时间,每个寄存器读取所需时间,单位ms,如配置成100,则每个寄存器操作需要100ms,如果配置了5个寄存器,则轮询时间为500ms,如果配置了10个寄存器,则读取时间为1s。
  • Stop or offline output value: 适配器与PLC断开连接,或者PLC处于Stop状态时,输出寄存器的操作,可以选择让该寄存器输出值保持上一个状态,也可以选择将替代值写入该寄存器,替代值再对应通道中配置。
  • Error or timeout input value:当输入寄存器没有返回正确指令的情况下,传给PLC的值可以选择一直使用上一个值,也可以选择在连续多次读不到的情况下,用替代值,如选择10 time set 65535,则连续10次没有读到寄存器的值时,传给PLC数值为65535,在PLC程序中,将65535这个数值当错通道错误来判断。
  • Modbus No: RS485从站ID,如果该ID设置为0,则该通道的所有寄存器都不会读取,不会占用刷新时间。
  • Register Addr input1: 第1个输入寄存器地址,根据从站寄存器地址对应表填写第一个需要读的寄存器,如果设置为65535,则该寄存器不会读取,不会占用刷新时间。
  • Register Addr output1: 第1个输出寄存器地址,根据从站寄存器地址对应表填写第一个需要写入的寄存器,如果设置为65535,则该寄存器不会写入,不会占用刷新时间。
  • Substitute value output1: 第一个输出寄存器替代值,结合Stop or offline output value来使用。

 

3.2数据映射

 

每个TP5404能映射8个寄存器的输入,和8个寄存器的输出,配置了Register Addr input1对应的寄存器地址后,TP5404会循环读取该寄存器,并将读到的数值放到IW(n+0)中,(n为TP5404输入起始地址),如下图所示,输入的起始地址是10,则第一个输入寄存器映射到IW10中,每个寄存器数值占2个字节,所以第二个输入寄存器映射到IW(n+2)中,为IW12,依次类推,Register Addr input8,对应寄存器数值映射到IW(n+14)中,为IW24。

输出寄存器类似,配置了Register Addr output1后,TP5404会将QW(n+0)中的数值写入到该寄存中,如下图配置的输出起始地址为20,则第一个输出寄存器映射的数值为QW20,Register Addr output8 映射到QW(n+14),为QW34

Profinet

示例1:监控带RS485接口的变频器

Profinet

Step1:配置变频器RS485相关的参数,控制及频率源选择由通讯给定,并记录ID和波特率等参数。

Step2:找到变频器控制字和频率的寄存器对应表

            如该变频器主要寄存器对应关系-

寄存器名称

寄存器地址

(16进制)

寄存器地址

(10进制)

寄存器说明
控制字 2000 8192

1为正转,9为反转

3为停机,4为自由停机

频率给定 2001 8193 给定数值为 频率*100
状态字 D017 53271 第1位为启停状态
实际频率 D000 53248 监视数值为 频率*100

 

Step3:配置TP5404组态参数

Profinet

串口参数配置波特率等参数配置和变频器相同,Wait time设置成100ms(2400以上的波特率100ms足够,如果波特率为115200,且对实时性要求高,可以设置为10ms)

变频器地址为1,则Modbus NO 设置为1

寄存器地址根据变频器寄存器地址表配置,填写十进制地址

变频器类型的设备,如果PLC或者网络出现故障,一般需要它停止运行,因此Stop or offline output value:我们选择了substitution value(替代值),控制字写入3的时候是停机,我们将第一个寄存器的替代值填写为3(substitute value output1),第二个寄存器替代值填写为0,这样在断网等情况,变频器会自动停机。

Error or timeout input value:将该参数设置为10 time set 65535,如果485连续10次通讯故障,则IWn即IW10会变成65535,通过判断此数值,来确认RS485是否通讯正常。

 

Step4:在线测试

演示1:控制变频器启动

Profinet

给控制字赋值1(正转),频率输出2000(20HZ)

Profinet

可以看到,状态的第1位(启停状态)由0变成了1,实际频率也变成了2000。

Profinet

控制字赋值3,正常停机

 

演示2:RS485断线故障

Profinet

 

Profinet

将RS485线拆下,则模块与变频器通讯故障,状态和频率监视值均变为65535

 

演示3:断网线

先将RS485接回去,并且控制变频器正转

ProfinetProfinet

变频器正常工作在20HZ

Profinet

将PLC与适配器之间的网线断开,变频器自动停机,频率变为0。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分