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