马上注册,享受更多特权
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 Bob 于 2020-4-18 13:00 编辑
空压机控制程序设计
参考前面几讲的内容,理解了工频空压机的原理、工艺要求,我们对控制程序的功能也就有了比较全面的认识,要实现这些功能并不困难,但要将这些功能以比较简单易懂、易调试、功能易扩展的程序实现,则需一个比较合理的程序框架。 正如前面提到的,因空压机有工频直接起动、工频Y-三角形起动、主机变频、主机工频变频在线切换等多种机型,我们用一个程序,最后通过软件设置项,或外部DI端口的方式来进行切换,基于这种考虑,在软件上也需搭好适应两种驱动的程序框架,确保后续功能添加时不影响工频驱动程序执行的可靠性。 控制程序以大家都熟悉的梯形图来进行编写。有了一个合理的程序框架,咱们可以先实现基本控制功能,再完善保护功能,最后添加增强功能。
将空压机分为若干运行状态
虽然空压机运行时的外观变化不大,只是马达的旋转与停止,但在启动开始、运行中、停机等状态,对输入信号判别、控制逻辑、控制输出的状态却是不同的,我们就依据这一内在的不同,将空压机的状态分为如下几个状态: ST0:上电自检 ST1:正常停机状态 ST2:故障停机状态 ST4:调试状态 ST20:工频Y型起动状态 ST21:工频△起动状态 ST22:工频加载运行状态 ST23:工频卸载运行状态 ST24:工频休眠状态 ST25:工频停机准备状态 上面为空压机运行中需要经过的若干个状态,其中状态10~19预留给变频驱动模式用,中间还预留有添加状态的序号空档,供非标程序程序设计或升级用,可保证已有程序命名的一致性。 工频驱动的控制程序中,状态功能与转移逻辑如下图,在每个状态中的需要处理的逻辑就简单明确了:
说明: 1)不要将状态转移框图与逻辑流程图混淆,两者的差别在于,控制程序在一个时刻只需在一个状态框中循环,只有满足特定的条件后,改变状态指针,才会去执行下一个状态循环内的程序,按此约定编程,可以不用考虑其它状态中程序引起的双线圈的问题,方便调试; 2)还有一些逻辑判断处理,如传感器状态、异常信号的判断等等,是所有状态下都需要执行的,则单独写成子程序,或按处理类型分成若干个子程序,在用户主程序中调用,这样可增强程序可读性。
|