当前位置: 首页 > news >正文

SIEMENS PLC程序解读 ST 语言 车型识别

1、ST程序代码

IF #Type1_MIX <= #CFG_Type.Type.CT AND #CFG_Type.Type.CT <= #Type1_MAX AND #CFG_Type.Type.CT<>0  THEN#Type[1] := 1;FOR #I := 0 TO 39 DOIF #CFG_Type.Type.CT/10 = (#Type1_MIX + 10 * #I)/10 THEN#Sub_Type."1"[#I + 1] := 1;END_IF;
END_FOR;END_IF;

2、代码程序解读

   这段代码是西门子 TIA Portal 中使用的 Structured Text(ST)编程语言,属于 IEC 61131 - 3 标准的一部分,常用于工业自动化编程。下面来详细解释代码的功能。

代码功能概述

   此代码的主要功能是依据特定条件判定是否将车型设置为 Type1,并且依据更细致的条件来确定子类型。

代码详细解释

IF #Type1_MIX <= #CFG_Type.Type.CT AND #CFG_Type.Type.CT <= #Type1_MAX AND #CFG_Type.Type.CT<>0  THEN

  • 这是一个条件判断语句。当同时满足以下三个条件时,代码块内的语句会被执行:
    • #Type1_MIX <= #CFG_Type.Type.CT#CFG_Type.Type.CT 的值大于等于 #Type1_MIX
    • #CFG_Type.Type.CT <= #Type1_MAX#CFG_Type.Type.CT 的值小于等于 #Type1_MAX
    • #CFG_Type.Type.CT<>0#CFG_Type.Type.CT 的值不等于 0。
    #Type[1] := 1;

  • 若上述条件都满足,就把数组 #Type 的第一个元素赋值为 1,这意味着车型被设定为 Type1
    FOR #I := 0 TO 39 DO
  • 这是一个 FOR 循环,循环变量 #I 从 0 到 39 依次取值。

        IF #CFG_Type.Type.CT/10 = (#Type1_MIX + 10 * #I)/10 THEN

  • 在每次循环里,会执行这个条件判断语句。若 #CFG_Type.Type.CT 除以 10 的结果和 (#Type1_MIX + 10 * #I) 除以 10 的结果相等,就会执行下面的语句。

            #Sub_Type."1"[#I + 1] := 1;

  • 若上述条件满足,就把数组 #Sub_Type."1" 的第 #I + 1 个元素赋值为 1,这表明对应的子类型被选中。
        END_IF;END_FOR;
END_IF;

  • ED_IF 用于结束条件判断语句,END_FOR 用于结束 FOR 循环。

总结

整体而言,这段代码会先判断车型是否为 Type1,若满足条件,就把车型标记为 Type1,接着通过循环进一步确定具体的子类型。


http://www.mrgr.cn/news/100161.html

相关文章:

  • MyBatisPlus文档
  • Flink部署与应用——部署方式介绍
  • Python Cookbook-6.9 快速复制对象
  • 数据结构0基础学习堆
  • 【视频时刻检索】Text-Video Retrieval via Multi-Modal Hypergraph Networks 论文阅读
  • 五一去荣昌吃卤鹅?基于Java和天地图的寻找荣昌卤鹅店实践
  • 【每天一个知识点】IPv4(互联网协议版本4)和IPv6(互联网协议版本6)
  • JDBC 批处理与事务处理:提升数据操作效率与一致性的密钥
  • Web漏洞--XSS之订单系统和Shell箱子
  • 架构师面试(三十六):广播消息
  • Python数据分析案例73——基于多种异常值监测算法探查内幕交易信息
  • Safety Estimands与Efficacy Estimands的差异剖析
  • 【金仓数据库征文】金仓数据库:国产化浪潮下的技术突破与行业实践
  • VRRP与防火墙双机热备实验
  • python pymysql如何保证数据库更新成功
  • 考研英一学习笔记
  • 传感器模块有助于加速嵌入式视觉开发
  • Spring AI 快速入门:从环境搭建到核心组件集成
  • 脚本批量启动Node服务器
  • 电子设备的“记忆大脑”:NAND、NOR、EEPROM谁在掌控你的数据?