S7 SMART 应用基础技术 5_第1页
已阅读1页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模块5

S7-200SMARTPLC的通信及应用任务5.1两台S7-200SMARTPLC之间的以太网通信任务5.2两台S7-200SMARTPLC之间的ModbusRTU通信学习目标●了解以太网通信和ModbusRTU通信的基础知识。●掌握GET/PUT指令和ModbusRTU通信指令的使用方法。●掌握以太网通信和ModbusRTU通信配置和编程方法知识目标学习目标●能搭建S7-200SMARTPLC的以太网通信和S7-200SMARTPLC的ModbusRTU通信的硬件电路。●会使用GET/PUT指令和ModbusRTU通信指令编写程序并进行调试技能目标学习目标●培养敬业、精益、专注、创新的工匠精神。●养成规则意识和标准意识。●养成6S管理的职业素养素质目标任务5.1两台S7-200SMARTPLC之间的以太网通信在数据信息通信时,按同时传送的位数来分,可以分为并行通信和串行通信。(1)并行通信。并行通信是指所传送的数据以字节或字为单位同时发送或接收。(2)串行通信。串行通信是以二进制的位为单位,一位一位地顺序发送或接收。5.1.1通信基础📚相关知识1.并行通信和串行通信2.通信方式在通信线路上按照数据传送方向可以划分为单工、半双工、全双工通信方式。图5-1数据通信方式3.S7-200SMART通信端口

每个S7-200SMARTCPU模块本体都集成1个以太网端口和1个RS485端口(端口0),标准型CPU额外支持SBCM01信号板(端口1),信号板可通过STEP7-Micro/WINSMART软件组态为RS232通信端口或RS485通信端口。SMARTPLC的通信端口数量最多可增至3个,满足小型自动化设备与HMI(人机界面)、变频器及其他第三方设备进行通信的需求。5.1.1通信基础3.S7-200SMART通信端口5.1.1通信基础1.S7-200SMARTCPU的以太网网络物理连接(1)直接连接。5.1.2以太网通信

当一个S7-200SMARTCPU与一个编程设备、HMI或者另外一个S7-200SMARTCPU通信时,实现的是直接连接。(a)CPU连接到编程设备

(b)CPU连接到HMI(c)CPU连接到另外一个CPU图5-2直接连接(2)网络连接。

当通信设备超过两个时,需要使用交换机来实现网络连接,可以使用导轨安装的西门子CSM12774端口交换机来连接多个CPU和HMI设备。1.S7-200SMARTCPU的以太网网络物理连接5.1.2以太网通信图5-3网络连接

基于连接的通信分为单向连接和双向连接,S7-200SMART只有S7单向连接功能。单向连接中的客户机(Client)是向服务器(Server)请求服务的设备,客户机调用GET/PUT指令读、写服务器的存储区。服务器是通信中的被动方,用户不用编写服务器的S7通信程序,S7通信是由服务器的操作系统完成的。S7-200SMART的以太网端口支持以太网和基于TCP/IP的通信标准,该端口支持的通信类型有:

①CPU与STEP7-Micro/WINSMART软件之间的通信;

②CPU与HMI之间的通信;

③CPU与其他S7-200SMARTCPU之间的GET/PUT通信。S7-200SMARTCPU在以太网通信中,既可作为主动设备,也可作为从动设备。2.协议5.1.2以太网通信

如图所示,以太网端口除了一个用于与编程设备PG连接,还有8个专用的HMI/OPC连接以及8个GET/PUT的主动连接和被动连接。2.协议5.1.2以太网通信图5-4

S7-200SMARTPLC支持的以太网通信资源S7-200SMARTCPU提供了GET/PUT指令,用于建立S7-200SMARTCPU之间的以太网通信。GET/PUT指令只需要在主动建立连接的CPU中调用执行,被动建立连接的CPU不需要进行通信编程。3.GET/PUT指令5.1.2以太网通信

直接用GET/PUT指令编程既繁琐又容易出错。STEP7-Micro/WINSMARTV2.2以上版本支持用GET/PUT向导实现以太网通信。

用GET/PUT向导建立的连接为主动连接,CPU是客户机。当CPU作为通信的服务器时,它不需要用GET/PUT指令向导组态,建立的连接是被动连接。

双击STEP7-Micro/WINSMART编程软件左侧项目树的“向导”文件夹中的“GET/PUT”或在编程软件“工具”菜单功能区的“向导”区域单击“GET/PUT”按钮,均可启动GET/PUT向导,设置通信参数。4.用PUT和GET向导生成客户机通信程序5.1.2以太网通信5.调用子程序NET_EXE完成GET/PUT向导配置之后,客户机的CPU会生成一个网络执行子程序NET_EXE,如图所示。在客户机的项目的主程序中,调用NET_EXE子程序可以实现通信。5.1.2以太网通信图5-5网络执行子程序NET_EXE

使能参数超时参数周期参数错误参数🛠️任务实施1.任务要求

实现两台S7200SMARTPLC的以太网通信。要求用第一台PLC(PLC1)的输入I0.0~I0.7来依次对应控制第二台PLC(PLC2)的输出Q0.0~Q0.7。同时,将PLC2的输出Q0.0~Q0.7的状态,映射到PLC1中的M0.0~M0.7中。两台PLC的数据交换,如图所示。两台PLC的数据交换要求采用以太网进行通信。

请进行两台PLC通信的GET/PUT向导组态并编写程序。图5-6两台PLC的数据交换2.【设备和工具】CPUST402台、CSM1277以太网交换机1台(可以用普通的网络分流器代替)、按钮若干、安装有STEP7-Micro/WINSMART编程软件的计算机1台、《S7-200SMARTPLC系统手册》、电工工具1套、万用表1块。S7-200SMARTPLC

按钮以太网交换机CSM1277网线

安装有编程软件的计算机IP:192.168.2.4IP:192.168.2.3IP:192.168.2.10

客户机S7200SMARTPLC1计算机

服务器S7200SMARTPLC23.硬件连接图5-7以太网硬件连接4.GET/PUT向导组态(1)打开GET/PUT向导(2)添加操作步骤在弹出的“GET/PUT向导”对话框中添加操作步骤名称和注释,如图所示。将PLC1的IB0数据写入PLC2的QB0中把PLC2的QB0的数据读入PLC1的MB0中图5-8添加操作(3)定义GET/PUT操作4.GET/PUT向导组态图5-9

PLC1写PLC2操作配置4.GET/PUT向导组态(3)定义GET/PUT操作图5-10

PLC1读PLC2操作配置(4)分配存储器地址单击“建议”按钮,向导自动指定当前程序中未使用的V存储区。4.GET/PUT向导组态图5-11分配存储器地址

(5)生成项目组件4.GET/PUT向导组态(6)完成Get/Put向导配置图5-12

Components组件页面5.编写程序并下载(1)客户机程序在项目树中,单击“调用子例程”文件夹。选择网络子程序NET_EXE,拖放到主程序中,进行参数设置。客户机程序如图所示。设置超时定时时间每次所有网络操作完成后进行状态切换网络操作是否出错的状态位图5-15客户机程序2026/4/16(2)服务器程序

本次任务作为PLC2的服务器不需要编写任何程序。因此下载一个空的程序至PLC2中。重新打开编程软件界面,双击PLC类型进行硬件组态。不需做任何设置和编程,保存项目为“远程PLC”,编译项目,在通信对话框中找到远程PLC,将程序下载。

服务器和客户机的程序块、数据块都分别下载到CPU之后,启动PLC,硬件连接和运行正常后,进入下一步。分别将PLC1和PLC2的站切换到运行状态,准备进行测试。5.编写程序并下载6.运行测试(1)确保两台PLC运行正常,且处于RUN模式。(2)PLC1的IB0数据写入PLC2的QB0测试。在PLC1上改变I0.0~I0.7的状态,观察PLC2上对应的Q0.0~Q0.7的输出状态指示灯状态。图5-16

PLC输入/输出点状态指示灯

图5-17

PLC2输出点的状态指示灯

(3)PLC2的QB0数据写入PLC1的MB0测试。PLC2输出点的状态指示

例如,将PLC2的Q0.4、Q0.5和Q0.6的状态置为1,其输出点指示灯如图所示。在PLC1项目程序的状态表中,观察MB0的数值与PLC2的QB0的数值是否一致,MB0的二进制值为01110000。6.运行测试送风和循环系统之间的通信🚀任务拓展显示答案

某控制系统由送风和循环系统组成,如图所示,它们均由一台功率为10kW的电动机驱动,并且两台电机分别由两台PLC控制其直接启动。具体要求如下。(1)送风系统(主站)的PLC既能控制本站的送风电机启停,又能控制循环系统的电机启停。(2)循环系统(从站)的PLC既能控制本站的电机启停,又能控制送风电机的启停。(3)两个系统均能监控对方的运行和过载状态,当某一系统电动机出现过载时,两个系统电动机均停止,并能在本系统中显示另一系统的过载信息。任务5.2两台S7-200SMARTPLC之间的ModbusRTU通信通过集成RS485端口或可选通信版SMCM01的RS485/RS232端口,S7-200SMART可以作为ModbusRTU主站或从站同多个设备进行通信,如图所示。📚相关知识5.2.1CPU的ModbusRTU网络物理连接图5-19

S7-200SMARTCPU的通信接口Modbus是一种单主站的主/从通信模式。Modbus网络上只能有一个主站存在,主站在Modbus网络上没有地址,从站的地址范围为0~247。S7-200SMARTCPU作为主站时,其RS485端口或通信板SBCM01的端口最多可以控制247个从站,如图所示。5.2.1CPU的ModbusRTU网络物理连接ModbusRTU设备连接图5-20

S7-200SMARTCPU的ModbusRTU设备连接

1.RS485网络的传输距离和波特率5.2.1CPU的ModbusRTU网络物理连接RS485网络为采用屏蔽双绞线电缆的线性总线网络,总线两端需要终端电阻。RS485网络允许每一个网段的最大通信节点数为32,允许的最大电缆长度则由通信接口是否隔离以及通信波特率大小两个因素决定。RS485网段电缆的最大长度如表所示。2.RS485中继器5.2.1CPU的ModbusRTU网络物理连接图5-21使用RS485中继器拓展网络延长网络距离。网络中添加一台中继器允许将网络延长50m,如果两台中继器连接在一起,中间无其他节点,则可将网络最多延长1000m,一个网络中最多可以使用9个RS485中继器。3.RS485网络连接器5.2.1CPU的ModbusRTU网络物理连接图5-22

RS485网络连接器图5-23

RS485网络连接3.RS485网络连接器5.2.1CPU的ModbusRTU网络物理连接图5-24网络连接器终端电阻和偏置电阻的接线4.RS232连接RS232网络为两台设备之间的点对点连接,最大通信距离为15m,通信速率最大为115.2kbit/s。RS232连接可用于连接扫描器、打印机、调制解调器等设备。5.2.1CPU的ModbusRTU网络物理连接图5-25

SBCM01信号板终端电阻和偏置电阻接线

图5-26

SBCM01信号板RS232连接5.2.2ModbusRTU主站1.ModbusRTU主站指令库

西门子在STEP7-Micro/WINSMART中正式推出ModbusRTU主站协议库(西门子标准库指令),如图所示。使用ModbusRTU主站指令库,可以读写ModbusRTU从站的数字量、模拟量I/O以及保持寄存器。图5-27西门子标准指令库(1)调用ModbusRTU主站初始化和控制子程序。图5-28用SM0.0调用ModbusRTU主站初始化与控制子程序EN使能:必须保证每一扫描周期都被使能(使用SM0.0)。Mode模式:为1时,使能Modbus协议功能;为0时恢复为系统PPI协议。

Baud波特率:支持的通信波特率为1200、2400、4800、9600、19200、38400、57600、115200。

Parity校验:校验方式选择,0=无校验,1=奇较验,2=偶较验。

Port端口号:0=CPU集成的RS485通信口;1=可选CM01信号板。

Timeout超时:主站等待从站响应的时间

Done完成位:初始化完成,此位会自动置1。

Error初始化错误代码(只有在Done位为1时有效)5.2.2ModbusRTU主站2.ModbusRTU主站功能编程(2)调用ModbusRTU主站读写子程序MBUS_MSG,发送一个Modbus请求,如图所示。图5-29调用ModbusRTU主站读写子程序EN使能:同一时刻只能有一个读写功能(即MBUS_MSG)使能。First读写请求位:每一个新的读写请求必须使用脉冲触发。Slave从站地址:可选择的范围为1~247。RW读写请求:0=读,1=写。Addr读写从站的选择读写的数据类型。00001~0xxxx:开关量输出。10001~1xxxx:开关量输入。30001~3xxxx:模拟量输入。40001~4xxxx:保持寄存器。Count:通信的数据数(位或字的数)。DataPtr数据指针:

如果是读指令,则读回的数据放到这个数据区中。

如果是写指令,则要写出的数据放到这个数据区中。Done完成位,读写功能完成位。Error错误代码:只有在Done位为1时,错误代码才有效。5.2.2ModbusRTU主站2.ModbusRTU主站功能编程图5-30选择“库存储器”命令图5-31“库存储器分配”对话框①在指令树的Project(项目)中,用鼠标右键单击程序块,在弹出的快捷菜单中选择库存储器,如图所示。②在弹出的“库存储器分配”对话框中设置库指令数据区,如图所示。5.2.2ModbusRTU主站2.ModbusRTU主站功能编程(1)Modbus地址通常Modbus地址由5位数字组成,包括起始的数据类型代号以及后面的偏移地址。ModbusMaster协议库把标准的Modbus地址映射为所谓Modbus功能号,读写从站的数据。ModbusMaster协议库支持如下地址。00001~09999:数字量输出(线圈)。10001~19999:数字量输入(触点)。30001~39999:输入数据寄存器(通常为模拟量输入)。40001~49999:数据保持寄存器。5.2.2ModbusRTU主站3.关于ModbusRTU主站协议库的使用说明(2)ModbusMaster协议库支持的功能。5.2.2ModbusRTU主站3.关于ModbusRTU主站协议库的使用说明(3)Modbus地址和S7-200SMART存储区地址的映射。Modbus保持寄存器地址映射举例,如图所示。图5-32Modbus保持寄存器地址映射举例5.2.2ModbusRTU主站3.关于ModbusRTU主站协议库的使用说明Modbus数字量地址映射举例。位地址(0xxxx和1xxxx)数据总是以字节为单位打包读写。第一字节中的最低有效位对应Modbus地址的起始地址,如图所示。(3)Modbus地址和S7-200SMART存储区地址的映射。图5-33Modbus数字量地址映射举例5.2.2ModbusRTU主站3.关于ModbusRTU主站协议库的使用说明1.ModbusRTU从站通信设备S7-200SMARTCPU本体集成通信口(Port0)、可选信号板(Port1),可以支持ModbusRTU协议,成为ModbusRTU从站。

要实现ModbusRTU通信,需要使用STEP7-Micro/WINSMARTInstructionLibrary(指令库)。ModbusRTU功能是通过指令库中预先编好的程序功能块实现的。ModbusRTU从站指令不能同时用于CPU集成的RS485通信口和可选CM01信号板。5.2.3ModbusRTU从站

(1)检查Micro/WINSMARTModbusRTU从站指令库,库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序,如图所示。2.ModbusRTU从站使用指令库编程步骤5.2.3ModbusRTU从站图5-34项目树中的库指令

(2)编程时使用SM0.1调用子程序MBUS_INIT进行初始化,使用SM0.0调用MBUS_SLAVE,并指定相应参数。

调用ModbusRTU通信指令库模式选择:启动/停止Modbus,1=启动;0=停止。从站地址:Modbus从站地址,取值范围为1~247。波特率:可选1200,2400,4800,9600,19200,38400,57600,115200。奇偶校验:0=无校验;1=奇校验;2=偶校验。端口:0=CPU中集成的RS485,1=可选信号板上的RS485或RS232。延时:附加字符间延时,默认值为0。最大I/Q位:参与通信的最大I/O点数,S7-200SMART的I/O映像区为256/256。最大AI字数:参与通信的最大AI通道数,最多56个。最大保持寄存器区:参与通信的V存储区字(VW)。保持寄存器区起始地址:以&VBx指定(间接寻址方式)。

初始化完成标志:成功初始化后置1。初始化错误代码。Modbus执行:通信中时置1,无Modbus通信活动时为0。错误代码:0=无错误。2.ModbusRTU从站使用指令库编程步骤5.2.3ModbusRTU从站图5-35调用ModbusRTU通信指令库

(3)在CPU的V数据区中分配库指令数据区(LibraryMemory)。

2.ModbusRTU从站使用指令库编程步骤5.2.3ModbusRTU从站图5-36选择“库存储器”命令

图5-37“库存储器分配”对话框

Modbus地址总是以00001、30004之类的形式出现。S7-200SMARTCPU内部的数据存储区与Modbus的0、1、3、4共4类地址的对应关系如表所示。

3.ModbusRTU从站地址与S7-200SMART的地址对应关系5.2.3ModbusRTU从站ModbusRTU从站指令库支持特定的Modbus功能,如表所示。访问使用此指令库的主站必须遵循这个指令库的要求。

4.ModbusRTU从站指令库支持的Modbus功能码5.2.3ModbusRTU从站🛠️任务实施1.任务要求

由两台S7-200SMARTPLC组成的控制系统。需要完成以下通信任务:实现两台S7200SMARTPLC的ModbusRTU通信,将PLC1中的IW0的数据写入PLC2的QW0中。同时,从PLC2中获得VW0寄存器的值写入PLC1中的QW0中。2台PLC的数据交换示意图如图所示。两台PLC的数据交换要求采用ModbusRTU进行通信。

请对两台PLC进行ModbusRTU通信的硬件配置,编写并调试程序。图5-38

2台PLC的数据交换示意图2.【设备和工具】CPUST40和CPUSR40各1台、以太网交换机1台、按钮若干、安装有STEP7-Micro/WINSMART编程软件的计算机1台、《S7-200SMARTPLC系统手册》、电工工具1套、万用表1块。S7-200SMARTPLC

按钮以太网交换机

Profibus电缆

安装有编程软件的计算机3.硬件准备与连接图5-39两台PLC的硬件连接4.程序设计图5-41从站程序图5-44主站程序S7-200SMARTPLC与变频器的USS通信🚀任务拓展

用PLC控制MM440变频器。控制要求如下:按下启动按钮后变频器启动,并以20Hz速度运行。在系统启动后,可以通过“加速”或“减速”按钮来调节变频器的运行速度,每按一次,变频器运行速度增加或减少2Hz,变频器可以在50Hz和10Hz之间调速。利用USS通信读取MM440变频器的实际频率r0021。系统下次启动后,仍以20Hz运行。无论何时按下停止按钮,变频器均停止运行。

请设计S7-200SMARTPLC与MM440变频器通信控制系统的电路图,编写通信程序并进行调试。1.S7-200SMARTCPU与MM440变频器的通信接线S7-200SMARTCPU与MM440变频器的通信接线使用西门子的网络插头和PROFIBUS电缆将S7-200SMARTC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论