作者 | 主题 |
---|---|
菁 至圣 经验值: 11116 发帖数: 1023 精华帖: 21 |
楼主 2016-11-03 10:00:53
主题:SIMATIC S7-1500与TIA博途软件的使用---连载71 以下内容节选自机械工业出版社出版的西门子自动化技术丛书----《SIMATIC S7- 1500 与 TIA博途软件使用指南》, 作者崔坚。更多更详细的内容请您参考《SIMATIC S7- 1500 与 TIA博途软件使用指南》一书。
工业以太网与PROFINET--- S7-1500 S7通信示例 (使用PUT/GET在相同项目下配置S7-1500 PLC间的通信)
使用PUT/GET在相同项目下配置S7-1500 PLC间的通信 1) 创建新项目,例如“S7 通信_PUT_GET”。在项目树下点击“添加新设备”,分别选择CPU1513-1和CPU1516-3,创建两个S7-1500 PLC站点。 2) 在设备视图中,点击其中一个CPU的以太网接口,在“属性”标签栏中设定以太网接口的IP地址。例如 CPU1513-1的以太网IP地址为192.168.0.10,子网掩码为255.255.255.0,如图9- 14所示。 3) 在CPU属性标签中选择“保护”-〉“连接机制”,然后使能“允许来自远程对象的PUT/GET通信访问”,如图9- 42所示。 图9- 42使能PUT/GET远程访问功能
注意: 出于对数据安全的考虑,在缺省状态下此选项未被使能。原则上仅需要将做S7通信服务器侧的CPU使能此选项,而做客户端的CPU可以不勾选此项。 4) 以相同的方式设置CPU1516-3的IP地址和子网掩码,并使能允许远程访问功能。示例中设定的IP地址为192.168.0.20,子网掩码为255.255.255.0。 注意: CPU以太网接口在缺省状态下IP地址相同,具有相同缺省IP地址的CPU不能同时连接在一个子网上。通过CPU的显示面板可以修改CPU的IP地址,通过在线联机和下载的方式也可以修改CPU的IP地址。
5) 打开主程序块直接调用通信函数(“指令”->“ 通信”->“S7通信”),例如将通函数PUT和GET拖放到CPU1513-1 CPU 的OB1中,如图9- 43所示。 图9- 43调用通信函数PUT/GET
注意: 可以点击通信函数图标中的下拉三角形显示4对通信区。 6) 点击通信函数PUT的组态图标,选择连接参数标签,如图9- 44所示。在通信伙伴中选择CPU1516并确定通信接口,例如接口X1,S7通信连接自动建立,示例中由CPU1513主动建立连接。 图9- 44配置S7连接参数
7) 点击“块参数”标签配置通信函数的参数。输入、输入/输出参数如图9- 45所示。 启动请求 REQ: 用于触发数据的通信,每一个上升沿触发一次。示例选择了CPU的时 钟存储器位(在CPU的属性中定义),发送频率为1Hz。 写入区域 ADDR_1 起始地址: 通信伙伴被写入数据区的开始地址,示例中为DB2.DBX100.0。 长度: 被写入数据区的长度,示例中为60个字节。这样通信伙伴数据区定义完成,为DB2.DBB100~DB2.DBB159。 注意: 对于PUT/GET通信必须使用非优化DB块。
发送区域SD_1 起始地址: 发送数据区的开始地址,示例中为DB1.DBX0.0。 长度: 发送数据区的长度,示例中为60个字节。这样通信双方的数据区定义完成,CPU1513将本地DB1.DBB0~DB1.DBB59中的数据写入到CPU1516的数据区DB2.DBB100~DB2.DBB159中。 图9- 45通信函数PUT的输入、输入/输出参数
PUT的输出参数用于指示通信的状态,如图9- 46所示。 DONE :每次发送成功,产生一个上升沿。 ERROR :错误状态位。 STATUS:通信状态字。 图9- 46通信函数PUT的输出参数
8) 点击通信函数GET的组态图标,选择连接参数标签。在通信伙伴中选择CPU1516并确定通信接口,例如接口X1,使用组态PUT时建立的S7通信连接。 注意: 一个S7通信连接可以同时进行PUT、GET通信任务。 9) 点击“块参数”标签配置通信函数的参数。输入、输入/输出参数如图9- 47所示。 启动请求 REQ: 用于触发数据的通信,每一个上升沿触发一次,示例选择了CPU的时 钟存储器位(在CPU的属性中定义),发送频率为1Hz。 读取区域 ADDR_1 起始地址: 需要读取通信伙伴数据区的开始地址,示例中为DB2.DBX0.0。 长度: 读取数据区的长度,示例中为60个字节。这样通信伙伴数据区定义完成,为DB2.DBB0~DB2.DBB59。 注意: 这里必须使用非优化DB块。
存储区域RD_1 起始地址: 接收读取通信伙伴数据区的开始地址,示例中为DB1.DBX100.0。 长度: 接收数据区的长度,示例中为60个字节。这样通信双方的数据区定义完成,CPU1513将读取通信伙伴DB2.DBB0~DB2.DBB59中的数据并存放到本地的数据区DB1.DBB100~DB1.DBB159中。 图9- 47通信函数GET的输入、输入/输出参数
GET的输出参数: NDR :每次接收到新数据,产生一个上升沿。 ERROR :错误状态位。 STATUS:通信状态字。 配置完成后,通信连接自动生成,通信函数自动赋值。 10) 将配置和程序分别下载到两个CPU中,点击通信函数上的诊断图标,对通信连接进行诊断,这也是通信的先决条件。如图9- 48所示,通信连接已经建立。 图9- 48诊断S7 通信连接
11) 连接建立后,打开变量监控表监控通信数据,这样S7连接通信任务就轻松完成了。示例程序可以参考光盘目录:示例程序->以太网通信文件夹下的《S7 通信_PUT_GET》项目。 注意: 示例中,通信双方可以使用同一个S7连接通过PUT/GET函数对通信伙伴进行读写访问。
|