Upload
natara
View
88
Download
3
Embed Size (px)
DESCRIPTION
第九章 ProfiBus 通讯技术. *. 常州信息职业技术学院 自动化教研室制作. 第九章 ProfiBus 通讯技术. *. 9.1 ProfiBus 通讯简介 9.2 S7-300PLC 的 ProfiBus 通讯方法 9.3 多个 S7-300 之间的 ProfiBUS 通信实现. ProfiBus 通讯技术. *. --通讯简介. ProfiBus 通讯简介. - PowerPoint PPT Presentation
Citation preview
9.1 ProfiBus9.1 ProfiBus通讯简介通讯简介
9.2 S7-300PLC9.2 S7-300PLC的的ProfiBusProfiBus通讯方法通讯方法
9.3 9.3 多个多个S7-300S7-300之间的之间的ProfiBUSProfiBUS通信实现通信实现
作为众多现场总线家族的成员之一, ProfiBus 是在欧洲工业界得到最广泛应用的一个现场总线标准,也是目前国际上通用的现场总线标准之一。 ProfiBus 是属于单元级、现场级的 SIMITAC网络,适用于传输中、小量的数据。其开放性可以允许众多的厂商开发各自的符合 ProfiBus 协议的产品,这些产品可以连接在同一个 ProfiBus 网络上。 ProfiBus 是一种电气网络,物理传输介质可以是屏蔽双绞线、光纤、无线传输。
ProfiBus 主要有三部分组成,包括:
1 .由现场总线报文—— ProfiBus-FMS
2 .分布式外围设备—— ProfiBus-DP
3 .过程控制自动化—— ProfiBus-PA
其它技术特点:
1 .信号线可用设备电源线。2 .每条总线区段可连接 32 个设备,不同区段用中继器连接。3 .传输速率可在 9.6kB/S ~ 12MB/S 间选择。4 .传输介质可以用金属双绞线或光纤。5 .提供通用的功能模块管理规范。6 .在一定范围内可实现相互操作。7 .提供系统通信管理软件 ( 包括波形识别、速率识别和协议识别等功能 ) 。8 .提供 244 字节报文格式,提供通信接口的故障安全模式( 当 IO 故障时输出全为零 ) 。
9.2.19.2.1 利用 利用I/OI/O口实现小于口实现小于44个字节直接个字节直接ProfiBusProfiBus通信 通信
9.2.29.2.2 系统功能 系统功能SFC14SFC14、、SFC15SFC15的的ProfiBusProfiBus通信应用 通信应用
9.2.39.2.3 通过 通过CP342-5CP342-5实现实现ProfiBusProfiBus通讯通讯
直接利用 I/O 口实现小于 4 个字节直接 ProfiBus 的通讯方法包含两个方面的内容:⑴、用装载指令访问实际 I/O 口——比如主站与 ET200M 扩展 I/O 口之间的通讯;⑵、用装载指令访问虚拟 I/O 口——比如主站与智能从站的 I/O 口之间的通讯,下面分别予以介绍。
一、 CPU集成DP口与ET200M之间远程的通信
二、 通过CPU集成DP口连接智能从站
利用利用 I/OI/O 口实现小于口实现小于 44 个字节直接个字节直接 ProfiBusProfiBus 通信通信
ET200 系列是远程 I / 0 站,为减少信号电缆的敷设,可以在设备附近根据不同的要求放置不同类型的 I / 0 站,如 ET200M 、 ET200B 、 ET200X、 ET200S 等, ET200M 适合在远程站点 I / 0点数量较多的情况下使用,我们将以 ET200M 为例介绍远程 I / O 的配置。主站为集成 DP 接口的 CPU ,下面进行详细介绍。
CPU 集成 DP 口与 ET200M 之间远程的通信
1 、硬件连接
图 9-1 集成 DP 口 CPU 与 ET200M硬件连接
输入
输出/
模块 模块模块
或输出
输入 输入
输出或
Profi Bus总线连接
电源 315-2DP ET200MPG
CP5611带 卡
Profi Bus总线连接
2 、资源需求
带集成 DP 口的 S7-300 的 CPU315-2DP 作为主站。
从站为带 I/O 模块的 ET200M 。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
STEP7 V5.2 系统设计软件
1)、按图 9-1 连接 CPU315C-2DP 集成的 DP 接口与 ET200M 的 PROFIBUS-DP 接口。先用 MPI 电缆将MPI卡 CP5611连接到 CPU315-2DP 的 MPI 接口,对 CPU315-2DP进行初始化,同时对 ET200M 的“ BUS ADDRESS”拨盘开关的 PROFIBUS地址设定为 4 ,如图 9-2所示,即把数字“ 4”左侧对应的开关拨向右侧即可。如果设定 PROFIBUS地址为 6 ,则把“ 2”、“ 4”两个数字左侧对应的开关拨向右侧,依此类推。
2)、在 STEP7 中新建一个“ ET200M 作为从站的 DP 通信”的项目。先插入一个 S7-300 站,然后双击“Hardware”选项,进人“Hw config”窗口。点击“ catalog”图标打开硬件目录,按硬件安装次序和订货号依次插人机架、电源、 CPU等进行硬件组态,如图 9-3所示。
3 、网络组态以及参数设置
图 9-2 ET200M 的外形图
SF
BF
ON
BUSADDRESS
ON
6432
816
4
12
电源输入
DC24V
向右拨
图 9-3 CPU315-2DP RPROFIBUS 网络配置
3)、插入 CPU 同时,弹出 PROFIBUS组态界面。点击New按钮,新建 PROFIBUS( 1),组态 PROFIBUS 站地址为 2 。点击“ Properties”按钮组态网络属性,选择“Network Settings”,界面如图“ 9-4”所示,点击“ OK”按钮确认,完成 PROFIBUS 网络创建,同时界面出现 PROFIBUS 网络。
图 9-4 PROFIBUS-DP 的“ Network Settings” 的参数设置
4)、在 PROFIBUS-DP 选项中,通过左边的“ PROFIBUS-DP”→“ET200M”→“IM153-1”路径,选择接口模块 IM153-1 ,添加到 PROFIBUS 网络上,如图“ 9-5所示”。添加是通过拖拽完成的,如果位置有效,则会在鼠标的箭头上出现“ +”标记,此时释放“ IM 153-1”。在释放鼠标的同时,会弹出图 9-6所示对话框,进行 IM153 的 PROFIBUS 网络参数配置。图 9-5 加载 IM 153-1至 PROFIBUS( 1)网络过程示意,定义 ET200M 接口模块 IMl53-2 的 PROFIBUS 站地址,组态的站地址必须与 IMl53-2 上拨码开关设定的站地址相同,本例中站地址为 4 。然后组态 ET200M 上 I / O 模块,设定 I/O点的地址, ET200M 的 I / O地址区与中央扩展的 I / O地址区一致,不能冲突,本例中 ET200M 上组态了 16点输入和 16点输出,开始地址为 1 ,访问这些点时用 I 区和 Q区,例如输入点为 I1.0 ,第一个输出点为 Q1.0 ,实际使用时 ET200M所带的 I/O 模块就好象是集成在 CPU 315-2DP 上的一样,编程非常简单。硬件组态结果见图 9-7 。
图 9-5 加载 IM 153-1至 PROFIBUS( 1)网络过程示意
图 9-6 IM153 的 PROFIBUS 网络参数配置
图 9-7 315-2DP 、 ET200M 的 I/O 模块配置
下面将建立一个以 315-2DP 为主站、 313C-2DP 为智能从站的通信系统,全面介绍智能从站的组态和使用方法。
通过 CPU 集成 DP 口连接智能从站
1 、硬件连接
图 9-8 PROFIBUS 连接智能从站硬件
Profi Bus总线连接
CP5611带 卡
PG313C-2DP315-2DP电源
Profi Bus总线连接
输入输出模块模块
/输出
输入
电源
自带
注:把 CPU315-2DP 集成的 DP 口和 S7 CPU313C-2DP 的 DP 口按图 9-8 连接,然后分别组态主站和从站,原则上先组态从站。
2 、资源需求 带集成 DP 口的 S7-300 的 CPU315-2DP 作为主站。
从站为带 I/O 模块的 ET200M 。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
STEP7 V5.2 系统设计软件
1)、组态“从站”硬件在 STEP7 中新建一个“主站与智能从站的通信”的项目。先插入一个 S7-300 站,然后双击“Hardware”选项,进人“Hw config”窗口。点击“ Catalog”图标打开硬件目录,按硬件安装次序和订货号依次插人机架、电源、 CPU 等进行硬件组态。
插入 CPU 时会同时弹出 PROFIBUS组态界面,如图 9-9所示。点击“New”按钮新建 PROFIBUS( 1),组态 PROFIBUS 站地址,本例中为 4 。点击“ Properties”按钮组态网络属性,选择“Network Settings”进行网络参数设置,在本例中设置 PROFIBUS 的传输速率为“ 1 . 5Mbit/ s”,行规为“ DP”。如图 9-10所示。
3 、网络组态以及参数设置
图 9-9 313C-2DP 的 PROFIBUS 网络参数配置
图 9-10 PROFIBUS-DP 的“ Network Setting”参数设置设置
双击 CPU 313C-2DP项下的“ DP”项,会弹出 PROFIBUS-DP 的属性菜单,如图 9-11所示。
图 9-11 配置 313C-2DP 为智能从站
① “在网络属性窗口选择顶部菜单 Operating Mode” “,选择 DP slave”操作模式,如果其“□”下的选择框 被激活,则编程器可以对从站编程,换句话说,这个接口既可以作为 DP从
站,同时还可以通过这个接口监控程序。诊断地址为 1022,选择默认值。② “选择标签 Configuration” “,点击 New”按钮新建一行通信的接口区,如图 9-12所示
。③在图 9-12中定义 S7-300从站的通信接口区。
表 9-1
Address type “选择为 Input”对应 I “区, Output”对应 Q区
Length 设置通信区域的大小,最多 32字节
Unit 选择是按字节还是按字来通信
Consistency“选择 Unit” “是按在 Unit”中定义的数据格式发送,即按字节或字发
“送;若选择 All”表示是打包发送,每包最多 32字节
“设置完成后点击 Apply”按钮确认,可再加人若干行通信数据,通信区的大小与 CPU型号有关,最大为 244字节。图 9-12中主站的接口区是虚的,不能操作,等到组态主站
时,虚的选项框将被激活,可以对主站通信参数进行设置。在本例中分别设置一个 Input区和一个 Output区,其长度均设置为 2字节。设置完成后
“在 Configuration”标签页图 9-13中会看到这两个通信接口区。
组态完从站后,以同样的方式建立 S7-300 主站并组态,本例中设置站地址为 2 ,并选择与从站相同的 PRFIBUS 网络,如图 9-14所示。打开硬件目录,选择“ PROFIBUS DP→Configuration Station”文件夹,选择 CPU31
x,将其拖拽到 DP 主站系统的 PROFIBUS 总线上,从而将其连接到 DP 网络上,如图 9-15所示。此时自动弹出“ DP—slave Properties”,在其中的“ Connection”标签中选择已经组态过的从站,如果有多个从站时,要一个一个连接,上面已经组态完的 S7 313C-2DP 从站可在列表中看到,点击“ Connect”按钮将其连接至网络,如图 9-16所示。
然后点击:“ Configuration”标签,设置主站的通信接口区。从站的输出区与主站的输入区相对应,从站的输入区同主站的输出区相对应,如图 9-17所示,结果见图 9-18 。 配置完以后,用 MPI 接口分别下载到各自的 CPU 中初始化接口数据。在本例中,主站的 QB50 、 QB51 的数据将自动对应从站的数据区 IB5O 、 IB51 ,从站的 QB5O 、 QB
51对应主站的 IB50 、 IB51 。在多从站系统中,为了防止某一点掉电而影响其它 CPU 的运行,可以分别调用调用 OB82 、 OB86 、 OB122( S7-300)和 OB82 、 OB85 、 OB86 、 OB122( S7-400)进行处理。
2 )、组态“主站”硬件
图 9-12 313C-2DP 的 PROFIBUS 网络参数配置
ROW 行编号;MODE 通信模式,可选“MS”( 主从 ) 和“ DX”( 直
接数字 交换 ) 两种模式;Partner DP Addr DP 通信伙伴的 DP地址;
Partner Addr DP 通信伙伴的输入/输出地址;Local Addr 本站的输入/输出的地址;Length 连续的输人/输出地址区的长度;Consistency 数据的连续性。
图 9-12 的 Configuration选项中参数意义说明如下:
图 9-13 313C-2DP 智能从站通信接口区参数配置结果
图 9-14 315-2DP 主站组态
图 9-15 将 313C-2DP 从站连接到 315-2DP 主站
图 9-16 313C-2DP 从站连接到 315-2DP 主站的过程
图 9-17 主、从站之间的输入 / 输出接口区设置
图 9-18 主、从站之间的输入 / 输出接口区配置结果
系统功能 SFC14 、 SFC15 的 ProfiBus 通信应用
在组态 PROFIBUS-DP 通信时常常会见到参数“ Consistency”( 数据的一致性 ) ,如图 9-17所示,如果选“ Unit”,数据的通信将以在参数“ Unit”中定义的格式——字或字节来发送和接收,比如,主站以字节格式发送 20 字节,从站将一字节一字节地接收和处理这 20 字节。若数据到达从站接收区不在同一时刻,从站可能不在一个循环周期处理接收区的数据,如果想要保持数据的一致性,在一个周期处理这些数据就要选择参数“ All”,有的版本是参数“ Total length”,当通信数据大于 4 字节时,要调用 SFCl5给数据打包,调用 SFCl4给数据解包,这样数据以数据包的形式一次性完成发送、接收,保证了数据一致性。下面将以例子形式介绍 SFCl4 、 SFCl5 的应用,例子中以 S7-300 的 315-2DP 作为主站, 313C-2DP 作为从站。
1 、硬件连接
图 9-19 PROFIBUS 连接智能从站硬件
Profi Bus总线连接
CP5611带 卡
PG313C-2DP315-2DP电源
Profi Bus总线连接
输入输出模块模块
/输出
输入
电源
自带
注:把 CPU315-2DP 集成的 DP 口和 S7 CPU313C-2DP 的 DP 口按图9-19 连接,然后分别组态主站和从站,原则上先组态从站。
2 、资源需求
带集成 DP 口的 S7-300 的 CPU315-2DP 作为主站。
从站为带 I/O 模块的 ET200M 。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
STEP7 V5.2 系统设计软件
3 、网络组态以及参数设置
在 STEP7 中新建一个“系统功能 SFC14 、 SFC15 应用”的项目。先插入一个 S7-300 站,然后双击“Hardware”选项,进人“Hw config”窗口。点击“ Catalog”图标打开硬件目录,按硬件安装次序和订货号依次插人机架、电源、 CPU 等进行硬件组态,不再多说。
插入 CPU 时会同时弹出 PROFIBUS组态界面,如图 9-20所示。点击“New”按钮新建 PROFIBUS( 1),组态 PROFIBUS 站地址,本例中为 4 。点击“ Properties”按钮组态网络属性,选择“Network Settings”进行网络参数设置,在本例中设置 PROFIBUS 的传输速率为“ 1 . 5Mbit/ s”,行规为“ DP”。如图 9-21所示。
1 )、组态“从站”硬件
图 9-20 PROFIBUS组态界面
图 9-21 配置 313C-2DP 智能从站网络参数
双击 CPU 313C-2DP项下的“ DP”项,会弹出 PROFIBUS-DP 的属性菜单,如图 9-22所示。在网络属性窗口选择“ Operating Mode”菜单,激活“ DP slave”操作模式,如果其下的选择框“□”被激活。则编程器可以对从站编程,即这个接口既可以作为 DP 从站,同时还可以通过这个接口监控程序。诊断地址为 1022 ,为 PR()FIBuS诊断时,选择默认值即可。选择“ Configuration”标签,点击“New”按钮组态通信的接口区,例如输入区 IB50 ~ IB69共 20 字节,“ Consistency”属性选择“ All”,如图 9-23所示。在本例中组态从站通信接口区为输入 IB50 ~ IB69 ,输出 QB5O ~ QB69 。点击“ Apply”按钮确认后,可再加入若干行通信数据。全部通信区的大小与 CPU型号有关。组态完成后下载到 CPU 中。
图 9-22 配置 313C-2DP 为智能从站
图 9-23 配置 313C-2DP 为智能从站
以同样的方式组态 S7-300 主站,配置 PROFIBUS-DP 的站地址为 2 ,与从站选择同一条 PROFIBUS 网络,见图 9-24 。然后打开硬件目录,选择“ PROFIBUSDP”→“Configuration Station”文件夹,选择 CPU31X,将其连接到 DP主站系统的 PROFIBUS 总线上。此时会自动弹出“ DP-slave Properties”,在其中的“ Connection”标签中选择已经组态过的从站,见图 9-25 。 然后点击“ Configuration”标签,出现图 9-26 ,点击“ Edit”,设置主站的通信接口区,如图 9-27所示。从站的输出区与主站的输入区相对应,从站的输入区同主站的输出区相对应,本例中主站 QB50 ~ QB69对应从站 IB50 。 IB69 ,从站 IB5O—IB69对应主站 QB5O ~ QB69 ,如图 9-27所示。 组态通信接口区后,下载到 CPU315-2DP 中,为避免网络上因某个站点掉电使整个网络不能正常工作的故障,要在 S7-300 中编写 OB82 、 OB86 、 OBl22组织块。
2 )、组态“主站”硬件
9-24 组态 315C-2DP 主站
图 9-25 连接 313C-2DP 智能从站
图 9-26 设置主站通讯接口
图 9-27 配置输入 / 输出接口区
图 9-28 调用系统功能块
4、通信编程
在系统块中找到 SFCl4 、 SFCl5 如图 9-28所示,并在 OBl中调用。 CALL“DPRD_DAT” SFCl4 LADDR : = W#16#32 RECORD : = P#DBl. DBX0 . 0 BYTE 20 RET_VAL : = MW2 SFCl4解开主站存放在 IB50 ~ IB69 的数据包并放在 DBl. DBBO ~ DBl. DBB19 中。
CALL“DPWR_DAT” SFCl5 LADDR : = W#16#32 RECORD : = P#DB2 . DBX0 . 0 BYTE 20 RET_VAL : = MW4SFCl5给存放在 DB2 . DBBO ~ DBl. DBB19 中的数据打包,通过 QB50 ~ QB69 发送出
去。
1 )、编写主站程序
说明: LADDR 的值是 W#16#32 ,表示十进制“ 50” ,和硬件组态虚拟地址一致。
在从站的 OBl中调用系统功能 SCF14 、 SCF15 。 CALL“DPRD_DAT” SFCl4 LADDR : = W#16#32 RECORD : = P#DBl. DBX0 . 0 BYTE 20 RET_VAL : = MW2 SFCl4解开主站存放在 IB50 ~ IB69 的数据包并放在 DBl. DBBO ~ DBl. DBB19 中。
CALL“DPWR_DAT” SFCl5 LADDR : = W#16#32 RECORD : = P#DB2 . DBX0 . 0 BYTE 20 RET_VAL : = MW4SFCl5给存放在 DB2 . DBBO ~ DBl. DBB19 中的数据打包,通过 QB50 ~ QB69 发送出
去。
2 )、编写从站程序
程序“参数”说明以及主从站的数据区对应关系见表 9-2 、表 9-3 。
表 9-2
参数说明
LADDR 接口区起始地址
RET_VAL 状态字
RECORD 通信数据区,一般为 ANY指针格式
表 9-3
数据对应
主站数据传输方向 从站数据
输入: DB1.DB0~ DB1.DB19
← 输出: DB2.DB0~ DB2.DB19
输出: DB2.DB0~ DB2.DB19
→ 输入: DB1.DB0~ DB1.DB19
通过 CP342-5 实现 ProfiBus 通讯
第一节 CP342-5作为主站,通过FC1、FC2实现ProfiBus通讯
第二节 CP342-5作为从站,通过FC1、FC2实现ProfiBus通讯
CP342-5 是 S7-300 系列 ProfiBus 通讯模块,对于没有集成 ProfiBus 通讯端口的 CPU(比如 313C 等),可以通过 CP342-5 的过渡实现 ProfiBus 通讯。
CP342-5 可以作为主站或从站,但不能“同时”作为主站和从站,而且只能在 S7-300 的中央机架上使用。
由于 S7-300 系统的 I 区和 Q区有限,通讯时会有所限制。 CP342-5 与 CPU 上集成的 DP 接口不一样,它对应得通信接口区不是 I 区和 Q区,而是虚拟的通讯区,需要调用 CP 通信功能 FC1 、 FC2 。
1、资源需求 带集成 DP 口的 S7-300 的 CPU315-2DP 作为主站。
从站为带 I/O 模块的 ET200M 。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
STEP7 V5.2 系统设计软件
CP342-5 作为主站,通过 FC1 、 FC2 实现 ProfiBus 通讯
2 、硬件连接
电源313C
I / O自带 CP342-5 ET200M输入
输出或 或
输出
输入
MPI总线连接 Profi BUS总线连接
PG
CP5611带 卡
图 9-29 CP342-5 作为主站的硬件连接
3 、网络组态以及参数设置1 )、组态主站
⑴ 、新建项目
在 STEP7 中新建一个项目,项目名: CP342-5 作为主站,点击右键,在弹出菜单中选择“ Insert New Object”→“SIMATIC 300 Station”,插入 S7-300 站——本项目中采用 313C ,如图 9-30所示。
图 9-30 CP342-5 作为主站的硬件组态配置
双击“Hardware”选项,进入“HW Config”窗口。点击“ Catalog”图标打开硬件目录,按硬件安装次序和订货号依次插入机架、电源、 CPU及 CP342-5 等进行硬件组态,见图 9-31 。
⑵ 、组态硬件
图 9-31 将 CP342-5添加到主站 CPU 中
图 9-32 创建 CP342-5 的 PROFIBUS 网络
图 9-33 进行 CP342-5 的 PROFIBUS 网络设定
图 9-34 CP342-5 的 PROFIBUS 网络属性 Properties 设置
图 9-35 设置网络配置参数
图 9-36 设定 CP342-5 为 PROFIBUS 主站
图 9-37 CP342-5 的 PROFIBUS 网络组态结果
在“Hw Config”窗口中点击“ Caltalog”图标打开硬件目录,依次选择“ PROFIBUS DP”→“DP V0 Slaves” →“ET200M”如图 9-38所示,将其添加到 PROFIBUS 网络上,同时出现图 9-39 ,将 PROFIBUS地址设定为“ 10”,并进行网络属性“ Priperties”设定。点击 ET200M图标,并为其配置 2 字节输入和 2 字节输出,路径为 PROFIBUS-DP→DP V0 slaves→ET200M→ET200M( IM153-1)。型号规格由实验条件决定,本项目中采用 6ES7 321-7BH00-0AB0 模块作为输入, 6ES7 322-1HH00-0AB0 模块作为输出。
如图 9-40所示,输入 / 输出的地址均从 0 开始,组态完成后,编译存盘下载到 CPU
中。ET200M只是 S7-300 虚拟地址映射区,而不占用 S7-300 实际 I / Q区。虚拟地址的输
入区、输出区在主站上要分别调用 FCl(DP SEND) 、 FC2(DP RECV)进行访问。如果修改 CP342-5 的从站开始地址,如输人输出地址从 2 开始,相应的 FCl和 FC2对应的地址区也要相应偏移 2 字节。如果没有调用 FCl和 FC2 , CP342-5 的状态灯“ BUSF”将闪烁,在 0Bl中调用 FCl和 FC2后通信将建立。配置多个从站虚拟地址区将顺延。
2 )、组态从站
图 9-38 将 ET200M添加到 CP342-5 主站系统中
图 9-39 进行 ET200M参数设置
图 9-40 为 ET200M配置输入 / 输出模块
在 CPU 313C 的 OBI 中调用 FCl和 FC2 ,如图 9-41所示。具体程序如下:
3 )、编程
图 9-41 调用系统程序块 FC1 、 FC2
CALL "DP_SEND" FC1 CPLADDR : =W#16#100 SEND : =P#M 20.0 BYTE 2 DONE : =M1.1 ERROR : =M1.2 STATUS : =MW2 CALL "DP_RECV" FC2 CPLADDR : =W#16#100 RECV : =P#M 22.0 BYTE 2 NDR : =M1.3 ERROR : =M1.4 STATUS : =MW4 DPSTATUS:=MB6
程序中参数说明见表 。
表 9-4
参数名 参数说明 参数名 参数说明CPLAD
DERCP342-5的地址 NDR 接收完成一次产生一
个脉冲SEND 发送区,对应从站的输
出区ERROR 错误位
RECV 接收区,对应从站的输入区
STATUS 调用 FC1、 FC2时产生的状态字
DONE 发送完成一次产生一个脉冲
DPSTATUS
PROFIBUS-DP的状态字
MB22、MB23 “ ”对应 从站 输入的第一个字节和第二个字节,即MB22对应 IB0,MB23对应 IB1。MB20、MB21 “ ”对应 从站 输出的第一个字节和第二个字节,即MB20对应 QB0,MB21对应 QB1。在本项目中, ET200M连接了两个模块:输入模块 6ES7 321-7BH00-0AB0,输出模块 6ES
7 322-1HH00-0AB0 ,实际硬件地址配置见图 9-40 “ ”,如果要实现 从站 I0.0对 Q0.0的控制,可编写下面的程序:
其中,M22.0对应 I0.0,M20.0对应 Q0.0,而 I0.0、 Q0.0并未出现在程序中,这就是虚拟地址的含义,实际使用时要用心体会。连接多个从站时,虚拟地址将向后延续和扩大。调用 FCl、 FC2只考虑拟地址的长度,
而不会考虑各个从站的站地址。如果虚拟地址的起始地址不为 0,那么调用 FC的长度也将会增加,假设虚拟地址的输
入区开始为 4,长度为 10字节,那么对应的接收区偏移 4字节相应长度为 14字节,接收区的第 5字节对应从站输人的第一个字节,如接收区为 P#M0 0 BYTE 14,即MBO~MBl3为接收区,偏移 4字节后,MB4~MBl3与从站虚拟输人区一一对应。编完程序下载到CPU中,通信区 PROFIBUS的状态灯将不会闪烁。
CP342-5 作为从站,通过 FC1 、 FC2 实现 ProfiBus 通讯
1、资源需求 带集成 DP 口的 S7-300 的 CPU315-2DP 作为主站。
从站为带 I/O 模块的 ET200M 。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
STEP7 V5.2 系统设计软件
CP5611带 卡
PG
MPI总线连接
输入输出输出
输入313C315-2DP电源
Profi BUS总线连接
MPI总线连接
CP342-5 或输出
输入输入
输出或
模块模块
自带 自带
模块 模块模块
/输出
输入
图 9-42 CP342-5作为从站的硬件连接
2、硬件连接
⑴ 、新建项目:
3 、网络组态以及参数设置1 )、组态从站
在 STEP7中新建一个项目,项目名: CP342-5作为从站,点击右键,“在弹出菜单中选择 Insert New Object”→“SIMATIC 300 Station”,插入
S7-300 ——站 本项目中采用 313C,
图 9-43 插入 S7-300从站
双击“Hardware”选项,进入“HW Config”窗口。点击“ Catalog”图标打开硬件目录,接硬件安装次序和订货号依次插入机架、电源、 CPU及 CP342-5 等进行硬件组态。
插入 CP342-5 同时,弹出如图 9-44所示的对话框,设置 PROFIBUS 网络地址为“ 6”,然后点击“NEW”按钮,生成 PROFIBUS( 1)网络,出现图 9-45 。
点击“NetWork Settings”,出现图 9-46 ,进行基于 CP 342-5的 PROFIBUS硬件组态的属性设置。本例中选择“ 1.5Mbit/s”的传输速率和“ DP”行规,这一点与带集成 DP 口 CPU组建 PROFIBUS 网络是一致的,单击“ OK”按钮确认。
2 )、组态硬件:
图 9-44 插入 CP342-5 同时生成 PROFIBUS 网络
图 9-45 准备进行 PROFIBUS 网络参数设置
图 9-46 设置 PROFIBUS 网络参数
图 9-47 CP342-5 从站配置结果
为了方便实验,完成 CP342-5 的插入后,在 CP342-5后面的第5 、 6 两槽依次插入两个 I/O 模块,结果见图 9-47 ,具体型号规格由实验条件决定。 双击图 9-47 中的 CP342-5 单元,在弹出的对话框中,选择“ Opreating Mode”标签,选择“ DP slave”模式,如图 9-48所示,同时了解一下 CP342-5 的通信地址,为以后编程做准备,见图 9-49 。点击“ OK”按钮确认,从站组态完成。
图 9-48 设置 CP342-5 为 DP 从站
图 9-49 CP342-5 为 DP 通信地址
在图 9-50所示窗口中选择“ CP342-5 作为从站”图标,点击右键,在弹出菜单中依次选择“ Insert New Object” →“SIMATIC 300 Station”,插入 S7-300 站,本项目中选用 S7-300 的 315-2DP 作为主站,见图 9-51所示。
双击“Hardware”图标,进入“HW Config”窗口。点击“ Catalog”图标打开硬件目录,按硬件安装次序和订货号依次插人机架、电源、 CPU 等进行硬件组态。插人 CPU 时要同时组态PROFIBUS ,选择与从站同一条的 PROFlBUS 网络,并选择主站 PROFIBUS地址为“ 2”,见图 9-52 。 CPU组态后会出现一条 PROFIBUS 网络,在硬件中选样“ Configured Stations”,从“ S7—300 CP342-5”中选择与订货号、版本号相同的 CP342-5 ,如图9-53所示。
2 )、组态主站
图 9-50 准备组态 CP342-5 实验主站 315-2DP
图 9-51 插入主站 315-2DP
图 9-52 设置主站 PROFIBUS参数
图 9-53 插入主站 315-2DP
图 9-54 插入主站 315-2DP
将 CP342-5拖拽至 PROFIBUS释放同时,出现图 9-54 ,点击键“ Connect”,连接 CP342-5 从站到主站的 PROFIBUS 上,结果见图 9-55所示。
图 9-55 CP342-5插入主站 PROFIBUS
连接完成后,在 S7-300 的“HW Config”界面中的硬件列表中,点击从站 CP342-5 ,组态通信接口区,插人 2 字节的输入和 2 字节的输出,如图 9-55所示 ,双击插入的 I/O 模块可进行地址设定,见图 9-56 。如果选择的输入输出类型是“ Total Length”,要在主站 CPU 中调用 SFCl4 、 SFCl5对数据包进行打包和解包处理,本例中选择的输人输出为“ Unit”类型,见图,即:
2 bytes DI/Consistency 1 byte2 bytes DO/Consistency 1 byte
两种类型,按字节通信,详细见图 9-57所示,在主站中不需要对通信进行编程。
组态完成后编译存盘下载到 CPU 中,可以修改 CP5611参数。从图 中可以看到主站的通信区已经建立,主站发送到从站 DE 数据区为 QB1 、 QB2 ,主站接收从站的数据区为 IB1 、 IB2 。从站需要调用 FC1 、 FC2建立通讯区,具体方法下面要详细介绍。
图 9-57 CP342-5 中插入的 I/O 模块参数设置
在从站的 OBI 中调用 FCl和 FC2 ,过程是:“ Library”→“SIMATIC_NET_CP” →“CP300”如图 9-58所示。具体程序如下:
4 、资源需求1)、从站编程
图 9-58 调用 FC1、 FC2进行编程
CALL “DP_SEND” FC1 CPLADDR : =W#16#100 SEND : =P#M 20.0 BYT
E 2 DONE : =M1.1 ERROR : =M1.2 STATUS : =MW2 CALL “DP_RECV” FC2 CPLADDR : =W#16#100 RECV : =P#M 22.0 BYT
E 2 NDR : =M1.3 ERROR : =M1.4 STATUS : =MW4 DPSTATUS : =MB6
程序中参数说明见表 9-5。
表 9-5
参数名
参数说明 参数名 参数说明
CPLADDER
CP342-5的地址 NDR 接收完成一次产生一个脉冲
SEND 发送区,对应从站的输出区
ERROR
错误位
RECV 接收区,对应从站的输入区
STATUS
调用 FC1、 FC2时产生的状态字
DONE 发送完成一次产生一个脉冲
DPSTATUS
PROFIBUS-DP的状态字
MB22、MB23 “ ”对应 主站 输出的第二个字节和第三个字节。MB20、MB21 “ ”对应 主站 输入的第二个字节和第三个字节,如表 9-6所示。
表 9-6
主站 315-2DP 信号传递方向 从站 CP342-5
IB1 ← MB20
IB2 ← MB21
QB1 → MB22
QB2 → MB23
上面的解释比较难理解,下面通过两个简单的实例来阐述这种通讯的具体使用方法。例一:编程实现主站( 315-2DP)的 I0.0控制从站( 313C+CP342-5)的 Q0.
0点。主站编程
从站编程
I 0. 0 Q1. 0
Q0. 0M22. 0
Q1. 0 M22. 0与 之间形成了一个通信通道
程序如下:
例二:编程实现从站( 313C+CP342-5)的 I0.0控制主站( 315-2DP)的 Q0.0点。
M20. 5 I 1. 5与 之间形成了一个通信通道
I 1. 5 Q0. 0
M20. 5I 0. 0
主站编程
从站编程程序如
下:
读者通过以上两个实例可以较好的理解、掌握这种虚拟地址的通讯方法。至于主站、从站内部的 I/O 控制关系与单站的控制关系一致,比如在本项目的从站体系( 313C+CP342-5)中,各个 I/O 模块可以互相控制,编程非常简单,读者自己可以尝试。
多个 S7-300 之间的 ProfiBUS 通信实现 多个 S7-300 之间的 ProfiBus 通信方法在实际工业控制非常普遍,本实训以一个 315-2DP 为主站,两个 313C-2DP 为从站,介绍多个 CPU 之间的通信方法
9.3.1 9.3.1 通讯要求通讯要求//硬件连接硬件连接
9.3.2 9.3.2 通过通过HW HW ConfigConfig进行硬件组态进行硬件组态
9.3.3 9.3.3 通讯组态通讯组态
9.3.4 9.3.4 通过通过LAD/STL/FBDLAD/STL/FBD进行编程进行编程
1、资源需求
带集成 DP 口的 S7-300 CPU315-2DP 作为主站。
带集成 DP 口的 S7-300 CPU313C-2DP 作为从站。
MPI 网卡 CP5611 。
ProfiBus 总线连接器以及电缆。
2、 硬件连接
输入
输出/
模块
自带
模块
Profi BUS总线连接
电源 315-2DP 313C-2DP 输入输出
PG
CP5611带 卡
主站 1从站 2从站
电源 电源输出输入313C-2DP
模块
自带
图 9-59 硬件连接图
3、网络组态及参数设置 1)、新建项目:
图 9-60 创建多 S7-300 CPU通信项目
在 STEP7 中新建一个项目,项目名:“多个 CPU 之间 ProfiBus通信”,点击右键,在弹 “出菜单中选择 Insert New Object”→“SIMATIC 300 Station”,插入 S7-300 ——站 本项目中采用 313C-2DP,如图 9-60所示。
⑴ 、配置 1# 从站
2 )、硬件配置
双击“Hardware”选项,进入“HW Config”窗口。点击“ Catalog”图标打开硬件目录,接硬件安装次序和订货号依次插入机架、电源、 CPU 等进行硬件组态。在插入 313C-2DP 的同时,会弹出图 9-61 、 9-62所示对话框,设定 ProfiBus地址为 4 ,点击“New”按钮,新建一条“ ProfiBus 网络”,并设定基本参数,过程不再赘述,点击“ OK”,结果见图9-63 。
图 9-61 1# 从站添加 PROFIBUS 网络
图 9-62 1# 从站 PROFIBUS 属性参数设置
图 9-63 1# 从站添加后的结果
双击图 9-63 中的“ DP”图标,弹出图 9-64所示对话框。选择“ Operating Mode”按钮,选择“ DP-slave”,如图 9-64所示。然后选择“ Configuration”,进行从站接口区的配置,结果见图 9-65 。本项目中采用“ Unit”、“ Byte”通讯数据配置方法。
图 9-64 配置 S7-300 CPU313C-2DP 为智能从站
图 9-65 1# 智能从站输入 / 输出区配置结果
2#智能从站的配置过程和 1#从站的配置过程基本相同,不再赘述。从站接口区的配置结果见图 9-66所示。本项目中设置 2#从站的 PROFIBUS 站地址为 6 ,采用“ Unit”、“ Byte”通讯数据配置模式。
⑵ 、配置 2# 从站
图 9-66 2# 智能从站输入 / 输出区配置结果
配置主站
图 9-67 主站 PROFIBUS配置
组态完从站后,以同样的方式建立 S7 300 主站( CPU 为 315-2DP)并组态,本例中设置主站 PROFIBUS 站地址为 2 ,并选择与从站相同的 PRFIBUS 网络,如图 9-67所示。
PROFIBUS 站地址为 2 ,并选择与从站相同的 PRFIBUS 网络,如图 9-67所示。 打开硬件目录,选择“ PROFIBUS DP→Configuration Station”文件夹,选择
CPU31x,将其拖拽到 DP 主站系统的 PROFIBUS 总线上,从而将其连接到 DP 网络上,如图 9-68所示。
此时自动弹出“ DP-slave Properties”,在其中的“ Connection”标签中选择已经组态过的从站,如果有多个从站时,要一个一个连接,上面已经组态完的 S7-300从站可在列表中看到,点击“ Connect”按钮将地址为“ 4”的从站接至网络,然后点击 Configuration,
出现图 9-70 ,点击任一行 I/O配置,选择“ Edit”,进行输入 / 输出区域的配置,如图 9-71 ,结果见图 9-72 。
同样方法,把 6#站也连接到 PROFIBUS DP 网络上,结果如图 9-73 、 9-74所示。
配置完以后,用 MPI 接口分别下载到各自的 CPU 中初始化接口数据。在本例中,主站与 1#、 2#从站的通讯区域对应关系如表 9-6所示。
为避免网络上某一个站点掉电使整个网络不能工作的故障,需要在几个 CPU 中加入 OB82 、 OB86 、 OB122 等组织块,必要时还要对其进行编程。
图 9-68 向主站 PROBUS添加 S7-300 从站
图 9-69 将从站连接到主站
图 9-70 1# 从站输入 / 输出区域选择
图 9-71 1# 从站输入 / 输出区域配置
图 9-72 1# 从站输入 / 输出区域配置结果
图 9-74 多 CPU 通讯配置硬件连接结果
表 9-7
主站 传输方向 1#从站 主站 传输方向 2#从站
IB50 ← QB50 IB60 ← QB60
IB51 ← QB51 IB61 ← QB61
QB50 → IB50 QB60 → IB60
QB51 → IB51 QB61 → IB61
应用举例:
例一:编程实现主站 I0.0对 1#从站 Q0.0的控制。
1#从站编程
I 0. 0 Q50. 0
Q0. 0I 50. 0
Q50. 0 I 50. 0与 之间形成了一个通信通道
例二:编程实现主站 I0.0对 2#从站 Q0.0的控制。
Q60. 0 I 60. 0与 之间形成了一个通信通道
I 60. 0 Q0. 0
Q60. 0I 0. 0
2#从站编程
主站编程
例三:编程实现 1#从站 I0.0对 2#从站 Q0.0的控制。
主站编程
1#从站编程
I 50. 0 Q60. 0
Q50. 0I 0. 0
I 60. 0 Q0. 0
2#从站编程
由主站进行过渡