ESP8266通信和OneNET平台相关知识整合

一、ESP8266通信的三种模式

1. 接入点模式(AP 模式,Access Point)

  • 类比理解:你可以把 ESP8266 在 AP 模式下想象成一个小型的无线路由器。我们平时家里用的无线路由器,能让好多台设备,像手机、电脑等连上去上网。ESP8266 在 AP 模式下也有类似的功能。
  • 实际用途:当 ESP8266 处于 AP 模式时,它会创建一个 Wi-Fi 热点,其他设备(如手机、电脑)就可以连接到这个热点。这在一些小型的物联网项目里很有用。比如你做了一个智能温湿度监测设备,用 ESP8266 作为主控芯片,让它工作在 AP 模式。这样,你就可以用手机连接到 ESP8266 创建的热点,然后和这个设备进行通信,获取温湿度数据。

2. 站点模式(STA 模式,Station)

  • 类比理解:在 STA 模式下,ESP8266 就像是我们的手机或者电脑。我们的手机和电脑要上网,就得连接到家里的无线路由器。ESP8266 在 STA 模式下也是如此,它会去连接已有的 Wi-Fi 网络。
  • 实际用途:如果你有一个基于 ESP8266 的智能开关,你希望它能通过家里的 Wi-Fi 网络和云端服务器通信,实现远程控制。这时候就可以让 ESP8266 工作在 STA 模式,连接到家里的无线路由器,然后通过路由器访问互联网,和云端服务器进行数据交互。

3. 混合模式(AP + STA 模式)

  • 类比理解:混合模式就是把 AP 模式和 STA 模式的功能结合起来了。就好像一个既可以自己发射信号让其他设备连接,又能连接到别的大网络的设备。
  • 实际用途:在一些稍微复杂的物联网场景中会用到这种模式。比如在一个工业监控系统里,有多个传感器节点通过 ESP8266 连接到一个主 ESP8266 设备。主 ESP8266 工作在 AP + STA 模式,它一方面以 AP 模式创建热点,让其他传感器节点连接到它上面;另一方面,它以 STA 模式连接到工厂的 Wi-Fi 网络,再把收集到的传感器数据通过工厂的网络上传到云端服务器。这样就实现了多个设备之间的通信,以及和外部网络的连接。

二、 AT指令

(1)AT 指令是一种用于与调制解调器、串口设备或其他通信设备进行交互的命令集,就像是你和设备之间交流的 “语言”。以下是对它的通俗讲解:

基本概念

AT 指令以 “AT” 开头,后面跟着特定的字符或字符串,用来告诉设备要执行什么操作。比如,你想让手机通过蓝牙连接到一个耳机,就需要向手机发送一些特定的 AT 指令来完成这个连接过程。

常见类型及作用

  • 通信设置指令:这类指令用于设置设备的通信参数,比如波特率(数据传输的速度)、数据位、停止位等。就像你要和别人约定好说话的速度和方式一样,让设备之间能以正确的方式传输数据。例如,AT + UART_DEF = 9600,8,1,0这条指令就是设置串口的波特率为 9600,数据位为 8 位,停止位为 1 位,无奇偶校验。
  • 网络连接指令:可以让设备连接到网络,比如连接到 Wi-Fi 网络或者移动网络。以连接 Wi-Fi 为例,AT + CWJAP = "SSID","password"这条指令就是让设备连接到指定 SSID(无线网络名称)和密码的 Wi-Fi 网络。
  • 短信相关指令:用于发送、接收和管理短信。比如AT + CMGS = "+1234567890",这是准备向号码为 1234567890 的用户发送短信,后面再跟上要发送的短信内容。
  • 电话呼叫指令:能控制设备进行拨打电话、接听电话、挂断电话等操作。像ATD1234567890;就是拨打号码为 1234567890 的电话。

工作原理

当你在设备的控制终端或者通过编程向设备发送 AT 指令后,设备会对指令进行解析。如果指令格式正确且设备支持该指令,它就会执行相应的操作,并返回一个响应信息给你,告诉你操作的结果。比如你发送了一个查询设备信号强度的指令AT + CSQ,设备会返回当前的信号强度值,让你知道设备的信号情况。

总之,AT 指令为我们提供了一种方便、标准化的方式来控制各种通信设备,让我们能够通过简单的指令来实现设备的各种功能,实现与设备的交互和控制。

(2)AT指令的透传

AT 指令透传是一种让设备在通信过程中,将接收到的数据原封不动地传递给其他设备或系统的功能,就好像数据通过一个 “透明的管道” 一样,不经过任何处理直接传输过去。以下是更详细的通俗讲解:

为什么需要透传

通常情况下,设备在接收到数据后可能会对其进行一些分析、处理或者按照特定的格式进行转换。但在某些场景中,我们希望设备不要对数据做任何改动,直接把数据传递给下一个设备或系统。比如,我们有一个传感器采集到了一些数据,这些数据的格式和含义只有特定的后端服务器才能理解和处理,中间的设备只需要负责把数据准确地传过去就行,这时候就需要用到透传功能。

透传的工作方式

  • 进入透传模式:要使用 AT 指令透传,首先得让设备进入透传模式。一般通过发送特定的 AT 指令来实现,比如AT + CIPMODE = 1,这条指令就是设置设备为透传模式。不同的设备可能有不同的进入透传模式的指令,具体要看设备的说明书。
  • 数据传输:设备进入透传模式后,就开始 “专心” 地传递数据。当它从一个接口(比如串口)接收到数据时,会立即通过另一个接口(比如网络接口)把数据发送出去,就像一个 “搬运工”,只是把数据从一个地方搬到另一个地方,不做任何 “加工”。例如,传感器通过串口把采集到的数据发送给带有透传功能的设备,设备接收到后,会按照网络协议的要求,把这些数据通过网络发送给服务器。
  • 退出透传模式:当透传任务完成后,需要让设备退出透传模式,以便进行其他操作。这也需要发送相应的 AT 指令,比如+++(有些设备可能需要特定的延时或者其他条件才能正确退出),设备接收到这个指令后,就会停止透传,回到正常的命令处理模式,等待接收其他 AT 指令。

应用场景

  • 物联网数据传输:在物联网项目中,经常会有各种传感器采集数据,然后通过网络传输到云端服务器。传感器采集的数据格式可能是特定的,而且传感器本身可能不具备直接连接网络的能力。这时候就可以使用支持 AT 指令透传的设备,先把传感器的数据通过串口等方式发送给透传设备,透传设备再把数据通过 Wi-Fi 或者其他网络方式发送到云端,保证数据在传输过程中不被改变。
  • 远程设备监控:对于一些远程设备,如智能电表、工业设备等,我们需要实时获取它们的运行状态数据。这些设备可以通过串口将数据发送给具有透传功能的通信模块,通信模块再通过网络将数据传输到监控中心。监控中心接收到的数据和设备发送的数据是一样的,这样可以准确地了解设备的实际情况。

三、ONENET平台的直连设备,网关设备,子设备

  • 直连设备:具有 IP 地址,可直接连接到 ONENET 平台,就像一个能独立与平台对话的个体。比如一个带有 Wi-Fi 模块的智能温湿度传感器,它可以通过网络直接把采集到的温湿度数据发送到 ONENET 平台,也能接收平台下发的指令,如调整采集频率等。这种设备不能挂载其他子设备,但可以作为子设备挂载到网关设备下。
  • 网关设备:本身是一种直连设备,具有子设备管理模块,能挂载子设备2。可以把网关设备想象成一个 “桥梁” 或者 “管理者”,它一方面与 ONENET 平台直接连接,另一方面又连接着多个子设备。例如在一个智能家居系统中,ZigBee 网关就是一种网关设备,它连接到 ONENET 平台,同时通过 ZigBee 协议连接着家里的各种智能设备,如智能灯泡、智能插座等,这些智能设备就是子设备。网关设备负责维持子设备的拓扑关系,并将这种关系同步到云端,同时代理子设备进行设备认证、消息上传、指令接收等与平台的通信2。
  • 子设备:不直接连接到 ONENET 平台,而是通过网关设备间接连接到平台2。比如前面提到的智能家居系统中的智能灯泡、智能插座等,它们自身没有能力直接与 ONENET 平台通信,需要借助网关设备来实现数据的上传和指令的接收。子设备的数据会先发送给网关设备,再由网关设备转发到 ONENET 平台;平台下发给子设备的指令,也是先到网关设备,然后由网关设备转发给子设备。

四、MQTT,COPA,HTTP,LWM2M协议

  • MQTT:通常基于传输控制协议(TCP)。TCP 提供了可靠的、面向连接的数据传输服务,能保证消息的有序性和完整性,这对于 MQTT 在物联网场景中确保消息准确传递非常重要。例如,在工业物联网中,设备之间的状态信息和控制指令通过 MQTT 基于 TCP 传输,可避免数据丢失或错乱。
  • CoAP:基于用户数据报协议(UDP)。UDP 是一种无连接的轻量级传输协议,具有低延迟、开销小的特点,符合 CoAP 为资源受限设备设计的理念。在一些对实时性要求较高、数据量较小且允许一定数据丢失的物联网场景,如环境监测网络中,CoAP 基于 UDP 能快速传输传感器数据。
  • HTTP:基于 TCP 协议。HTTP 依靠 TCP 的可靠连接特性,确保客户端和服务器之间的请求和响应消息准确无误地传输。在 Web 应用和一些物联网应用中,如智能家电通过 HTTP 与云端服务器交互,TCP 保证了数据的可靠传输,使设备能正确接收和执行服务器下发的指令。
  • LwM2M:基于 CoAP 协议,而 CoAP 又基于 UDP 协议,所以 LwM2M 的底层协议最终是 UDP。LwM2M 借助 UDP 和 CoAP 的轻量级特性,实现对大量资源受限的物联网设备的高效管理和通信。例如,在大规模的智能家居系统中,众多智能传感器和执行器通过 LwM2M 基于 UDP 和 CoAP 与管理平台通信,以实现设备的远程配置和状态监控。

五、oneNET平台的属性类型,事件类型,服务类型

在物联网等领域中,属性类型、事件类型和服务类型是对设备或系统相关特性、行为等进行分类描述的方式,以下是通俗的讲解:

属性类型

  • 含义:属性就像是设备或事物的 “特征” 或 “状态” 描述,是一种相对稳定的信息,用于说明设备或对象是什么样的。
  • 示例:比如一个智能灯泡,它的属性可能包括颜色(如白色、黄色等)、亮度(可调节的具体数值)、开关状态(开或关)、功率(灯泡的瓦数)等。这些属性描述了灯泡的基本特性和当前状态,我们可以通过查看这些属性来了解灯泡的情况。

事件类型

  • 含义:事件是指设备或系统中发生的一些特定事情或变化,通常是具有一定时效性和突发性的,它表示某个特定的情况出现了。
  • 示例:对于智能灯泡而言,事件可能是灯泡被打开或关闭的瞬间、亮度被改变的时刻、发生故障的情况等。再比如,一个门窗传感器,门被打开或关闭就是一个事件;温度传感器检测到温度突然超过设定阈值也是一个事件。这些事件往往会触发一些后续的操作或通知,让相关人员或其他设备做出响应。

服务类型

  • 含义:服务可以理解为设备或系统能够提供的功能或操作,是一种主动的行为,用于实现某种特定的任务或满足某种需求。
  • 示例:还是以智能灯泡为例,它提供的服务可能有打开灯泡、关闭灯泡、调节亮度、设置定时开关等功能。这些服务是用户或其他设备可以调用的,以实现对灯泡的控制和管理。又如,一个智能音箱提供的播放音乐、查询天气、回答问题等功能,都属于服务类型,用户通过语音指令等方式来请求这些服务,让智能音箱完成相应的任务。

六、onenet平台中的标识符

在 OneNet 平台中,标识符就像是每个人的身份证号码一样,是用来唯一识别平台中各种资源的 “名字”。它可以帮助平台准确地找到和管理不同的设备、数据以及相关的功能。下面是对设备标识符、数据流标识符和产品标识符等常见标识符的通俗讲解:

  • 设备标识符:每一个连接到 OneNet 平台的设备都有自己独特的设备标识符。就像每个人都有独一无二的身份证号一样,设备标识符可以让平台知道是哪一个具体的设备在发送数据或者请求服务。例如,一个智能温度传感器设备连接到 OneNet 平台,它有一个特定的设备标识符,当它向平台上传温度数据时,平台通过这个标识符就能清楚地知道这些数据是来自这个特定的温度传感器设备,而不是其他设备。
  • 数据流标识符:设备可能会产生多种不同类型的数据,比如一个智能气象站设备,它可能会收集温度、湿度、风速等多种数据。数据流标识符就是用来区分这些不同类型数据的标识。可以把它想象成不同的 “数据管道” 名称,每个管道专门传输一种特定类型的数据。例如,温度数据通过名为 “temperature” 的数据流标识符来标识,湿度数据通过 “humidity” 这个数据流标识符来标识,这样平台就能准确地知道每种数据的类型和来源,方便对数据进行分类存储、管理和分析。
  • 产品标识符:如果有多个相同类型的设备,例如一批相同型号的智能电表,它们都属于同一个产品类别。产品标识符就是用来标识这一类相同设备的共性特征和相关配置信息的。它就像是一个家族的姓氏,代表着这一批设备具有相同的功能和特性。通过产品标识符,平台可以对同一类产品的设备进行统一的管理和配置,比如为这一类设备设置相同的通信协议、数据格式等。
  • 应用程序标识符:OneNet 平台上可能会有多个不同的应用程序,用于实现不同的功能,如数据可视化应用、设备控制应用等。应用程序标识符就是用来区分这些不同应用程序的标识。就像不同的商店有不同的招牌一样,应用程序标识符让用户和平台能够清楚地知道正在使用或操作的是哪一个具体的应用程序,以便实现相应的功能和服务。

七、onenet平台中的只读和读写 set get

在 OneNET 平台里,“只读” 和 “读写” 是对数据访问权限的设定,而 “set” 和 “get” 则是与这两种权限相关的操作,以下是通俗的讲解:

只读

  • 含义:就像你去图书馆看一本珍贵的古籍,只能看上面写了什么内容,但是不能在上面涂写、修改或者撕下来几页。在 OneNET 平台中,“只读” 权限意味着你只能查看数据,了解它当前是什么状态,但不能对数据进行任何更改。
  • “get” 操作:“get” 就相当于去获取数据。比如你想知道某个智能传感器当前的温度读数,你使用 “get” 操作去读取这个数据,因为是只读权限,所以你只能获取到温度的数值,而不能改变它。

读写

  • 含义:这就好比你有一个自己的笔记本,你既可以看里面写了什么,也可以随时在上面写新的内容或者修改原来的内容。在 OneNET 平台中,具有 “读写” 权限,你就不仅能够查看数据,还可以对数据进行修改、更新等操作。
  • “set” 和 “get” 操作:“get” 操作还是用来获取数据,和只读中的 “get” 类似。而 “set” 操作就像是你在笔记本上写新内容或者修改旧内容。例如,你可以通过 “set” 操作来改变智能灯泡的亮度值,将其从 50% 调整到 80%,这就是对数据进行写入操作,让设备的状态发生改变。

八、onenet平台中的物模型,为什么会有物模型

在 OneNet 平台中,物模型可以理解为对现实世界中物体(比如各种智能设备)的一种数字化描述方式,它就像是一个模板,告诉平台和其他相关系统这个物体是什么、能做什么、有什么特征以及会发生什么事情。以下是对物模型的通俗讲解以及为什么会有物模型的原因:

物模型的通俗讲解

物模型主要包含三个方面的内容,分别是属性、服务和事件,通过这三个方面来全面描述一个物体。

  • 属性:属性是用来描述物体特征和状态的。例如对于一个智能手环,它的属性可能有心率、步数、运动模式、电池电量等。这些属性可以让我们了解智能手环当前的情况,就好像我们通过一个人的身高、体重、健康状况等信息来了解这个人一样。
  • 服务:服务代表了物体能够执行的操作或功能。比如智能手环可以提供开始运动记录、停止运动记录、设置闹钟等服务。就像我们可以让人去做某些事情一样,我们可以通过调用智能手环的这些服务来让它完成相应的功能。
  • 事件:事件是指物体在运行过程中发生的一些特定情况。例如智能手环检测到用户进入了深度睡眠状态,或者电池电量过低,这些都是事件。事件的发生可以让我们及时了解到物体的一些特殊状态变化,以便做出相应的反应。

为什么会有物模型

  • 统一设备描述:在物联网中,有各种各样不同类型、不同品牌的设备,它们的功能和特性各不相同。如果没有一个统一的描述方式,平台很难对这些设备进行统一的管理和理解。物模型就提供了这样一种统一的标准,无论是什么设备,只要按照物模型的规范来描述,平台就能清楚地知道这个设备有哪些属性、能提供哪些服务以及会发生哪些事件,从而实现对各种设备的统一管理和交互。
  • 方便应用开发:对于开发人员来说,物模型提供了一个清晰的接口和规范。开发人员可以根据物模型来了解设备的功能和数据结构,从而更方便地开发出与设备交互的应用程序。他们不需要了解每个设备的具体细节,只需要按照物模型提供的信息来进行开发即可,这样可以大大提高开发效率,降低开发难度。
  • 实现设备互操作性:物模型使得不同设备之间能够更好地进行互操作。例如,一个智能手环和一个智能健康管理平台都遵循相同的物模型标准,那么智能手环就可以将数据准确地传输给健康管理平台,并且健康管理平台也能够理解这些数据的含义,从而实现对用户健康数据的综合管理和分析。如果没有物模型,不同设备之间的通信和协作将会非常困难。

九、onenet平台中物模型中的属性例如温度湿度等数据存到radis中

在 OneNet 平台的物模型中,像温度、湿度这样的属性数据存到 Redis 中,可以这样来理解:

Redis 简介

Redis 就像是一个非常快速的 “数据仓库”,它能快速地存储和读取数据。与普通的仓库不同,它特别擅长处理一些需要快速访问的数据,就好像是一个专门用来存放经常要用的 “宝贝” 数据的地方,而且能让你很快地找到和使用这些 “宝贝”。

数据存储过程

  • 数据产生:当有设备(比如温湿度传感器)连接到 OneNet 平台时,它会不断地测量周围环境的温度和湿度,并把这些测量结果作为物模型中的温度、湿度属性数据。
  • 数据传输:设备将这些数据发送给 OneNet 平台,平台就需要找个地方把这些数据存起来。
  • 选择 Redis 存储:OneNet 平台选择把这些温度、湿度等属性数据存到 Redis 中,是因为 Redis 存储数据有很多优点。比如,它能快速地把数据存进去,就像你能快速地把东西放进一个特别方便的小盒子里一样。而且,当其他程序或设备需要使用这些温度、湿度数据时,Redis 又能快速地把数据取出来给它们,就像你能迅速从那个小盒子里拿出你需要的东西一样。这样一来,无论是实时监测温度湿度,还是根据这些数据进行分析,都能快速得到结果,不会让用户等很长时间。

例如,在一个智能温室里,有多个温湿度传感器连接到 OneNet 平台。这些传感器不断地将采集到的温度和湿度数据上传,OneNet 平台把这些数据存到 Redis 中。管理员通过手机应用程序查看温室的温湿度情况时,应用程序就会从 Redis 中快速获取最新的温度和湿度数据并显示出来,让管理员能及时了解温室环境状况,以便做出相应的调整。

十、乐鑫和安信可对应关系对比ARM和意法半导体ST谁设计谁生产

乐鑫和安信可与 ARM 和意法半导体 ST 之间的设计生产对应关系有相似之处,也有一些不同点,具体如下:

相似点

  • 乐鑫与 ARM:乐鑫和 ARM 都是专注于芯片设计的公司。ARM 设计处理器架构和内核,如 Cortex - M 系列等,并将设计授权给其他公司5。乐鑫则自主设计物联网无线通信芯片,如 ESP8266、ESP32 等系列芯片,拥有从 IP 开发到综合芯片设计、操作系统、固件等全栈工程开发能力1。
  • 安信可与意法半导体 ST:安信可和意法半导体 ST 都基于其他公司的芯片设计进行产品生产。安信可基于乐鑫的 ESP 系列芯片生产模组,将芯片与其他电路元件整合,方便开发者进行二次开发1。意法半导体 ST 基于 ARM 授权的内核架构,开发并生产 STM32 系列微控制器等芯片产品,在 ARM 内核基础上添加必要的外设和特色功能5。

不同点

  • 产品范围:乐鑫主要专注于物联网无线通信领域的芯片设计与相关模组生产。ARM 的设计则广泛应用于多个领域,包括智能手机、平板电脑、服务器、嵌入式系统等,其架构和内核种类丰富,涵盖了从低功耗到高性能的各种应用场景。安信可主要生产基于乐鑫芯片的模组,以及少量其他公司芯片的模组,产品集中在物联网相关模块。意法半导体 ST 的产品线则较为丰富,除了基于 ARM 内核的微控制器,还有其他各类芯片产品,如传感器、功率器件等,涉及多个领域和应用场景。
  • 合作模式:安信可与乐鑫是客户与供应商的关系,安信可购买乐鑫的芯片进行模组生产。意法半导体 ST 与 ARM 是授权合作关系,ARM 将内核架构授权给意法半导体 ST,意法半导体 ST 按照授权协议进行芯片的设计、生产和销售,并向 ARM 支付授权费用。

十一、AI小智的架构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值