当前位置:文档之家› SIMOTION 工业以太网通信入门

SIMOTION 工业以太网通信入门

1.S I M O T I O N工业以太网网络介质西门子工业以太网网络通常使用的物理传输介质为屏蔽双绞线(FCTP)、工业屏蔽双绞线(ITP)和光纤。

1.1屏蔽双绞线(FastConnectionTwistPair)FCTP快速连接双绞线用于将DTE快速连接到工业以太网上,配合西门子FCTPRJ45接头使用,连接方式如图1所示:图1:FCTP电缆与TPRJ45接头将双绞线按照TPRJ45接头标示的颜色插入连接孔中,快捷、方便地将DTE设备连接到工业以太网上。

使用FC双绞线从DTE到交换机最长通信距离为100米(DTE到DTE)。

也可以使用普通RJ45接头,为了保证数据传输的可靠性,在无干扰情况下最长通信距离为5米。

RJ-45连接有两种连接方式,交叉连接(如图2所示)和直通连接(如图3所示)。

交叉连接用于网卡之间的连接或集线器之间的连接;直通线用于网卡与集线器之间或网卡与交换机之间的连接。

Siemens交换机由于采用了自适应技术,可以自动检测线序,故通过交换机可以选择任意一种电缆进行连接。

图2交叉线连接图3直通线连接SIMOTION带有RJ45接头,建议使用西门子FCTP和FCTPRJ45接头。

1.2工业屏蔽双绞线(IndustrialTwistedPair)屏蔽双绞线如图4所示,它有白/蓝和白/橙两对双绞屏蔽线。

外部包有屏蔽层和绝缘层,用于连接有ITP 端口的以太网设备。

通过ITP电缆连接的两个设备的最远距离为100米。

图4ITP电缆结构图连接ITP电缆的连接头有两种,即9针或15针的Sub-D接头,如图所示5、6:图5Sub-D9针接头图6Sub-D15针接头使用Sub-D接头进行连接的网络连接牢固,不易松动。

其连线方法及9/15接头的转换可以查阅西门子手册。

同样ITP电缆也会有交叉连接的情况,可以直接定购ITPXP标准电缆。

SIMOTION只有RJ45以太网接口,通常不使用工业双绞线ITP。

1.3光纤按光在光纤中的传输模式不同,光纤可分为单模光纤和多模光纤。

多模光纤:中心玻璃芯较粗(50或62.5μm),可传多种模式的光。

但其模间色散较大,这就限制了传输数字信号的频率,而且随距离的增加会更加严重。

例如:600MB/KM的光纤在2KM时则只有300MB的带宽了。

因此,多模光纤传输的距离就比较近,一般只有几公里。

单模光纤:中心玻璃芯较细(芯径一般为9或10μm),只能传一种模式的光。

因此,其模间色散很小,适用于远程通讯,但其色度色散起主要作用,这样单模光纤对光源的谱宽和稳定性有较高的要求,即谱宽要窄,稳定性要好。

光纤技术只允许点对点的连接,即一个发送装置只对应一个接收装置。

因而两个站点之间需要有发送和接收两根光纤进行连接。

所有SIMATICNET标准的光缆都是两根光纤。

光纤的连接头有很多种如图7所示:图7光纤的连接头其中各种连接头都有各自的优点,例如:ST连接头安装简易,比较适合于现场连接,(西门子BFOC接头就是ST接头);FC接头有一个不固定的套环,可以提供较好的机械的隔离;SC连接头适合紧密连接,其推拉设计可以避免在安装过程中的光纤平面受损,应用比较普遍。

在西门子的网络设备中,大多光纤链路设备使用BFOC接头。

光纤通讯应用于工业以太网的优点:隔离电气的站点或网段没有电气的接地问题没有屏蔽电流数据传输不受外界电磁干扰不受雷电的影响不会产生电磁干扰重量轻根据光纤的类型不同,长距离的通讯依然可以保持高的通讯波特率带有RJ45接头的SIMOTION可以直接连接到交换机的电气接口上,交换机之间可以通过光纤连接,增加通信距离和抗干扰性。

2.SIMOTION工业以太网网络拓扑结构通过西门子交换机组成的以太网有三种网络拓扑结构:1)总线型;2)星型;3)冗余环网。

图8所示为SCALANCE200组成的冗余环网。

图8冗余环网示例3.配置SIMOTION以太网接口3.1在硬件配置中设定以太网接口在SCOUT界面中点击SIMOTIONCPU,右键点击“OpenHWconfiguration”进入硬件配置界面,例如D435,X120和X130为以太网接口,双击选择的通信接口,在弹出的界面中定义IP地址和子网掩码,如图9所示:图9设定通信接口注意:即使建立两条以太网,两个以太网通信接口不能设置在相同的网段中或相同的IP地址。

3.2在线联机设定以太网接口将编程器连接到SIMOTION以太网接口上,在控制面板“SettingthePG/PCInterface”接口中将访问点指向使用的编程网卡例如“S7ONLINE(STEP7)->TCP/IP->Intel(R)PRO/1000MT”。

打开SIMATICManager,使用菜单命令“PLC”->“EditEthernetNodes”在界面中选择“Browse”键浏览网络上所有的站点,如图10所示:图10浏览网络上的站点每一个接口在硬件的前面板标有网卡的MAC地址,选择站点,在“EditEthernetNodes”界面中设置IP地址和子网掩码,点击“AssignIPConfiguration”键传送设定的命令。

如图11所示:图11设置站点地址IP地址设置完成后,可以使用以太网接口编程。

4.编写通信程序通过以太网进行站点间的通信有两种方式:1)UDP;2)TCP。

4.1UDP通信方式UDP通信协议不需要在通信前建立连接,在发送和接收的数据报文中带有通信方的IP地址和端口号。

通信函数存储于在“Communication”->“Datatransfer”目录下,在发送方调用发送函数的示例程序如图12所示(使用LAD编写):图12UDP发送程序发送函数参数解释如下:SourcePort发送方的端口号,数据类型UINT,例如2001。

DestinationAddress接收方的IP地址,数据类型为数组,ARRAY[0..3]OFDestinationPort接收方的端口号,数据类型UINT,例如2000。

CommunicationMode通信模式,“EnumUdpCommunicationMode”枚举数据类型,有两种选择:(1)“CLOSE_ON_EXIT”,通信完成后释放通信资源;(2)“DO_NOT_CLOSE_ON_EXIT”,通信完成后仍占用通信资源。

DataLength发送的数据长度,数据类型UDINT,最大长度1400字节。

Data发送数据区,数据类型为数组,ARRAY[0..1399]OFBYTE。

OUT发送函数状态信息,数据类型DINT。

在数据接收方调用接收函数的示例程序如图13所示:图13UDP接收程序接收函数参数解释如下:Port定义本方的端口号,数据类型为UINT。

定义的端口号必须与发送方参数“DestinationPort”指定的端口号相同。

CommunicationMode通信模式,与发送函数通信模式相同。

NextCommand枚举数据类型,元素中包括“IMMEDIATELY”、“WHEN_COMMAND_DONE”和“ABORT_CURRENT_COMMAND”。

“IMMEDIATELY”:接收命令与后续所要执行的命令同步执行。

“WHEN_COMMAND_DONE”:接收命令执行或失败后执行后续的命令,异步执行。

“ABORT_CURRENT_COMMAND”:终止当前的任务后执行执行后续的命令。

4.2TCP通信方式TCP通信方式在发送接收数据前必须建立通信连接,连接需要在通信双方编程建立。

主动连接的一方作为客户端,被动连接的一方作为服务器。

下面以SIMOTIOND435与S7-300CP343-1通信为例介绍TCP通信方式。

在STEP7项目下创建S7-300站点,插入以太网通信处理器CP343-1,选择与SIMOTION在相同的网络上。

在NETPRO中点击CPU,在下面的连接表中插入一个连接如图14所示:图14建立TCP连接连接的站点选择“Unspecified”,连接方式选择“TCPconnection”,点击“Apply”键确认进入连接属性界面,如图15所示:图14配置TCP常规信息在“GeneralInformation”栏中,“BlockParameters”参数显示CP343-1的地址及连接号,这两个参数也是PLC 调用发送和接收通信功能块赋值参数。

“Activeconnectionestablishment”选项决定通信双方哪一个是主动连接(客户端),哪一个是被动连接(数据服务器)。

选择该选项为主动连接,在SIMOTION侧需要调用函数“_tcpOpenServer”与PLC建立连接,如果没有选择该选项为被动连接,在SIMOTION侧需要调用函数“_tcpOpenClient”与PLC建立连接。

本例中选择PLC为数据服务器,SIMOTION为客户端。

点击“Address”栏配置SIMTION的IP地址及端口号,如图15所示:图15配置通信方IP地址配置完成后将配置选项下载到PLC中。

与PLC在NETPRO中创建连接不同,在SIMOTION侧需要调用函数建立连接,通信函数存储于在“Communication”->“Datatransfer”目录下,函数调用的示例程序参考图16:图16SIMOTION侧建立TCP连接(客户端)函数参数解释如下:PortSIMOTION端口号,数据类型UINT,在NETPRO中定义为2001。

连接函数调用一次,得到连接号后停止调用。

注意:此函数调用需用上升沿信号进行使能。

通信连接建立后,在通信双方需要编写通信函数或通信功能块。

在S7-300PLC侧OB35中(间隔发送)调用发送功能块FC5AG_SEND(“Libraries”->“StandardLibrary”->“SIMATIC_NET_CP”->“CP300”,示例程序如下:CALL"AG_SEND"ACT:=TRUEID:=1LADDR:=W#16#100SEND:=P#DB1.DBX0.0BYTE60LEN:=60DONE:=M1.2ERROR:=M1.3STATUS:=MW2通信函数FC5的参数含义:ACT:为1触发。

ID:参考本地CPU连接表中的块参数。

LADDR:参考本地CPU连接表中的块参数。

SEND:发送区。

最大通信数据为8192字节。

与SIMOTION之间最大4096个字节。

LEN:实际发送数据长度。

DONE:每次发送成功,产生一个上升沿。

ERROR:错误位。

STATUS:通讯状态字。

示例程序中S7-300PLC发送DB1中前60个字节。

在通信方CPUOB1中调用接受函数FC6AG_RECV(“Libraries”->“StandardLibrary”->“SIMATIC_NET_CP”->“CP300”,示例程序如下:CALL"AG_RECV"ID:=1LADDR:=W#16#100RECV:=P#DB2.DBX0.0BYTE60NDR:=M10.1ERROR:=M10.2STATUS:=MW12LEN:=MW14通信函数FC6的参数含义:ID:参考本地CPU连接表中的块参数。

相关主题