全国服务热线 15221406036

南平西门子S7-300代理商

发布:2023-09-18 16:50,更新:2024-05-08 07:10

南平西门子S7-300代理商

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很少干预底层投递系统的工作,它适应各种投递系统,且提供liuliang控制,能使各种不同速率的系统进行通信。报文段是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。

近年来,随着工厂自动化系统的兴起,可编程控制器(PLC)和现场总线在工业控制中得到了广泛的应用。在工厂自动化系统中,一般利用PLC的高可靠性、模块化结构以及编程简单等特点,将其作为下位机完成实时采集和控制任务;利用现场总线系统的开放性、互用性以及系统结构的高度分散性来构筑自动化领域的开放互连系统。控制系统中的主从站结构是经常用到的通讯方式,不过以往的从站只能单纯的靠主站中存储的程序来运行,主站若发生故障,从站就不能继续工作,这样就使整个系统的连续工作能力下降,不利于企业效益的增长。要解决这一问题,可换用带CPU的智能化DP从站,它不仅能实现独立的PID控制,也能接收PROFIBUS的PLC主站或PC主站的控制数据,构成一个数字化、智能双向、多点的通信系统现场总线网络,实现优控制,而且DP从站具有可靠性高、抗扰能力强、、维护方便的特点,因而可以很好的解决上述问题。
1  通讯结构

CPU315-2DP是西门子生产的S7系列产品,它的CPU上集成有PROFIBUS-DP通讯接口。AriCon 211-DP是北京金自天正智能控制股份有限公司(以下简称金自天正公司)的产品,它的CPU上也集成有PROFIBUS-DP通讯接口。整个的连接结构如图1所示。

图1  系统通信结构连接框图

MPI:MPI(Multi Point Interface)数据线用来连接PC机的串口和CPU315-2DP的通讯口。它是通过一个西门子生产的PC适配器把PC机的串口转化为MPI协议的。
RS232C:RS232C(RS表示Recommended Standard,C代表RS232新定义的一个型号)是目前PC机与通信工业中应用广泛的一种串行接口。它被定义为连接数据终端设备(DTE)和数据电路设备(DCE)的电缆中的信号电特性,是一种在低速率串行通讯中增加通讯距离的单端标准,采取不平衡传输方式,即单端通讯。RS232C适用于近距离传输。连接方式如图2所示。

图2  RS232串行接口连接方式

PROFIBUS-DP(Process FieldBus):采用RS485传输技术通讯,波特率可选9.6Kbps~12Mbps,电缆的大长度就取决于所选用的波特率。线路的两端带有终端传输电阻,介质为带屏蔽的双绞电缆。在这一级,PLC通过高速串行线同分散的现场设备进行通讯。
2  硬件部分
2.1  CPU315-2 DP
其主存储器的大存储量为512KB,CPU能多处理82K语句,并提供大8192个标记,512个定时器和512个计数器。同时CPU可扩充到1024DI/DO或128AI/AO。它的强大功能也可用一个集成的PROFIBUS-DP接口达到,并可作为主设备或从设备设置。多可将125个PROFIBUS-DP站连接到主设备。数据传输率为12Mbps。分布式I/O以与中央I/O完全相同的方式(即用STEP 7)进行配置和编程。它的通信协议芯片SPC3集成了DP协议中的FDL层,可以承担通信部分的微处理器负载,实现DP从站通信处理。
2.2  AriCon 211-DP
可用符合IEC61131-3标准的AriOCS对其组态编程,具有高灵活性,可以连接32个功能模块(数字I/O、模拟I/O、脉冲计数、通讯等)。具有极快的扫描周期,可连接附加的外部存储器,无需MPI适配器。大传输率为12Mbps。组态好的数据要使用RS232C下装到模块的CPU中。
3  软件部分
由PROFIBUS总线构成的现场总线控制器的软件包括:PROFIBUS总线设备的配置软件、驱动软件、组态软件和应用程序等。它们具有以下功能:主站和远程从站的参数设定,主站对从站的数据读写、图形组态、数据库建立与维护、数据统计、报表打印、故障报警,应用程序的开发、调试、运行等。其中,配置软件和驱动软件由设备厂商提供,组态软件可采用STEP7等通用型软件。
本次实验所有的软件都基于Microsoft bbbbbbs NT系统,有良好的用户界面,其功能也都相当完善和实用,使用非常方便。
3.1  编程组态软件STEP7
STEP7是西门子开发的一套SIMATIC 工业软件。它功能非常强大,不仅对开关量有完善的指令,而且在处理模拟量时也有丰富的指令系统。可以使用任何一种编程语言,如STL(语句表)、FBD(功能块图)和LAD(梯形图),可随心所欲的从一种语言切换到另一种。硬件配置工具和试验工作方式的切换设备以及指令集(存有丰富的指令),即使是非常复杂的功能也能简便地编程。地址的分配和安装模块的组态是西门子STEP7管理器的一个功能,在这里,模块作为一个实际的PROFIBUS主站系统出现。完成的工程通过串口MPI传送给CPU。
3.2  组态软件AriOCS
AriOCS是金自天正公司开发的专用于IEC1131-3 AriCon CPU21x编程组态的软件,采用IEC标准规定的五种语言。它支持在线调试修改和离线仿真,调试功能非常丰富,具有在线帮助功能。另外,它还附带了一个参数配置软件WinNCS。
3.3  GSD文件
PROFIBUS设备具有不同的性能特征,主要表现在现有功能(即I/O信号的数量和诊断信息)的不同或可能的总线参数,例如波特率和时间的监控不同。这些参数对每种设备类型和每家生产厂来说均有差别,为达到PROFIBUS简单的即插即用配置,这些特性均在电子数据单中具体说明,有时称为设备数据库文件(即GSD文件)。使用基于GSD的组态工具可将不同厂商生产的设备集成在一个总线系统中。GSD文件由生产厂商分别针对每一种设备并以设备数据库清单的形式提供给用户,此种文件格式便于读出任何一种PROFIBUS-DP设备的设备数据库文件,并且在组态总线系统时自动使用这些信息。
4  操作过程
将所有设备按照图1所示顺序连接好。
PROFIBUS通信协议将网络中通讯参与者分为主站和从站:主站首先要向从站发送通讯请求指令,从站根据请求指令中指定的内容向主站发回数据。一个主站可以向多个从站发送通讯请求,并利用从站地址(SLAVE ADDRESS)或从站识别码(SLAVE ID)来区分。
智能从站与普通从站的大区别就是带有自己的CPU,因此,它除了处理来自主站的数据外,还要处理本身的I/O数据,并且必须确保两种数据不重叠。在给主站组态的同时,也要给从站组态。
主站的CPU必须从FFh到00h记数,并且要先把来自智能从站的数据传送到主站的输出模块,然后,主站再把自己的数据传送给智能从站。从站接收到的数据必须保存在CPU外围模块的输入区域,并且通过背板总线传送给输出模块。另一方面,智能从站要从00h到FFh记数。这些数据也必须被保存到从站CPU的输出区域,然后通过PROFIBUS传送到主站,主站再传给输出模块。以此做周期性循环。
这里对以下数据进行组态:
①主站:PROFIBUS地址            1
输入区域        从10开始   字节长度:2Byte
输出区域        从20开始   字节长度:4Byte
②智能从站:PROFIBUS地址        2
输入区域        从30开始   字节长度:4Byte
输出区域        从40开始   字节长度:2Byte
参数数据  从50开始  字节长度:24Byte(固定)
诊断数据  从60开始  字节长度:6Byte(固定)
状态数据  从100开始  字节长度:2Byte(固定)
组态好的PROFIBUS地址必须与CPU模块上拨码开关设定的地址一致。
输入输出区域中的数据是映射到对方CPU中的数据:主站的输入对应于从站的输出,它们的字节长度要相等;而主站的输出则对应于从站的输入,它们的字节长度也要相等。
用STEP7给主站CPU315-2 DP组态,组态好的数据通过MPI电缆下装到主站的CPU中。在STEP7中,为主站编程,梯形图如图3所示。

图3  主站编程梯形图

其中:M0.0为中间变量,Q1.0对应于主站所带的I/O模块地址,而Q20.0则为映射到智能从站的数据,它对应着智能从站的Q30.0。
智能从站的组态采用组态软件AriOCS,组态好的数据通过RS232C传送给AriCon 211-DP。在AriOCS中,为智能从站编程,梯形图如图4所示。

图4  从站编程梯形图

其中:I30.0为映射到主站的数据,而Q2.7则对应于智能从站所带的I/O模块地址。
PROFIBUS通信协议保障了通信的高可靠性,不过这要以硬件和软件设计为基础。在通信接口连接时,必须遵循一定的规范,如信号的隔离、总线接口与收发器间避免线路过长等。这样,主从站就可以实现数据的通讯了。
5  结语
本次实验主要是实现了PLC与智能从站之间的数据通讯。使用智能从站的大好处在于,当主站出现故障停止运行时,智能从站因自身带有CPU,组态的数据都存在自己的CPU中,所以能够继续运行,而不受主站的影响,极大的tigao了系统连续工作的能力,该方法值得推广应用。

联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com