logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

开源!Go+Wails+Vue3 手搓一个 PLC 实时监控桌面工具

工业 PLC 监控离不开 Watch Table 功能,但商业 SCADA 要么贵要么闭源。本文分享一个开源方案——使用 Go + Wails v2 + Vue 3构建跨平台桌面监控工具,支持 Siemens S7 和 Modbus TCP协议,实现连接管理、实时点位轮询、变化高亮、趋势曲线和强制写入。重点讲驱动抽象层的接口设计、S7 批量读取优化、基于Context 的轮询引擎,以及 EChar

#开源#golang#开发语言
Python + Snap7 实现西门子 S7-1200/1500 数据采集

文章摘要 本文介绍了使用Python-Snap7库与西门子S7 PLC通信的完整流程。主要内容包括: Snap7简介:一个开源跨平台的S7 PLC通信库,支持全系列西门子PLC,无需额外授权。 环境准备: 安装python-snap7库 PLC端的关键配置(PUT/GET通信权限、块访问模式、防火墙设置) 核心操作: 建立客户端连接 读取DB块数据的方法 常用PLC数据类型的字节解析工具函数(In

文章图片
#python#开发语言
UART 串口通信详解

UART(Universal Asynchronous Receiver/Transmitter,通用异步收发器)是一种异步串行通信协议。TX(发送):发送数据RX(接收):接收数据通信双方通过事先约定的波特率(Baud Rate)来同步数据采样时机,不需要额外的时钟线。UART 协议基础:异步串行通信的原理与数据帧格式ESP32-S3 UART 控制器:3 个独立控制器、灵活的引脚映射驱动配置与

文章图片
#单片机#嵌入式硬件
边缘计算与云边协同——当采集不再只是“上传“

上一篇文章我们深入探讨了如何在 256MB 内存、500MHz CPU 的资源受限网关上跑采集任务,核心结论是"优化算法比换语言更有效"。但那篇文章的前提假设仍然是"采集→上传"的单向模式。这一篇,我们要把这个假设打破——当采集网关不再只是上传数据,而是要在边缘侧做本地决策、与云端协同运行规则、甚至在云端完全不可达时独立自治数天,架构会发生什么变化?2022 年,我参与过一个化工厂的项目。现场有一

文章图片
#边缘计算#人工智能
数据质量与异常检测——当采集系统学会了“怀疑“

"""quality_badge.py — 数据质量标签系统每个采集到的数据点带有一个质量标签,贯穿数据全生命周期。""""""数据质量标签"""# === Good 系列(绿色)===GOOD = ("GOOD", 192, "数据正常,完全可信")GOOD_UNCERTAIN = ("GOOD_UNCERTAIN", 160, "数据正常,但精度低于正常水平")# === Suspect 系列

文章图片
#网络#运维#服务器
MQTT 与 Sparkplug B——从车间到云端的最后一公里

/ sparkplug_b.proto — Sparkplug B 核心消息定义// 64 位时间戳(Unix 毫秒)// 序列号(用于去重和排序)// metric 列表// metric 名称// 数据时间戳// 数据类型(见下表)// 单位数据类型编号(datatype)编号类型说明C/Python 对应1Int8有符号 8 位2Int16有符号 16 位3Int32有符号 32 位4Int

文章图片
#网络#python
工业数据采集安全——当 OT 遇见 IT,谁对谁错?

工业数据采集安全不是单独某个环节的工作,而是链路中每一层的职责。协议/层最低安全保障推荐方案额外成本Modbus TCP无DPI 网关 + VLAN + 写保护一个网管型交换机 + 一台 DPI 代理OPC UA连接建立增加 10-15msMQTT用户名/密码TLS v1.3 + 证书认证证书管理维护成本网络层物理隔离工业防火墙 DPI + 802.1X硬件采购成本运维层无审计操作日志 + IDS

文章图片
#安全#网络#web安全
高速采集与时间序列——当采集间隔从秒级进入毫秒级

回到开头的问题:当采集从你要放弃的你要换上的原因clear预分配环形缓冲区(array零 GC、零 realloc、可预测延迟+ 偏移校准Windows 上差 15000x 的精度全量原始数据上传SDT 压缩 + 特征提取40x+ 压缩比,保留关键信息逐条 MQTT 发布批量发布吞吐量提升 20x+print()/ 日志异步日志采集线程绝不阻塞单线程采集+处理双线程:采集 + 消费者GIL 导致消

文章图片
#网络#python
Python + Snap7 实现西门子 S7-1200/1500 数据采集

文章摘要 本文介绍了使用Python-Snap7库与西门子S7 PLC通信的完整流程。主要内容包括: Snap7简介:一个开源跨平台的S7 PLC通信库,支持全系列西门子PLC,无需额外授权。 环境准备: 安装python-snap7库 PLC端的关键配置(PUT/GET通信权限、块访问模式、防火墙设置) 核心操作: 建立客户端连接 读取DB块数据的方法 常用PLC数据类型的字节解析工具函数(In

文章图片
#python#开发语言
数据模型与地址映射——为什么你读到的永远是错位的数据

本文深入探讨了PLC数据采集中的字节序与地址映射问题,揭示了看似正常的Modbus通信背后隐藏的数据错位风险。主要内容包括: 数据错位的典型表现:通信正常但数值完全错误,如25.6℃被解析为-4.29亿 PLC内部复杂的数据组织架构,打破了"寄存器即连续地址"的直觉认知 字节序问题详解:大端/小端存储差异导致数值完全错乱,不同厂商PLC的字节序特性 数据对齐机制:PLC编程中的padding填充字

文章图片
#python#开发语言
到底了