欧姆龙任意次序控制 点击:639 | 回复:4



13859923105

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 92回
  • 年度积分:60
  • 历史总积分:168
  • 注册:2016年3月04日
发表于:2023-07-26 23:20:12
楼主

咨询下各位师傅,如下图:

假设当前空压机主备机次序输入123、132、213等次序,然后3台空压机,次序首位当主机,当压力低于设置值后按设置的次序运行,压力到了后备机会按次序反着停。有没有思路或者案例可以指导分享下。谢谢!





image.png



楼主最近还看过



yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10219回
  • 年度积分:3353
  • 历史总积分:48938
  • 注册:2005年4月22日
发表于:2023-07-27 08:54:41
1楼

队列结构决定主次,通过压力比较决定是否出列.


案例有的,不免费.


这都是论坛讨论烂掉的主题了.


HAVE FUN!

olove83

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 414回
  • 年度积分:961
  • 历史总积分:1710
  • 注册:2008年6月17日
发表于:2023-08-11 16:36:25
2楼

你把题目重新编好,AI几分钟就给你搞定了

olove83

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 414回
  • 年度积分:961
  • 历史总积分:1710
  • 注册:2008年6月17日
发表于:2023-08-11 16:41:08
3楼

以下是用ST语言编写的程序,实现空压机的主备切换逻辑:

```st

VAR

    mainMachine: BOOL := FALSE; // 主机状态

    backupMachine: BOOL := FALSE; // 备机状态

    pressure: REAL := 0.0; // 当前压力值

    setPressure: REAL := 100.0; // 设置的压力值

    sequence: INT := 0; // 当前次序

METHOD MainMachineControl : BOOL

    // 主机控制逻辑

    IF pressure < setPressure THEN

        // 当压力低于设置值时,主机工作

        RETURN TRUE;

    ELSE

        // 压力达到设定值时,主机停止工作

        RETURN FALSE;

    END_IF;

END_METHOD

METHOD BackupMachineControl : BOOL

    // 备机控制逻辑

    IF pressure < setPressure THEN

        // 当压力低于设置值时,备机停止工作

        RETURN FALSE;

    ELSE

        // 压力达到设定值时,备机工作

        RETURN TRUE;

    END_IF;

END_METHOD

METHOD Main

    // 主程序逻辑

    CASE sequence OF

        1:

            mainMachine := MainMachineControl(); // 判断主机状态

            backupMachine := BackupMachineControl(); // 判断备机状态

            IF mainMachine = TRUE THEN

                // 主机工作

                // TODO: 控制主机工作的逻辑

            ELSE

                // 主机停止工作

                // TODO: 控制主机停止的逻辑

            END_IF;

            IF backupMachine = TRUE THEN

                // 备机工作

                // TODO: 控制备机工作的逻辑

            ELSE

                // 备机停止工作

                // TODO: 控制备机停止的逻辑

            END_IF;

        2:

            // 交换主备机次序

            mainMachine := FALSE;

            backupMachine := FALSE;

            sequence := 1;

        3:

            // 交换主备机次序

            mainMachine := FALSE;

            backupMachine := FALSE;

            sequence := 2;

    END_CASE;

END_METHOD

```

请根据实际情况,将程序中的 TODO 部分替换为相应的控制逻辑,以实现空压机的主备切换功能。


olove83

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 414回
  • 年度积分:961
  • 历史总积分:1710
  • 注册:2008年6月17日
发表于:2023-08-11 16:42:59
4楼

AI写的


热门招聘
相关主题

官方公众号

智造工程师