• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
WAIC 2025早鸟票预售

在STEP 7 (TIA 博途)中,如何初始化S7-1500 的优化存储区?

  2013年10月31日  

  描述

  优化块临时数据区中的变量在每次调用块时被用缺省值初始化(如,INT 的缺省值是 0)。下列内容不会被初始化:

   ● 声明为数组的变量。

   ● 非优化块中声明的变量。

  在STEP 7 (TIA 博途)中, 对西门子S7-1500 的优化存储区中的结构体可以用用户自定义的值进行初始化。

  如果要把定义的值加载到结构体中的独立元素,只能先初始化临时结构体,再分配给静态结构体。在SCL中使用FOR循环可以在运行时用很少的代码初始化大量区域(数组结构)。

  图. 01 是一个DB块结构中有两个DB变量的示例。第二个DB变量的PLC数据类型使用的是 "Array [1..10] of motor data type".

图. 01

  使用 "MOVE" 指令(复制值) 可以完整的初始化结构体 InOut 变量 "Motor". 在下面的例子中,临时变量"tmp_Motor" 的内容传到了 InOut 变量 "Motor". 在 LAD/FBD 中, 位信号通过slice访问复制到了状态字(图. 02).

图. 02

  临时变量和InOut变量必须具有相同的数据类型或相同的结构体数据类型。图. 03 说明了在SLC中编程实现完整初始化 InOut 变量 "Motor" 和单个元素的位到位访问。

图. 03

  下面的例子说明初始化DB变量 "Motor field". 在SCL中使用 FOR 指令,循环程序重复执行只要运行变量 "tmp_Counter" 在指定的范围内。由于PLC数据类型是 "Array [1..10] of motor data type", 程序循环必须执行10次("1 TO 10 DO") 来初始化结构体变量中的所有数组元素。

图. 04

  注意

  在 UDT中,可以通过声明定义初始值,这样基于UDT的每一个变量都有其初始值。只有对运行中的设备做程序复位时才需要初始化结构体变量。当 STOP/RUN 切换时,就会从从装载存储区提取初始值,这相当于一次复位。

标签:PLC     西门子  我要反馈
最新视频
苏州新鸿基:破解精密机加的柔性密码   
茵梦达x富诺尔:携手共铸信任力,共赴百年承诺之旅   
研祥金码
40年‘针’功夫提速新能源产线
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
2025世界人工智能大会
2025世界人工智能大会

2025世界人工智能大会暨人工智能全球治理高级别会议(简称“WAIC 2025”)将于7月在上海世博中心和世博展览馆举行

【邀您报名】2025智能趋势论坛——AI数算 重构智造产链生态
【邀您报名】2025智能趋势论坛——AI数算 重构智造产链生态

7月27日,2025智能趋势论坛将以“AI数算 重构智造产链生态”为主题,邀请业界专家、学者和企业家深度交流对话,围绕"

在线会议
热门标签

社区