马上注册,享受更多特权
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 Bob 于 2020-4-17 21:36 编辑
子程序逻辑细化
根据前面的状态和功能划分、I/O端口功能定义、变量定义,就可将前面划分的各子程序需要处理的逻辑,细化为如下表中语句描述。 为便于说明编程方法,只将空压机几个运行状态部分的子程序编程示出,并对前后关系进行了说明,方便读者理解归纳,其余部分只说明其功能要点,读者可自行推衍编程。 Autoshop编程软件最多支持多个127个子程序,在编写时除了将前面提到的运行状态按对应子程序编写外,还可以将采集参数处理、传感器异常判断、告警标志刷新、运行时间的累计等等,归类成几个子程序,便于后续编程完善。
Sbr0 | 系统上电后即设状态指针D149=0(自检状态),执行该子程序几秒钟;用于等待其它设备上电完成,温度压力传感器的检测,以便HMI显示欢迎画面; 本子程序只有1处调用。 | | 1) 清除所有控制输出,复位系统各种标志/命令/索引/缓冲区等; 2) 将系统状态说明信息指针D911=8,(显示“上电自检中...”) 3) 此时按RUN或STOP按键无效,清除M137(RunKey)和M138(StopKey) 4) 倒计时D10减到为0时,将状态指针D149置为1(转状态1);
|
上表中的功能,可用梯形图程序来表达,举例如下:
其中D10倒计时精度要求不高,采用系统秒跳脉冲M8013计时就够了。
在主程序中,判断起动命令(含面板命令、远程控制端子命令),若命令有效,执行Sbr2子程序,开始起动主电机,空压机运行:
|