0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙物联网基础

范嘉琦 来源:范嘉琦 作者:范嘉琦 2024-01-08 08:37 次阅读

一、环境准备

我们首先需要准备如下插件

鸿蒙开发插件:

OHOS_MQTT

(一)插件手动安装部分

1、OHOS_MQTT

首先要在项目根目录下的oh-package.json5 文件下,添加如下代码。默认dependencies为空。

"dependencies": {
 "@ohos/mqtt": "2.0.5-rc.0"
}

二、架构设计

1、总体架构

chaijie_default.pngwKgZomWbQ0KANKjOAAA4XAsdsf8813.png

首先需要注意,模块要高度解耦。对于采集任务模块只负责下达任务。二具体怎么通信,跟谁通信,是通信队列的问题。存数据和存日志也和采集任务模块无关。甚至说日志任务中一旦要向数据库中写入日志,写入部分也和日志任务无关。都有各自的子模块以及统一调度总线的接口完成。

这个理念来自于模块化设计。之前都用于C++的可插拔模块库。现在第一次应用于鸿蒙操作系统上。但是庆幸的是鸿蒙它本身就是高度解耦的模块化设计。它的设计从架构上就偏向于这种解耦设计。相信真正写起来不会太复杂。尤其是这个任务调度总线在C++中要自己处理池,信号,一步携程,定时器。现在鸿蒙的任务管理模块统统给你写好了,这简直是节省了一大票时间。

wKgaomWbQ3CAEcq6AACZlafGcP0539.png

这是之前的任务调度中硬件部分。其实从总的结构上来说都差不多。首先由C++部分写好直接接口。比如说串口,SPI,I2C的读取。

但是注意的是,为了解耦,在C++中请不要写任何任务调度,逻辑信息。C++只是为了调用底层接口。具体业务逻辑由上层鸿蒙代码全权代理。

wKgaomWbQ3qAZA4TAAHNGbATL3w666.png

从逻辑上来讲,通信调度还应该包含加密,访问控制,以及调试接口。但是来不及做,这部分就先做一个简略。

2、采集设计

从末端设计来讲,末端采集任务应该只负责采集上传。此刻飞腾派充当一个边缘计算终端的任务。高性能单片机的成本和开发难度会飙升。所以为了单片机采集任务的稳定和成本,推荐直接采用廉价的20P或者32P的单片机做采集。

3、上层任务

理论上完整的设计必须包括一个顶层的服务。否则你的东西给谁看呢。这里可以直接用jetlinks等平台。毕竟他们都做好了。但似乎记住这些开源的嵌入式平台它本身就承担一个数据接收河转接的功能。很多时候存储和告警都算是额外的付费功能。

更何况上层任务怎么可能仅仅是一个存储呢。

wKgaomWbQ4mAYN9eAAGJrKwx4bM871.png

作为一个完善的上层任务,要有基本的存储,用户接口,设备接口,甚至是机群接口。

wKgZomWbQ42AIg8LAAFQoyUzwA4793.png

你甚至还要有给客户展示的接口。有设备的管理接口。

wKgaomWbQ5SAQ3VtAAE6shrfNrw410.png

复杂的甚至还涉及到单点登录,日志管理。毕竟你有时候日志量是惊人的。

更何况这里还是涉及到一个问题,那就是加密平台。任何高安全平台都要有自己独立的证书自动化授权平台。

同时这里要说明一件事情,对于安全,要遵守一个守则。保密人才》保密制度》保密规则》保密算法

为什么保密人才最重要。因为一旦有个内鬼你的防火墙形同虚设。一旦物理机层面被突破,你的任何安保,什么区块链,什么证书,什么加密芯片,都是笑话。最简单的黑客就是拔网线。不管羞不羞耻,都有效。真打起来,没人在乎羞不羞耻,只在乎有不有效。

什么是保密制度?那就是从政策上杜绝泄密,比如说密级分层。它在保密人才下面是因为你的副总和技术总监,安保经理同时背叛你,啥规矩都不好使。但是人总不能这么背,大部分时候大家都是遵守规则的。

然而,一个人把一个充满病毒的U盘扔你服务器上,啥保密算法都没用。一旦突破了物理机层面,一切技术都是徒劳。你能保佑的仅仅是它不要入侵级别很高的物理机。保佑你的数据隔离做的很优秀。这当然也是政企最常用的手段。

只与什么是保密规则呢。非对称加密相对于对称加密就是一种规则上的提升。当你的人和你的保密策略非常完善的时候,此时大部分事情还是应该交给电脑。毕竟它任劳任怨还便宜。

从原理上保密。也就是你有一个完善的加密链,最大程度上防止你被强破。

最后就是算法了。有人问证书加密是不是绝对安全。其实证书加密并非绝对安全。甚至说即使是这样,你大部分时候都不可能用证书加密通信,否则你的通信会瘫痪的。

有人会觉得奇怪,不对啊,我天天HTTPS。当然,你们的证书通信其实只是交换了一个对称密码。真正数据传送其实还是交给了常规的对称加密。之是经常换秘钥罢了。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2870

    文章

    41639

    浏览量

    358400
  • 鸿蒙
    +关注

    关注

    55

    文章

    1637

    浏览量

    42120
收藏 人收藏

    评论

    相关推荐

    纯血鸿蒙系统,拿什么与安卓、iOS比?

    ArkUI …… 2、鸿蒙进阶 Stage模型 网络、数据管理 一次开发多段部署 …… 3、鸿蒙多媒体技术 音频 视频 相机 图片 …… 4、鸿蒙南向与驱动开发
    发表于 02-21 21:04

    盘点那些硬件+项目学习套件:Hi3861鸿蒙开发板及入门常见问题解答

    华清远见20岁了~过去3年里,华清远见研发中心针对个人开发板业务,打造了多款硬件+项目学习套件,涉及STM32单片机、嵌入式、联网、人工智能、鸿蒙、ESP32、阿里云IoT等多技术方向。 今天我们
    发表于 02-01 16:55

    免费学习鸿蒙(HarmonyOS)开发,一些地址分享

    HarmonyOS万互联,从华为一系列的操作来看已经与iOS、Android形成三足鼎立之势了。 根据《澎湃新闻》的报道,已有23所985高校和46所211高校加入了鸿蒙班的行列,合计达到了69所
    发表于 01-12 20:48

    为何大厂急招鸿蒙开发工程师?别有洞天

    正确看待鸿蒙不再兼容安卓版本,而大厂急招鸿蒙工程师这一举动已经是预料之中的。我们一步步来看鸿蒙是怎么发展过程的。为什么互联网大厂急招鸿蒙开发
    发表于 01-08 19:59

    中软国际与智微智能携手打造开源鸿蒙联网终端及计算机产品

    12月8日, 中软国际与深圳市智微智能科技股份有限公司 (以下简称“智微智能”) 签署开源鸿蒙合作协议,将携手打造开源鸿蒙联网终端 及 计算机 产品。 双方将共同探索和推进开源鸿蒙
    的头像 发表于 12-11 09:15 208次阅读

    如何采用mqtt协议实现联网模块消息推送?

    如何采用mqtt协议实现联网模块消息推送
    发表于 11-03 06:55

    联网专业前景怎么样?

    联网专业前景怎么样? 联网专业在当今技术发展迅速的背景下具有广阔的前景。以下是联网专业的
    发表于 10-20 09:48

    基于飞腾派的边缘联网

    本帖最后由 zhh763984017 于 2023-9-21 16:53 编辑 今天给大家分享一个飞腾派的一个应用场景——边缘联网关。边缘联网关可以连接各种
    发表于 09-21 16:50

    电池联网应用MCU都用哪些型号的?

    电池联网应用MCU都用哪些型号的
    发表于 09-20 07:57

    阿里云联网平台基础概念讲解

    产品 设备的集合,通常指一组具有相同功能的设备。联网平台为每个产品颁发全局唯一的ProductKey。每个产品下可以有成千上万的设备。 设备 归属于某个产品下的具体设备。联网
    发表于 09-11 07:41

    联网简介

    联网(IoT)是由物理设备、车辆等组成的网络,家用电器和嵌入有电子设备、软件、传感器等的其他物品,致动器,以及使这些物体能够连接和交换数据。
    发表于 09-11 07:18

    ARM联网整体解决方案-数据表

    ARM联网整体解决方案提供了一种独特的基于解决方案的方法,将最新的专业处理能力与先进的软件和工具相结合。 ARM联网整体解决方案可随时实施或构建,从而简化您的设计流程和产品开发。
    发表于 08-29 06:06

    浅谈工业联网平台

    工业互联网平台 工业互联网平台的本质是在传统云平台的基础上叠加联网、大数据、人工智能等新兴技术,搭建对工业数据采集、存储、分析和应用的模块体系,实现工业互
    发表于 08-10 15:45

    联网无线通信技术比较

      联网在经过多年由概念到实践的蛰伏,起伏之后,现在已经呈燎原之势,联网时代已经到来。起的太早的,有些已经在沙滩上了,再晚了的需要迎头赶上了。   从应用方面看,
    发表于 05-15 15:57

    中文C语言编程玩转联网华为鸿蒙Hi3861开发-基础案例合集

    继《一套支持中文C语言编程的鸿蒙Hi3861智能硬件开发套件》发布后,中文C语言编程玩转联网华为鸿蒙Hi3861开发,多个基础案例视频,包括交通红绿灯、数码管、光电开关、手指侦测心率
    发表于 05-08 23:50