西门子 400 与 200 SMART S7通信 及 GET/PUT 指令 |
您所在的位置:网站首页 › ge与西门子plc用udp通讯 › 西门子 400 与 200 SMART S7通信 及 GET/PUT 指令 |
参考:http://www.ad.siemens.com.cn/productportal/prods/published/Comm/Comm_5.2/Comm_5.2.html
在200-SMART侧无需编写收、发程序。只需要将读写的字节连续规划在V区即可。程序由S7-400侧编程调用PUT/GET指令。 首先,是硬件组网。 在程序编写之前,需要先将400与200-SMART之间的通讯线路建立好。 在NetPro网络组态里为CPU新插入一条S7连接。
站点选择 “未知” ,选择通讯协议 “S7 连接” ,点击应用。
在弹出的对话框中,先记住 “块参数” 栏里的 “本地ID” ,编程要用到这个ID。 然后勾选 “建立主动连接” ,设置伙伴的 “地址” (200-SMART的 IP 地址),再点开右下角的 “地址详细信息” 。
在弹出来的对话框设置 伙伴 的 插槽 为 “1” ,因为200-SMART没有插槽的概念,所以默认为1,确认即可 最后再保存-->编译-->下载后即可完成组网。
程序部分 400中使用 SFB14 和 SFB15 实现数据交换。 S7-400 描述 简要描述 SFB 14 读数据 单边编程读访问 SFB 15 写数据 单边编程写访问
GET指令用法: REQ:上升沿触发的启动信号,BOOL类型。不需要一直给电平信号。 ID:就是刚刚组网时用的 “本地ID” ,WORD类型。 ADDR_1:指向伙伴CPU读取区域的指针,ANY指针类型。开头加上 “P#” ,代表指针。由于200-SMART没有DB块的概念,所以默认DB1为200-SMART的V区,笔者的PLC 400里没有用到DB1块,不知道有没有影响。“BYTE 6” 指从指针位置开始连续读取6字节。 RD_1:指向本地CPU读取区域的指针,用法同上。 “RD_1” 和 “ADDR_1” 的读取长度要一致。 NDR:BOOL类型。为1时,代表接收数据成功。 ERROR:BOOL类型。为1时,代表有故障发生。有问题时看它的值。 STATUS:故障代码,WORD类型。有问题时看它和ERROR的值,然后查手册看代码示意。 PUT指令用法:
PUT指令与GET指令基本相似,只不过完成信号NDR换成了DONE,其他的完全相同,这里不再过多赘述。 PUT指令和GET指令的REQ输入信号为脉冲信号,注意不要同时触发,笔者这里使用了400的脉冲位取上升沿和下降沿分别触发。 编译-->下载程序后,如果ERROR和STATUS没有报错,则证明通信成功,已经成功建立通讯了。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |