程序聚合 软件案例 一个用于创建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%
相似推荐
陶瓷打印ai调色应用
是一款专为陶瓷打印等场景设计的高精度色彩分析与自动校色工具。它通过对比“标准样板的扫描件”与“当前批次的扫描件”,精确计算出色彩偏差,然后将此偏差应用于“当前稿的原始电子文件”,从而生成一个经过校正的、符合标准样板色彩的新电子文件,用于后续打印和烧制。
智能制造管控系统
背景; 1、解决产品生产的全流程中,所有工序节点编排、测试结果校验、发货质量判断、异常流程处理等自动化生产问题。 2、解决人工盘点混乱问题。 功能; 1、产品工艺流程图绘制,支持网关、监听器等状态校验功能。 2、工序测试结果校验功能,根据不同工序通过标准,判断测试结果是否合格。 2、工序流流转判断功能,根据节点监听器,判断是否能流转到下一个节点。 3、发货管控功能,判断是否满足发货条件。 4、生产盘点、统计功能。 5、异常生产问题处理,如回退、节点跃迁、重流等异常问题。
工业设备振动监测终端-振动哨兵Demo
针对小型工业电机、泵类设备缺少低成本状态监测手段的问题,设计一款本地化振动监测终端。通过加速度传感器采集振动信号,STC/STM32单片机完成ADC采样、滑动窗口滤波和特征提取,运行轻量级TinyML分类模型,判断设备当前状态为“正常”或“异常”。结果通过串口发送至迪文触屏实时显示,支持阈值告警、历史记录查询。目标是在无上位机、无云端的条件下实现离线监测,降低部署成本。
项目是基于ssm框架结合jq、html等技术实现移动客服业务受理后台-中移****业务受理
1、该系统为全国客服及互联网渠道的核心业务系统,承载家庭宽带、跨省宽带、全屋 WiFi 及智能门锁等产品的线上办理。系统采用 Spring + Dubbo 微服务架构,结合 Redis 与 RocketMQ /Kafka 消息中间件,支撑全国多省份高并发、高可用的业务交互与数据沉淀。
Modbus PLC数据采集工具
车间PLC设备产生的运行参数,人工记录采集费时费力。本工具基于Modbus RTU/TCP协议,实现Windows电脑和PLC通讯,自动实时采集设备寄存器数据。将采集到的电流、温度、产量等参数存入本地SQLite数据库;支持历史数据查询,电脑双击运行,无需复杂环境部署,适合车间现场部署使用。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服