S7-1200 串行通信概述

合集下载

s7-1200之间通信

s7-1200之间通信

s7-1200之间通信实验报告一.通信前的准备首先创建新项目,并命名为“s7-1200之间通信”,如下图所示:然后组态设备,选择s7-1200的CPU 1214C DC/DC/RLY,版本号为4.1,如下图所示:打开项目后,选中PLC_1设备视图,选择下面的“属性”选项,再选择“系统和时钟存储器”,在右边的显示出的启用时钟存储器字节的复选框中打上勾,如下图所示:再选中PLC_1设备中以太网口,在以太网地址设置PLC_1的IP地址为:192.168.0.1,如下图所示:然后把PLC_1复制粘贴成PLC_2,同样地在以太网口那里设置PLC_2的IP地址为:192.168.0.2,之前的系统和时钟存储器已经设置好了,PLC_2不用再设了。

具体如下:在设备视图中转到拓扑视图,分别添加交换机和PC端,并将它们按照下图连接起来。

到这里通信前设备设置已经完成了。

二.程序编程在PLC_1项目中选择程序块打开main(OB1),在右边的通信项选择“开放式用户通信”中选择“TSEND_C”指令并拖放到main(OB1)中去并生成背景数据块DB1,名称为:TSEND_C_DB。

如下图所示:选中指令,弹出下面的组态画面,设置如下面所示,在连接类型选择TCP,在连接数据行中,在下拉菜单中选择新建,生成下面所示的画面。

在PLC_1项目中选择程序块打开main(OB1),在右边的通信项选择“开放式用户通信”中选择“TRCV_C”指令并拖放到main(OB1)中去并生成背景数据块DB2,名称为:TRCV_C_DB,如下所示:选中指令,弹出下面的组态画面,设置如下面所示,在连接类型选择TCP,在连接数据行中,在下拉菜单中选择新建,生成下面所示的画面:然后添加全局数据块,命名为send,如下图所示:在打开的全局数据块名称列命名为send,在数据类型选择数组并设置为array[0....99]of string,如下图:在选中send[DB5]中单击右键选择属性,将打勾的去掉。

S7-1200 Modbus RTU 通信概述

S7-1200 Modbus RTU 通信概述

S7-1200 Modbus RTU 通信概述Modbus具有两种串行传输模式:分别为ASCII和RTU。

Modbus是一种单主站的主从通信模式,Modbus网络上只能有一个主站存在,主站在Modbus网络上没有地址,每个从站必须有唯一的地址,从站的地址范围为0 - 247,其中0为广播地址,从站的实际地址范围为1 - 247。

Modbus RTU通信以主从的方式进行数据传输,在传输的过程中Modbus RTU主站是主动方,即主站发送数据请求报文到从站,Modbus RTU从站返回响应报文。

S7-1200以下模块支持Modbus RTU通信:注意:1. 使用通信模块CM 1241 RS232作为Modbus RTU主站时,只能与一个从站通讯。

2. 使用通信模块CM 1241 RS485作为Modbus RTU主站时,则允许建立最多与32 个从站的通讯。

3. 使用通信板CB 1241 RS485时,CPU 固件必须为V2.0 或更高版本,且使用软件必须为STEP 7 Basic V11 或STEP 7 Professional V11 以上更高版本。

S7-1200 Modbus RTU 指令随着TIA PORATL 软件和S7-1200 CPU 固件的不断更新,S7-1200 Modbus RTU 指令也出现了不同的版本。

用户需要根据使用的软件和硬件,正确选择使用符合要求的S7-1200 Modbus RTU 指令来实现Modbus RTU 通信。

软件,硬件要求和指令版本说明如下。

TIA PORTAL 中的S7-1200 Modbus RTU 指令TIA PORTAL 软件中提供了2个版本的Modbus RTU指令。

如下图1 所示:•早期版本的Modbus RTU 指令(图1. 中MODBUS (V2.2))仅可通过CM1241 通信模块或CB1241 通信板进行ModbusRTU 通信。

•新版本的Modbus RTU 指令(图1. 中MODBUS(RTU) V3.0)扩展了Modbus RTU 的功能,该指令除了支持CM1241 通信模块、CB1241 通信板,还支持PROFINET 或PROFIBUS 分布式I/O 机架上的PTP 通信模块实现Modbus RTU 通信。

S7-1200串行通信

S7-1200串行通信

S7-1200串行通信
通信模板缓存区多包数据超出1024字节
发送多个每包50个字节数据,当数据超过1024字节那包就被丢弃了,前面的可以正常接收,且没有任何报错.在前面数
据被成功接收以后,只要缓存区有空间,后面的数据还可以正常收到。

通信模板缓存区一包数据超出1024字节
如果发送数据一包就大于1024字节时,缓冲区接收到数据到1024字节时,虽然没有收到结束字符,数据由缓存区送给CPU,但会报错16#80E0,如下图。

图14.发送数据一包大于1024字节时,缓存区报错
通信模板缓存区复位
当缓冲区溢出报错时,需要使用Reset指令进行清除缓冲区的操作。

图15.使用Reset指令复位缓存区错误,恢复数据接收
为什么不能使用PC/PPI电缆与S7-1200RS485模块进行串口调试?
答:因为S7-1200RS485模块接口不提供24V电源,不能给PC/PPI电缆供电,所以电缆无法工作。

解决办法:可以将S7-1200RS485与S7-200通信口网络连接,将PC/PPI电缆插在S7-200通信口上总线连接器的
编程口上,对S7-1200RS485进行串口调试。

此时S7-200必须上电并打到停止状态。

连接5GND逻辑地或通信地金属壳-外壳接地。

08-S7-1200的通信

08-S7-1200的通信

定义TSEND_C接口参数
调用 TRCV指令并配置接口参数
要实现前述通信要求,还需要在PLC_2中调用并配 置TRCV_C、T_SEND通信指令。
定义TRCV_C的连接参数
变量表
TRCV_C块参数配置
调用T_SEND指令并配置接口参数
8.3 S7-1200与S7-200和S7-300/400的通信
下面我们通过一个简单例子演示S7-1200 PLC 之间以太网通信的组态步骤。要求:将PLC_1的通 信数据区DB块中的100字节的数据发送到PLC_2的 接收数据区DB块中,PLC_1的QB0接收PLC_2发送 的数据IB0的数据。
组态网络
定义TSEND_C连接参数
定义变量表
定义
TSEND _C接口 参数
自由口协议通信
CM1241 RS232和CM1241 RS485接口模块都支持 基于字符的自由口协议,我们以RS232模块为例介 绍串口通信模块的端口参数设置、发送参数设置、 接收参数设置以及硬件标识符。最后通过一个简单 例子介绍串口通信模块自由口通信的组态方法。
端口参数设置
图8-2 PORT_CFG指令块
S7-1200与S7-200的通信
S7-1200 CPU与S7-200 CPU之间的通信只能通过 S7通信来实现,因为S7-200的以太网模块只支持 S7通信。由于S7-1200的PROFINET通信接口只支 持S7通信的服务器端,所以在编程方面,S7-1200 CPU不用做任何工作,只需为S7-1200 CPU配置好 以太网地址并下载下去。主要编程工作都在S7-200 CPU一侧完成,需要将S7-200的以太网模块设置成 客户端,并用ETHx_XFR指令编程通信。
实现两个CPU之间通信的具体操作步骤如下。

S7-1200第15讲:S7-1200的自由口通信

S7-1200第15讲:S7-1200的自由口通信
CM1241 RS232接口模块支持的通信协议: 基于字符(ASCII)的自由口通信协议 MODBUS RTU主从协议
CM1241 RS485接口模块支持的通信协议: 基于字符的自由口协议(ASCII) MODBUS RTU主从协议 USS协议
CB1241 RS485接口模块支持的通信协议: 基于字符的自由口协议(ASCII) MODBUS RTU主从协议 USS协议
节点数
1收、1发
最大传输电缆长度
50英尺
最大传输速率
20Kb/S
最大驱动输出电压
+/-25V
驱动器输出信号电平负载 +/-5V~+/-15V
驱动器输出信号电平空载 +/-25V
驱动器负载阻抗(Ω)
3K~7K
摆率(最大值)
30V/μs
接收器输入电压范围
+/-15V
接收(Ω)
RS-422的最大传输距离为4000英尺(约1219米),最大传输速率为 10Mb/s。其平衡双绞线的长度与传输速率成反比,在100kb/s速率以 下,才可能达到最大传输距离。只有在很短的距离下才能获得最高速率 传输。一般100米长的双绞线上所能获得的最大传输速率仅为1Mb/s。
RS-422需要一终接电阻,要求其阻值约等于传输电缆的特性阻抗。 在矩距离传输时可不需终接电阻,即一般在300米以下不需终接电阻。 终接电阻接在传输电缆的最远端。
从两个设备到多个设备运行—RS422 包括:差分传输,地址,全双工
RS-422、RS-485与RS-232不一样,数据信号采用差分传输方式, 也称作平衡传输,它使用一对双绞线,将其中一线定义为A,另一线定 义为B。
RS-422标准全称是“平衡电压数字接口电路的电气特性”,它定义 了接口电路的特性。实际上还有一根信号地线,共5根线。

S7-1200 PLC应用教程第6章

S7-1200 PLC应用教程第6章
选中网络视图中PLC_2的PN接口,再选中巡视窗口中的的“属性 > 常规 > 操作模式”,勾选复选框“IO设备”,CPU 1215C做智能IO设备。用“已分 配的IO控制器”选择框将IO设备分配给IO控制器PLC_1的PN接口。
2.组态智能设备通信的传输区 IO设备的传输区(I、Q地址区)是IO控制器与智能IO设备的用户程序之间 的通信接口。通信双方用组态的Q区发送数据,用组态的 I 区接收数据。IO 控制器与智能IO设备之间通过传输区自动地周期性地进行数据交换。 选中网络视图中PLC_2的PN接口,然后选中巡视窗口的“属性 > 常规 > 操 作模式 > 智能设备通信”,双击右边窗口“传输区”列表中的<新增>,在第 一行生成“传输区_1”。
化领域、实时自动化领域和同步实时通信。
PROFINET支 持 故 障安全 通 信 的标准 行 规 PROFIsafe 和驱 动器 配 置 行规
PROFIdrive。
3.PROFIBUS PROFIBUS是开放式的现场总线,传输速率最高12Mbit/s,最多可以接127 个从站。PROFIBUS提供了下列3种通信服务: 1) PROFIBUS-DP (分布式外部设备)用于PLC与分布式I/O(例如ET 200) 的通信。主站之间的通信为令牌方式,主站与从站之间为主从方式。 2)PROFIBUS-PA(过程自动化)用于过程自动化的现场传感器和执行器的低
6.3 基于以太网的开放式用户通信 S7-1200/1500的CPU集成的PROFINET接口是10M/100Mbit/s的RJ45以太网口,
可以使用标准的或交叉的以太网电缆。支持TCP、ISO-on-TCP、UDP和S7通信。 1.开放式用户通信 基于CPU集成的PN接口的开放式用户通信用函数块建立和断开通信连接,

串行通信简介

串行通信简介

串行通信简介一、并行通信与串行通信数据传输的两种方式为并行和串行。

并行通信传输中,一组数据的各数据位在多条线上同时被传输,以字或字节为单位并行进行。

并行通信使用的通信线路多、成本高,另外由于线路长度增加时,干扰增加,数据也容易出错,所以并行方式不适宜远距离通信,工业上很少使用。

串行通信使用一条数据线,将数据一位接一位地按顺序依次传输,每一位数据占据一个固定的时间长度,只需要较少的通信线路就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信,工业上广泛使用。

二、同步通信与异步通信串行通信一般又分为同步通信和异步通信。

同步通信收发设备需要使用一根同步时钟信号线,在时钟信号的驱动下双方进行协调,同步数据。

例如,通信中双方通常会统一规定在时钟信号的上升沿(或下降沿)对数据线进行采样。

异步通信则不需要同步时钟信号,而是采用字符同步的方式,字符帧格式如图12-59所示。

图12-59 异步通信的字符帧格式发送的字符由1个低电平起始位、7或8个传送信息数据位、1个奇偶校验位(可以没有)、1或2个停止位组成。

通信双方需要对采用的字符帧格式和数据的传输速率做相同的约定。

异步通信传送的附加位(非有效传送信息)较多,传输效率低,但随着通信速率的提高,可以满足控制系统通信的要求。

S7-1200 PLC采用异步通信方式。

提示:串行通信中,波特率指的是数据传输速率,即每秒传送的二进制位数,其符号为bit/s或bps。

三、单工、半双工与全双工通信单工通信只支持数据在一个方向上传输,不能实现双向通信,例如电视、广播。

半双工通信允许数据在两个方向上传输,但同一时刻只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信。

在同一时间只可以有一方接收或发送信息,可以实现双向通信,如对讲机。

全双工通信允许数据同时在两个方向上传输,因此全双工通信是两个单工通信方式的结合。

在同一时间可以同时接收和发送信息,实现双向通信,如电话通信。

S7-1200 和 S7-1200 之间 S7 通讯

S7-1200 和 S7-1200 之间 S7 通讯

S7-1200 和 S7-1200 之间 S7 通信S7-1200 的 PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本)。

S7-1200 仅支持 S7 单边通信,仅需在客户端单边组态连接和编程,而服务器端只准备好通信的数据就行。

硬件:1.CPU 1214C DC/DC/DC,V2.02.CPU 1214C DC/DC/DC,V4.1软件:1.Step7 V13 SP1所完成的通信任务:1.S7-1200 CPU Clinet 将通讯数据区 DB1 块中的 10 个字节的数据发送到 S7-1200 CPU server 的接收数据区 DB1 块中;2.S7-1200 CPU Clinet 将S7-1200 CPU server 发送数据区 DB2 块中的10 个字节的数据读到 S7-1200 CPU Clinet 的接收数据区 DB2 块中。

S7-1200之间 S7 通讯,可以分2种情况来操作,具体如下:1.第一种情况:两个 S7-1200 在一个项目中操作;2.第二种情况:两个 S7-1200 不在一个项目中的操作。

一. 第一种情况(同一项目中操作)使用 STEP 7 V13 在同一个项目中,新建两个S7-1200站点,然后做 S7 通讯。

1.1 使用 Step7 V13生成项目使用 STEP7 V13 创建一个新项目,并通过“添加新设备”组态 S7-1200 站client V4.1,选择 CPU1214C DC/DC/DC V4.1(client IP:192.168.0.10);接着组态另一个S7-1200站 server v2.0,选择 CPU1214C DC/DC/DC V2.0(server IP:192.168.0.12),如图 1 所示。

图 1 在新项目中插入2个 S7-1200 站点1.2 网络配置,组态 S7 连接在“设备组态”中,选择“网络视图”栏进行配置网络,点中左上角的“连接”图标,连接框中选择“S7连接”,然后选中client v4.1 CPU(客户端),右键选择“添加新的连接”,在创建新连接对话框内,选择连接对象“serverv2.0 CPU”,选择“主动建立连接”后建立新连接,如图 2 所示。

西门子S7-1200与第三方设备自由口通信详解

西门子S7-1200与第三方设备自由口通信详解

西门子S7-1200与第三方设备自由口通信详解西门子S7-1200 紧凑型PLC在当前的市场中有着广泛的应用,由于其性价比高,所以常被用作小型自动化控制设备的控制器,这也使得它经常与第三方的设备(扫描枪、打印机等设备进行通讯。

因为没有第三方的设备,这里就以超级终端为例介绍自由口通讯。

1.控制系统原理图1:控制系统原理2.硬件需求S7-1200 PLC目前有3种类型的CPU:1)S7-1211C CPU。

2)S7-1212C CPU。

3)S7-1214C CPU。

这三种类型的CPU都可以连接三个串口通信模版。

本例中使用的PLC硬件为:1)PM1207电源 ( 6EP1 332-1SH71 )2) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )3) CM1241 RS232 ( 6ES7 241 -1AH30 -0XB0 )3.软件需求1) 编程软件 Step7 Basic V10.5 ( 6ES7 822-0AA0-0YA0)4.组态我们通过下述的实际操作来介绍如何在Step7 Basic V10.5 中组态S7-1214C 和超级终端通信。

点击桌面上的“Totally Integrated Automation Portal V10”图标,打开如下图:图2:新建S7 -1200项目首先需要选择“Create new project”选项,然后在“Project name:”里输入PTP;在“Path:”修改项目的存储路径为“C:\”;点击“Create”,这样就创建了一个文件PTP的新项目。

创建后的窗口如下图所示:图3:新建项目后点击门户视图左下角的“Project View”切换到项目视图下,如下图:图4:切换到项目视图打开后,在“Devices”标签下,点击“Add new device”,在弹出的菜单中输入设备名“PLC_1”并在设备列表里选择CPU的类型。

选择后如下图:图5:PLC硬件组态插入CPU后,点击CPU左边的空槽,在右边的“Catalog ”里找到“Communication”下的RS232模块,拖拽或双击此模块,这样就把串口模块插入到硬件配置里,接下来就需要配置此RS232模块硬件接口参数,选择RS232模块,在其下方会出现该模块的硬件属性配置窗口,在属性窗口里有两个选项,一个是“general”;一个是“RS232 interface”。

《PLC应用技术》课件——8.1 S7-1200PLC的通信指令

《PLC应用技术》课件——8.1 S7-1200PLC的通信指令

S7通信使用介绍
2、根据通信需要,建立通信数据,可以是DB块,也可以是I、Q、M存储区
S7通信使用介绍
3、PUT/GET指令
S7通信使用介绍
• PUT指令 • GET指令 • DB块指针格式
S7通信使用介绍
M存储区指针格式: P#+M起始地址(通信单元首个 位地址)+数据类型+数量
S7通信测试
S7-1200PLC S7通信指令
本讲内容
S7-1200PLC 通信指令介绍 S7通信使用介绍 S7通信测试
S7通信程序编写、仿真调试 小结与思考
S7-1200PLC 通信指令
S7通信使用介绍
PUT指令用于将数据写入到伙伴CPU,GET 0
指令用于从伙伴CPU读取数据。
1
PLC1发送数据到PLC2,可以在PLC1中使用
S7通信测试
S7通信测试
程序的编写、仿真调试
录屏
小结与思考
S7-1200PLC 通信指令介绍 S7通信测试
S7通信使用介绍 S7通信程序编写及仿真调试
1. 简述S7通信的实施过程。 2. 开放式通信需要在客户端和服务器端都要做收发数据的程序,
其他的和S7通信基本相同,你能使用开放式通信指令吗?
PUT 指 令 配 置 通 信 , 也 可 以 在 PLC2 中 使 用 GET指令配置通信,不需双方都配置通信。
0 2
S7通信使用介绍
1、新建项目,硬件组态Fra bibliotekS7通信使用介绍
在系统和时钟存储器中,勾选时钟存储器
S7通信使用介绍
在连接机制中勾选“允许来自远程对象的通信访问”
S7通信使用介绍
在设备和网络中,建立所有参与S7通信PLC 之间的PN/IE连接

S7-1200第15讲:S7-1200的自由口通信

S7-1200第15讲:S7-1200的自由口通信
博途1200课程--第15讲
--------------S7-1200的自由口通信
串行通信来由与理解: 从单个设备运行到两个设备通信运行
从并行通信到串行通信—RS232 包括:波特率、起始位,数据位,校验,停止位,全双工
目前RS-232是PC机与通信工业中应用最广泛的一种串行接口。 RS232被定义为一种在低速率串行通讯中增加通讯距离的单端标准。RS232采取不平衡传输方式,即所谓单端通讯。
波特率:一个设备在一秒钟内发送(或接收)了多少码元的数据。 它是对符号传输速率的一种度量,1波特即指每秒传输1个码元符号(通 过不同的调制方式,可以在一个码元符号上负载多个bit位信息),1比 特每秒是指每秒传输1比特(bit)。
全双工:通信允许数据在两个方向上同时传输,它在能力上相当于 两个单工通信方式的结合。
然后把CRC寄存器与8-bit的数据进行异或(异或:二进制运算 相同为0,不同 为1;0^0=0;0^1=1;1^0=1;1^1=0), 之后对CRC寄存器从高到低进行移位, 在最高位(MSB)的位置补零,而最低位(LSB,移位后已经被移出CRC寄 存器)如果为1,则把寄存器与预定义的多项式码进行异或,否则如果LSB为 零,则无需进行异或。重复上述的由高至低的移位8次,第一个8-bit数据处理 完次移位。所有的字符处理完成后CRC寄存器内的值即为最终的CRC值。 1.设置CRC寄存器,并给其赋值FFFF(hex)。 2.将数据的第一个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果 存入CRC寄存器。 3.CRC寄存器向右移一位,MSB补零,移出并检查LSB。 4.如果LSB为0,重复第三步;若LSB为1,CRC寄存器与多项式码相异或。 5.重复第3与第4步直到8次移位全部完成。此时一个8-bit数据处理完毕。 6.重复第2至第5步直到所有数据全部处理完成。 7.最终CRC寄存器的内容即为CRC值。

西门子S7-1200 串行通信ptp点对点modbus rtu及uss通信奇偶校验通迅模块cm1241rs232rs485rs422 Master Slave

西门子S7-1200 串行通信ptp点对点modbus rtu及uss通信奇偶校验通迅模块cm1241rs232rs485rs422 Master Slave

S7-1200 串行通信ptp点对点modbus rtu及uss通信奇偶校验通迅模块cm1241rs232rs485rs422 Master SlaveS7-1200支持的串行通讯方式∙点对点(PtP)通信∙Modbus 主从通信∙USS 通信S7-1200 串口通信模块的特征图1. 串口通信模块1.由CPU 供电,不必连接外部电源2.端口经过隔离,最长距离1000 米3.有诊断LED 及显示传送和接收活动LED4.支持点对点协议5.通过扩展指令和库功能进行组态和编程RS485 与RS232 通信模块的LED诊断LED 灯∙红闪:如果CPU 未正确识别到通信模块,诊断LED 会一直红色闪烁∙绿闪:CPU 上电后已经识别到通信模块,但是通信模块还没有配置∙绿灯:CPU 已经识别到通信模块,且配置也已经下载到了CPU 发送LED 灯∙代表数据正在通过通信口传送出去接收LED 灯∙代表数据正在通过通信口接收进来注意:通信板CB1241 只有发送和接收LED 灯,而没有诊断LED 灯串口模板支持的协议∙ASCII∙USS∙Modbus RTU Master protocol∙Modbus RTU Slave protocolASCII 协议的特点∙报文可以由用户自己定义,便于用户以ASCII 协议为基础开发∙使用简单,可以很好地实现与第三方系统的通讯∙可以进行识别报文结束设置∙可以进行数据流量控制∙缺点:具有简单的校验功能(奇偶校验),低数据安全性;数据传输无确认信息;通讯需要双方协调S7-1200 的PTP 校验串口的校验:奇偶校验:用于检验数据传递的正确性,是最简单的检错方法。

图2. 校验设置∙偶校验:如果每字节的数据位中“1”的个数为奇数,则校验位为1,如果个数为偶数,则校验位为“0”,保证数据位和校验位中“1”的个数是偶数∙奇校验:如果每字节的数据位中“1”的个数为奇数,则校验位为0,如果个数为偶数,则校验位为“1”,保证数据位和校验位中“1”的个数是奇数∙传号校验:奇偶校验位始终设置为1∙空号校验:奇偶校验位始终设置为0注意:奇偶校验可以简单的判断数据的正确性,从原理上可看出当一位出错,可以准确判断,当两位或更多位误码就校验不出,但由于其实现简单,仍得到了广泛使用。

西门子第11章S7-1200通信功能

西门子第11章S7-1200通信功能


S7 通信
使用已组态连接交换数据

×

路由 PG 功能
例如,跨网络边界进行测试和
×
诊断
×
×
PROFIBUS DP
在主站与从站之间交换数据


×
PROFINET IO
I/O 控制器和 服务器
诊断
×
×

SNMP 1
用于网络诊断和参数化的标准
×
(简单网络管理协 协议
对于 PROFINET 和 PROFIBUS,CPU 最多可支持下列数量的并发异步通信连接。分配给每个类别的最大连接资源数为固定值; 您无法更改这些值。但可组态 6 个“可用自由连接”以按照应用要求增加任意类别的连接数。
说明 在添加 CM/CP 模块时,S7-1200 通信连接的总数不增加。
4
工业自动化-花落忆无声
PROFINET 均采用单独的通信网络,不会相互制约。
AS-i 通过 S7-1200 CM 1243-2 AS-i 主站可将 AS-i 网络连接到 S7-1200 CPU。
CPU 至 CPU S7 通信 您可以创建与伙伴站的通信连接并使用 GET 和 PUT 指令与 S7 CPU 进行通信。
TeleService 通信
PROFINET
PROFINET 用于使用用户程序通过以太网与其它通信伙伴交换数据: ● 在 S7-1200 中,PROFINET 支持 16 个最多具有 256 个子模块的 IO
设备,PROFIBUS 允许使用 3 个独立的 PROFIBUS DP 主站,每个 DP 主站支持 32 个从站,每个 DP 主站最多具有 512 个模块。 ● S7 通信 ● 用户数据报协议 (UDP) ● ISO on TCP (RFC 1006) ● 传输控制协议 (TCP)

《西门子S7_1200应用技术》S7-1200通信的应用

《西门子S7_1200应用技术》S7-1200通信的应用

(a)PLC_1的仿真
(b)PLC_2的仿真
扩展知识 一、ISO-on-TCP通信
ISO-on-TCP是在TCP中定义了ISO传输的属性,ISO协议是通过数据包进行数据传输。ISO-onTCP是面向消息的协议,数据传输时传送关于消息长度和消息结束标志。
将项目“6-1应用TCP连接实现S7-1200之间通信”另存为一个项目,将 “连接类型”修改为 “ISO-on-TCP”,用户的程序和其它组态数据都不变,即可进行仿真操作。
InOut
InOut
Bool Word
Remote
Variant
上升沿触发 指定与伙伴CPU连接的 寻址参数 指向伙伴CPU待读取区 域的指针 指向本地CPU要输入已 读取数据区域的指针
Output Bool
Output Bool Output Word
“1”:任务执行成功; “0”:任务未启动或正 在执行 “1”:执行任务出错; “0”:无错误 指令的状态连接实现S7-1200之间的通信 任务2 应用S7连接实现S7-1200之间的通信 任务3 应用PROFINET IO连接实现S7-1200之间的通信 任务4 应用点到点连接实现S7-1200之间的通信
任务1 应用TCP连接实现S7-1200之间的通信
任务引入
指向伙伴CPU写入区 ADDR_1
域的指针
指 向 本 地 CPU要 发 送 RD_1
数据区域的指针
Bool
Bool Word
“1”:任务执行成功; NDR
“0”:任务未启动或正
在执行
“1”:执行任务出错; ERROR
“0”:无错误
指令的状态
STATUS
声明
GET指令 数据类型 说明

最新S7-1200概述精品课件

最新S7-1200概述精品课件
第九页,共19页。
S7-1200的技术(jìshù)性能指标
CPU 特征 3 CPUs 集成的工作存储区/KB 集成的装载存储区/MB 集成的保持存储区/KB 内存卡件 集成的数字量I/O点数 集成的模拟量I/O点数 过程映像区大小 信号扩展板 信号扩展模块 最大本地数字量I/O点数 最大本地模拟量I/O 点数
第三页,共19页。
6、成本可与继电接触器控制装置竞争; 7、输入可以(kěyǐ)是交流115V; 8、输出为交流115V,2A以上,能直接驱动电磁阀, 接触器等; 9、在扩展时,原系统只要很小变更; 10、用户程序存储器容量至少能扩展到4K。
第四页,共19页。
1969年,美国数字设备公司(ɡōnɡ sī)(DEC)研制 出第一台PLC,在美国通用汽车自动装配线上试用,获 得了成功。
6
8
14
在全部的4个中有一个达到 ms 精度
6 升/ 6 降沿
8升沿/ 8降沿
12升沿/ 12降沿
± 60 秒/月
40°C环境下,典型的10天/最小6天,免费维护超级电容
0.1 µs / 指令
12 µs /指令
18 µs /指令
1个
RJ45 接口
10/100 Mb/s
最多3个
第十一页,共19页。
S7-200 性能指标
近期的PLC(20世纪80年代中后期至今)由于超大规模 集成电路技术的迅速发展,微处理器的市场价格大幅度下 跌,使得各种类型的PLC所采用(cǎiyòng)的微处理器的 档次普遍提高;而且,为了进一步提高PLC的处理速度, 各制造厂商还纷纷研制开发了专用逻辑处理芯片,使得 PLC软硬件功能发生了巨大变化。
PID控制 PID控制
第十三页,共19页。

伦茨变频与s7-1200通讯定义

伦茨变频与s7-1200通讯定义

伦茨变频与S7-1200的通讯主要是通过USS通信协议进行的。

USS(Universal Serial Interface Protocol,即通用串行接口协议)是西门子公司为其变频器产品开发的一种通信协议。

在S7-1200系列PLC与变频器之间进行USS通信时,通常需要先做一些硬件接线和参数设置。

例如,你需要确保主站(在这里是S7-1200 PLC)能够正确轮询各个从站(在这里是伦茨变频器),并能够接收到从站响应的数据。

S7-1200支持多种通信协议,包括PROFINET、PROFIBUS DP以及Modbus RTU等。

其中,PROFINET和PROFIBUS DP是工业以太网和现场总线通信协议,常用于实现PLC与IO 设备或其它PLC之间的通信;而Modbus RTU是一种串行通信协议,主要用于与各种电子设备进行通信。

6-6S7-1200PLC的Modbus通信

6-6S7-1200PLC的Modbus通信

|| 来自: >配色:字号:大中小6-6 S7-1200 PLC的Modbus通信2022-09-04 | 阅:转:|S7-1200PLC的Modbus通信1.Modbus通信介绍Modbus是MODICON公司于1979年开发的一种通信协议,是一种工业现场总线协议标准。

1ModBus协议是一项应用层报文传输协议,包括ASCII、RTU和TCP三种报文类型,协议本身并没有定义物理层。

2标准的Modbus协议物理层接口有RS232、RS422、RS485和以太网口。

串行通信采用Master/Slave(主/从)方式通信。

31.Modbus通信介绍CMPtPS7-1200PLC的Modbus通信需要配置串行通信模块,如CM1241RS-485和CB1241RS485板。

一个S7-1200CPU中最多可安装三个CM1241或RS422/RS485模块和一个CB1241RS485板。

CB1241对于S7-1200CPU(V4.1版本及以上)扩展了Modbus的功能,可以使用PROFINET或PROFIBUS分布式I/O机架上的串行通信模块与设备进行Modbus通信。

CM1241CMPtP2.Modbus通信的指令Modbus_Comm_Load指令用于ModbusRTU协议通信的串行通信端口,通常运行一次即可,但波特率等修改后,需要再次运行。

REQ上升沿时信号启动操作?PORT串口模块硬件标识符BAUD波特率PARITY奇偶校验选择:?0–无?1–奇校验?2–偶校验?MB_DB对Modbus_Master或Modbus_Slave指令所使用的背景数据块的引用DONE上一请求已完成且没有出错后,DONE位将保持为TRUE一个扫描周期时间?STATUS 故障代码?ERROR是否出错;0表示无错误,1表示有错误2.Modbus通信的指令Modbus_Master是主站指令,在执行此指令之前,要执行Modbus_Comm_Load指令组态端口。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

S7-1200 串行通信详解S7-1200支持的串行通讯方式
•点对点(PtP)通信
•Modbus 主从通信
•USS 通信
S7-1200 串口通信模块的特征
图1. 串口通信模块
1. 由CPU 供电,不必连接外部电源
2. 端口经过隔离,最长距离1000 米
3. 有诊断LED 及显示传送和接收活动LED
4. 支持点对点协议
5. 通过扩展指令和库功能进行组态和编程
RS485 与RS232 通信模块的LED
诊断LED 灯
•红闪:如果CPU 未正确识别到通信模块,诊断LED 会一直红色闪烁•绿闪:CPU 上电后已经识别到通信模块,但是通信模块还没有配置•绿灯:CPU 已经识别到通信模块,且配置也已经下载到了CPU
发送LED 灯
•代表数据正在通过通信口传送出去
接收LED 灯
•代表数据正在通过通信口接收进来
注意:通信板CB1241 只有发送和接收LED 灯,而没有诊断LED 灯
串口模板支持的协议
•ASCII
•USS
•Modbus RTU Master protocol
•Modbus RTU Slave protocol
ASCII 协议的特点
•报文可以由用户自己定义,便于用户以ASCII 协议为基础开发
•使用简单,可以很好地实现与第三方系统的通讯
•可以进行识别报文结束设置
•可以进行数据流量控制
•缺点:具有简单的校验功能(奇偶校验),低数据安全性;数据传输无确认信息;通讯需要双方协调
S7-1200 的PTP 校验
串口的校验:奇偶校验:用于检验数据传递的正确性,是最简单的检错方法。

图2. 校验设置
•偶校验:如果每字节的数据位中“1”的个数为奇数,则校验位为1,如果个数为偶数,则校验位为“0”,
保证数据位和校验位中“1”的个数是偶数
•奇校验:如果每字节的数据位中“1”的个数为奇数,则校验位为0,如果个数为偶数,则校验位为“1”,
保证数据位和校验位中“1”的个数是奇数
•传号校验:奇偶校验位始终设置为1
•空号校验:奇偶校验位始终设置为0
注意:奇偶校验可以简单的判断数据的正确性,从原理上可看出当一位出错,可以准确判断,当两位或更多位误码就校验不出,但由于其实现简单,仍得到了广泛使用。

PTP 通信的发送信息配置
定义在信息起始发送断点及空闲线
字符中断:当接收到的数据保持为零值的时间大于完整的字符传输时间时,代表字符中断。

一个完整字符传输时间定义为传输起始位、数据位、校验位和停止位的时间总和。

图3. 定义在信息起始发送断点及空闲线
常问问题:为什么发送配置中只配了2位字符中断,而通信伙伴却可以正常接收数据?
答:发送配置中设置的字符中断小于等于16位时,系统自动发出16位的字符中断位;设置大于16位时,则发出的中断位与实际设置相符。

下图是设置的发送断点及空闲线位及其实际发出的波形图。

波形图断点及空闲线设置
图4. 断点及空闲线波形图
PTP 通信接收起始条件
以任意字符开始
以特殊条件开始:
•通过断点识别消息开始
•通过空闲线识别消息开始
•通过单个字符识别消息开始•通过字符序列识别消息开始
图5. 通信接收起始条件
通过字符序列识别消息开始
对于多个起始序列的组态,只要出现其中一个序列,即会满足开始条件。

下图右侧即为满足起始条件的字符串。

图6. 通过字符序列识别消息开始
如果选择了多个起始条件,则检查开始条件的顺序如下:
注意:检查多个开始条件时,如果有一个条件没有满足,则CM 将从第一个所需的条件开始重新启动检查。

PTP 通信接收结束条件
图7.结束条件设置
注意:与多个起始条件的判断不同,检查多个结束条件时,任何一个条件满足,信息接收结束。

消息超时结束条件
消息超时时间从接到符合消息开始条件的第一个字符时开始计算,如下图。

图8.消息超时
响应超时结束条件
响应超时时间从传送结束时开始计算,只要传送成功完成且模块开始接收操作,定时器就会启动。

图9.响应超时
注意:响应超时结束条件不能作为单独的结束条件的设置,否则会在编译时报如下错误:
图10.响应超时作为单独的结束条件报错
从消息中读取信息长度
图11.从消息中读取信息长度的设置
实际收到的数据长度=
长度偏移前的字节数+长度字节大小+读取的实际数据长度+不计入字节长度的字节数
图12.程序中读到的实际数据长度
PTP 通信接收缓存区
缓存区的数据保持
断电后缓存区中的数据全部丢失,不能保持。

通信模板缓存区超出20条信息
如果缓存区中的信息超过20条,后面的信息被
自动丢弃,且不报错。

通信模板缓存区多包数据超出1024字节
发送多个每包50个字节数据,当数据超过1024字节那包就被丢弃了,前面的可以正常接收,且没有任何报错.在前面数据被成功接收以后,只要缓存区有空间,后面的数据还可以正常收到。

通信模板缓存区一包数据超出1024字节
如果发送数据一包就大于1024字节时,缓冲区接收到数据到1024字节时,虽然没有收到结束字符,数据由缓存区送给CPU,但会报错16#80E0,如下图。

图13. 发送数据一包大于1024字节时,缓存区报错
、图14. 使用RST指令复位缓存区错误,恢复数据接收
注意:缓存区可以存储多条信息,限制是20条信息或最多1024字节。

为什么不能使用PC/PPI 电缆与S7-1200 RS485 模块进行串口调试?
答:因为S7-1200 RS485 模块接口不提供24V电源,不能给PC/PPI 电缆供电,所以电缆无法工作。

解决办法:可以将S7-1200 RS485 与S7-200 通信口网络连接,将PC/PPI 电缆插在S7-200 通信口上总线连接器的编程口上,对S7-1200 RS485进行串口调试。

此时S7-200必须上电并打到停止状态。

连接5 GND 逻辑地或通信地金属壳- 外壳接地。

相关文档
最新文档