IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 智能家居之设备配网(理论篇) -> 正文阅读

[嵌入式]智能家居之设备配网(理论篇)

前言:记录杭州疫情,独自在杭州跨年了,不过也可以抽出点时间来写写博客分享一下,在这也要祝大家虎年大吉!!


本篇目标:介绍当前智能家居产品中,关于设备配网中用到的一些技术


配网的作用

现在家庭生活中,智能设备越来越多,大到手机、电脑,小到插座、灯泡、网关等。但是这些设备需要联网的话,通常会接入家里的路由器,那么给设备配置连接路由器的过程就可以简单的称为配网
所以配网展现的作用就是让一个智能设备连接到路由器(网关)上,使得这个智能设备能够通过网络获取发送数据,并展现给使用者。

ps:对于现在的智能家居设备,配网还有一个作用,就是在设备连接到路由器后,可以将设备添加到使用者的平台(小米等)账号下。


配网的主流方式

配网的几个主流的方式:

  1. 有线连接:该方式十分简单,通过网线直接将设备连接到路由器即可,缺点就是网线束缚了空间。
  2. 无线连接 - 界面操作:有显示屏的设备一般会通过显示屏进行展示和交互,这样对于使用者非常友好,所有数据都可以看到,操作过程是十分明确,方便,如手机、电脑为代表。
  3. 无线连接 - softap配网(常用):对于没有显示屏的设备,会借助手机界面或说明书的引导,对设备进行配网。通过按键(或其他触发条件)长按,让设备散发一个开放的热点,在手机上预先填好路由器的账号密码,然后将手机的网络切换到开放的热点上,通过局域网将路由器信息发送给设备,设备收到信息后,去连接路由器。
  4. 无线连接 - 蓝牙配网(常用):和softap配网相似,也需要在手机上预填路由器信息,不过得益于手机蓝牙连接的方便性,使得手机能够自动连接到设备蓝牙,并将数据传输给设备,设备收到信息后去连接路由器。
  5. 无线连接 - smartconfig(不常用):将路由器信息经过长度、地址编码,然后通过手机广播出去,同时将设备变成类似一个无线抓包器,捕获并过滤出编码的数据包,并解码成路由器数据,连接路由器;整个操作过程与蓝牙配网类似,但是对于编码解码的设计,以及开发设计要求很高,并且该方式成功率无法达到100%,并且存在很多路由器兼容性上的问题,所以开发和维护的成本会比较高。
  6. 无线连接 - 私有协议方式(不常用):现在的厂商将自家的路由器和设备间,通过定制私有协议(或私有方案)的方式,使得自家的设备能够快速连接上自家的路由器,并不需要上述几个方式复杂的操作,但局限性也显而易见了,所以在协议未统一的情况下,也不常使用这种方式,代表如华为的hilink。
  7. 无线连接 - 网关接入(常用):该方式用于多个设备组网,一般是蓝牙和zigbee设备,网关已经通过上述的某种方式接入路由器联网,此时只需要简单的根据手机上的提示进行自组网配对即可,之后设备会自动连接到网关上,由网关代理管理所有的数据入网。

ps:简单的提一句个人觉得的配网趋势,由于现在很多的无线芯片支持wifi&ble双功能,所以主流会偏向蓝牙配网,并将softap配网作为备用;同时大厂商(例如华为、小米、阿里)将会发展上述的私有协议方式的快速接入,并在联盟提出统一化的配网协议,达到多平台产品之间真正的互通。


配网的设计

在本节选取上述的几个无线连接提下具体的过程设计:

  • softap配网:
    (1)手机app预填路由器信息
    (2)设备散发热点,热点名称可以结合mac自定义,用于区分即可
    (3)手机连接设备热点后,便建立了局域网
    (4)选取局域网通讯的方式:tcp&http,udp&coap,tcp&私有协议,udp&私有协议都可,在通用和数据量上都有各自的优先和缺点;
    (5)制定具体的交互命令协议:如查询设备信息、设置路由器信息
    (6)数据加密
    (7)数据交互完毕后,设备关闭热点,完成路由器的连接

    app 设备 填入路由器信息 散发热点 DEV-XXXXXXXX 连接热点 udp&私有协议介质传输 查询设备信息 返回设备信息 发送路由器信息 响应 关闭热点,连接路由器 app 设备
  • 蓝牙配网:
    (1)手机app预填路由器信息
    (2)设备进行蓝牙广播,可以在蓝牙广播包 - 厂商自定义数据中加入特定的数据用于区分自家的设备
    (3)设备本地蓝牙服务注册自定的服务用于通讯
    (4)手机搜索到特定的蓝牙设备后,连接蓝牙,获取服务,通过服务进行通讯
    (5)制定协议:蓝牙数据量小,一般自定私有字节协议进行通讯
    (6)制定具体的交互命令协议:如查询设备信息、设置路由器信息
    (7)数据加密
    (8)数据交互完毕后,设备关闭蓝牙,完成路由器的连接

    app 设备 填入路由器信息 蓝牙广播 发现设备、连接蓝牙 查询蓝牙服务 响应 蓝牙服务&私有协议传输 查询设备信息 返回设备信息 发送路由器信息 响应 停止广播,连接路由器 app 设备

小结

配网为当前智能家居设备不可缺少的步骤,上述都是个人的一些总结。
当然上述的配网只是最简化的流程,在真正的开发上,对于体验和开发会对过程进行二次的优化和修改,达到对于使用者友好。

后续篇章将通过局域网设备、esp32来具体实现softap配网和蓝牙配网。

共勉

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-02-06 13:59:12  更:2022-02-06 14:00:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/8 4:41:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码