返回主站|会员中心|保存桌面

三菱电机服务商    

PLC、变频器、伺服驱动、触摸屏,机器人

联系方式
  • 联系人:吴经理
  • 电话:18576370666
  • 邮件:18576370666@163.com
新闻分类
  • 暂无分类
站内搜索
 
首页 > 新闻中心 > 怎么控制三菱PLC每月初设备上电清零上个月计数!
新闻中心
怎么控制三菱PLC每月初设备上电清零上个月计数!
发布时间:2025-12-08        浏览次数:5        返回列表

要实现三菱 PLC 每月初设备上电时清零上个月的计数器,核心思路是通过 “日期判断 + 上电触发 + 计数清零” 的逻辑组合,利用 PLC 的实时时钟(RTC)功能识别 “每月 1 日”,并在首次上电扫描时触发清零动作。以下是适配三菱 FX 系列(FX3U/FX5U/FX2N)的实操方案,分 “基础版(仅 1 日上电清零)” 和 “进阶版(补漏 1 日未上电的情况)”,覆盖工业场景核心需求:

前置准备:确认 PLC 实时时钟(RTC)功能

  1. FX 系列时钟寄存器:三菱 PLC 内置实时时钟,通过特殊寄存器存储日期时间,核心寄存器(十进制):

    • D8018:年(如 2025)、D8019:月(1-12)、D8020:日(1-31);

    • 若 PLC 无内置 RTC(如 FX1S),需外接 RTC 模块(FX1N-5DM)或通过触摸屏 / 上位机同步时间。

  2. 校准时钟:通过编程软件(GX Works2/GX Developer)写入当前日期,或用指令校准:

    ladder

  3. LD     M8000          // 常ON
    MOVK   25, D8018      // 年:2025
    MOVK   12, D8019      // 月:12
    MOVK   8, D8020       // 日:8
    // 仅首次上电写入,需配合SM0.1(M8002)避免重复写入

方案一:基础版(每月 1 日设备上电时清零)

核心逻辑

利用 PLC “首次扫描脉冲 M8002” 触发日期检测,若当前日期是 1 日,则清零上月计数器;非 1 日则保留计数。

梯形图程序(FX3U 为例)

ladder

// 步骤1:首次上电触发(M8002仅上电瞬间ON)
LD     M8002          
MOV    D8020, D100     // 将当前日期(日)存入D100
// 步骤2:判断是否为每月1日
LD     M8002          
CMP    D100, K1, M0    // 比较D100(日)与1:M0=ON(等于)、M1=ON(大于)、M2=ON(小于)
// 步骤3:1日则清零计数器(C0为上月计数,可替换为其他计数器/寄存器)
LD     M0              // 日期=1日
RST    C0              // 清零计数器C0
RST    D200            // 若用数据寄存器计数(如D200),同步清零
// 步骤4:非1日则保留计数(无需额外指令,仅注释说明)
LD     M1              // 日期>1日
OUT    M100            // 标记:非月初,计数保留

关键说明

  • M8002:PLC 上电后仅触发 1 次,确保 “仅上电时判断清零”,避免运行中误清零;

  • C0:需设置为 “停电保持型计数器”(参数中勾选 C0 的停电保持),确保上月计数不丢失;

  • 若需清零多个计数器 / 寄存器,只需在 M0 导通后增加对应的 RST 指令(如 RST C1、RST D201)。

方案二:进阶版(补漏 “1 日未上电,后续上电仍清零”)

核心问题

基础版仅在 1 日上电时清零,若 1 日设备未开机(如节假日),2 日及以后上电则无法清零,进阶版通过 “月份判断” 解决:检测当前月份是否与 “上次上电月份” 不一致,若不一致(跨月),则清零上月计数。

梯形图程序

ladder

// 步骤1:定义寄存器
// D101:存储上次上电的月份(停电保持)、D8019:当前月份、C0:上月计数
// 步骤2:首次上电触发
LD     M8002          
// 步骤3:读取当前月份,对比上次上电月份
MOV    D8019, D102     // 当前月份存入D102
CMP    D102, D101, M10 // 对比当前月(D102)与上月(D101)
// 步骤4:跨月则清零计数,并更新上月月份
LD     M10             // M10=ON → 当前月≠上月(跨月)
RST    C0              // 清零上月计数器
RST    D200            // 清零计数寄存器
MOV    D102, D101      // 更新“上次上电月份”为当前月
// 步骤5:同月则保留计数,仅更新日期(可选)
LD     M11             // M11=ON → 当前月=上月
MOV    D8020, D100     // 存入当前日期,无需清零
// 步骤6:初始化(首次使用时写入当前月份)
LD     M8002          
ZRST   D101, D101      // 若D101为空,先清零
MOV    D8019, D101     // 首次上电写入当前月份

关键说明

  • D101 需设置为 “停电保持寄存器”(FX3U 在参数中勾选 D100-D199 为停电保持),确保断电后仍保留上月月份;

  • 无论 1 日是否上电,只要跨月(如 12 月→1 月),首次上电即清零,解决 “1 日未开机” 的漏清零问题;

  • 若需区分 “当月 1 日之后上电” 和 “跨月上电”,可增加日期判断(如日≤3 日仍清零),适配灵活需求。

补充:计数器类型适配

计数类型清零指令注意事项
硬件计数器(C235-C255)RST CXXX需先断开计数脉冲输入,再清零
软件计数器(C0-C199)RST CXXX停电保持型需在参数中启用,否则上电自动清零
数据寄存器计数(D)RST DXXX 或 MOV K0 DXXX用 MOV K0 更稳定,避免 RST 指令失效

调试与验证

  1. 模拟日期测试

    • 在 GX Works2 中手动修改 D8019(月)、D8020(日)(如改为 1 月 1 日);

    • 模拟 PLC 上电(重启 PLC 或强制 M8002 为 ON),观察 C0 是否被清零;

  2. 跨月测试

    • 将 D8019 改为 12 月,D101 改为 11 月,触发 M8002,确认 C0 清零且 D101 更新为 12 月;

  3. 停电保持验证

    • 写入计数(如 C0=100),断电重启 PLC(非 1 日),确认 C0 仍为 100;

    • 改日期为 1 日,重启 PLC,确认 C0=0。

工业场景优化

  1. 防误清零:增加 “清零确认按钮(X0)”,仅在按钮按下 + 日期满足时清零,避免误操作:

    ladder

  2. LD     M0
    AND    X0            // 清零按钮
    RST    C0
  3. 计数备份:清零前将上月计数存入备份寄存器(如 D300),方便追溯:

    ladder

  4. LD     M0
    MOV    C0, D300      // 备份上月计数
    RST    C0            // 再清零
  5. 报警提示:清零完成后触发指示灯(Y0)或蜂鸣器(Y1),提示操作完成:

    ladder

  6. LD     M0
    SET    Y0            // 清零完成指示灯亮
    LD     T0            // 延时5秒熄灭
    RST    Y0
    LD     M0
    OUT    T0 K50        // T0=5秒
收缩
  • QQ咨询

  • 电话咨询

  • 18576370666
  • 添加微信客服