技术论坛

 SIMATIC S7-1500与TIA博途软件的使用---连载71

返回主题列表
作者 主题

至圣

经验值: 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函数对通信伙伴进行读写访问。

 

您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。