S7-300与S7-200 SMART 通过 DP01 进行 PROFIBUS DP 通讯,需要进行S7-300站组态,在S7-200 SMART系统中不需要对通讯进行组态和编程,只需要将要进行通讯的数据整理存放到相应的 V 存储区,并且S7-300组态DP01从站时设置正确的地址即可。DP01的地址,在模块本身上的拨码设置分为X0(地址个位)和X10(地址十位);DP01是波特率自适应的,取决于S7-300的组态。
注意:S7-200 SMART系统虽然中不需要对通讯进行组态和编程,但是需要在STEP 7-Micro/WIN SMART 系统块中组态EM DP 01 模块。
首先,在STEP 7项目里插入一个S7-300的站并建立PROFIBUS DP 主站网络:
导入EM DP 01 GSD文件后,在右侧的设备选择列表中找到DP01从站,PROFIBUS DP-Additional Field Device-PLC-SIMATIC-EM DP 01 PROFIBUS-DP,并且根据通讯字节数,选择相应的配置。本例中的插槽一包含"4Bytes In/Out"预组态 I/O 选项,插槽二包含"8 Bytes In/Out"预组态 I/O 选项。如下图:
确定S7-300硬件组态中所设置DP01的DP 从站地址,如下图红框标注,为DP从站DP01的站地址。
如果使用的S7-200 SMART通信区域不从VB0开始,则还需要在“Parameter Assignment”选项卡中设置"I/O Offset in the V-memory"参数,
该参数的设置如下图所示(本例中S7-200 SMART通信区域是从VB0开始,所以此参数设置为0):
组态完系统的硬件配置后,将编译下载到S7-300的PLC当中。
在S7-200 SMART 侧断电的情况下,将DP01的拨位开关拨到与S7-300侧硬件组态的设定值一致。
打开 STEP7中的变量表和STEP 7-MicroWIN SMART状态表进行监控,它们的数据交换结果如下图:
VB0-VB11是S7-300写到S7-200 SMART 的数据,VB12-VB23是S7-300从S7-200 SMART读取的值。
注:可以在固件版本 V2.5以上的 S7-300 CPU Properties的 “Cycle/Clock Memory”标签下修改过程映像区的大小,使DP通讯的数据区在过程映像区之内,这样设置的话就可以直接对过程映像区进行操作。在过程映像区中的数据是始终一致的,由操作系统对过程映像区进行自动更新。无需再通过 DPRD_DAT(读取 DP 设备的一致性数据)与 DPWR_DAT(写入 DP 设备的一致性数据)保证数据一致性。
DP01上拨位开关的位置一定要和S7-300中组态的地址值一致。
插入 CPU 315-2 DP 作为 DP 主站。
插入 EM DP01 PROFIBUS DP 模块。如下图所示,在 DP 主站和设备之间创建 PROFIBUS 网络。
设备视图中组态DP01的通讯区,本例中的插槽一包含"4 Bytes In/Out"预组态 I/O 选项,插槽二包含"8 Bytes In/Out"预组态 I/O 选项。在"Properties"、"General"选项卡区域,单击"Device-specific parameters"以显示"I/O Offset in the V memory"字段。在此处可分配为该操作预留的那部分 V 存储器的启动地址。
注意:VB0-VB11是S7-300写到S7-200 SMART 的数据,VB12-VB23是S7-300从S7-200 SMART读取的值。
打开博图软件中的监控表和STEP 7-MicroWIN SMART状态表进行监控,它们的数据交换结果如下图: