中自网

热门搜索:电子  抽油机  PID  无线通讯  ABB  变频器  低压  电力电子 

当前位置:首页>>  方案与应用>>  方案锦集

天宏模块与台达PLC的连接

放大字体  缩小字体 发布日期:2011-09-30   浏览次数:48476
天宏模块与台达PLC的连接来源:本站原创 作者:Thgk(2007-11-20 10:31:33) 天宏模块与台达PLC的连接台达PLC分为ES/SS/EX、EP/SA

天宏模块与台达PLC的连接

    天宏模块与台达PLC的连接台达PLC分为ES/SS/EX、EP/SA/SX、EH三大类,它们之间的大部分指令通用。在它们与天宏模块通过ModBus协议连接时,其设定与程序是一致的。以下就模块与PLC的连接做一介绍。

    模块与PLC的连接模式有两种:

    1、模块做主机,PLC做从机。

    2、模块做从机,PLC做主机。连接时首先注意以下几点:
 

           1.PLC的通讯参数是否和模块中所设定的一致。

           2.模块做从机的时候。对外它的数据放在以H9C41地址开头的寄存器中
 

           3.PLC的通讯格式应该和仪表中设定的一样。

           4.若PLC做主站时来读取仪表中的数据时,数据存放在PLC的ModBus通信寄存器D1296~D1311中。
 

            5.PLC做从站时,仪表将数据写入到PLC的寄存器D时,寄存器的编号与地址的对应对系如表1.

    表1

    一、PLC做从机,模块做主机   此时PLC只需将RS485口的通信参数设定好,并保证与模块的一致即可。
图1是一个通信参数设定的PLC梯图.                                       

图1 

图2 
 

    如图所示:M1002:起始正向脉冲,仅在PLC由停止变为运转时ON一个扫描周期。D1120:为通信参数寄存器,它的值与通信参数的对应关系如图2所示。这里的通信格式为:波特率19.2kbs、7个数据位、2个停止位、无校验(H89)。M1120:485口通信设定保持,ON后D1120的内容变更无效。D1129:485口通信超时时长设定,单位为msM1143:485口通信模式设定,ON时为RTU模式,OFF时为ascii 模式。D1121:PLC的485通信地址

    二、当PLC做主机时,只需在程序中加入读取数据的指令(如图3)即可。模块的数据存放地址通常为以H9C41地址开头的寄存器组中,具体请参考模块说明书。                                 

图3


    如图所示:
    M1:普通辅助继电器,用于启动通信部分程序。

    MODRW:PLC内ModBus通信指令,其中K1:连机设备地址、H3:操做数(多笔读)、H9C41:欲读寄存器地址、D0:数据存放来址(RTU)、K4:读取的数据笔数。

    M1122:送信要求,当MODRW指令与M1122同时ON时,PLC即开始发送指令。

    M1127:通信指令传送接收完毕标志。M1129:通信超时标志,当PLC发出指令后,若在D1129所规定的时间内收不到数据,则M1129会ON。

    M1129:通信超时标志,当PLC发出指令后,若在D1129所规定的时间内收不到数据,则M1129会ON。

    M1140:回传数据错误标志,当PLC接收到的数据有错误时,M1140会ON。

    看见这段程序的功能是在M1被置ON后PLC会发出一个读设备地址为1的以H9C41为起始地址的4个寄存器内的4组数据。且回传数据会存放在D1296-D1131的ModBus通信用寄存器中。当发送完毕且接收完毕后,回传数据被传送至以D100开始的四个寄存器中;并且同时会亮Y0以指示通信成功,当通信超时或通信错误后将熄灭Y0,以表示通信失败。当通信成功或通信错误超时后,程序均会将各标志复位,并把M2置为ON,以便启动后续程序。
  
    当需要通信的模块较多时可采用下面的通信程序。由于程序稍长所以分为三段加以说明:

图4
 

    如图4 在程序初始化时加入了寄存器偏移地址E1、通信设备地址寄存器D50和数据地址寄存器D51的初始赋值。                                            

图5
 


    如图5程序中的MODRW指令中的部分参数由数据寄存器代替,设备地址由D50的内容指定,数据寄存器地址由D51的内容指定。数据传送指令BMOV的目标地址由D100为起始地址加上E1内所指的偏移地址来确定。                                                                               

图6
 


    如图6程序首先加入了一个扫描延时,如果没有此延时当第一次通信完成以后,PLC扫描一个周期的扏行结果还是M1为ON的状态,所以使程序中的[SET  M1122]无效,导致通信停止;另外在RTU通信模式时,由于数据间隔是以时间长度来确定的,所以当一次通信完成后必需延时一定的时间才可以进行下一次通信,延时长度由通信的波特率来确定;波特率越低,延时就越短。延时后将E1的值加10,将D50的值加1后[RST  M2] [SET  M1]  。然后用设定值和D50内的值比较,如果D50内的值大于设定值则复位D50、E1,并[RST  M1]、[RST  M2],通信完成。[SET  M3]启动后续程序。
 
 
[ 方案搜索 ]  [ ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]  [ 返回顶部 ]

0条 [查看全部]  网友评论