diff --git a/README.md b/README.md index 042c40ee..d6b3d54a 100644 --- a/README.md +++ b/README.md @@ -1 +1,84 @@ -# Uni-Lab-OS \ No newline at end of file +
+ Uni-Lab Logo +
+ +# Uni-Lab-OS + +[![GitHub Stars](https://img.shields.io/github/stars/dptech-corp/Uni-Lab-OS.svg)](https://github.com/dptech-corp/Uni-Lab-OS/stargazers) +[![GitHub Forks](https://img.shields.io/github/forks/dptech-corp/Uni-Lab-OS.svg)](https://github.com/dptech-corp/Uni-Lab-OS/network/members) +[![GitHub Issues](https://img.shields.io/github/issues/dptech-corp/Uni-Lab-OS.svg)](https://github.com/dptech-corp/Uni-Lab-OS/issues) +[![GitHub License](https://img.shields.io/github/license/dptech-corp/Uni-Lab-OS.svg)](https://github.com/dptech-corp/Uni-Lab-OS/blob/main/LICENSE) + +Uni-Lab 操作系统是一个用于实验室自动化的综合平台,旨在连接和控制各种实验设备,实现实验流程的自动化和标准化。 + +## 核心特点 + +- 多设备集成管理 +- 自动化实验流程 +- 云端连接能力 +- 灵活的配置系统 +- 支持多种实验协议 + +## 安装指南 + +请先克隆此仓库: + +```bash +git clone https://github.com/dptech-corp/Uni-Lab-OS.git +cd Uni-Lab-OS +``` + +然后安装 Uni-Lab-OS: + +```bash +pip install . +``` + +## 快速开始 + +1. 配置Conda环境 + +Uni-Lab-OS 建议使用 `mamba` 管理环境。根据您的操作系统选择适当的环境文件: + +```bash +# 创建新环境 +mamba env create -f unilabos-[YOUR_OS].yaml +mamba activate unilab + +# 或更新现有环境 +conda env update --file unilabos-[YOUR_OS].yml -n 环境名 +``` + +其中 `[YOUR_OS]` 可以是 `win64`, `linux-64`, `osx-64`, 或 `osx-arm64`。 + + +2. 启动 Uni-Lab 系统: + +请见[文档-启动样例](https://readthedocs.dp.tech/Uni-Lab/v0.8.0/boot_examples/index.html) + +## 消息格式 + +Uni-Lab-OS 使用预构建的 `unilabos_msgs` 进行系统通信。您可以在 [GitHub Releases](https://github.com/dptech-corp/Uni-Lab-OS/releases) 页面找到已构建的版本。 + +## 文档 + +详细文档可在以下位置找到: + +- [在线文档](https://readthedocs.dp.tech/Uni-Lab/v0.8.0/) +- 本地文档位于 `docs/` 目录 + +## 许可证 + +此项目采用 GPL-3.0 许可 - 详情请参阅 [LICENSE](LICENSE) 文件。 + +## 项目统计 + +### Stars 趋势 + + + Star History Chart + + +## 联系我们 + +- GitHub Issues: [https://github.com/dptech-corp/Uni-Lab-OS/issues](https://github.com/dptech-corp/Uni-Lab-OS/issues) \ No newline at end of file diff --git a/docs/user_guide/configuration.md b/docs/user_guide/configuration.md index 7e148676..9a8d67cd 100644 --- a/docs/user_guide/configuration.md +++ b/docs/user_guide/configuration.md @@ -18,7 +18,7 @@ Uni-Lab支持Python格式的配置文件,它比YAML或JSON提供更多的灵 from dataclasses import dataclass # 配置类定义 -@dataclass + class MQConfig: """MQTT 配置类""" lab_id: str = "YOUR_LAB_ID" @@ -34,7 +34,7 @@ class MQConfig: MQTT配置用于连接消息队列服务,是Uni-Lab与云端通信的主要方式。 ```python -@dataclass + class MQConfig: """MQTT 配置类""" lab_id: str = "7AAEDBEA" # 实验室唯一标识 @@ -74,22 +74,18 @@ MQTT连接支持两种方式配置证书: 配置ROS消息转换器需要加载的模块: ```python -@dataclass + class ROSConfig: """ROS模块配置""" - modules: list = None - - def __post_init__(self): - if self.modules is None: - self.modules = [ - "std_msgs.msg", - "geometry_msgs.msg", - "control_msgs.msg", - "control_msgs.action", - "nav2_msgs.action", - "unilabos_msgs.msg", - "unilabos_msgs.action", - ] + modules = [ + "std_msgs.msg", + "geometry_msgs.msg", + "control_msgs.msg", + "control_msgs.action", + "nav2_msgs.action", + "unilabos_msgs.msg", + "unilabos_msgs.action", + ] ``` 您可以根据需要添加其他ROS模块。 @@ -106,15 +102,6 @@ class ROSConfig: unilab --config path/to/your/config.py ``` -## 环境变量覆盖 - -某些配置项可以通过环境变量进行覆盖,这在不同环境部署时特别有用: - -```bash -# 设置环境变量覆盖配置 -export UNILAB_LAB_ID="YOUR_LAB_ID" -export UNILAB_MQTT_BROKER="mqtt-broker-address" - # 启动Uni-Lab python -m unilabos.app.main --config path/to/your/config.py ``` diff --git a/docs/user_guide/installation.md b/docs/user_guide/installation.md index 1fdf3355..68ad62ed 100644 --- a/docs/user_guide/installation.md +++ b/docs/user_guide/installation.md @@ -6,7 +6,7 @@ ```shell mamba env create -f unilabos-.yaml -mamba activate ilab +mamba activate unilab ``` 其中 `YOUR_OS` 是您的操作系统,可选值 `win64`, `linux-64`, `osx-64`, `osx-arm64`