HarmonyOS鸿蒙Next中嵌入式样机开发项目如何规划?
HarmonyOS鸿蒙Next中嵌入式样机开发项目如何规划? 简单来说,就是要开发一个软硬件系统,硬件要能与一些模块进行底层通讯和控制,包括电路、电机、阀门、传感器等,都由下位机来通过类似485或I2C等串行协议进行通讯;然后要有个上位机,有GUI,与下位机通讯,来下达用户的高级指令,以实现综合功能。我想全面引入HarmonyOS和OpenHarmony,也愿意购买开源鸿蒙开发板来作下位机,初步的GUI可以用华为平板来显示和控制,但应该如何构思开发计划?希望大佬能指点一二。谢谢!
你这个方向其实非常适合:
OpenHarmony + HarmonyOS
因为鸿蒙体系:
天然就是“软硬件协同”
不是单纯手机APP系统。
你现在这个项目,本质上属于:
“工业控制 + 上下位机 + IoT”
这是 OpenHarmony 非常适合的场景。
——————————
你现在最重要的:
不是先写代码。
而是:
先把系统架构想清楚。
否则后面会非常乱。
——————————
我建议你:
先把整个系统拆成:
四层架构
——————————
第一层:设备层(硬件执行层)
也就是:
- 电机
- 阀门
- 继电器
- PWM
- ADC
- GPIO
- 传感器
- RS485
- I2C
- SPI
- CAN
这一层:
建议 MCU 实时控制
不要让 HarmonyOS 直接做强实时控制。
——————————
为什么?
因为:
OpenHarmony 不是硬实时 RTOS
尤其:
- 电机控制
- PID
- 高频采样
- 毫秒级控制
最好:
STM32 / ESP32 / GD32
这类 MCU 负责。
这是工业界标准做法。
——————————
第二层:设备网关层(下位机)
这一层:
非常适合 OpenHarmony
作用:
- 管理多个MCU
- 协议转换
- 设备抽象
- 本地逻辑
- OTA
- 网络
- BLE
- WiFi
- MQTT
- UI
这一层:
你可以:
直接使用 OpenHarmony 开发板
例如:
- Hi3861
- RK3568
- RK3588
- OrangePi OH
- 潘多拉开发板
- HiHope
——————————
这里:
OpenHarmony 非常强。
因为:
它天然适合做“智能中控”
——————————
第三层:上位机(GUI控制层)
你现在说:
先用华为平板
这是非常合理的。
建议:
HarmonyOS NEXT 平板 + ArkUI
直接做:
- 参数配置
- 实时状态
- 图表
- 告警
- 控制台
- 日志
- OTA
——————————
第四层:云层(后续)
后面你一定会想加:
- 远程控制
- 数据分析
- OTA
- 用户系统
- AI
- 设备管理
所以:
建议一开始:
通信协议就标准化
不要后面推翻。
——————————
我给你一个:
非常推荐的整体技术路线
——————————
【推荐架构】
——————————
下位实时控制:
STM32 / ESP32
负责:
- GPIO
- PWM
- ADC
- 电机
- 阀门
- 实时采样
——————————
通讯:
RS485(Modbus RTU)
非常推荐。
工业成熟。
稳定。
抗干扰强。
——————————
OpenHarmony 网关:
RK3568 开发板
负责:
- GUI
- 网络
- 设备管理
- 协议解析
- OTA
- 本地数据库
——————————
上位机:
HarmonyOS NEXT 平板APP
负责:
- 控制
- 数据展示
- 用户交互
——————————
通信协议:
MQTT + JSON
或者:
protobuf
——————————
为什么我推荐:
OpenHarmony 放在“中间层”
而不是:
直接控制电机?
因为:
这是最稳定、最工业化的方案。
——————————
否则:
你会遇到:
- 实时性
- 线程抖动
- UI卡顿影响控制
- 驱动问题
- GPIO延迟
等问题。
——————————
很多新人容易犯一个错误:
“所有东西都放鸿蒙里”
最后:
- UI
- 电机
- 网络
- 视频
- BLE
全耦合。
后面非常难维护。
——————————
建议:
强实时交给MCU
复杂逻辑交给OpenHarmony
这是最正确路线。
——————————
你现在开发阶段:
我建议按这个顺序:
——————————
第一阶段(非常重要)
先:
把通信链路打通
即:
MCU ←→ OpenHarmony
哪怕:
只是:
串口收发hello
都很重要。
因为:
后面所有东西:
都建立在:
通信架构
之上。
——————————
第二阶段
做:
设备抽象层
不要:
直接写业务协议
建议:
统一:
DeviceManager
例如:
MotorDevice
ValveDevice
SensorDevice
后面扩展会舒服很多。
——————————
第三阶段
再做 GUI。
很多人一开始就做界面。
其实:
这是错误顺序
因为:
通信不稳定时:
GUI 全白做。
——————————
第四阶段
最后:
再做:
- OTA
- BLE
- 云平台
- AI
——————————
你这个项目:
其实后面可以很强。
因为:
HarmonyOS 的分布式能力
特别适合:
- 平板
- 手机
- 中控
- 设备联动
——————————
比如:
后面你甚至可以:
手机直接接管设备GUI
或者:
多个鸿蒙设备协同控制
这就是鸿蒙优势。
——————————
如果你问:
“我现在该学什么”
我建议:
优先级:
——————————
1.串口通信
重点:
- UART
- RS485
- Modbus
——————————
2.OpenHarmony Native
重点:
- GPIO
- Serial
- C++
- HDF
——————————
3.ArkUI
做GUI。
——————————
4.MQTT
——————————
5.Linux基础
因为很多 OpenHarmony 板子:
本质:
还是 Linux 思维
——————————
最后给你一个非常关键建议:
不要一开始追求“全鸿蒙化”
真正成熟方案:
都是:
MCU + OpenHarmony + HarmonyOS
协同。
这才是:
真正工业级架构。
更多关于HarmonyOS鸿蒙Next中嵌入式样机开发项目如何规划?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
感谢回答,请问开发板的话,应该选择哪个型号呢?我看您一开始推荐了若干个,但后面又只推荐了“ RK3568 开发板 ”这一个,不知道是否有特殊原因。谢谢。
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17,
这个项目建议不要一开始就把平板、下位机、实时控制全部塞进同一个系统里。更稳的是分层:下位机负责实时控制,OpenHarmony 设备做边缘控制/网关,HarmonyOS 平板应用做 GUI 和业务编排。
可以按这个路线规划:
- 电机、阀门、传感器等强实时动作仍放在 MCU/RTOS 或工业控制板上,485/I2C/SPI 等由下位机直接处理。
- OpenHarmony 开发板负责协议转换、设备状态管理、本地规则和与上位机通信,可选串口、以太网、BLE、Wi-Fi、MQTT 等链路。
- HarmonyOS 平板端只做可视化、配置、任务下发、日志查看和告警,不直接承担毫秒级控制闭环。
- 先做最小闭环:一个传感器 + 一个执行器 + 一个控制指令 + 一个状态回传,再扩展模块数量。
- 通信协议建议一开始就定义帧格式、版本号、设备 ID、命令 ID、校验、超时和重试,后面扩硬件会省很多事。
选板时按接口和算力选,不要只看系统名。需要大量工业接口就优先看已有 485/CAN/以太网扩展的板卡;只是做 GUI,平板端用 ArkUI 即可。
- 开发板选型:Hi3861(轻量)、Hi3516/RK3568(小型)。根据自己需要,还有很多其他选择。
- 开发指南和实例:《HUAWEI DevEco Device Tool》。环境准备、源码获取、编译构建、烧录及测试等。
- 驱动:驱动子系统(HDF)或直接使用内核提供的API,配置RS485或I2C控制器。
- 推荐阅读:《OpenHarmony轻量系统开发》系列文章。有涉及I2C。
- 社区:《开发样例》
建议架构分层:下位机负责电机、阀门、传感器和 485/I2C 等实时控制;OpenHarmony 开发板做边缘网关/控制器;平板 HarmonyOS App 做 GUI 和业务编排。先选 RK3568/RK3588 这类资料多的板验证通信链路,再逐步做驱动、协议、监控和 OTA。
学习下
将HarmonyOS/OpenHarmony引入这个架构,思路是完全可行的,而且能够利用分布式软总线和ArkUI带来很好的开发体验。但其中的硬件选型和系统分工是成败的关键。
核心核心建议:不要强行让纯MCU(如STM32/ESP32)去跑OpenHarmony系统
目前,OpenHarmony(特别是标准系统)需要相对较强的硬件(如Cortex-A核+运行Linux内核)才能流畅运行。直接用OpenHarmony去裸写电机驱动、通过I2C/RS485控制阀门,开发难度高、实时性可能难以保证。
推荐架构:采用“鸿蒙控制板 + 传统MCU”的混合架构。
参考一下深开鸿他们的:
整个RK3568 开发板试试
鸿蒙不存在上位机的概念,只需要购买内置鸿蒙系统的嵌入式硬件,按照鸿蒙开发文档通过分布式软总线(Wifi星闪NFC蓝牙等接口)进行开发。
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
哦,
嵌入式样机开发项目规划需明确硬件选型(如Hi3861、Hi3516等)、系统版本(HarmonyOS Next)、开发环境(DevEco Device Tool + SDK)。划分功能模块:驱动适配、HDF框架集成、分布式能力调试。构建流水线:源码编译→烧录验证→性能调优。注意版本依赖与API兼容性。
下位机推荐选用支持OpenHarmony轻量/小型系统的开发板(如Hi3861或STM32MP157系列),利用HDF框架封装I2C、UART(挂载RS485)等驱动,实现传感器读取、电机阀门控制。上位机采用搭载HarmonyOS的平板,基于ArkUI开发分布式应用。通信层建议优先评估Wi‑Fi/蓝牙串口透传,若需高可靠可走分布式软总线。开发规划分四步:①硬件原型搭建与外设驱动调通;②基于OpenHarmony编写设备端服务,完成协议解析与数据上报;③平板应用开发,实现GUI控制台与指令下发;④系统联调,验证端到端控制逻辑与异常处理。整体沿硬件驱动→设备抽象→应用交互的顺序递进,确保各层独立可测。


