程序聚合 软件案例 一个用于创建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%
相似推荐
基于Stm32的大地电磁实时数据采集系统
本项目是一套面向大地电磁(MT)现场测量的数据采集终端软件,运行于 STM32H723 平台。系统通过 ADS1262 高精度模数转换器同步采集电场 Ex 和磁场 Hy 两路原始时域信号,支持低频、高频两类采样任务及采样率、增益等参数配置。采集数据按“项目—测点—频段—通道”组织并保存为原始数据文件,同时记录测点号、GPS 时间、定位、通道及采样参数等元数据。系统支持通过 LoRa/LoRaWAN 进行设备状态上报、命令交互和数据文件传输,并提供采集过程监视、心跳、异常恢复和存储空间管理能力,为后续波形查看、频谱分析、解释处理、项目归档与数据追溯提供可靠的原始数据基础。
数据恢复软件
开发一款能够帮助个人用户恢复误删除、格式化、无法访问设备等丢失数据,需要解析fat、exfat、ntfs、hfs+、apfs文件系统的数据格式,通过算法找到丢失的数据,恢复用户丢失的数据,同时也支持通过查找丢失文件内容特征来找到丢失的数据,提供预览功能,帮助个人用户更好的确认要恢复的数据
云帆智能客服系统(基于 Multi-Agent 架构的智能客服中台)
基于 LangGraph 构建 Multi-Agent 智能客服中台:三层意图识别架构 (规则引擎→RAG 语义匹配→LLM 深度理解,技术递进:零 Token→零 LLM→深度理解)分发 至 FAQ-RAG/订单状态机/退换货 HitL 审批/投诉升级四类 Agent,SSE 流式响应,区分实时 业务调用与知识库检索,高风险售后流程经人工审批管控,三层兜底保障高可用。
智能交互大屏-智能交互大屏
本项目为自研首款 8K 智慧云屏配套客户端软件,采用高规格 8K 显示、一体式硬件整机架构及 X86 安卓 + Windows 双系统共享硬件方案。基于 WPF 技术栈从零打造大屏全套软件体系,覆盖白板书写、屏幕批注、系统设置、Launcher 桌面、侧边栏快捷工具、分屏交互、OTA 固件升级、设备集控、外设管控等 20 余个应用模块与核心功能组件,满足政企会议、智慧办公、工业数字孪生等场景下的高清交互、设备管控、系统运维需求,实现高分辨率触控终端的智能化、一体化软件体验。
手环授时
手环通过串口连接到电脑,软件通过http跟服务器求情,将请求返回的数据通过串口发送给手环进行授时,还需要今天定时请求,对手环进行授权,手环授权以后才可以刷闸机进入使用,时间是通过前端设置保存到后端。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服