
1、必备条件
软件Step7 V5.2SP1
PLC 中具有Profibus -DP 通讯口:S7-315 2DP
Profibus 通讯电缆(6XV1830-0AH10)
Profibus 总线联结器(6ES7972-0BB10-0XA0, 带PG 接口;
6ES7972-0BA10-0XA0 不带PG 接口)
MM440变频器1台
Drive 中有Profibus 通讯模板(6SE6400-1PB00-0AA0)
2、 组态主站系统
打开 SIMATIC MANAGER, 通过 FILE 菜单选择 NEW 新建一个项目,在 NAME
栏中输入项目名称,将其命名为 DP_MM440,在下方的 Storage Location 中设置其存储位置。

项目屏幕的左侧选中该项目,在右键弹出的快捷菜单中选择 Insert New Object插入 SIMATIC 300 Station;可以看到选择的对象出现在右侧的屏幕上。

打开SIMATIC 300 Station,然后双击右侧生成的hardware图标,在弹出的HW config 中进行组态,在菜单栏中选择“View”选择“Catalog”打开硬件目录,按订货号和硬件安装次序依次插入机架、电源、CPU。插入CPU时会同时弹出组态PROFIBUS 画面,如下图所示:

选择“New”新建一条PROFIBUS(1),组态PROFIBUS站地址,点击“Properties”键组态网络属性如下图:

在本例中主站的传输速率为“1.5Mbps”,“DP”行规,无中继器、OBT等网络元件,点击“OK”键确认并存盘;然后组态S7-315 2DP本地模块,结果如下图:

3、组态从站:
在DP网上挂上MM440, 并组态MM440的通讯区,通讯区与应用有关,在组态之前应确认通信的PPO类型(见下图显示PPO类型),本例选择PPO1,由4PKW/2PZD组成;MM440仅支持PPO1和PPO3
在本例中,采用4PKW,2PZD,选用PPO1类型;MM440地址为4。

组态步骤如下:
①、打开硬件组态,在右侧”Profi(standard)” Profibus-DP SIMOVERT
双击MICROMASTER 440;
②、弹出 profibus interface Properties: 输入从站地址:4

③、选择PPO类型1,双击4PKW/2PZD (PPO1);
④、从站组态完成,地址分配从4PKW/2PZD(256 – 267)。4 MM440硬件及参数设置
4.1 PROFIBUS地址
下面介绍两种PROFIBUS总线地址的方法:
借助通讯模块的七个DIP开关(如下图所示)或借助P0918;

①、 PROFIBUS 地址开关 (DIP 开关)
②、 (仅西门子内部使用)
PROFIBUS地址能够设置从1到125,如下表所示:

4.2 通讯板参数
为了让总线板运行,下面的参数必须设置:

5 程序的编写
5.1 对PZD (过程数据)的读写:
a. 在Step7 中对PZD (过程数据)读写参数时调用SFC14和SFC15;
b. SFC14(“DPRD_DAT”)用于读Profibus 从站(MM440)的数据;
c. SFC15(“DPWR_DAT”)用于将数据写入Profibus 从站(MM440);
d. 硬件组态时PZD的起始地址:W#16#108(即264);
5.1.1建立数据块DB1
将数据块中的数据地址与从站(MM440)中的PZD、PKW数据区相对应

5.1.2 数据分配
在OB1中调用特殊功能块SFC14和SFC15,完成从站(MM440)数据的读和写:

其中:
LADDR 表示:硬件组态时PZD的起始地址(W#16#108即264);
RECORD 表示:数据块(DB1)中定义的PZD数据区相对应的数据地址;
RET_VAL 表示:程序块的状态字,可以以编码的形式反映出程序的错误等状态。
①. W#16#108(即263)是硬件组态时PZD 的起始地址
② .将从站数据读入DB1.DBX8.0 开始的4 个字节(P#DB1.DBX8.0 BYTE 4)
PZD1 -> DB1.DBW8 (状态字)
PZD2 -> DB1.DBW10 (实际速度)
③ .将DB1.DBX20.0 开始的4 个字节写入从站(P#DB1.DBX20.0 BYTE 4)
DB1.DBW20 -> PZD1 (控制字)
DB1.DBW22 -> PZD2 (给定速度)
5.1.3 控制实现

在本例中设定值和控制字可以从数据块 DB1 中传送,DB1.DBW20 设为 047E 再变
为 047F 后 DB1.DBW22 中的频率值将输出;状态字和实际值可从 DB1.DBW8, DB1.DBW10
读出。
①、控制命令 W#16#47F(含义见附录 1),启动变频器运行;
②、给定速度 5000 含义是 500.0rpm。
5.2 对PKW (参数区)读写
5.2.1 数据传送规则
对 PKW 区数据的访问是同步通讯,即发一条信息,得到返回值后才能发第二条信
息。
PKW 一般为 4 个字,定义如下:


5.2.2 应用举例:
a.在Step7 中对PKW (参数区)读写参数时同样调用SFC14和SFC15
b. SFC14(“DPRD_DAT”)用于读Profibus从站的数据
c. SFC15(“DPWR_DAT”)用于将数据写入Profibus从站
d. 硬件组态时 PKW 的起始地址:W#16#100(即 256)

①. W#16#100(即256)是硬件组态时PKW 的起始地址
② .将从站数据读入DB1.DBX0.0 开始的8 个字节(P#DB1.DBX0.0 BYTE 8)
PKE -> DB1.DBW0
IND -> DB1.DBW2
PWE1 -> DB1.DBW4 参数值的高字位
PWE2 -> DB1.DBW6 参数值的低字位
③ .将DB1.DBX12.0 开始的8 个字节写入从站(P#DB1.DBX20.0 BYTE 8)
DB1.DBW12 -> PKE
DB1.DBW14 -> IND
参数值的高字位 DB1.DBW16 -> PWE1
参数值的低字位 DB1.DBW18 -> PWE2
1, 读写 0002~1999 的参数。
如读 P0700, 700=2BC(HEX)
PLC PKW 输出 =12BC,0000,0000,0000 1 为读请求
PLC PKW 输入=12BC,0000,0000,0006 返回 1 为单字长,值为 0006
如读 P1082, 1082=43A(HEX)
PLC PKW 输出 =143A,0000,0000,0000 1 为读请求
PLC PKW 输入=243A,0000,4248,0000 返回 2 为双字长。
值为 42480000(HEX)=50.0(REAL)
如写 P1082, 1082=43A(HEX)
PLC PKW 输出 =343A,0000,41F0,0000 3 为写双字请求
41F00000(HEX)=30.0(REAL)
PLC PKW 输入=243A,0000,41F0,0000 返回 2 为双字长,确认修改完毕。
2,读写 2000~3999 的参数。
如读 P2010, 10=A(HEX)
PLC PKW 输出 =100A,0180,0000,0000
1 为读请求; 1 为数组中第一个参数; 8 为参数 2000~3999;
PLC PKW 输入=100A,0180,0000,0006 返回 1 为单字长。
值为 6(HEX)
附录 1: MM440 变频器 PROFIBUS-DP 通讯控制字定义

控制字、状态字由本人整理,错误难免,请批评指正,仅供各位参
考,使用时建议按说明书设置,谢谢!(特别指出MM440控制字、状态字
的与其他变频器不同,甚至MM420、MM430都不一定相同)
附录 2:MM440 变频器 PROFIBUS-DP 通讯状态字定义

状态字的各位可以用来指示变频器的运行状态。
微信扫一扫
关注公众号
18150066586 3004636837@qq.com 0591-87578810
15306977124 3004993430@qq.com 0591-83851589
15306977204 2851617306@qq.com 0591-88075780
15306977014 2851617301@qq.com 0591-87580173
18005007289 2851617310@qq.com 0591-87722515
15306977484 2851617304@qq.com 0591-83855060
18065057209 2881507050@qq.com 0591-22875422
15306977024 2851617309@qq.com 0591-83532940
15306977134 2851617313@qq.com 0591-83841178
15306977494 2851617303@qq.com 0591-83855720