2.1 系统功能清单
Bianbu ROS 系统由多个模块化组件构成,涵盖从底层引导固件到用户空间应用的完整软件栈。组件分为以下几个主要类别:
- 用户应用
- 应用框架与开发工具
- ROS 2 功能接口
- 运行环境
- 系统中间件
- 高性能计算库
- Linux 内核
- 启动引导程序(U-Boot)
- 固件接口(OpenSBI)
用户应用
系统预装了一系列常用桌面软件,涵盖开发、办公、多媒体与系统工具:
- 桌面环境:LXQt 桌面及其基础组件
- 办公工具:LibreOffice 办公套件、nobleNote 便签
- 浏览器:Chromium
- 集成开发环境:VSCodium
- 容器工具:Docker
- 远程访问:VNC Server
- 多媒体应用:Cheese 相机、MPV 视频播放器、Audacious 音乐播放器
- 图形工具:Okular 文档查看器、LXImage-Qt 图片浏览器、FeatherPad 文本编辑器
- 系统工具:KCalc 计算器、LXQt 归档管理器、PCManFM-Qt 文件管理器、Fcitx 5 输入法
- 娱乐应用:2048-Qt 游戏
应用框架与开发工具
-
应用开发框架
-
Electron
-
GTK
-
Qt
-
-
多媒体框架
-
FFmpeg(支持硬件加速)
-
GStreamer(支持硬件加速)
-
PipeWire
-
-
AI 推理框架与工具
-
ONNX Runtime(支持硬件加速)
-
Ollama(支持硬件加速)
-
llama.cpp
-
xquant(模型量化工具)
-
ROS 2 功能接口
系统提供基于 ROS 2 的高层封装接口 ,涵盖感知、推理、交互与视觉处理等功能模块:
- 图像与视频推理接口(ONNX)
- 人体跟随功能包
- ByteTrack 多目标跟踪
- 语音识别(ASR)模块
- 大语言模型(LLM)聊天服务接口
- USB 与 MIPI 摄像头支持
- SVO(稀疏视觉惯性里程计)
- WebSocket 可视化服务
- 地图构建与自主导航
- 声源定位与方向感知
- 视频编解码节点(支持硬件加速)
运行环境
提供多语言运行时支持:
- Python
- Java
- Node.js
- Rust
系统中间件
高度封装的底层数据流与硬件访问接口,统一调度和访问系统资源:
- USB 摄像头采集接口
- MIPI 摄像头采集接口
- V2D 图像处理模块支持
- 硬件编码与解码接口
- 视频输出支持(VO)
- DRM 显示接口
- RTSP 推流与拉流接口
- ONNX 推理接口(C API 封装)
高性能计算库
为 AI 与图像处理任务提供加速支持:
- Eigen(支持 RISC-V 向量扩展 RVV)
- OpenCV(支持 RVV 加速)
- OpenVML(向量数学库,支持 RVV)
- OpenSSL(支持硬件加速)
- MPP,进迭时空多媒体处理平台,提供 C API 和 sample
- Mesa 3D
- OpenGLES 图形与计算加速接口
Linux 内核
Linux 内核负责管理处理器和其他硬件资源,提供用户和应用程序与硬件之间的接口。主要功能包括中断和时钟管理、进程管理、内存管理、文件系统管理、设备驱动管理和网络协议栈等,代码在 gitee 上开源。
- 版本:6.6
- 源码:https://gitee.com/bianbu-linux/linux-6.6 (LTS)
U-Boot
U-Boot 是一个引导加载程序,负责初始化特定硬件,从介质(如 SD 卡、eMMC、SPI Flash、SSD、网络)加载 Linux 内核镜像、设备树和初始 RAM 文件系统,代码在 gitee 上开源。
- 版本:u-boot-2022.10
- 源码:https://gitee.com/bianbu-linux/uboot-2022.10
OpenSBI
OpenSBI 是 RISC-V 架构处理器的监管程序接口的实现,运行在 M 模式下的固件,提供引导加载程序、hypervisor、操作系统访问硬件的接口,代码在 gitee 上开源。
- 版本:1.3
- 源码:https://gitee.com/bianbu-linux/opensbi