浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子6ES7223-1PM22-0XA8实体经营

西门子6ES7223-1PM22-0XA8实体经营

1、 引言

    在网络的各个层上,随着自动化和控制工程师需要与网络打交道的机会越来越多,联网的愿望和需要也正在逐渐高涨。而且,在监控和数据采集应用中,大多数工程师已将以太网协议应用于数据采集与监视控制系统(SCADA)和工厂的诊断、测试及维护。如何简便地实现与PLC的交互已经成为众多厂商新的竞争战场。由此产生了人机界面及各种组态软件产品,这些产品的出现简化了对PLC的控制、操作,使PLC的应用更加方便。但也有其共同的缺点,价格普遍偏高和可二次开发性较差。VB作为“原始”的编程语言,兼具了上述两方面的优势。本文结合一个简单的案例来粗略讨论如何通过VB实现PC机与PLC的以太网通信问题。

2、以太网通信的基本概念

    2.1以太网的标准

    以太网是一种局域网。早期标准为IEEE 802.3,数据链路层使用CSMA/CD,10Mb/s速度物理层有:

    (1)10 Base 5粗同轴电缆,RG-8,一段长为500m。

    (2)10 Base 2细同轴电缆,RG-58,一段长为185m。

    (3)10 Base T双绞线,UTP或STP,一段长为100m。

    2.2工业以太网与商用以太网的区别

    什么是工业以太网?技术上,它与IEEE802.3兼容,故从逻辑上可把商用网和工业网看成是一个以太网,而用户可根据现场情况,灵活装配自己的网络部件。但从工业环境的恶劣和抗干扰的要求,设计者希望采用市场上可找到的以太网芯片和媒介,兼顾考虑下述工业现场的特殊要求:首先要考虑高温、潮湿、振动。二是对工业抗电磁干扰和抗辐射有一定要求,如满足EN50081-2、EN50082-2标准,而办公室级别的产品未经这些工业标准测试,表1列出了一些常用工业标准。为改善抗干扰性和降低辐射,工业以太网产品多使用多层线路板或双面电路板,且外壳采用金属如铸铝屏蔽干扰。三是电源要求,因集线器、交换机、收发器多为有源部件,而现场电源的品质又较差,故常采用双路直流电或交流电为其供电,另外考虑方便安装,工业以太网产品多数使用DIN导轨或面板安装。四是通信介质选择,在办公室环境下多数配线使用UTP,而在工业环境下推荐用户使用STP(带屏蔽双绞线)和光纤。

2.3 使用TCP/IP协议的原因及其概述

    主要的一个原因在于它能使用在多种物理网络技术上,包括局域网和广域网技术。TCP/IP协议的成功,很大程度上取决于它能适应几乎所有底层通信技术。20世纪80年代初,先在X.25上运行TCP/IP协议;而后又在一个拨号语音网络(如电话系统)上使用TCP/IP协议,又有TCP/IP在令牌环网上运行成功;后又实现了TCP/IP远程分组无线网点与其他Internet网点间TCP/IP通信。所以TCP/IP协议极其灵活,具备连接不同网络的能力。另外,使用TCP/IP也简化了OSI模型,因为它省略了表示层和会话层。如果现在把以太网的物理层和数据链路层加到OSI模型,就构成了基于以太网的TCP/IP网,如图1所示。用以太网实现TCP/IP也是经济的一种方式。

 IP是Internet基本的协议。IP是面向报文的协议,它独立处理每个报文包,每个报文包必须含有完整的寻址信息。IP报文包的格式如图2所示。

图2  IP报文包的格式


    IP地址的类型共有4种(如图3所示):A类用于处理超大型网络,多16387064个主机(1~126);B类网络多可有64516个主机(网络地址的段为128~191);C类用于小型网络,多可有254个主机(网络地址的段为192~223);D类用于多点播送,用于多目的信息的传输。全零(“0.0.0.0”)地址对应于当前主机,全1地址(“255.255.255.255”)是当前子网的广播地址。

    TCP是基于传输层的协议,协议文件可从RFC793得到,使用广泛,面向连接的可靠协议。它能把报文分解为数段,在目的站再重新装配这些段,支持重新发送未被收到的段,提供两台设备间的全双工连接,允许它们高效地交换大量数据。TCP使用滑动窗口协议来高效使用网络。由于TCP很少干预底层投递系统的工作,它适应各种投递系统,且提供流量控制,能使各种不同速率的系统进行通信。报文段是TCP所使用的基本传输单元,用于传输数据或控制信息。

3、MODBUS数据帧格式

    在TCP/IP以太网上传输,支持Ethernet II和802.3两种帧格式。图3所示,Modbus TCP数据帧包含报文头、功能代码和数据3部分。

4、 MODBUS功能代码

    4.1  3种类型

    (1)公共功能代码(如表2所示):已定义好的功能码,保证其唯一性,由Modbus.org认可。

    (2)用户自定义功能代码有两组,分别为65~72和100~110,无需认可,但不保证代码使用的唯一性。如变为公共代码,需交RFC认可。

    (3)保留的功能代码,由某些公司使用在某些传统设备的代码,不可作为公共用途。

表2  Modbus常用公共代码功能

    4.2功能代码划分:按应用深浅,可分为3个类别。

    (1)类别0,对于客户机/服务器小的可用子集:读多个保持寄存器(fc.3);写多个保持寄存器(fc.16)。

    (2)类别1,可实现基本互易操作的常用代码:读线圈(fc.1);读开关量输入(fc.2);读输入寄存器(fc.4);写线圈(fc.5);写单一寄存器(fc.6)。

    (3)类别2,用于人机界面、监控系统的例行操作和数据传送功能:

    (4)强制多个线圈(fc.15);读通用寄存器(fc.20);写通用寄存器(fc.21);屏蔽写寄存器(fc.22);读写寄存器(fc.23)。

5、VB的基本概念

    VB(Visual Basic)是面向对象的程序设计语言,用它来开发bbbbbbs操作系统下的应用程序,它提供了很多接口成员,对象、属性、事件、方法就是4个重要的接口,VB提供了许多常用的控件。

    5.1卷标控件

    卷标控件如图4(a)所示,该控件专用于显示文字、数字用,显示如图4(b)所示。

5.2 按钮控件

    按钮控件如图5(a)所示,该控件使用率很高,提供一个供系统用户操作用的按钮,如图5(b)所示。

6、基于Winsock控件的TCP/IP以太网通信

    要完成VB与PLC等设备的以太网通信要用到Winsock控件,在此有必要对该控件作较详细的说明。Winsock是一个ActiveX控件,需要要手动添加许多项目,其步骤如下:

    (1)选择菜单的【工程】。

    (2)选择【部件】。

    (3)在弹出的对话框中做如图6的选择。

图6 对话框界面

    (4)如图7所示,在部件选项卡就会出现Winsock控件

7、Winsock控件的基本属性

    此控件对于用户在运行时不可见,提供了一个简单的途径访问TCP及UDP网络服务而无需了解底层细节,使用时你只需设置属性、在恰当的时候调用它提供的方法即可。

    主要属性有:

    BytesReceived:返回当前缓冲区中的字节数量,我们可以使用 GetData 方法以接收数据。只读且设计时不可用。

    LocalHostName:返回本机名字符串,设计时不可用。

    LocalIP:返回以(xxx.xxx.xxx.xxx)格式表达的IP地址串。设计时不可用,运行时只读。

    LocalPort :本机使用接收端口可读写,设计时可用,Long型。对于客户,如果无需指定端口,则用端口0发送数据。在此情况下,控件将随机选择一个端口。在一个连接确定后,为TCP的端口。对于服务器,指用于监听的端口。如设置为0,则用随机数。在调用Listen 方法后,该属性自动包含用到的端口。端口0总是用于在两计算机间建立动态连接。客户希望通过端口0获得一个随机端口以”回调”连接服务器。

    Protocol :套接字类型,为TCP或UDP二者之一,缺省为TCP类型。设置为sckTCPProtocol表示TCP协议sckUDPProtocol表示UDP协议。在此属性被重置之前需用Close方法关闭之。

    RemoteHost:发送或接收数据的主机,你可提供主机名如:FTP://ftp.microsoft.com,或一IP地址串,例如“100.0.1.1”。

    RemoteHostIP:远程主机的IP地址。对于客户程序,在连接确定后使用Connect方法,此属性包含远程主机的IP名串。对于服务器程序, 在引入连接需求后(Connection Request 事件),此属性包含IP串。当使用UDP套接字,在Data Arrival事件发生后,此属性为发送UDP数据的机器IP地址串。

    RemotePort:连接套接字端口值。例如通常HTTP应用使用80端口,FTP则使用21。

一、引言

    以变频调速器为调速控制器的同步控制系统、比例控制系统和同速系统等已广泛应用于冶金、机械、纺织、化工等行业。以比例控制系统为例,一般的系统构成如图1 所示。

工作时操作人员通过控制机(可为PLC或工业PC)设定比例运行参数,然后控制机通过D/A转换模件发出控制变频调速器的速度指令使各个变频调速器带动电机按一定的速度比例运转。此方案对电机数目不多,电机分布比较集中的应用系统较合适。但对于大规模生产自动线,一方面电机数目较多,另一方面电机分布距离较远。采用此控制方案时由于速度指令信号在长距离传输中的衰减和外界的干扰,使整个系统的工作稳定性和可靠性降低;同时大量D/A转换模件使系统成本增加。为此我们提出了PLC与变频调速器构成多分支通讯控制网络。该系统成本较低、信号传输距离远、抗干扰能力强,尤其适合远距离,多电机控制。


二、系统硬件构成

系统硬件结构如图2 所示,主要由下列组件构成;

1、FX0N—24MR为PLC基本单元,执行系统及用户软件,是系统的核心。
2、FX0N—485ADP为FX0N系统PLC的通讯适配器,该模块的主要作用是在计算机—PLC通讯系统中作为子站接受计算机发给PLC的信息或在多PLC构成n:n网络时作为网络适配器,一般只作为规定协议的收信单元使用。本文作者在分析其结构的基础上,将其作为通讯主站使用,完成变频调速器控制信号的发送。
3、FR—CU03为FR—A044系列比例调速器的计算机连接单元,符合RS—422/RS—485通讯规范,用于实现计算机与多台变频调速器的连网。通过该单元能够在网络上实现变频调速器的运行控制(如启动、停止、运行频率设定)、参数设定和状态监控等功能,是变频器的网络接口。
4、FR—A044变频调查器,实现电机调速。
在1:n(本文中为1:3)多分支通讯网络中,每个变频器为一个子站,每个子站均有一个站号,事先由参数设定单元设定。工作过程中,PLC通过FX0N—485ADP发有关命令信息后,各个子站均收到该信息,然后每个子站判断该信息的站号地址是否与本站站号一致。若一致则处理该信息并返回应答信息;若不一致则放弃该信息的处理,这样就保证了在网络上同时只有一个子站与主站交换信息。


三、软件设计

1、通讯协议
FR—CU03规定计算机与变频器的通讯过程如图3 所示,

该过程多分5个阶段。计算机发出通讯请求;变频器处理等待;变频器作出应答;计算机处理等待;计算机作出应答。根据不同的通讯要求完成相应的过程,如写变频器启停控制命令时完成三个过程;监视变频器运行频率时完成五个过程。不论是写数据还是读数据,均有计算机发出请求,变频器只是被动接受请求并作出应答。每个阶段的数据格式均有差别。图4 分别为写变频器控制命令和变频器运行频率的数据格式

2、PLC编程
    要实现对变频器的控制,必须对PLC进行编程,通过程序实现PLC与变频器信息交换的控制。PLC程序应完成FX0N—485ADP通讯适配器的初始化、控制命令字的组合、代码转换及变频器应答信息的处理等工作。PLC梯形图程序(部分程序)如图5 所示。

程序中通讯发送缓冲区为D127~D149;接受缓冲区为D150~D160。电机1启动、停止分别由X0的上升、下降沿控制;电机2启动、停止分别由X1的上升、下降沿控制;电机3启动、停止分别由X2的上升、下降沿控制。程序由系统起始脉冲M8002初始化FX0N—485ADP的通讯协议;然后进行启动、停止信号的处理。以电机1启动为例,X0的上升沿M50吸合,变频器1的站号送入D130,运行命令字送入D135,ENQ、写运行命令的控制字和等待时间等由编程器事先写入D131、D132、D133;接着求校验和并送入D136、D137;后置M8122允许RS指令发送控制信息到。变频器受到信号后立刻返回应答信息,此信息FX0N—485ADP收到后置M8132,PLC根据情况作出相应处理后结束程序。


四、结语

1、实际使用表明,该方案能够实现PLC通过网络对变频调速器的运行控制、参数设定和运行状态监控。
2、该系统多可控制变频调速器32台,大距离500m。
3、控制多台变频器,成本明显低于D/A控制方式。
4、随着变频器的增加,通讯延迟加大,系统响应速度低于D/A控制方式。


展开全文
优质商家推荐 拨打电话