HarmonyOS鸿蒙Next中嵌入式样机开发项目如何规划?

HarmonyOS鸿蒙Next中嵌入式样机开发项目如何规划? 简单来说,就是要开发一个软硬件系统,硬件要能与一些模块进行底层通讯和控制,包括电路、电机、阀门、传感器等,都由下位机来通过类似485或I2C等串行协议进行通讯;然后要有个上位机,有GUI,与下位机通讯,来下达用户的高级指令,以实现综合功能。我想全面引入HarmonyOS和OpenHarmony,也愿意购买开源鸿蒙开发板来作下位机,初步的GUI可以用华为平板来显示和控制,但应该如何构思开发计划?希望大佬能指点一二。谢谢!

15 回复

你这个方向其实非常适合:

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 和业务编排。

可以按这个路线规划:

  1. 电机、阀门、传感器等强实时动作仍放在 MCU/RTOS 或工业控制板上,485/I2C/SPI 等由下位机直接处理。
  2. OpenHarmony 开发板负责协议转换、设备状态管理、本地规则和与上位机通信,可选串口、以太网、BLE、Wi-Fi、MQTT 等链路。
  3. HarmonyOS 平板端只做可视化、配置、任务下发、日志查看和告警,不直接承担毫秒级控制闭环。
  4. 先做最小闭环:一个传感器 + 一个执行器 + 一个控制指令 + 一个状态回传,再扩展模块数量。
  5. 通信协议建议一开始就定义帧格式、版本号、设备 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。

如果使用鸿蒙,肯定引入OpenHarmony; harmonyos应该不行
可以买个 RK3568 /RK3588 的板子回来开发(需要先问好外设有哪些模块,要和鸿蒙匹配的)
再编译openharmony 对应版本镜像烧录,进行开发

学习下

将HarmonyOS/OpenHarmony引入这个架构,思路是完全可行的,而且能够利用分布式软总线ArkUI带来很好的开发体验。但其中的硬件选型和系统分工是成败的关键。


核心核心建议:不要强行让纯MCU(如STM32/ESP32)去跑OpenHarmony系统

目前,OpenHarmony(特别是标准系统)需要相对较强的硬件(如Cortex-A核+运行Linux内核)才能流畅运行。直接用OpenHarmony去裸写电机驱动、通过I2C/RS485控制阀门,开发难度高、实时性可能难以保证
推荐架构:采用“鸿蒙控制板 + 传统MCU”的混合架构。

参考一下深开鸿他们的:

https://developer.kaihong.com/

整个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控制台与指令下发;④系统联调,验证端到端控制逻辑与异常处理。整体沿硬件驱动→设备抽象→应用交互的顺序递进,确保各层独立可测。

回到顶部