编辑
2026-08-16
C#
00

目录

技术简述
目前现状
流程自定义算法

技术简述

非标自动化设备中需要根据工艺编写控制程序,由于每个设备的工艺不同,还出现工艺需要不停的调整,就需要电气工程师不停的修改程序,可能现场只是需要简单的调整一下动作顺序,都需要电气工程师出差到现场解决,为了解决这个问题,提出PLC流程自定义算法,让程序员和工艺分开,经过简单的培训,售后工程师可以自己修改动作流程,而不需要修改PLC程序。

目前现状

公司有编程框架的情况下,PLC工程师编写设备动作流程,大部分都是用如下方法编写

image.png

说明: 1.动作描述说明,方便后期维护用 2.同步骤之间使用“ move”传送步骤号,使用“ =”来执行对应的流程步骤,步骤数字每一次以10为单位递增,比如图中满足条件后从20步跳到30步 3.在30步时触发轴操作,控制轴去取料位 如果要调整动作,电气工程师就要修改代码,并且程序中出现大量中转变量,不同的工程师习惯不同,还可能出现编程不规范的情况,导致维护代码困难

流程自定义算法

  1. 归纳总结自动流程中常用的算法,总结出如下控制指令

image.png

  1. 归纳总结自动流程中常用的算法,总结出如下等待指令

image.png

  1. 通过组合控制指令和等待指令,实现流程自定义,还需要讲定义的流程存储下来,定义流程数据结构数据,使用数组存储流程数据,程序根据数组编号取出ActionID,根据ActionID执行控制和等待指令,完成后跳到下一步

image.png 指令参数结构体定义 image.png 流程存储数组定义

  1. 调用FB_ActionStep功能块解析流程数据,只需要调用功能块,修改流程是不需要动功能块的,流程数据存在ST1_ActionParams.Steps_A1中

image.png

  1. 至此还需要设计一个上位机软件来编辑指令,设计流程,软件功能如下

image.png

image.png

image.png

image.png

image.png

本文作者:zhusenlin

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 版权所有:zhusenlin 许可协议。转载请注明出处!