- {{item.name}}
FC中如何传递ANY指针
- 0
- 713
- 4536
问题描述: 在STEP7函数FC1中调用SFC14和SFC15,程序结构如图1,如何将FC1接口中定义的ANY指针 RD_RECORD及WR_RECORD(图2)分别传递给SFC14及SFC15 ? ......
问题描述:
在STEP7函数FC1中调用SFC14和SFC15,程序结构如图1,如何将FC1接口中定义的ANY指针 RD_RECORD及WR_RECORD(图2)分别传递给SFC14及SFC15 ?

图 1

图 2
解决方法:
如图3所示,由于FC接口参数中定义的ANY类型参数RD_RECORD 无法作为其调用函数SFC14 RECORD参数的实参,而在临时变量区中定义的ANY类型变量却可以作为SFC14 RECORD参数的实参,所以可采取通过临时变量中转的方式来传递ANY指针。

图 3
附件提供的样例程序中在FC1函数的临时变量区中定义两个ANY类型变量 RD_Temp和 WR_Temp,分别作为SFC14和SFC15的RECORD参数。
FC1中的Network 1通过1个WORD和2个DWORD逐字段传递的方式将RD_RECORD的内容传递给 RD_Temp;
FC1中的Network 2通过在LOOP循环中逐字节传递的方式将WR_RECORD的内容传递给WR_Temp;
| 测试环境 | 版本 |
| PC操作系统 | Microsoft Windows XP, SP3 |
| STEP 7 | V5.5, SP2 |
关于指针结构及寻址编程参考下载中心文档《S7-300和S7-400寻址》文档编号“F0215”
样例程序: nestedfc.zip (867,6 KB)
下载此文档:
F0670_FCANY.pdf (104,9 KB)
关键词
函数,ANY,嵌套,SFC14,SFC15
- 评论
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
关联文档
- 如何计算ANY 型指针的偏移量或改变指针?
- 在 S7-SCL 中如何进行 SFC14 和 SFC15 ANY 参数的编程?
- 在STEP 7 (TIA Portal)中,当将FC和FB的参数传递到新的S7-1200/S7-1500控制器时,应当注意些什么?
- 包括积分传递函数在内的模型预测控制
- 在 WinCC 和 PCS 7中如何创建 memory dump 以进行诊断 ?
- 在 S7-1200/1500 中如何通过变量索引实现数组访问?
- STEP 7 Professional V12中如何监视PLC通讯连接状态
- 在 WinCC 运行系统中如何连接或断开已经导出的报警记录或变量记录的归档片段?
- B.Data系统中如何使用视图
- B.Data系统中如何进行用户权限管理


西门子官方商城




{{item.nickName}}