step7通讯中使用通讯功能块fc5和fc6

step7通讯中使用通讯功能块fc5和fc6

ID:20385144

大小:116.00 KB

页数:7页

时间:2018-10-13

step7通讯中使用通讯功能块fc5和fc6_第1页
step7通讯中使用通讯功能块fc5和fc6_第2页
step7通讯中使用通讯功能块fc5和fc6_第3页
step7通讯中使用通讯功能块fc5和fc6_第4页
step7通讯中使用通讯功能块fc5和fc6_第5页
资源描述:

《step7通讯中使用通讯功能块fc5和fc6》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、使用下面的通讯连接,在S7-300中的S7程序中,必须调用通信功能块FC5"AG_SEND" 和FC6"AG_RECV"。·TCP 连接·ISO-on-TCP连接(RFC1006)·ISO 传输连接·UDP连接·FDL连接通信功能块FC5"AG_SEND" 和FC6"AG_RECV" 的特点·FC5和FC6是异步通信方式。·在本例中,是通过OB1调用这些功能块的。(见EntryID: 2795485)。·能够在OB1的几个循环中执行.·FC5通过输入参数"ACT"被激活。·由"DONE"或"ERROR"表示工作结束状态。 ·AG_SEND 和AG_RECV能够通过连接实时通信。 

2、·在SIMATIC_NET_CP 库中"CP300>Blocks",能够找到功能块FC5"AG_SEND"V4.2 和FC6"AG_RCV"V4.7。示例程序S7软件的SIMATIC_NET_CP 库中包含了通信功能块FC5"AG_SEND"  和FC6"AG_RCV",FC5"AG_SEND"是向另外的S7站,计算机站,或者第三方的系统发送数据。FC6"AG_RECV"是从另外的S7站,计算机站,或者第三方的系统接收数据。示例程序通过ISO-on-TCP连接演示了FC5"AG_SEND"  和FC6"AG_RCV"的功能。首先在S7-300站中进行硬件配置。注意Note:设置M

3、B10作为时钟字节,时钟标记触发发送请求,保存和编译S7-300硬件配置并下载到CPU中。在本示例程序中使用了定时器T10。在NetPro中配置通信连接,如果通信对象在同一个S7项目中被设置,那么就能够设置一个指定的通信连接;如果通信对象没有在同一个S7项目中被设置,那么一个非指定的通信连接可以被设置。当设置通信连接时,确保正确的IP地址或者PROFIBUS地址,以及正确的接口,TSAP,或者LSAP,这些是在通信对象之间建立通信连接的条件。在通信连接-> "General"属性对话框中,能够找到通信功能块FC5"AG_SEND" 和FC6"AG_RECV"输入参数"ID" 和"

4、LADDR"。图一:设置通信连接STEP7程序包含了OB100,OB1,FB200,DB200,DB201,FC5 和FC6块。OB100:OB100是CPU重新启动(热启动)块。在这个OB块中,通过标记M0.3"START-UP".使能首次通信。OB1:OB1是循环调用块。调用参数(INIT_COM)为M0.3"START-UP"的FB200(背景数据块:DB200),在FB200运行后,复位M0.3"START-UP"。 图二OB1  FB200OB1调用FB200,在FB200中调用通信功能块FC5"AG_SEND" 和FC6"AG_RECV",在输入参数"ACT"输入一个

5、上升沿,来触发发送请求。通过时钟标记M10.7和变量"SND_BUSY".来控制发送请求。如果发送请求正在运行,这时候"SND_BUSY"被置位,那么触发一个新的发送请求是不可能的。这个互锁是非常重要的,因为通信是异步的,并且能够持续几个循环周期。持续的触发新的发送请求,而没有等待检查工作是否结束,这将会产生通信过载的错误。输入参数"ID" 和"LADDR"的值必须和通信连接的属性对话框中的参数一致(见图一)。在FC5的输入参数"SEND"中,必须指定被发送的数据区域(发送缓冲区)的地址和长度,例如P#DB201.DBX0.0BYTE100。在输入参数"LEN"中,需要输入被发送

6、的字节长度(100)。输出参数"DONE","ERROR"和"STATUS"用来表示同一个循环中通讯完成情况及状态。图三FB200FC5"AG_SEND"调用如果发送请求成功完成,"SND_BUSY"被复位,然后一个新的发送请求能够被再次触发。如果发送请求产生错误,"SND_BUSY"同样被复位,并且FC5的"STATUS"输出参数值作为错误记录被保存。图四:FB200复位"SND_BUSY"和保存"STATUS"。输入参数"ID" 和"LADDR"的值必须和通信连接的属性对话框中的参数一致(见图一)。在FC6的输入参数"RECV"中,必须指定接收的数据区域(接收缓冲区)的地址和

7、长度,例如P#DB201.DBX100.0BYTE100 。图5:FB200调用FC6"AG_RECV"输出参数"NDR"是表示新数据是否被接收,输出参数"LEN"表示接收数据的长度。如果没有成功接收数据,输出参数的值将被保存和分析。 图6:FB200:FC6的状态和接收的数据的长度 在FB200中,有对FC5"AG_SEND" 和FC6"AG_RCV"产生的状态值的分析,在数据类型"Structure".的变量"STATISTIC"里保存着FB200的这些统计接口参数。图7:数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。