Skip to content

About

龙辰星曜 · 智能万能充 — 基于国产龙芯2K0300的三源融合(太阳能/风能/动能)智能充电管理系统 | MPPT · QC3+快充 · 手机APP远程控制 · OTA预留

Topics

Resources

Code of conduct

Contributing

Stars

4 stars

Watchers

0 watching

Forks

Repository files navigation

龙辰星曜 · 智能万能充

龙辰星曜 · 智能万能充

基于龙芯 2K0300 的三源融合智能充电与供电系统

License: GPL v3 Build Status Release Stars Forks Issues PRs Welcome

项目简介 · 核心亮点 · 系统架构 · 效果展示 · 快速开始 · 项目结构 · 参与贡献


项目简介

龙辰星曜(智能万能充) 是一套基于国产龙芯 2K0300 处理器(LoongArch64 架构)开发的三源融合智能充电与供电系统。它能够独立接入并管理动能、风能、太阳能三种可再生能源,为内置电池组智能充电;同时通过市电 / 低压等多种输出接口,为手机、平板、户外设备等终端提供稳定、可调、可快充的电力输出。

为什么选择龙芯 2K0300? 龙芯 2K0300 基于自主 LoongArch 指令集,双核 800MHz、低功耗、高集成度。本项目以国产芯片为核心,验证了自主可控硬件在新能源管理、智能充电与户外供电领域的完整应用潜力。

项目组成

模块 路径 说明
嵌入式主控 project/user/ 运行在龙芯 2K0300 上,负责能源采集、MPPT、充电状态机、UDP/IPC 通信、温控、LED 等
Qt 本地监控 qt_app/ 龙芯板载屏幕实时仪表盘,显示三路能源、电池、充电曲线
手机上位机 docs/app/(APK 后续可放出) 通过 UDP 8888 实时监控 + 远程控制风扇/灯光/输出电压电流

核心亮点

三路独立能源,动能应急

  • 太阳能 — 主能源,MPPT 最大功率点跟踪,提升光伏利用效率
  • 风能 — 辅助能源,配合 MPPT 算法稳定输出
  • 动能 — 应急能源,无光照/弱风场景下为系统续命
  • 三路能源独立采样、独立建模、独立充电,互不影响

龙芯本地大屏 + 手机 APP 双端监控

  • 7 寸龙芯本地显示屏:实时显示三路能源电压/电流/功率、电池 SOC、温度、充电曲线
  • 手机 APP「龙辰星曜」v2.1.5:
    • 实时监测:能源效率、电池状态、芯片温度
    • 风扇控制:自动 / 静音 / 增强三档,手动或自动调速
    • LED 氛围灯:亮度、颜色自由调节,支持暖白 / 冷蓝 / 自然绿 / 夜用粉等预设
    • 输出调节:电压、电流实时可调
    • 快充预设:自动 / 太阳能优先 / 风能优先 / 市电优先

智能充电管理

  • 支持 LiPo / LiFePO4 / NiMH / 铅酸 四种电池类型
  • 完整充电阶段:IDLE → PRECHARGE → CC(恒流)→ CV(恒压)→ FULL → FAULT
  • 多重保护:过压、欠压、过流、过温、过充保护
  • DS18B20 实时温度采集 + PWM 风扇智能散热

多接口输出与快充支持

  • 输出板搭载 Qualcomm Quick Charge 3+ 快充电路
  • 支持 市电接口 与 低压(弱电)接口,适配家庭、车载、户外等多种场景
  • 通过 TPL0401B 数字电位器(I2C)实时调节输出电压 / 电流

全自主工业设计

  • 外壳全自主设计研发
  • 内部做防水、防潮处理,可在户外复杂环境下稳定工作
  • 预留 OTA 升级接口,后续可远程更新硬件固件,持续迭代

系统架构

┌─────────────────────────────────────────────────────────────────────────────┐
│                           龙辰星曜 · 智能万能充                              │
│                         (龙芯 2K0300 核心控制器)                            │
├─────────────────────────────────────────────────────────────────────────────┤
│  能源输入层                                                                  │
│  ┌─────────┐   ┌─────────┐   ┌─────────┐                                   │
│  │ 太阳能  │   │  风能   │   │ 动能(应急)│  ← 独立 ADC 采集 + MPPT          │
│  └────┬────┘   └────┬────┘   └────┬────┘                                   │
│       └─────────────┴─────────────┘                                         │
│                   ↓ 智能能源调度 + 充电状态机                                 │
│  充电管理层 ──→ 电池组(LiPo/LiFePO4/NiMH/铅酸)                              │
│       ↓                                                                     │
│  输出层 ──────→ QC3+ 快充 / 市电 / 低压 输出                                 │
├─────────────────────────────────────────────────────────────────────────────┤
│  交互层                                                                      │
│  ┌──────────────┐   ┌──────────────┐   ┌──────────────┐                    │
│  │ 龙芯本地大屏  │   │ 手机 APP      │   │ 串口/UDP 调试 │                    │
│  │ (Qt 仪表盘)   │   │ (龙辰星曜)    │   │              │                    │
│  └──────────────┘   └──────────────┘   └──────────────┘                    │
└─────────────────────────────────────────────────────────────────────────────┘

硬件实物

龙芯 2K0300 主控板
龙芯 2K0300 主控板
电源输出板
电源输出板(QC3+ / 可调输出)

PCB 设计图鉴

龙芯拓展板
龙芯拓展板(DS18B20 / CH340C / 风扇/LED)
龙芯测评拓展板
龙芯测评拓展板(MPU6050 / RFID / RGB / 电机)
MPPT 控制器
太阳能 MPPT 控制器(ESP32 / Buck-Boost)
电源支持板
电源支持板(多路 LDO / QC3+ / 可调输出)
三路 INA226 采集板
三路 INA226 电流/电压采集板
ESP 无线模块
ESP 无线通信模块(串口透传 / 远程控制)
AC-DC 全桥整流板
AC-DC 全桥整流板(市电输入整流)

效果展示

户外实测场景

户外实测场景

户外实测:白色主机 + 折叠太阳能板 + 小型风力发电机,三源协同为系统供电

手机 APP「龙辰星曜」

APP 安装页
APP 安装页
实时监测
实时监测 MON
远程控制
远程控制 CTL
设备设置
设备设置 SET

龙芯本地监控大屏

龙芯本地监控大屏

基于 Qt 的本地仪表盘:三路能源、电池 SOC、温度、充电曲线一目了然

现场测试

现场测试环境

户外/实验室联调现场


快速开始

前置条件

  • 龙芯 2K0300 开发板
  • Linux 开发环境(推荐 Ubuntu 22.04+)
  • LoongArch GNU 工具链 8.3+
  • CMake 3.5+
  • Qt 5.x(编译本地监控 APP 时需要)

1. 克隆仓库

git clone https://github.com/pdpd5618/-loongson-2k0300-charger.git
cd -loongson-2k0300-charger

2. 准备交叉编译工具链

export TOOLCHAIN=/opt/ls_2k0300_env/loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.6
export PATH=$PATH:$TOOLCHAIN/bin

3. 编译嵌入式主控程序

cd project
mkdir -p build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../user/cross.cmake ../user
make -j$(nproc)

产物为 project/build/project,通过 scp 推送到龙芯开发板运行。

4. 编译 Qt 本地监控 APP

cd qt_app
qmake smart_charger_qt.pro
make -j$(nproc)
./smart_charger_qt

更详细的编译、烧录、配网、接线说明请参考 构建指南。


项目结构

-loongson-2k0300-charger/
├── .github/                       # GitHub 配置
│   ├── ISSUE_TEMPLATE/            # Issue 模板
│   ├── workflows/                 # CI
│   ├── CODEOWNERS
│   ├── FUNDING.yml
│   └── PULL_REQUEST_TEMPLATE.md
├── assets/                        # 图片资源
│   ├── banner.png
│   ├── social-preview.png
│   ├── outdoor-demo.jpg             # 户外实测场景
│   ├── app-install.jpg
│   ├── app-monitor.jpg
│   ├── app-control.jpg
│   ├── app-settings.jpg
│   ├── display-dashboard.jpg
│   ├── board-main.jpg
│   ├── board-power.jpg
│   ├── test-setup-photo.jpg
│   └── hardware/                    # PCB 设计图
│       ├── pcb-loongson-expansion.jpg
│       ├── pcb-loongson-eval.jpg
│       ├── pcb-mppt-controller.jpg
│       ├── pcb-power-support.jpg
│       ├── pcb-ina226-triple.jpg
│       ├── pcb-esp-wifi.jpg
│       └── pcb-bridge-rectifier.jpg
├── docs/                          # 文档
│   ├── build-guide.md
│   ├── hardware-setup.md
│   └── protocol.md
├── project/                       # 嵌入式主控
│   └── user/
│       ├── main.cpp
│       ├── smart_charger.h
│       ├── mppt.cpp
│       ├── charge_fsm.cpp
│       ├── adc.cpp
│       ├── pwm.cpp
│       ├── udp.cpp
│       ├── ds18b20.cpp
│       ├── tpl0401b.cpp
│       ├── CMakeLists.txt
│       └── cross.cmake
├── qt_app/                        # Qt 本地监控
│   ├── mainwindow.cpp
│   ├── dashboard_widget.cpp
│   ├── charge_curve_widget.cpp
│   └── smart_charger_qt.pro
├── .gitignore
├── LICENSE                        # GPL v3
├── CONTRIBUTING.md
├── CODE_OF_CONDUCT.md
├── CHANGELOG.md
├── OVERVIEW.md                    # 发布与维护指南
└── README.md

通信协议

主控与上位机通过 UDP 8888 端口 通信,支持事件触发 + 心跳保活:

  • 电压 / 电流 / 功率 / SOC / 能源可用状态变化 → 立即推送事件包
  • 温度变化无条件触发
  • 无事件时 3 秒一次心跳包

控制命令示例:

{ "cmd": "set_fan_speed", "value": 75 }
{ "cmd": "set_light_color", "color": { "r": 255, "g": 214, "b": 79 } }
{ "cmd": "set_voltage", "value": 80 }
{ "cmd": "quick_preset", "value": 1 }

完整协议见 docs/protocol.md。


文档


参与贡献

欢迎提交 Issue 和 PR!请先阅读 CONTRIBUTING.md。

贡献者


路线图

  • 三路独立能源采集(太阳能 / 风能 / 动能应急)
  • MPPT 最大功率跟踪(扰动观察法 + 电导增量法)
  • 多电池类型充电状态机
  • DS18B20 温度采集与 PWM 风扇温控
  • Qt 本地监控大屏
  • 手机 APP 远程监控 + 控制
  • LED 氛围灯亮度 / 颜色控制
  • TPL0401B 数字电位器输出电压/电流调节
  • QC3+ 快充输出电路
  • 自动设备协议识别与智能快充
  • OTA 远程固件升级
  • Web 监控平台
  • 多机并联与微电网组网

开源许可

本项目基于 GPL v3 许可证开源,详见 LICENSE。


如果这个项目对你有帮助,请给一个 Star ⭐,让更多人看到国产芯片 + 绿色能源的开源实践!

Star History

国产芯片 · 绿色能源 · 开源共享

About

龙辰星曜 · 智能万能充 — 基于国产龙芯2K0300的三源融合(太阳能/风能/动能)智能充电管理系统 | MPPT · QC3+快充 · 手机APP远程控制 · OTA预留

Topics

Resources

Code of conduct

Contributing

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages