程序聚合 软件案例 一个用于创建DG-Lab App Socket 控制终端和服务端的 Python 库-PyDGLab-WS

一个用于创建DG-Lab App Socket 控制终端和服务端的 Python 库-PyDGLab-WS

2026-03-15 21:53:32
行业:物联网、医疗健康
载体:框架或代码包
技术:Python、Pytest

业务和功能介绍

该项目于 GitHub 开源。

## 特性

- 通过该库可开发 Python 程序,接入 DG-Lab App
- 完全使用 asyncio 异步,并发执行各项操作
- 可部署第三方终端与 Socket 服务一体的服务端,降低部署复杂度和延迟
- 使用异步生成器、上下文管理器等,结合语言特性
- 通过 Pydantic, 枚举 管理消息结构和常量,便于开发

## 🔧 DG-Lab App 的 Socket 被控功能支持的操作

- 获取 A, B 通道强度 以及 通道强度上限 的数据更新
- 对 A, B 通道强度进行操作,支持增加、减少、设定到指定值
- 向 App 发送持续一段时间的波形操作数据
- 清空 App 波形操作队列
- 获取 App 按下反馈按钮的通知

项目实现

该项目(库)主要难点在于:

1. 理解复杂的DG-Lab设备通信协议和数据格式,由于DG-Lab设备输出的是脉冲波形,因此对延迟要求极高,通信数据格式被极尽压缩,其中就会涉及位运算等。
2. 如何为开发者(用户)简化复杂的DG-Lab App通信流程以及复杂的通信数据构建(如波形数据等),让其专注于业务功能逻辑实现。
DG-Lab App Socket通信的官方涉及包含设备、App、WebSocket服务端、WebSocket客户端,整体架构较为复杂,而本项目支持开发者简化为设备、App、WebSocket终端,将服务端和客户端合为一体,在实际应用中较为实用。

## 开发用法

- 搭建服务端:使用10-15行左右代码即可搭建一个简易服务端
- 搭建客户端/第三方终端:用10-15行左右代码即可搭建简易客户端
- 搭建与第三方终端一体的 WebSocket 服务端:不仅提供 DG-Lab WebSocket 服务端服务,还生成了一个本地终端可供 App 连接,不管是本地终端 DGLabLocalClient 还是 WebSocket 终端 DGLabWSClient,包含的主要方法都相同,因此在该段代码中,终端相关的逻辑与上面的独立的 WebSocket 终端的实现基本相同。这种方式,省去了终端连接 WebSocket 服务端的环节,终端与 WebSocket 服务端一体,网络延迟更低,部署更方便。

## 其他
- 使用 pytest 和 codecoverage 进行测试和代码覆盖率检查
- 使用 mkdocs 和 mkdocstrings 自动构建文档
- 使用 GitHub CI/CD (Actions 或 Workflow)自动完成测试、文档构建、分发
- 使用 Pydantic 管理数据类型,开发者在使用时代码提示体验良好

示例图片视频


Ljzd-PRO
30天前活跃
方向: 后端-Python、爬虫/脚本-爬虫/脚本、
交付率:100.00%
相似推荐
复合材料温度响应实验分析系统-LabVista
该项目主要是用来分析复合材料实验数据的。用户可以在系统里查看温度、应力、应变等实验数据,还能看到数据表、趋势图、状态分布和温区分布。系统也支持数据处理、异常点查看、算法分析、图表生成和报告预览,方便把实验数据整理得更清楚。
德语工程日志 → 英文 RAG 就绪知识库处理管线-DE-EN RAG Pipeline
立项背景:制造业/工程企业积累了大量德语技术论坛日志(含零件号、扭矩、测量规格)及工程图纸附件,存在语言障碍且难以直接喂给 RAG 检索系统;人工翻译成本高,且极易在翻译中丢失或改写关键参数。目标:构建一条自动化管线,将原始德语日志清洗、翻译为英文,封装成 RAG 就绪的结构化 Markdown 知识库,核心技术参数 100% 保真。 核心功能模块: 1) 噪音清洗——自动剔除论坛签名、导航条、邮件页脚,同时保留供应商联系方式与技术引用; 2) 保真翻译——抽取零件号/扭矩/测量等实体并掩码,仅翻译普通文本,再逐字节回注原值,附计数校验闸门; 3) 附件富集——图像两级过滤 + 视觉大模型(VLM)结构化提取工程元数据; 4) Markdown 封装——YAML 头 + 面包屑元数据注入; 5) 日志合并——按宏域合并为主日志,供向量库分块入库。 业务流程:原始德语日志 → 清洗 → 实体掩码 → 翻译 → 回注 → 校验闸门 → 英文 Markdown(含元数据)→ 按域合并 → RAG 入库。
智能饮水物联网设备管理系统
一、业务概述 本系统面向商用智能饮水设备运营场景,搭建一套软硬一体物联网管控平台,解决多台饮水终端分散管理、现场运维成本高、设备状态无法实时掌握、远程调控难等痛点。平台采用 TCP+HTTP 双通道通信,对接线下 4G 饮水设备,实现设备联网接入、运行数据采集、远程出水 / 加热控制、离线指令缓存补发、运行数据留存对账全流程业务能力,运营人员可通过 Web 后台统一管理所有终端,无需现场上门操作,大幅降低设备运维、巡检人力成本,适配小区、工厂、校园等多点位饮水设备规模化运营管理需求。 二、核心业务功能 设备联网接入管理 设备通过 4G 网络主动建立 TCP 长连接接入平台,设备上线完成注册登记;依靠 20 秒心跳机制实时判定在线状态,闲置超时自动断连并支持断线重连,平台统一维护全量设备台账,实时展示每台设备在线 / 离线状态、GPS 位置信息。 远程设备操控 后台通过 HTTP 接口下发控制指令,支持远程控制设备出水,自定义出水量、出水温度;远程启动加热,设定加热时长。设备在线时指令实时下发执行;设备离线则将指令存入 Redis 队列,待设备重新上线自动补发,同时完整记录每一条控制指令日志。 设备运行数据实时采集 持续接收设备上报运行状态、温度、水量、定位等数据,实时缓存至 Redis 快速查看,关键运行记录同步持久化至 MySQL 长期留存,支持后续数据查询、运营统计。 自动化定时运维任务 系统内置定时运维逻辑,每 22 分钟自动执行短时加热,避免水路停滞变质;定时批量巡检全部设备在线状态;定期轮询离线指令队列,保障积压指令有序下发。 高稳定并发运维保障 采用数据库连接池支撑大批量设备并发接入;Redis 缓存分担查询压力,搭配 MySQL 实现数据双重备份;数据库、通信链路故障支持自动重连恢复,保障 7×24 小时不间断稳定运行。 后台 Web 管理能力 提供标准化 HTTP 接口,管理端可查询全局系统配置、查看全部设备清单、一键下发各类控制指令,操作简单直观,适配运营人员日常日常对账、巡检、设备调控工作。 三、业务价值 远程管控替代上门运维,减少线下巡检人力与出行成本; 双通道通信兼顾设备实时控制与后台便捷管理,适配 4G 户外设备弱网环境; 全量设备数据自动留存,便于运营数据复盘、故障追溯; 模块化架构可拓展,后续可新增计费、故障告警、多类型智能设备接入等业务能力。
个人技术 IP 门户站-博客 / 工具箱 / 作品展示一体化平台
本项目是一个面向技术创作者的个人 IP 门户站,采用纯前端静态架构,整合了「技术博客发布」「第三方效率工具聚合评测」「个人开源作品展示」三大核心模块,目标是为访客提供一站式的技术内容消费与个人品牌展示体验。 核心功能包括: 1. 博客系统 :支持本地 Markdown 文章渲染,文章列表按技术 / 感悟 / 知识三分类筛选,支持标题/摘要/标签搜索,兼容 CSDN 外链归档与本地文章混合展示。 2. 工具箱聚合 :收录并评测 10+ 款真实第三方效率工具,按文本处理 / 编程开发 / AI 工具 / 设计创作 / 图像处理 / 效率办公分类,支持收藏、搜索、定价标签(真免费 / 部分免费 / 付费)筛选。 3. 作品展示 :集中展示 4 个已开源的真实项目(CSDN 博客爬虫、绿色软件管理器、一键环境搭建、访问量辅助工具),全部附带 Gitee 仓库链接。 4. 主题与交互 :支持深色 / 浅色主题切换并持久化到 localStorage,针对主题切换做了 FOUC(闪烁)优化;全站响应式布局,适配桌面端与移动端。 5. 公共组件 :统一导航栏、页脚、加载动画、滚动渐入动画、粒子背景、访问量统计、社交分享等可复用模块。 项目采用「配置驱动」设计,所有页面内容统一由 config.js 管理,新增文章、工具、作品时只需修改配置文件即可,无需改动页面结构。
C++多模块项目构建与并发服务器-CppDevKit
基于C++开发的多模块工程管理系统,支持员工信息增删改查、部门层级管理、数据持久化存储。系统采用面向对象设计,实现基类-派生类继承体系、虚函数多态、运算符重载。包含文件IO模块实现数据本地存储与加载。同时扩展开发Linux环境下多线程并发文件服务器,支持多客户端连接、线程池管理、文件上传下载功能。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服