S7是西门子专有的协议,它用于PLC之间交换数据。
设备与网络组态:添加两台CPU
PLC连接
连接方法一
连接方法二
或者点击本地PLC以太网口按住拖拉到伙伴PLC的以太网口处松开,也可以建立两台PLC通信连接。
属性设置
S7通讯是本地主动访问伙伴,所以伙伴下图选项必须勾选
IP地址设置
IP地址设置一定要对,且本地和伙伴地址不能相同,可以通过属性,以太网设置,如下图
除了这种方法,也可以在网络试图里面点击显示地址,去更改,如下图
这两种方法更改IP地址都很方便,可自行选择
指令介绍
参数和类型 |
数据类型 |
说明 |
|
REQ |
Input |
Bool |
上升沿触发 |
ID |
Input |
CONN_PRG(Word) |
S7 连接 ID(W#16#100) |
NDR (GET) |
Output |
Bool |
新数据就绪:● 0:请求尚未启动或仍在运行 ● 1:已成功完成任务 |
DONE (PUT) |
Output |
Bool |
DONE:● 0:请求尚未启动或仍在运行● 1:已成功完成任务 |
ERROR |
Output |
Bool |
错误状态 |
STATUS |
Output |
Word |
错误代码 |
ADDR_1 |
InOut |
远程 |
指向远程CPU中存储待读取(GET) 或待发送(PUT)数据的存储区。P#DB1.DBX12.0 REAL 3 |
ADDR_2 |
InOut |
远程 |
|
RD_1 (GET) |
InOut |
Variant |
指向本地CPU中存储待读取(GET)或待发送(PUT)数据的存储区。允许的数据类型:Bool(只允许单个位)、Byte、Char、Word、Int、DWord、DInt或Real。 |
RD_2 (GET) |
InOut |
Variant |
案例:两台1200进行S7协议以太网通信,实现如下操作。
读取设置
写入设置
写入设置与读取设置方法一致,通过组态设置,这里不作细说。
这样,本地设置好以后,将其分别下载到对应PLC中,两台1200PLC进行S7通讯就设置好了,(伙伴不需要写程序),即可进行数据交换。