PROFIBUS-DP(或DP标准)是由欧洲标准EN 50170定义的远程I/O协议,即使各个设备由不同的公司制造,只要满足该标准便相互兼容,DP表示分布式外围设备,亦即远程IO,PROFIBUS表示过程现场总线。 S7-200 CPU可以通过EM277 PROFIBUS-DP 从站模块连入PROFIBUS-DP网,主站可以通过EM277 对S7-200 CPU进行读/写数据。
图. S7-200 CPU通过EM277模块连接到PROFIBUS-DP网络
S7-200支持的通信协议,有些是公开的标准;有些是西门子公司的内部协议,不公开。
PROFIBUS-DP协议:标准协议,公开
详情请参考: http://www.profibus.com
楼主最近还看过
1EM277 模块介绍
6ES7 277-0AA22-0XA0 | ||
---|---|---|
常规 | 尺寸(W*H*D) | 71*80*62 |
重量 | 175g | |
功耗 | 2.5W | |
+5VDC要求 | 150mA | |
占用输入\输出地址 | 无 | |
可拆卸连接(端子) | 否 | |
通讯口 | 端口数 | 1 |
电气接口 | RS-485 | |
PROFIBUS-DP/MPI波特率(自动设置) | 9.6、19.2、45.45、93.75、187.5和500K波特;1、1.5、3、6和12M波特 | |
协议 | PROFIBUS-DP从站和MPI从站 | |
输入电源要求 | 电压范围 | 20.4~28.8 VDC(等级2、有限电源、或来自PLC的传感器电源) |
最大电流 | 见 表1.4.2 EM277电流需求 | |
纹波噪声(<10MHz) | <1V 峰-峰值(最大) | |
隔离(现场到逻辑) | 500VAC,1分钟 | |
通讯口的5VDC电源 | 每个口的最大电流 | 90mA |
隔离(24VDC到逻辑) | 500VAC,1分钟 | |
通讯口的24VDC电源 | 电压范围 | 20.4~28.8 VDC |
每个口的最大电流 | 120mA | |
电流限定 | 0.7~2.4A | |
隔离 | 无隔离,与输入24VDC电路相同 |
表1.1.1. EM277常规参数表
EM277 PROFIBUS-DP模块在前面的面板上有四个状态LED,用来指示DP端口的运行状态:
S7-200上电后 ,DX MODE 灯一直熄灭直到DP通讯开始
当DP的通讯成功地初始化后(EM 277 PROFIBUS-DP模块进入和主站交换数据的状态时),DX MODE LED变绿直到数据交换状态结束
如果DP通讯中断,强制EM 277模块退出数据交换模式,此时,DX MODE LED熄灭而DP ERROR LED变红。此状态一直保持到S7-200 CPU断电或数据交换重新开始
如果主站写入EM 277模块的I/O组态或参数信息错误,则DP ERROR LED将呈红色闪烁
如果没有24 VDC供电,POWER (电源) LED将熄灭
图1.2.1.EM277 前视图
指示灯 | LED状态 | |||
---|---|---|---|---|
OFF | 红色 | 红色闪烁 | 绿色 | |
CPU FAULT | 模块良好 | 内部模块错误 | -- | -- |
POWER | 没有DC24V电源 | -- | -- | DC24V电源良好 |
DP ERROR | 无错误 | 脱离数据交换模式 | 参数化/组态错误 | -- |
DX MODE | 不在数据交换模式 | -- | -- | 在数据交换模式 |
表1.2.1. EM277 指示灯信息
注意:当EM277 PORFIBUS-DP模块专门用作MPI从站时,只有绿色电源LED点亮。
联网能力 | 数据 |
---|---|
站地址设置 | 0-99(由旋钮开关设定) |
每段最大站数 | 32 |
每个网络最大站数 | 126,最多99个EM277站 |
MPI连接 | 一共6个,2个保留(1个给PG,一个给OP) |
表1.3.1. EM277 联网能力表
如图1.2.1所示:
X10=设置地址的最高有效位
X1=设置地址的最低有效位
一个网络上只能有最多99个EM277 站,是因为其地址设置开关的限制。
常问问题
更换EM277 在CPU后面的位置是否会影响I/Q地址分配?
EM277 不占用CPU的输入/输出地址,所以更换模块位置时,不影响程序。
为什么重新设置EM277 地址后不起作用?
对EM277重新设置地址后,需断电后重新上电才起作用或者检查EM277地址拨码是否到位。
关于S7-200 CPU和模块的通信端口引脚定义,详情请参考 《S7-200系统手册》,在这里只是列出了一些需要注意,或者用户感兴趣的要点。
EM277插座(9针母头) | 引脚号 | PROFIBUS名称 | 引脚定义 |
---|---|---|---|
1 | 屏蔽 | 机壳接地,连接插头外壳/屏蔽 | |
2 | 24V返回 | 24V返回,与模块端子M相通 | |
3 | RS-485信号 B | 隔离的RS-485信号 B 或 TxD/RxD + | |
4 | 发送请求 | 隔离的RTS(发送请求,TTL电平) | |
5 | 5V返回 | 隔离的5V返回 | |
6 | +5V | 隔离的+5V电源(最大电流90mA) | |
7 | +24V | +24V电源,来自模块端子L+(最大电流120mA,带反向保护二极管) | |
8 | RS-485信号 A | 隔离的RS-485信号 A 或 TxD/RxD - | |
9 | 不用 | 不用 | |
金属壳 | 屏蔽 | 机壳接地(与引脚1相通)/可与电缆屏蔽层连通 |
表1.4.1. EM277 通讯口
使用PROFIBUS网络插头时,连接器外壳与PROFIBUS电缆的屏蔽层相通。EM277 插头上的24V电源从模块端子L+/M来。
EM277 通信口具有优异的通信能力,其主要原因是它的RS-485信号是隔离的。在情况复杂通信受到影响时,可以使用EM277 连接操作面板(其他品牌的HMI须咨询其生产商)。
智能模块 | 电流需求 | |
---|---|---|
+5VDC | +24VDC | |
EM277 | 150 mA | - |
30 mA;通信端口激活时 | ||
60 mA;通信端口加90mA/5V负载时 | ||
180 mA;通信端口加120mA/24V负载时 |
表1.4.2. EM277 电流需求
注意:
EM277 模块本身不需要24VDC电源,这个电源是专供通信端口用的。24VDC电源需求取决于通信端口上的负载大小。
CPU上的通信口,可以连接PC/PPI电缆和TD 200并为它们供电,此电源消耗已经不必再纳入计算。
1. EM277 支持的通讯速率与距离
电缆长度 | 所支持的通信速率 |
---|---|
1200m> | 93.75k |
1000m | 187.5k |
400m | 500k |
200m | 1M到1.5M |
100m | 3M到12M |
表1.5.1. EM277 支持的通讯速率与距离
2.特殊模块最大连接个数
CPU型号 | 特殊模块最大连接个数 | |||||
---|---|---|---|---|---|---|
EM241 | EM253 | EM277 | CP243-1 | CP243-2 | SIWAREX MS | |
CPU221 | - | - | - | - | - | - |
CPU222 | 2 | 1 | 2 | 1 | 1 | 2 |
CPU224/224 XP | 7 | 3 | 4 | 1 | 2 | 4 |
CPU226 | 7 | 5 | 6 | 1 | 2 | 7 |
表1.5.2. 智能扩展模块连接个数
模块的连接个数受电源预算的限制。
3.S7-200连接HMI个数
MPI | HMI连接数 (CPU Port0) | 最大通信波特率 (CPU Port0) | HMI连接数 (CPU Port1) | 最大通信波特率 (CPU Port1) | HMI连接数 (EM277通信口) | HMI 连接数 (通过 CP243-1) |
---|---|---|---|---|---|---|
CPU221 | 3 | 187.5 Kbaud | - | - | - | - |
CPU222 | 3 | 187.5 Kbaud | - | - | - | 1 |
CPU224 | 3 | 187.5 Kbaud | - | - | - | 1 |
CPU224 XP | 3 | 187.5 Kbaud | 3 | 187.5 Kbaud | - | 1 |
CPU226 | 3 | 187.5 Kbaud | 3 | 187.5 Kbaud | - | 1 |
EM277 | - | - | - | - | 5 / max. 12 Mbaud | - |
表1.5.3. 一个S7-200能够连接的HMI数目(MPI协议)
根据表1.5.3.,可以查出一个S7-200 CPU224可以连接3个Smart700IE,一个CPU226可以连接6个(因为两个通信口分属两个网络),如果CPU224加挂了一个EM277,它一共可以连接3+5=8个。
除 DP 主站外, EM277 最多还有6个连接,一个连接是为编程器 (PG) 而保留的,一个连接是为操作员面板 (OP) 而保留的。其它 4 个连接可被任何一个 MPI 主站使用。
为了使 EM277 PROFIBUS--DP 模块与多个主站进行通信,所有主站都必须在相同的波特率下运行。图1.5.1出了一个可能的网络组态。
图1.5.1. PROFIBUS-DP/MPI网络
常问问题
怎样设置EM277的通讯速率?
EM277 是智能模块,其通信速率为自适应。
CPU是否计算在扩展模块内?
顾名思义,扩展模块指在CPU本体上加挂的模块,而不包括CPU。
是否可以通过EM277 模块控制变频器?
不可以。EM277是PROFIBUS-DP从站模块,不能做主站;而变频器需要接受主站的控制。
智能模块连接到CPU上是否有特殊位置的要求?
所有的S7-200 CPU从22版之后,任何模块都没有特殊的位置要求。
EM277 等模块是否算在CPU能够附加的扩展模块数目内?
所有的智能模块都占用CPU连接的模块数,与普通模块一起计算个数。
如果 CPU 和扩展模块占用的安装长度超过了设备允许的范围,是否可以在导轨间分开安装?
可以。西门子提供一条长度为 0.8 m 的扩展模块总线延长电缆,订货号为 6ES7 290--6AA20--0XA0。一套 S7-200 系统中只能允许加一条总线延长电缆。
CPU上的通信口已经被占用(如自由口通信等),或者CPU的连接数已经用尽,如何连接HMI?
可以在CPU上附加EM277 模块,EM277上的通信口可以连接西门子的HMI。其他品牌的HMI是否能够连接要问其生产厂家。
EM277 能否通过NETR 和 NETW 实现与其他S7-200PLC的通讯,或者实现自由口、Modbus RTU通讯?
不可以,EM277 PROFIBUS--DP 模块是一种从站模块,不能用来通过 NETR 和 NETW 进行不同的S7--200 PLC 之间的通讯。 EM 277 PROFIBUS--DP 模块不能用于自由端口、Modbus RTU的通信,尽管 S7--200 本机上的通信端口都具有这种通讯功能。两个EM277 之间也不能通讯,因为都只能作为DP从站。
S7-200 CPU内部有特殊寄存器SM,用户可以借以查看或是更改CPU的系统参数。其中有一些SM区域用来表示CPU硬件状态,包括CPU订货号、序列号、硬件版本、CPU故障信息,以及EM扩展模块的订货号、序列号、硬件版本、故障信息等。
根据《S7-200 系统手册》章节D“特殊存储器(SM)和系统符号名称”中关于特殊寄存器的描述,可以得到相应故障的解释和说明。表1.6.1.列出了EM277 模块的特殊寄存器诊断地址。
诊断 | 特殊寄存器地址 | 信息 |
---|---|---|
I/O状态 | SMB5 | I/O错误 |
CPU ID寄存器 | SMB6 | CPU类型 |
I/O模块标识和错误寄存器 | SMB8~SMB21 | 偶数字节:模块标识寄存器;奇数字节:模块错误寄存器 |
扩展I/O总线错误 | SMW98 | 当扩展总线出现校验错误时,该处每次增加1,当系统得电时或用户程序入零,可进行清零 |
智能模块状态 | SMB200-SMB549 | 模块名称、S/W修订号、错误代码、与特定模块类型相关 |
表 1.6.1.特殊寄存器诊断地址
诊断方法介绍
EM277 | ||||
---|---|---|---|---|
指示灯 | SM 读取状态 | 说明 | ||
DP ERROR常亮 | 模块名 | SMB250~SMB265 | EM277 PROFIBUSDP | |
S/W版本号 | SMB266~SMB269 | 01.02 | ||
错误代码 | SMW270 | 无错误:16#0000 无用户电源:16#0001; | ||
DP从站地址 | SMB272 | 5 | ||
DP标准协议状态字节 | SMB274 | |||
主站站地址 | SMB275 | 2(0~126) | ||
从VB0开始的偏移量 | SMB276 | 0 | ||
输出数据字节数 | SMB278 | 2 | ||
输入数据字节数 | SMB279 | 2 |
表 1.6.2.EM277 特殊寄存器诊断地址
以上信息均可在《S7-200 可编程控制器 系统手册》找到
2EM277 通讯举例
1.PC/PPI电缆连接EM277 通信口编程
目前西门子提供两种PC/PPI编程电缆,长度都是5米,它们是:
RS-232/PPI电缆(订货号6ES7 901-3CB30-0XA0):智能多主站电缆,连接S7-200 CPU/EM277 通信口和计算机RS-232串口,作为编程或数据通信电缆
USB/PPI电缆(订货号6ES7 901-3DB30-0XA0):智能多主站电缆,用于连接计算机的USB通信口与S7-200 CPU/EM277 通信口做编程或数据通信电缆
使用Micor/WIN V3.2 SP4 以上版本和新版编程电缆,无任何特殊设置。只是因为EM277 对速率有个自适应的过程,可能需要尝试几次。
S7-200 CPU有其专用的低成本编程电缆,光电隔离的,不会烧CPU 或PC机的通信口。如果使用不隔离的自制或假冒的PC/PPI电缆,容易损坏通信口,这些电缆还不支持S7-200 CPU通信端口的最高通信速率(187.5K),而且不能支持S7-200的多主站编程模式,慎用!
2. PC-Adapter电缆连接EM277 通信口编程
老版本PC Adapter USB (订货号:6ES7 972-0CB20-0XA0),连接时将PG /PC 接口改为PC Adapter PPI /MPI/PROFIBUS(Auto除外) 均可(如果有“ PG/PC 为总线上的唯一主站”,请确认勾选;站地址不与网络上其他站地址重复;其他属性默认),接口设置步骤可参考下面PC Adapter USB A2的,这里就不赘述。
如果电脑上同时还安装了STEP 7 软件,且软件版本在STEP 7 V5.5 及其以上,那么就不需要手动安装电缆驱动。
用于S7-300/400编程的PC串口电缆(PC-Adapter),不能用于S7-200编程通信。
PC Adapter USB A2 (订货号:6GK 1571-0BA00-0AA0), 是 PC Adapter USB 的升级替代产品。它也可以与S7-200进行编程通信,完成正常的上载、下载及在线监控操作。
注意: 如果电脑上同时还安装了STEP 7 软件,且软件版本在STEP 7 V5.5 SP3 (包含SP3)及其以上,那么就不需要安装电缆驱动,直接按照下面的操作步骤进行通信即可。
驱动下载链接
PC Adapter USB A2 连接EM277 通讯口编程操作步骤
将PG /PC 接口选为PC Adapter USB A2 .MPI.1/PROFIBUS.1(Auto除外)均可,这里只举例PROFIBUS
第一步,驱动成功安装后,需要插上电缆,一端连接电脑,另一端与PLC 相连,并且给PLC 供电。
打开"设置PG /PC 接口":
图2.1.1. 设置 PG/ PC 接口界面
1. 选择“ PC Adapter USB A2 PROFIBUS.1"
2. 点击” 属性" 设置 PC Adapter USB A2 PROFIBUS.1 的属性
第二步,进入设置属性界面:
图2.1.2. 属性设置界面
1. 勾选“ PG/PC 为总线上的唯一主站”
2. EM277波特率自适应,根据整个网络的波特率设置 (如果是CPU自带端口波特率必须设置正确,即与 CPU 通信口的波特率保持一致)
3. EM277不用设置(如果是CPU自带通讯端口需按照步骤3设置)
第三步,选择完成后,点击“OK”退出设置界面,然后回到“通信”界面。
图2.1.3. 通信界面
点击“双击刷新”,搜索到S7-200的站地址及类型等信息。
3. CP卡连接EM277 通信口编程
可用于S7-200编程的CP卡包括CP5611(用于PCI总线的PC机)/CP5612(用于PCI-e总线的PC机),CP5511/CP5512/CP5711(用于笔记本电脑)。以下统称为CP卡。
使用CP卡进行编程通信,应使用MPI电缆,或者PROFIBUS电缆连接CPU上的编程口,或者带编程口的网络连接器上的扩展编程口,或者EM277模块上的通信口。
CP5613/CP5623不能连接S7-200 CPU通信口编程;所有的CP卡不支持S7-200的自由口编程调试;CP卡与S7-200通信时,不能选择“CP卡(auto)”。
CP5611连接EM277通讯编程举例
通讯接口为CP5611 MPI也可以通讯,这里只介绍Profibus
第一步,在STEP7-Micro/Win 编程软件的Set PG/PC Interface中选择CP5611(PROFIBUS)并点击Properties,
图2.1.4.选择接口
第二步,点击“Properties”核对网络参数如图2.4.5,点击“OK”返回图2.1.5,
图2.1.5.属性选择
第三步,双击“刷新”搜索200CPU节点地址,选中该节点,地址栏中的远程地址更改为EM277 地址“4”如图2.1.6,点击“OK”退出,通讯配置完成 。
图2.1.6.扫描S7-200站地址
注意:
选择“CP卡(PPI)”时,必须在属性中选中“Advanced PPI"(如果CP卡通过CPU的PPI通讯口下载程序,在通信卡的属性中选中“Advanced PPI”,则不能与网络上的 PPI 主站通信)
CP卡连接到EM277 模块时,可以使用MPI电缆或者PROFIBUS电缆
注意检查EM277 地址设置开关是否到位,如果重新设置了地址开关,必须重新上电一次
一定要注意通信硬件是否符合标准,特别是连接EM277 做高速通信时
选择“CP卡(PROFIBUS)”和“CP卡(MPI)”方式时,必须在通信卡的属性中选中“PG/PC is the only master on the bus”
CP 卡编程通信时的常见错误信息
通信方式 | 设置 | 出错信息 |
---|---|---|
CP 卡(PPI) | 波特率等设置不对, 或连接硬件有问题 | 通信超时…… |
CP 卡(PROFIBUS) CP 卡(MPI) | 波特率等设置不对, 或连接硬件有问题, 但选择了“PG/PC is the only master on the bus” | |
CP 卡(PROFIBUS) CP 卡(MPI) | 未选择“PG/PC is the only master on the bus” | 错误:端口无法打开或正在由另一个应用程序使用 |
表2.1.1. CP卡编程通信时的常见错误
EM277 作为一个特殊的PROFIBUS-DP从站模块,其相关参数(包括上述的数据一致性)是以GSD(或GSE)文件的形式保存的。在主站中配置EM277,需要安装相关的GSD文件。
S7-200与S7-300之间通讯参考西门子官网的《S7-200与S7-300之间的通信》。 包含MPI/PROFIBUS DP/以太网的通讯介绍以及视频链接。
S7-300与S7-200通过EM277 进行PROFIBUS DP通讯,需要在STEP7中进行S7-300站组态,在S7-200系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放在V 存储区,并且S7-300组态EM277 从站时设置正确的地址即可。
EM277 的地址,在模块本身上的拨码设置分为X0(地址个位)和X10(地址十位);EM277 是波特率自适应的,取决于S7-300的组态,详细配置请看下面配置步骤:
第一,在STEP 7项目里插入一个S7-300的站:
图2.2.1. S7-300组态
第二,选中STEP7的硬件组态窗口中的菜单 Option-install new GSD(EM 277 GSD 下载) ,导入SIEM089D.GSD文件,安装EM277 从站配置文件,如图2.2.2:
图2.2.2. 安装GSD
第三,点击Browae,添加GSD文件路径:
图2.2.3.添加GSD路径
第四,导入GSD文件后,在右侧的设备选择列表中找到EM277 从站,PROFIBUS DP-Additional Field Device-PLC-SIMATIC-EM277,并且根据通讯字节数,选择一种配置(只能添加一组),本例选择8字节入/8字节出的方式,如图2.2.4:
图2.2.4. 通信区域组态
第五,确定S7-300硬件组态中所设置EM277 的地址,如下图红框标注,为DP从站EM277 的站地址。
图2.2.5. 组态DP通信地址
第六,组态完系统的硬件配置后,将编译下载到S7-300的PLC当中。
第七,在S7-200侧断电的情况下,将EM277 的拨位开关拨到与S7-300侧硬件组态的设定值一致。
在S7-200中编写程序将进行交换的数据存放在VB0-VB7,VB8-VB15,分别对应S7-300的PQB0-PQB7和PIB0-PIB7,打开 STEP7中的变量表和STEP7 MicroWin的状态表进行监控,它们的数据交换结果如图2.2.6/图2.2.7所示:
图2.2.6. 通信数据监控
图2.2.7. 通信数据监控
注意:VB0-VB7是S7-300写到S7-200的数据,VB8-VB15是S7-300从S7-200读取的值。EM277上拨位开关的位置一定要和S7-300中组态的地址值一致。如果使用的S7-200通信区域不从VB0开始,则需要设置地址偏移,在S7-300硬件组态中双击 EM277,修改数值0为实际使用的数值即可,如下图所示:
图2.2.8. 地址区域偏移设置
首先,在TIA STEP 7项目里插入一个S7-300的站,并添加DP主站:
图2.3.1 添加S7-300站点
打开TIA网络视图,选中菜单-选项-安装设备描述文件 GSD(EM 277 GSD 下载) ,导入SIEM089D.GSD文件,安装EM277 从站配置文件,见图2.3.2:
图2.3.2 安装GSD
弹出图2.3.3界面,选择EM277 GSD文件存放路径,并安装GSD文件,如图2.3.3:
图2.3.3 安装GSD
导入GSD文件后,如图2.3.4所示步骤操作:
1.在右侧的硬件目录列表中找到EM277 从站,添加至网络视图
2.为EM277 分配主站系统
3.为EM277分配PROFIBUS DP 站地址
图2.3.4 添加EM277站点
选中EM277,切换为设备视图,
1.在右侧的硬件目录列表中根据通讯字节数,选择一种配置(只能添加一组),本例选择8字节入/8字节出的方式
2.添加至EM277空槽内
3.设置S7-200V区偏移量地址(如果使用的S7-200通信区域不从VB0开始,则需要设置地址偏移,修改数值0为实际使用的数值即可)
此例中:VB0-VB7是S7-300写到S7-200的数据,VB8-VB15是S7-300从S7-200读取的值。
图2.3.5 通讯区域组态
组态完,编译程序下载到S7-300的PLC当中。
在S7-200侧断电的情况下,将EM277 的拨位开关拨到与S7-300侧硬件组态的设定值一致。
在S7-200中编写程序将进行交换的数据存放在VB0-VB7,VB8-VB15,分别S7-300的QB0-QB7和IB0-IB7,打开 TIA中的监控表和STEP7 MicroWin的状态表进行监控。
后续步骤与在STEP7中使用一致,这里就不赘述。
常问问题
主站中与从站的通信数据区是如何一一对应的?
假设DP主站已定义了16入/16出的一种I/O配置,V区偏移量为2000,则其对应关系如下:
图2.3.6. 通过EM277 在S7-200 CPU本地的输入/输出缓冲区分配
在主站上容易分辨输入/输入缓冲区,而通过EM277在S7-200 CPU的V存储区的映射,是本地的输入缓冲区(也就是主站的输出缓冲区)在前(地址低),输出缓冲区(主站的输入缓冲区)在后面(地址高)。
什么是数据一致性?
在主站中完成的与EM277通信的I/O配置共有三种数据一致性类型,即字节、字、缓冲区。所谓数据的一致性,就是在PROFIBUS-DP传输数据时,数据的各个部分不会割裂开来传输,是保证同时更新的。即
字节一致性保证字节作为整个单元传送
字一致性保证组成字的两个字节总是一起传送
缓冲区一致性保证数据的整个缓冲区作为一个独立单元一起传送。如果数据值是双字或浮点数以及当一组值都与一种计算或项目有关时,也需要采用缓冲区一致性
DP通信所需要传输的数据超过64字节怎么办?
方法1,如图2.3.5所示,软件里固定的通讯长度最大64bytes out/64 bytes in, 可以选择图中的“通用模块”根据实际需求自由设置输入/输出区域,而EM277 最大的通讯字节数是64 word out/64 word in。
方法2:分时通讯。以64字节通信区为例,若超过最大配置。那么可以将通信区的第一个字节作为标志位,这样需要在S7-200中分时或条件判断,将数据放置或读取通信区域。同理,在S7-300中也需要判断标志位。
方法3:满足扩展要求的前提下,同一个200PLC可以扩展多个EM277,具体可以参考本文中最大I/O扩展能力的要求,那么在同一个S7-300的项目里可以组态多个PROFIBUS从站。
方法2可以增大通信的数据量,但由于通过标志位来分时分次传输的,所以通信数据的刷新会比方法3慢;方法3通过扩展DP从站或者200PLC的通信端口来实现数据扩展的,但增加了成本,且需要考虑是否满足扩展要求。
S7-300或S7-400的PROFIBUS_DP主站最多可以有多少个EM277 从站?
S7-300或S7-400的DP口或DP模板的能力有关,要根据它所支持的DP从站数而定。一个网络上最多可以有99个EM277。
实验环境
操作系统 | Windows XP Professional SP2 |
软件 | SIMATIC NET PC Software V6.4 |
STEP7 Professional 2006 SR5 (V5.4+SP4) | |
STEP7-Micro/win V4.0Incl.SP6 | |
硬件 | 订货号 |
CP5611 | 6GK1561-1AA01 |
CPU224XP | 6ES7214-2AD23-0XB0 |
EM277 | 6ES7277-0AA22-0AA0 |
Profibus 电缆 | 6XV1830-0EH10 |
DP连接器 | 6ES7972-0BB50-0XA0 |
配置步骤
具体步骤,请看下文:
打开Station Configration Editor,分别在第一插槽插入OPC Server,第三槽插入 CP5611卡,如图2.4.1
图2.4.1.为PC Station添加组件设置Station Name
配置PC Station组件CP5611 PROFIBUS参数,如图2.4.2
图2.4.2.设置CP5611站地址和传输速率
更改Station Name,本例中取名为S7con,如图2.4.3。
新建一个项目,通过 Insert >Station >Simatic PC Station 插入一个PC 站,注意站名要更改成Station Configuration Editor 中所命名的Station Name ,即命名为“S7con”,如图2.4.3
图2.4.3.创建新项目
打开硬件组态窗口,组态与所安装的SIMATIC NET 软件版本相一致的硬件,插槽结构与在Station Configuration Editor组态的PC 站一致,编译并保存,如图2.4.4
图2.4.4.在HW Config中组态PC Station
打开NetPro,在OPC Server的连接表的第一行右键选择“Insert New Connection”或Insert >New Connection插入个新的连接,如图2.4.5
图2.4.5.组态S7连接
为OPC Server定义新连接,连接伙伴选择“Unspecified”,连接类型选择“S7 connection”,如图2.4.6
图2.4.6.插入新连接
点击“Apply”编辑连接属性,“Partner”地址填写通讯方EM277 的地址,如图2.4.7
图2.4.7.设置站地址
生成的连接名称可更改,地址详情如图2.4.8
图2.4.8.设置TSAP
注意Partner侧TSAP号03.00不能更改,但EM277可在任意槽位
点击“OK”退出至NetPro窗口,生成连接 S7 connection_1,点击“Save and Compile”编译并保存,如图2.4.9
图2.4.9.查看新插入的S7连接
打开控制面板,打开“Set PG/PC Interface”窗口,选择“PC internal(local)”,如图2.4.10
图2.1.10.设置下载通信接口
保存编译无误后,如图2.4.11所示的图标会有黄色箭头标识,将正确组态信息下载到PC Station中,如图2.4.12
图2.4.11.出现黄色箭头
图2.4.12.下载进度条
下载完毕后,查看Station Configuration Editor的正确状态,如图2.4.13,可以看到图1中紫色标识中的红色“X”已去除
图2.4.13.下载完成后PC Station状态
打开STEP7-Micro/win软件,生成S7-200项目,双击“通讯”功能图标,配置Micro/win与S7-200CPU的连接 ,如图2.4.14
图2.4.14.设置与S7-200的通信接口
点击“设置PG/PC接口”设定通讯参数,如图2.4.15选择“CP5611(PROFIBUS)”方式,通过EM277访问200CPU, 该接口参数分配方式不影响OPC Server与S7-200的通讯功能
图2.4.15.选择接口
点击“Properties”核对网络参数如图2.4.16,点击“OK”返回图2.4.15
图2.4.16.属性选择
双击“刷新”搜索200CPU节点地址,选中该节点,地址栏中的远程地址更改为EM277 地址“4”如图12.4.7,点击“OK”退出,通讯配置完成
图2.4.17.扫描S7-200站地址
打开Start >Simatic > Simatic Net >OPC Scout,点击“OPC.Simatic.NET”,添加一个组,为此组取名为cpu224,如图2.4.18、图2.4.19
图2.4.18.选择OPC服务器
图2.4.19.添加Goup
双击生成的连接组“cpu224”打开OPC-Navigator,选择“S7”协议,自动显示已组态的S7 connection_1,点击“objects”显示所有通讯数据区,以I/M/Q/DB为例创建通讯数据,如下图2.4.20,图2.4.21,图2.4.22点击“→”将条目移送到右侧窗口,点击“OK”,如通讯正常,则在图2.2.24 中“Quality”一栏中显示为“good”
图2.4.20.定义I区变量
图2.4.21.定义Q区变量
图2.4.22.定义V区变量
注意:DB数据即为200CPU的数据区V区,通讯所能配置的数据区域为:I、M、Q、DB
在200CPU侧对V变量赋值如图2.4.23,VB200和VB0
图2.4.23.状态监视
在OPC Scout中对应DB变量接收无误,如图2.4.24,DB1.DBB200和DB1.DBB0
图2.4.24.OPC Scout监视
在OPC Scout中对Q变量赋值,如图2.4.25,QB3
图2.4.25.OPC Scout中修改QB3
200CPU中对应Q变量接收无误,如图2.4.26,QB3
图2.4.26. S7-200监视QB3
总结:
例程中的注意事项可参考每一步骤中的红色字体部分。通讯格式为OPCServer与S7-300/400,所以在设置通讯数据长度时虽然没有字节数目的限定,但要注意不要超过200CPU所允许的范围,如M变量为MB0~MB31,不能建立通讯数据MD30。本例是以一个200CPU与CP5611建一个连接为例,仅为说明其通讯功能的可行性,不能作为配置方案,如果OPC Server建多于8个与EM277 的连接,则需要考虑到CP5611的连接资源问题,可以考虑CP5613。
硬件对能否正常通信有决定性的影响,如果硬件条件不能满足,采取其他措施往往不能从根本上改善通信中的问题。
记住联网的格言:你糊弄它,它就糊弄你!
应当注意:
使用符合要求的硬件(电缆、插头),并按规范制作
S7-200系统中用到的电缆、插头等都有特定的要求,强烈建议使用西门子的电缆和附件。
保持通信端口(驱动电路)之间的共模电压差在一定范围内 对于非隔离的通信口(如CPU上的通信口),保证它们之间等电位非常重要。在S7-200 CPU联网时,可以将所有CPU模块的传感器电源输出的L+/M中的M端子,用导线串接起来。在S7-200 CPU与变频器通信时,要将所有变频器通信端口的M(在西门子MM4x0系列是二号端子)连接起来,并与CPU上的传感器电源M连接。
电磁干扰 电磁环境的好坏及采取的应对措施,对于通信的可靠性非常重要。例如,通信电缆不应与动力电缆平行放置,距离过近;变频器输出动力电缆,如果没有选用屏蔽电缆,对通信的干扰就非常大;220V供电的CPU,如果电源与变频器输入侧电源共用,高频干扰的影响也非常大……
屏蔽(PE)端的连接。注意所有CPU或者EM277模块上PE(保护接地)端子必须连接到大地、或者柜壳上。否则电缆的屏蔽层等于没有用。
西门子有一本《西门子自动化与驱动产品符合电磁兼容规则的安装规范手册》,很有价值,如果需要可致电西门子技术支持热线索取其电子版本,或者直接到以下网址下载:
http://www.ad.siemens.com.cn/service/e-training/micro
3Profibus DP 网络连接介绍
在S7-200系统中,无论是组成PPI、MPI还是RPOFIBUS-DP网络,用到的主要部件都是一样的:
PROFIBUS电缆:电缆型号有多种,其中最基本的是PROFIBUS FC(Fast Connect快速连接)Standard电缆(订货号6XV1 830-0EH10)
PROFIBUS网络连接器:网络连接器也有多种形式,如出线角度不同等等
A. 电缆和剥线器。使用FC技术不用剥出裸露的铜线。
图3.1.1. 剥好一端的PROFIBUS电缆与快速剥线器(FCS,订货号6GK1905-6AA00)。
B. 打开PROFIBUS网络连接器。首先打开电缆张力释放压块,然后掀开芯线锁。
图3.1.2. 打开的PROFIBUS连接器
C. 去除PROFIBUS电缆芯线外的保护层,将芯线按照相应的颜色标记插入芯线锁,再把锁块用力压下,使内部导体接触。应注意使电缆剥出的屏蔽层与屏蔽连接压片接触。
图3.1.3. 插入电缆
由于通信频率比较高,因此通信电缆采用双端接地。电缆两头都要连接屏蔽层。
D. 复位电缆压块,拧紧螺丝,消除外部拉力对内部连接的影响。
网络连接器主要分为两种类型:带和不带编程口的。不带编程口的插头用于一般联网,带编程口的插头可以在联网的同时仍然提供一个编程连接端口,用于编程或者连接HMI等。
图3.2.1. 左侧为不带编程口的网络连接器(订货号:6ES7 972-0BA52-0XA0) 右侧的是带编程口的网络连接器(订货号:6ES7 972-0BB52-0XA0)。
通过PROFIBUS电缆连接网络插头,构成总线型网络结构。
图3.3.1. 总线型网络连接
在上图中,网络连接器A、B、C分别插到三个通信站点的通信口上;电缆a把插头A和B连接起来,电缆b连接插头B和C。线型结构可以照此扩展。
注意圆圈内的“终端电阻”开关设置。网络终端的插头,其终端电阻开关必须放在“ON”的位置;中间站点的插头其终端电阻开关应放在“OFF”位置。
一个正规的RS-485网络使用终端电阻和偏置电阻。在网络连接线非常短、临时或实验室测试时也可以不使用终端和偏置电阻。
终端电阻:在线型网络两端(相距最远的两个通信端口上),并联在一对通信线上的电阻。根据传输线理论,终端电阻可以吸收网络上的反射波,有效地增强信号强度。两个终端电阻并联后的值应当基本等于传输线在通信频率上的特性阻抗
偏置电阻:偏置电阻用于在电气情况复杂时确保A、B信号的相对关系,保证“0”、“1”信号的可靠性
西门子的PROFIBUS网络连接器已经内置了终端和偏置电阻,通过一个开关方便地接通或断开。终端和偏置电阻的值完全符合西门子通信端口和PROFIBUS电缆的要求。
合上网络中网络插头的终端电阻开关,可以非常方便地切断插头后面的部分网络的信号传输。
与其他设备通信时(采用PROFIBUS电缆),对方的通信端口可能不是D-SUB9针型的,或者引脚定义完全不同。如西门子的MM4x0变频器,RS-485通信口采用端子接线形式,这种情况下需要另外连接终端电阻,西门子可以提供一个比较规整的外接电阻。对于其他设备,可以参照《S7-200系统手册》上的技术数据制作。
西门子网络插头中的终端电阻、偏置电阻的大小与西门子PROFIBUS电缆的特性阻抗相匹配,强烈建议用户配套使用西门子的PROFIBUS电缆和网络插头。可以避免许多麻烦。
S7-200的通信距离可能是方案设计中的一个重要因素,下面就S7-200的远距离通信能力作一简介:
1.RS-485网络通信
CPU上的通信端口:最高速率为187.5K波特,保证的通信距离为50m
EM277 上的通信口:波特率为187.5K时可以做到1000m通信距离,其他波特率下通讯距离参考以下链接
EM277模块通讯距离
西门子的RS485中继器具有信号放大和再生功能,在一条PROFIBUS总线上最多可以安装9个西门子中继器,但通信距离不能超过9600m。其他厂商的产品要看其产品规范以确定安装个数。中继器作用如下:
延长网络距离:EM277通讯口隔离,如果主站通讯口也隔离,则增加一个中继器可以扩展1000米(波特率187.5K),如果两台中继器连接在一起,中间无其他节点,则可将网络延长1000m(波特率187.5K)。
电气隔离不同网段:隔离网络可以使参考点电位不同的网段相互隔离,从而确保通信传输质量。
增加网络设备:在一个RS485网段中,最多可以连接32个通信节点。使用中继器可以向网络中扩展一个网段,可以再连接32个通信节点,但是中继器本身也占用一个通信节点位置,所以扩展的网段只能再连接31个通信节点。
下表是西门子的中继器,订货号仅供参考,具体选型以西门子官网信息为准。
订货号 | |
---|---|
RS485中继器 | 6ES7972-0AA02-0XA0 |
诊断中继器 | 6ES7972-0AB01-0XA0 |
表3.5.1. 中继器订货号
下图为RS485中继器结构简单介绍:
RS485中继器上下分为两个网段,其中A1/B1和A1'/B1'是网段1的一个PROFIBUS接口,A2/B2和A2'/B2'是网段2的一个PROFIBUS接口,PG/PC属于网段1,信号放大是在网段1和网段2之间实现,同一网段内信号不能放大,两个网段之间物理隔离。
图3.5.1. 中继器
总线段1、PG接口与总线段2电气隔离
在总线段1、PG接口与总线段2之间具有信号中继功能
终端电阻的设置需要考虑是否连接A1'/B1'和A2'/B2'
有关RS485中继器的使用详情,请查看《SIMATIC RS485中继器》
常问问题
西门子的RS485中继器能否用于Modbus RTU通讯?
自由口通信、Modbus RTU通信和USS通信均不可以使用西门子的中继器(包括下面介绍的OLM也不能用于这些通信)。考虑第三方中继器。
2.光纤通信
对于长距离传输,电气网络往往不能满足要求,而光纤通信可以满足长距离数据传输并且保持高的传输速率,在强电磁干扰的环境中,由于其良好的传输特性,还可以屏蔽干扰信号对整个网络的影响。
S7-200产品不直接支持光纤通信,但西门子有全线产品满足用户的光纤通信需求,应用最多最常见的光纤网络是利用OLM(Optical Link Module)模块将电信号转换为光信号,然后再组成光纤网络。
光纤根据材质的不同,分为塑料光纤、PCF光纤以及玻璃光纤等,塑料光纤和PCF光纤由于工艺要求较低,通讯距离短;玻璃光纤由分为多模与单模光纤,通讯距离长,但是对工艺要求高,通讯质量有保证,目前常用的是玻璃光纤。
针对光纤材质的不同,OLM也有多种型号,见表3.5.2(订货号仅供参考,具体选型以西门子官网信息为准):
使用光纤类型 | 型号 | RS485接口(个) | 光纤接口(个) | 订货号 |
---|---|---|---|---|
塑料光纤 | OLM P11 | 1 | 1 | 6GK1 503-2CA01 |
OLM P12 | 1 | 2 | 6GK1 503-3CA01 | |
OLM P22 | 2 | 2 | 6GK1503-4CA01 | |
多模玻璃光纤 | OLM G11 | 1 | 1 | 6GK1 503-2CB00 |
OLM G12 | 1 | 2 | 6GK1 503-3CB00 | |
OLM G22 | 2 | 2 | 6GK1503-4CB00 | |
单模玻璃光纤 | OLM G11-1300 | 1 | 1 | 6GK1 503-2CC00 |
OLM G12 -1300 | 1 | 2 | 6GK1 503-3CC00 | |
OLM G12 EEC | 1 | 2 | 6GK1 503-3CD00 |
表3.5.2. 常用OLM型号表
图3.5.2. OLM应用
有关OLM的使用详情,请查看OLM操作手册(EN)、西门子OLM设备使用说明(中文)