产品概述
为什么做 YunStack-IoT
市面上已有涂鸦智能、易微联等成熟 IoT 平台,但它们存在几个共同问题:
| 问题 | 说明 |
|---|---|
| 数据不可控 | 设备数据存储在第三方云端,无法自主管理 |
| 平台锁定 | 设备必须使用厂商 SDK 和云端,迁移成本极高 |
| 定制受限 | 标准 App 无法满足垂直行业(工业/农业)的个性化需求 |
| 成本不可控 | 按设备数或 API 调用量收费,规模化后成本不可预测 |
YunStack-IoT 的定位:一个自主可控、可私有部署、面向垂直场景的物联网平台。设备和数据掌握在自己手里,前端和业务流程可按需定制。
目标用户
| 用户 | 场景 | 核心诉求 |
|---|---|---|
| 工厂运维人员 | 生产线设备监控 | Web 后台实时查看、异常告警、历史追溯 |
| 智能家居用户 | 家庭灯光/插座/窗帘控制 | 小程序远程控制、定时任务、家庭管理 |
| 农业管理者 | 大棚/养殖场环境监测 | 传感器数据采集、远程灌溉/通风控制 |
| 设备制造商 | 自有硬件接入平台 | 开放 MQTT 协议、私有部署、白牌定制 |
| 系统集成商 | 为客户交付物联网方案 | 多项目管理、API 集成、二次开发 |
与竞品对比
| 维度 | 涂鸦智能 | 易微联 | YunStack-IoT |
|---|---|---|---|
| 部署方式 | 公有云 | 公有云 | 公有云 + 私有部署 |
| 数据归属 | 厂商云端 | 厂商云端 | 用户自有服务器 |
| 设备兼容 | 涂鸦生态 | eWeLink 生态 | 开放 MQTT 协议,任意设备 |
| 前端定制 | 标准 App | 标准 App | Web + 小程序,源码可控 |
| 收费模式 | 按设备/API | 按设备 | 开源免费,无平台费用 |
| 目标场景 | 通用消费类 | 通用消费类 | 兼顾消费 + 工业/农业垂直场景 |
竞品 App 界面截图参见 竞品参考。
核心模块
- 设备能力模型(物模型):用 JSON 描述设备属性、事件、服务,实现异构设备统一接入
- MQTT 通信规范:标准 Topic + Payload 格式 + 内置 ACL 权限策略
- 数据管理:PostgreSQL(业务数据)+ InfluxDB(时序数据)+ Redis(设备状态)
- Web 管理后台:产品管理、设备管理、用户权限、数据看板
- 微信小程序:登录注册、设备列表、远程控制、配网、家庭管理
技术栈
| 组件 | 选型 | 说明 |
|---|---|---|
| 后端框架 | NestJS + TypeScript | 模块化架构,依赖注入 |
| ORM | Prisma | 类型安全的数据库客户端 |
| 消息中间件 | EMQX 5.x | MQTT Broker,支持 PostgreSQL 认证 |
| 业务数据库 | PostgreSQL 16 | 关系型数据 + JSON 支持 |
| 时序数据库 | InfluxDB 2.x | 遥测数据存储与降采样 |
| 缓存 | Redis 7 | 设备在线状态、指令队列 |
| Web 前端 | Vue 3 + Element Plus + Pinia | Composition API |
| 小程序 | UniApp 3 + Wot Design Uni | 跨平台,支持微信小程序 |
| 部署 | Docker Compose + Nginx | 一键部署 |
版本路线
| 版本 | 时间 | 目标 |
|---|---|---|
| v0.1 | 已完成 | 基础框架:认证/权限/Web后台/小程序框架 |
| v0.2 | 2026 Q2 | IoT 核心闭环:设备注册、MQTT 标准 Topic、设备影子、InfluxDB、WebSocket 实时推送 |
| v0.5 | 2026 H2 | 生态扩展:OTA 固件升级、告警通知、场景联动、8路继电器、温湿度传感器 |
| v1.0 | 2027 | 生产发布:压力测试、高可用、安全审计、文档完善 |
详细状态参见 功能列表。
