• {{item.name}}
DCS/SIMATIC PCS7 {{item.name}}
{{item2.name}}
更多
常问问题

在CFC中如何连接DB块中的变量

star star star star star
5.0 分
文档编号:F0304| 文档类型:常问问题| 发布时间:2024年03月01日
  • 0
  • 1023
  • 12570
本文描述了在CFC中如何连接DB块中的变量

问题:在CFC中,如何将DB块中的变量连接到块引脚?

解答:
在CFC中所连接的DB块必须是用户数据块(User DB)。在CFC中通过菜单OptionsCustomizeCompile/Download… 可以查看和修改用户数据块的范围,默认范围是DB1-DB60,超出该范围的DB块在CFC中无法引用,如果引用了,CFC编译时会提示错误。

1. 对于DB块中定义的基本变量类型,可以在CFC中直接连接到该变量的符号名。前提是CFC中块引脚的数据类型定义与DB块中的数据类型一致。
例如,引脚定义为Real类型,则可以连接到DB块中定义为Real类型的变量。如果类型不同,即使数据长度一致也无法连接,例如Real和DWORD无法连接。如下图所示:


2. ANY类型的引脚可以连接到DB块中的任何类型的变量,包括基本类型和ARRAY,STRUCT等复杂类型。如下图所示:


3. 如果要连接复杂变量类型(例如ARRAY, UDT, STRUCT等)中的某个变量,则无法通过符号名称连接,这种情况下只能使用绝对地址连接。绝对地址的引用语法如下:

变量类型引用语法示例
bitdb1.dx2.0
bytedb1.db2
worddb1.dw2
dworddb1.dd2

在CFC中,绝对地址引用可以直接连接到BOOL,BYTE,WORD和DWORD类型的引脚上,但是无法连接到Int, Dint, Real等类型的引脚。如果要连接此类引脚,还需要在连接之前通过类型转换块进行转换。

在下图所示例子中,要将一个Int类型的引脚连接到DB块中一个包含5个Int值的Array变量的第二个值。Array的起始地址为18,因此第二个值的地址为20。在CFC中应该连接的地址为“DB1.DW20”,由于Int类型的引脚无法直接连接,因此通过W_I转换块实现连接。

关键词
CFC, DB, 变量连接


您可以前往全球资源库查看此文档


剩余80%未阅读,请登录后下载/查看文档

  • 评论
更多
  • 分享

    扫码分享

提示
您即将前往“全球技术资源库”。
“全球技术资源库”的用户名与本地支持中心(下载中心、技术论坛、找答案、1847工业学习平台)的用户名不通用。如果需要在全球技术资源库下载文档,您需要重新登录或注册。
确定

考证咨询点我

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