zoukankan      html  css  js  c++  java
  • simotion ST编程,变量和程序的模块化

    通过这几年的实践,对simotion的程序结构规划有了一些新的理解。工程师在面对项目时,经常有几个问题比较困惑。

    目前面对的问题

    1)如何理解其他人编写的程序
    2)如何从程序中找到可以移植的部分

    传统的程序结构

    --- d_HMI_VAR
    --- d_Global_VAR (global variable of different module)
    --- d_IO_VAR
    --- p_module01
    --- p_module02
    

    优点:便于区分变量是否需要连接HMI
    问题:不利于module的移植,module的变量和程序不在一起

    模块化的程序结构

    --- d_general_var (d_machine_data)  \ machine status, axis status, axis cmd, alarms
    --- d_IO_VAR 
    --- p_module01 \  variables, fb-instance, program
    --- p_module02 \
    --- p_module03 \
    

    优点:

    • 全局变量定义部分,仅包含和顶级设备功能相关的通用变量,如设备模式、轴状态,报警word等
    • 和模块(工艺)相关的变量,放在模块内global部分中
    • 减少程序和程序之间的耦合
    • 单个module包含本模块所用的大部分变量

    问题:

    • 需要改变连接HMI变量的习惯,HMI需要到不同的module内连接变量。这个改变同时也方便了HMI连接的模块化。

    小结

    对程序结构进行改进,是长期的工作。不同人,不同的时期理解可能会不一致。本文只提供了一种理解。

  • 相关阅读:
    Fitness
    【代码优化】Unity查漏补缺
    Fitness
    MonoBehaviour生命周期与对象数据池应用
    Fitness
    点、向量、方向在局部与世界坐标系转换的对比
    在企业运营中的感触
    技术杂想2015年夏天
    Heimich manoeuvre 海姆利克氏操作
    徒手CPR心脏复苏
  • 原文地址:https://www.cnblogs.com/lion-zheng/p/9429551.html
Copyright © 2011-2022 走看看