热门搜索:
西门子6ES7132-6BD20-0CA0
SIMATIC S7-1200 系列包括以下模块:
机械特性
设备特性
SIMATIC S7-1200 支持各种通信机制:
PROFINET 接口
通过集成 PROFINET 接口,可与以下设备通信:
支持以下协议:
可连接以下设备:
在编程器和 SIMATIC S7-1200 的 CPU 之间建立连接
在精简面板和 SIMATIC S7-1200 的 CPU 之间建立连接
通过 CSM 1277 以太网交换机连接多台设备
点到点接口,可自由编程的接口模式
通信模块可通过点到点连接进行通信。采用 RS232 和 RS485 物理传输介质。在 CPU 的“自由口 (Freeport)”模式下进行数据传输。采用面向位的用户特定通信协议(例如,ASCII 协议、USS 或 Modbus)。
可以连接任何具有串行接口的终端设备,如驱动、打印机、条码读码器、调制解调器等。
在可编程接口模式下,通过 CM 1241 实现点到点连接
1. USS通信介绍
1.1. USS协议特点
? 支持多点通信(因而可以应用在 RS 485 等网络上)
USS 的工作机制是,通信总是由主站发起,USS 主站不断循环轮询各个从站,从站根据收到的指令,决定是否以及如何响应。从站永远不会主动发送数据。从站在以下条件满足时应答:
USS 协议的报文简洁可靠,高效灵活。报文由一连串的字符组成,协议中定义了它们的特
每小格代表一个字符(字节)。其中:
PKW: 此区域用于读写参数值、参数定义或参数描述文本,并可修改和报告参数的改变 。其中:
PZD: 此区域用于在主站和从站之间传递控制和过程数据。控制参数按设定好的固定格式在主、从站之间对应往返。如:
根据传输的数据类型和驱动装置的不同,PKW 和 PZD 区的数据长度都不是固定的,它们可以灵活改变以适应具体的需要。但是,在用于与控制器通信的自动控制任务时,网络上的所有节点都要按相同的设定工作,并且在整个工作过程中不能随意改变。
1.2. S7-1200 USS通信简介
CM 1241 RS485 模块通过 RS485 端口与MM440进行通信。 可使用 USS 库控制MM440和读/写MM440参数。该库提供 1 个 FB 和 3 个 FC 来支持 USS 协议。 每个 CM1241 RS485 通信模块较多支持 16 个MM440。连接到一个 CM 1241 RS485 的所有MM440(较多 16 个)是同一 USS 网络的一部分。连接到另一 CM 1241 RS485 的所有MM440是另一 USS 网络的一部分。 因为 S7-1200较多支持三个 CM 1241 RS485 设备,所以用户较多可建立三个 USS 网络,每个网络较多 16 个MM440,总共支持 48 个 USS MM440。各 USS 网络使用各自一的数据块进行管理(使用三个 CM 1241 RS485 设备建立三个 USS网络需要三个数据块)。 同一USS 网络相关的所有指令必须共享该数据块。 这包括用于控制网络上所有MM440的 USS_DRV、USS_PORT、USS_RPM 和USS_WPM 指令。
2.1. 硬件需求
2.2. 接线
因为MM 440 通信口是端子连接,所以 PROFIBUS 电缆不需要网络插头,而是剥出线头直接压在端子上。如果还要连接下一个驱动装置,则两条电缆的同色芯线可以压在同一个端子内。PROFIBUS 电缆的红色芯线应当压入端子 29;绿色芯线应当连接到端子 30,如图1、表4所示。完整接线图如图2所示。
a. 屏蔽/保护接地母排,或可靠的多点接地。此连接对抑制干扰有重要意义。
? 偏置电阻用于在复杂的环境下确保通信线上的电平在总线未被驱动时保持稳定;终端电阻用于吸收网络上的反射信号。一个完善的总线型网络必须在两端接偏置和终端电阻。
3.1. PLC 硬件组态
首先在Step7 Basic V10.5中建立一个项目,如图3所示。
在硬件配置中,添加CPU1214C和通信模块CM1241 RS485模块,如图4所示:
在CPU的属性中,设置以太网的IP地址,建立PG与PLC的连接,如图5所示。
3.2. MM440参数设置
我们假定已经完成了驱动装置的基本参数设置和调试(如电机参数辨识等等),以下只涉及与 S7-1200 控制器连接相关的参数。
此参数有分组,在此仅设**组,即 P0700[0]。
此参数有分组,在此仅设**组,即 P1000[0]。
主要参数有:
表7:通信波特率
5. P2011: 设置 P2011[0] = 0 至 31,即驱动装置 COM Link 上的 USS 通信口在网络上的从站地址;
4.1 S7 1200 PLC与MM440 通过USS通信的基本原理
S7 1200提供了**的USS库进行USS通信,如图6所示:
USS_DRV功能块通过USS_DRV_DB数据块实现与USS_PORT功能块的数据接收与传送,而USS_PORT功能块是S7-1200 PLC CM1241 RS485模块与MM440之间的通信接口。USS_RPM功能块和USS_WPM功能块与MM440的通信与USS_DRV功能块的通信方式是相同的。如图7所示。
4.2. 功能块使用介绍
4.3. S7 1200 PLC进行USS通信的编程
4.3.1. USS_DRV功能块的编程
USS_DRV功能块的编程如图8所示。
USS_DRV功能块用来与MM440进行交换数据,从而读取MM440的状态以及控制MM440的运行。每个MM440使用一的一个USS_DRV功能块,但是同一个CM1241 RS485模块的USS网络的所有MM440(较多16个)都使用同一个USS_DRV_DB。
4.3.2. USS通信接口参数功能块的编程
USS_PORT功能块用来处理USS网络上的通信,它是S71200 CPU与MM440的通信接口。每个CM1241 RS485模块有且必须有一个USS_PORT功能块。
ERROR: 输出错误。
USS_PORT在发生通信错误时,通常进行3次尝试来完成通信事件,那么S7-1200与MM440通信的时间就是USS_PORT发生通信**时的时间间隔。例如:如果通信波特率是9600,那么USS_PORT与MM440通信的时间间隔应当大于较小的调用时间间隔,即大于116.3毫秒而小于349毫秒。S7-1200 USS 协议库默认的通信错误**时尝试次数是2次。
4.3.3. USS_RPM功能块的编程
USS_RPM功能块的编程 如图11所示。
USS_RPM功能块用于通过USS通信从MM440读取参数。
注意:进行读取参数功能块编程时,各个数据的数据类型一定要正确对应。
4.3.4. USS_WPM功能块的编程
USS_WPM功能块的编程如图12所示。
USS_WPM功能块用于通过USS通信设置MM440的参数。
注意:对写入参数功能块编程时,各个数据的数据类型一定要正确对应。
4.3.5. 常见错误
如果读写同时使能,则报错818A:参数请求通道正在被本变频器的另一请求占用。如图13所示。
如果通信断开,则PORT报错818B,如图14所示。
如果速度设定值不正确,则报错8186,如图15所示。
设计
SIMATIC S7-1200 符合 VDE、UL、CSA 和 FM(I 类,类别 2;危险区组别 A、B、C 和 D,T4A)。生产质量管理体系已按照 ISO 9001 进行认证。
通信
设计
KTP400 舒适型
KP400 舒适型
TP700 舒适型
KP700 舒适型
TP900 舒适型
KP900 舒适型
TP1200 舒适型
KP1200 舒适型
TP1500 舒适型
KP1500 舒适型
TP1900 舒适型
TP2200 舒适型
USS (Universal Serial Interface, 即通用串行通信接口) 是西门子专为驱动装置开发的通信协议。USS 协议的基本特点如下:
? 采用单主站的“主-从”访问机制
? 每个网络上较多可以有 32 个节点(较多 31 个从站)
? 简单可靠的报文格式,使数据传输灵活高效
? 容易实现,成本较低
-- 接收到的主站报文没有错误,并且
-- 本从站在接收到主站报文中被寻址
上述条件不满足,或者主站发出的是广播报文,从站不会做任何响应。对于主站来说,从站必须在接收到主站报文之后的一定时间内发回响应。否则主站将视为出错。
USS 的字符传输格式符合 UART 规范,即使用串行异步传输方式。USS 在串行数据总线上的字符传输帧为 11 位长度,如表1所示:
表1:USS字符帧
定功能,表2所示:
表2:USS报文结构
STX: 起始字符,总是 02 h
LGE: 报文长度
ADR:从站地址及报文类型西门子6ES7132-6BD20-0CA0
BCC: BCC 校验符
净数据区由 PKW 区和 PZD 区组成,如表3所示:
表3:USS净数据区
注意:
对于不同的驱动装置和工作模式,PKW 和 PZD 的长度可以按一定规律定义。 一旦确定就不能在运行中随意改变 ;
PKW 可以访问所有对 USS 通信开放的参数;而 PZD 仅能访问特定的控制和过程数据;
PKW 在许多驱动装置中是作为后台任务处理,因此 PZD 的实时性要比 PKW 好。
2. 硬件需求及接线
S7-1200 PLC目前有3种类型的CPU:
1)S7-1211C CPU。
2)S7-1212C CPU。
3)S7-1214C CPU。
这三种类型的CPU都可以使用USS通信协议通过通信模块CM1241 RS485来实现S7-1200与MM440变频器的通信。
本例中使用的PLC硬件为:
1) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )
2) CM1241 RS485 ( 6ES7 241 -1CH30 -0XB0 )
3) CSM 1277 ( 6GK7 277 -1AA00 - 0AA0)
本例中使用的MM440变频器硬件为:
1) MM440 ( 6SE6440 - 2AB11 - 2AA1 )
2) MICROMASTER 4 ENCODER MODULE ( 6SE6400 - 0EN00 - 0AA0 )
3) SIEMENS MOTOR ( 1LA7060 - 4AB10 - Z )
4) USS 通信电缆 ( 6XV1830 - 0EH10 )
建议使用西门子的网络插头和PROFIBUS电缆。在 S7-1200 CPU 通信口上使用西门子网络插头。
PROFIBUS 电缆的红色导线B 即 RS 485 信号 +,此信号应当连接到 MM 440 通信端口的 P+;绿色导线A 即 RS 485 信号 -,此信号应当连接到 MM 440 通信端口的 N-。
图1: MM440接线端子 表4:MM440端子定义
图2: S7-1200与MM440接线图
b. PROFIBUS 网络插头,内置偏置和终端电阻。
c. MM 440 端的偏置和终端电阻。
d. 通信口的等电位连接。可以保护通信口不致因共模电压差损坏或通信中断。
e. 双绞屏蔽电缆(PROFIBUS)电缆,因是高速通信,电缆的屏蔽层须双端接地(接 PE)。
注意,以下几点对网络的性能有较为重要的影响。几乎所有网络通信质量方面的问题都与未考虑到下列事项有关:
? 通信口 M 的等电位连接建议单独采用较粗的导线 ,而不要使用 PROFIBUS 的屏蔽层,因为此连接上可能有较大的电流,以致通信中断。
? PROFIBUS 电缆的屏蔽层要尽量大面积接 PE。一个实用的做法是在靠近插头、接线端子处环剥外皮,用压箍将裸露的屏蔽层压紧在 PE 接地体上(如 PE 母排或良好接地的裸露金属安装板)。
? 通信线与动力线分开布线;紧贴金属板安装也能改善抗干扰能力。驱动装置的输入/输出端要尽量采用滤波装置,并使用屏蔽电缆。
? 在 MM 440 的包装内提供了终端偏置电阻元件,接线时可按说明书直接压在端子上。如果可能,可采用热缩管将此元件包裹,并适当固定。
3. 组态
我们通过下述的实际操作来介绍如何在Step7 Basic V10.5 中组态S7-1214C 和MM440变频器的USS通信。
图3: 新建S7 1200项目
图4: S7 1200硬件配置
图5: S7 1200 IP地址的设置
MM 440 的参数分为几个访问级别,以便于过滤不需要查看的部分。 与 S7-1200 连接时,需要设置的主要有“控制源”和“设定源”两组参数。要设置此类参数,需要“*”参数访问级别,即首先需要把 P0003 参数设置为 3。
控制源参数设置:
控制命令控制驱动装置的启动、停止、正/反转等功能。控制源参数设置决定了驱动装置从何种途径接受控制信号,如表5所示。
表5:控制源由参数 P0700 设置
设定源控制参数:
设定值控制驱动装置的转速/频率等功能。设定源参数决定了驱动装置从哪里接受设定值(即给定),如表6所示。
表6:设定源由参数 P1000 设置
控制源和设定源之间可以自由组合,根据工艺要求可以灵活选用。我们以控制源和设定源都来自 COM Link 上的 USS 通信为例,简介 USS 通信的参数设置。
1. P0700: 设置 P0700[0] = 5,即控制源来自 COM Link 上的 USS 通信;
2. P1000: 设置 P1000[0] = 5,即设定源来自 COM Link 上的 USS 通信;
3. P2009: 决定是否对 COM Link 上的 USS 通信设定值规格化,即设定值将是运转频率的百分比形式,还是**频率值。为0,不规格化 USS 通信设定值,即设定为MM440中的频率设定范围的百分比形式;为1,对 USS 通信设定值进行规格化,即设定值为**的频率数值;
4. P2010: 设置 COM Link 上的 USS 通信速率。根据 S7-1200 通信口的限制,支持的通信波特率如表7所示。
4
2400 bit/s
5
4800 bit/s
6
9600 bit/s
7
19200 bit/s
8
38400 bit/s
9
57600 bit/s
12
115200 bit/s
6. P2012: 设置 P2012[0] = 2,即 USS PZD 区长度为 2 个字长;
7. P2013: 设置 P2013[0] = 4;
8. P2014: 设置 P2014[0] = 0 至 65535,即 COM Link 上的 USS 通信控制信号中断**时时间,单位为 ms;如设置为 0,则不进行此端口上的**时检查;
9. P0971: 设置 P0971 = 1,上述参数将保存入MM 440 的 EEPROM 中。
4. USS通信原理与编程的实现
图6:S7 1200 **的USS库
图7:通信结构图
USS_DRV 功能块是S7-1200 USS通信的主体功能块,接受MM440的信息和控制MM440的指令都是通过这个功能快来完成的。必须在主 OB中调用。
USS_PORT功能块是S7-1200与MM440进行USS通信的接口,主要设置通信的接口参数。可在主OB或中断OB中调用。
USS_RPM功能块是通过USS通信读取MM440的参数。必须在主 OB中调用。
USS_WPM功能块是通过USS通信设置MM440的参数。必须在主 OB中调用。
图8: USS_DRV功能块的编程
USS_DRV_DB: *MM440进行USS通信的数据块。
RUN: *DB块的MM440启动指令。
OFF2: 紧急停止,自由停车。 该位为0时停车。
OFF3: 快速停车,带制动停车。该位为0时停车。
F_ACK: MM440故障确认。
DIR : MM440控制电机的转向。
SPEED_SP: MM440的速度设定值。
NDR: 新数据就绪。
ERROR: 程序输出错误。
RUN_EN: MM440运行状态指示。
D_DIR: MM440运行方向状态指示。
INHIBIT: MM440是否被禁止的状态指示。
FAULT: MM440故障。
SPEED: MM440的反馈的实际速度值。
DRIVE: MM440的USS站地址。MM440参数P2011设置。
PZD_LEN: PZD数据的字数,有效值2,4,6或8个字。MM440参数P2012设置。
USS通信接口参数功能块的编程如图9所示。
图9: USS通信接口参数功能块的编程
PORT: 通信模块标识符:在默认变量表的“常量”(Constants) 选项卡内引用的常量。
BAUD: 指的是和MM440进行通行的速率。 MM440的参数P2010种进行设置。
USS_DB: 引用在用户程序中放置 USS_DRV 指令时创建和初始化的背景数据块。
STATUS:扫描或初始化的状态。
USS_PORT 功能通过RS485通信模块处理 CPU 和变频器之间的实际通信。 每次调用此功能可处理与一个变频器的一次通信。 用户程序必须尽快调用此功能以防止与变频器通信**时。 可在主 OB 或任何中断 OB 中调用此功能。通常从循环中断 OB 调用USS_PORT 以防止变频器**时以及使 USS_DRV 调用的 USS 数据保持较新。
S7-1200 PLC与MM440的通信是与它本身的扫描周期不同步的,在完成一次与MM440的通信事件之前,S7-1200通常完成了多个扫描。
USS_PORT通信的时间间隔是S7-1200与MM440通信所需要的时间,不同的通信波特率对应的不同的USS_PORT通信间隔时间。表8列出了不同的波特率对应的USS_PORT较小通信间隔时间。
表8:不同的波特率对应的USS_PORT较小通信间隔时间
基于以上的USS_PORT通信时间的处理,建议在循环中断OB块中调用USS_PORT通信功能块。在建立循环中断OB块时,我们可以设置循环中断OB块的扫描时间,以满足通信的要求。循环中断OB块的扫描时间的设置如图10所示:
图10:循环中断OB块的扫描时间的设置
图11:USS_RPM功能块的编程
REQ: 读取参数请求。
DRIVE: MM440的USS站地址。
PARAM: MM440的参数代码。
INDEX: MM440的参数索引代码
USS_DB:*MM440进行USS通信的数据块。
DONE: 读取参数完成。
ERROR: 读取参数错误。
STATUS:读取参数状态代码。
VALUE: 所读取的参数的值。
图12:USS_WPM功能块的编程
REQ: 写参数请求。
DRIVE: MM440的USS站地址。
PARAM: MM440的参数代码。
INDEX: MM440的参数索引代码。
EEPROM:把参数存储到MM440的EEPROM。
VALUE: 设置参数的值。
USS_DB:*MM440进行USS通信的数据块。
DONE: 读取参数完成。
ERROR: 读取参数错误状态。
图13:读写同时使能报错
图14:通信断开报错
图15:速度设定值错误
西门子6ES7132-6BD20-0CA0