汉语大全>西门子自动化案例>如何实现S7-300与S7-200的PROFIBUS DP通讯

如何实现S7-300与S7-200的PROFIBUS DP通讯

详细内容

要实现S7-300与S7-200进行PROFIBUSDP通讯,需通过使用EM277模块将S7-200CPU作为DP从站连接到网络中,从而实现S7-300与S7-200的通讯。

支持的波特率范围:9600----12M

订货号:6ES7-277-0AA22-0XA0

1、首先安装EM277的GSD文件

S7-300与S7-200通信

2、在路径PROFIBUSDP---AdditionalFieldDevices---plc---SIMATIC---EM277将其拖入到组态的DP线上

S7-300与S7-200通信

3、点开“EM277profibusdp”下面是各种不同种类通讯数据分类如“2BYTEOUT/2BYTEIN”2个字节的输入2个字节的输出

S7-300与S7-200通信

对应的两个字节为IB0-IB1和QB0-QB1

S7-300与S7-200通信

可以双击选项栏设置

S7-300与S7-200通信

4、设置主站和从站的DP通讯地址

主站站号为2,从站站号为4

EM277通过旋转模块左上方的拨码开关来设置DP从站地址,如从站地址为“4”的话将X10档位中的箭头旋转到“0”X1档位中的箭头旋转到“4”;若从站地址为“25”则将X10档位中的箭头旋转到“2”X1档位中的箭头旋转到“5”

通讯正常的话EM277模块上的DXMODE绿灯是亮的并且主站CPU指示灯为正常;如果通讯有误的话,DXMODE灯不亮,且主站CPU指示灯报故障,而且CPU不能启动。

S7-300与S7-200通信

5、双击EM277----分配参数----I/OoffsetintheV-memory

给从站S7-200设置对应的VB存储区数值填多少就对应的多少

如图设置的是VB1000为映射起始地址

表示:QB0-QB1------VB1000-VB1001

    IB0-IB1------VB1002-VB1003

S7-300与S7-200通信

6、给DIDO模块分配地址,因为上一步通讯已占用了IB0IB1QB0QB1这些地址,所以模块中的起始地址只能从IB2QB2开始

S7-300与S7-200通信

7、编写程序

S7-300主站程序

S7-300与S7-200通信

S7-200从站程序

S7-300与S7-200通信

数据流向:

MB10(S7-300)------QB0(S7-300)-------(DP通讯)------VB1000(S7-200)----QB0(S7-200,实际输出)

VB0(S7-200)-------VB1002(S7-200)--------(DP通讯)--------IB0(S7-300)------QB2(S7-300实际输出)

测试1:

STEP7中MB10写入“170”然后通过MOVE指令传送到了QB0(S7-300)中再通过DP通讯传送给S7-200

S7-300与S7-200通信

监控Micro/WINVB1000将数据“170”MOVE到了QB0(S7-200)中

S7-300与S7-200通信

PLC实际照片:170(10#)==10101010(2#)

S7-300与S7-200通信

测试2:

在Micro/WIN中VB1写入“255”并通过MOVE指令传送给VB1003然后通过DP通讯传送给IB1(S7-300)

S7-300与S7-200通信

监控STEP7IB1值为“255”然后通过MOVE指令传送到QB3(S7-300)实际输出

S7-300与S7-200通信

PLC实际照片

S7-300与S7-200通信

附加:模拟量测试

只需更改以下操作:

1、在组态时选择一个字类型的传输方式如1WordOut/1WordIn一个字类型输出一个字类型输入

S7-300与S7-200通信

然后设置DP从站的输出、输入地址如:输出PQW264输入PIW272

S7-300与S7-200通信

2、映射地址还是V存储区1000为起始地址

PQW264------VW1000

PIW272------VW10002

S7-300与S7-200通信

3、编写程序

S7-300

S7-300与S7-200通信

S7-200

S7-300与S7-200通信

数据传输

MW10(S7-300)---PQW264(S7-300)---(DP通讯)---VW1000(S7-200)---VW0(S7-200)

VW2(S7-200)---VW1002(S7-200)---(DP通讯)---PIW272(S7-300)---MW12(S7-300)

5、测试1

STEP7中向MW10写入“13824”

S7-300与S7-200通信

监控Micro/WINVW1000值变为了“13824”

S7-300与S7-200通信

测试2

Micro/WIN写入“27648”到VW2并MOVE到VW1002中

S7-300与S7-200通信

监控STEP7PIW272的值变为了“27648”

S7-300与S7-200通信