news 2026/10/9 5:36:27

会新建独立的 `MaxWell.Watchdog` 项目,不复用 `MaxWellHardwareMonitor`。后者继续负责设备连接检测

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
会新建独立的 `MaxWell.Watchdog` 项目,不复用 `MaxWellHardwareMonitor`。后者继续负责设备连接检测

会新建独立的MaxWell.Watchdog项目,不复用MaxWellHardwareMonitor。后者继续负责设备连接检测。

方案如下:

  • 看门狗作为无界面独立进程,由主程序启动后立即拉起,并在主程序运行期间持续监控其进程与心跳。
  • 主程序在硬件可能带电时写入“已布防”状态,并周期性刷新心跳;正常退出前先执行既有安全停机流程,再撤防并通知看门狗。
  • 看门狗发现主程序进程异常消失、心跳超时或未完成正常退出标记时,立即进入一次性的安全停机流程。
  • 安全停机不依赖已退出主程序的内存对象。看门狗读取独立配置,直接连接每个已启用工站的主控板/PLC,并按限定超时、逐站隔离失败的方式执行。
  • 停机顺序固定为:关闭测试使能 -> 将电源下调至可配置的安全电压 -> 关闭高压电源输出 -> 发送各硬件的安全停机命令。每步都记录结果,即使单站或单设备通信失败,也不会阻塞其它工站。
  • 用命名内存映射或命名事件实现进程间状态同步;所有安全配置放入单独 JSON,避免依赖主程序工作目录中的临时状态。
  • 看门狗在触发后保持运行并落盘审计日志,防止重复发送控制命令,同时明确记录哪些站点已安全关闭、哪些设备失联。
  • MaxWell主程序仅增加轻量的看门狗启动、布防、心跳、正常退出撤防集成;硬件实际控制逻辑放在看门狗内,保证主程序崩溃后仍可执行。

实施计划:

  1. 新建MaxWell.Watchdog控制台项目并加入MaxWell.sln,引用当前主控板协议和配置模型。
  2. 定义独立的看门狗配置,包括被监控进程、心跳超时、安全电压、站点主控板/PLC地址、启用状态和动作超时。
  3. 实现跨进程心跳、布防、正常退出确认和异常判定。
  4. 封装每类硬件的安全关闭适配器,优先实现主控板测试使能与高压电源,随后接入 PLC、负载单元等明确支持安全关闭的设备。
  5. 在MaxWell的启动、硬件上电/测试开始、正常退出路径接入看门狗状态管理。
  6. 增加不依赖真实设备的单元测试,覆盖异常退出、心跳超时、正常退出不误触发、单站失败不影响其他站点和重复触发抑制。
  7. 编译解决方案,并提供现场联调步骤:先在仿真或断开负载的条件下验证主控板协议与安全电压值,再启用生产配置。

有一个需要在实施前确认的硬件边界:PLC 和负载单元的“关闭所有硬件”具体对应哪些安全命令。目前可以确定主控板的测试使能与高压电源关闭接口;其余设备应按现有 PLC 点位和设备协议逐项映射,不能将“断开 TCP”误当成硬件断电。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/9 5:34:51

GitHub热榜解读:从AI Agent到本地优先,如何看趋势选项目

GitHub热榜的日榜(2026-10-02)出来了。我从几年前开始养成了每天早晨刷一遍热榜的习惯,不为别的,就想看看社区里最近在折腾什么。今天这份榜单挺有意思,AI Agent类的项目依然强势,但中间混进去好几个做本地…

作者头像 李华
网站建设 2026/10/9 5:32:44

VS Code接入Claude第三方API:Base URL、API Key与settings.json配置指南

1. 先理清思路:扩展、API 与模型服务之间到底怎么配合这两年用 VS Code 做 AI 辅助开发,几乎成了不少开发者的日常。尤其是 Claude 这类模型能力强、代码理解度高的助手,集成进编辑器之后,写代码、改 bug、补测试的效率提升非常明…

作者头像 李华
网站建设 2026/10/9 5:31:58

C++ 编程与 STL 模板:从泛型编程到内存安全详解

1. 引言C 作为一门兼具高性能与灵活性的编程语言,其模板机制和标准模板库(STL)是每一位开发者都必须掌握的核心知识。模板让代码具备泛型能力,STL 则提供了大量现成的容器、算法和迭代器,而智能指针则帮助我们更安全地…

作者头像 李华