1.FDL多点传送方式
FDL多点传送是一种分组广播方式,网络中具有相同的LSAP(1~56)的主站为同一组,一个站可以同时向该组中的其他站发送数据。多点传送方式和广播方式均采用SDN(无确认的数据发送)的服务方式。
多点传送方式的FDL发送站将数据发送到一个DP地址固定为127的虚拟站,同一多点传送组内其他的站通过虚拟站接收数据。同一组内所有的站具有相同的LSAP(1~56),组态时可以通过设置本地LSAP的值来修改本组公用的LSAP,它被自动作为同一组内各站的远程LSAP(见图4-59和图4-60)。
在同一物理网络中,可以有其他多点传送组,不同的组应使用不同的LSAP。
与广播方式类似,在多点传送方式,发送数据区的前4个字节作为报文头,必须保留,其内容是什么没有关系。从第5个字节开始为实际接收和发送的数据。同一组内每个参与FDL通信的站都可以用多点传送方式发送数据。
接收方收到的报文头的前两个字节是发送站的站地址和LSAP,第3个字节是7FH,用来表示使用的是SDN(无确认的数据发送)方式,以上数据是发送时CPU自动添加的。接收方根据前两个字节判断是哪个主站发送的,然后将数据存放到不同的地址区。从第5个字节开始为实际发送和接收的数据,由于报文头的原因,最大的数据传输量为236B。
2.硬件组态
打开SIMATIC管理器,用新建项目向导创建一个新的项目,CPU为CPU 315-2DP,项目名称为“FDL_mul”(见随书光盘中的同名例程)。
在HW Config中,将电源模块、信号模块和CP 342-5插入机架。采用默认的设置,CPU的MPI接口和集成DP接口的地址均为2,未使用集成的DP接口。
将CP 342-5插入机架,设置其DP和MPI接口的站地址均为3。生成一个PROFIBUS网络,设置网络的传输速率为1.5Mbit/s,配置文件为“标准”,将CP 342-5连接到网络上。在“工作模式”选项卡,设置CP的工作模式为“无DP”,模块输入、输出的起始字节地址为默认的320(即十六进制数16#140)。
在SIMATIC管理器中生成另一个S7-300站。在HW Config中,将CPU 315-2DP和电源模块、信号模块插入机架,设置CPU的MPI接口和集成的DP接口的站地址均为4。插入一块CP 342-5,设置其DP接口和MPI接口的站地址均为5,将CP 342-5连接到网络上。设置CP的工作模式为“无DP”,模块输入、输出的起始字节地址为默认的336(16#150)。
3.组态FDL连接
组态好两个站的硬件后,分别保存并编译硬件组态信息后,关闭HW Config。在SIMATIC管理器中点击工具栏上的按钮,打开网络组态工具NetPro,看到连接到PROFIBUS网络上的两个站(见图4-58)。选中SIMATIC 300(1)站,在下面的窗口出现连接表,双击连接表第一行的空白处,建立一个新的连接。在弹出的“插入新连接”对话框中,将“连接伙伴”中的连接对象设为“所有多点传送站点”,连接类型为“FDL连接”。
图4-58 网络与FDL连接组态(www.xing528.com)
点击“确定”按钮,在出现的FDL连接属性对话框的“地址”选项卡中(见图4-59),可以看到系统自动指定的远程虚拟站的站地址为127。设置本地站的LSAP为18,它被自动作为该站的远程LSAP。改变本地LSAP,远程LSAP也随之而变,LSAP相同的站点为同一组,同组的站点之间进行广播通信。
选中SIMATIC 300(2)站,在下面的窗口出现连接表,双击连接表第一行的空白处,建立一个新的连接。在弹出的“插入新连接”对话框中,将“连接伙伴”中的连接对象设为“所有多点传送节点”,连接类型为“FDL连接”。
点击“确定”按钮,在出现的FDL连接属性对话框的“地址”选项卡中(见图4-60),设置本地的LSAP为18,系统自动指定的远程虚拟站的站地址为127,LSAP为18。上述两个站因为具有相同的LSAP,它们属于同一个多点传送组。
图4-59 3号站的FDL连接的地址信息
图4-60 5号站的FDL连接的地址信息
多点传送方式需要调用通信功能AG_SEND和AG_RECV来发送和接收数据,具体的程序与广播方式的基本上相同,注意双方OB1中的LSAP均为18。
图4-61和图4-62是在运行时复制的通信双方的变量表。图4-62中的DB2.DBD0是5号站接收到的报文头,第1个字节是发送方的站地址3,第2个字节LSAP为18(16#12),第3个字节16#7F表示使用的是SDN(无确认的数据发送)方式,第4个字节16#FF没有什么意义。
图4-61 SIMATIC300(1)的变量表
图4-62 SIMATIC300(2)的变量表
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。