IOT硬件与服务器通讯流程


title: IOT硬件与服务器通讯流程
tags: IOT
date: 2019-4-17 23:53:00


硬件与服务器通讯流程

前言:

CITC-iot物联网平台支持目前主流的物联网通讯协议,同时已有多款产品和项目在运行,目前已实现数据高并发通讯与存储。目前支持的协议为:MQTT、COAP、HTTP等,本文着重讲解本平台支持的硬件与服务器的通讯流程。

现有平台协议分析总结:

由上图可知:目前各大IOT云平台支持的主流协议均为MQTT协议。其他协议或使用范围狭窄,或使用过程繁杂,或硬件对接复杂。
故,本iot平台依旧在支持MQTT协议的基础上,同时还支持COAP、HTTP等协议(其他协议正在建设中),完成物联网多协议的对接。

数据采集:

硬件的数据采集是依靠多种传感器来完成的,传感器的采集决定了主控MCU的采集流程,目前业内的传感器多采用以下的协议来实现:

  1. 工业modbus485采集
  2. I2C数据采集
  3. 工业模拟量采集(4-20ma)
  4. CAN总线数据采集
  5. 单总线数据采集

MCU主控类型

概述:
MCU作为硬件的主控,进行数据的读取与简单的分析以及数据校验,另外也负责了整个硬件系统的工作以及进程管理,例如:温湿度采集系统的工作,从485协议的温湿度探头读取到数据,进行CRC校验,进而计算出数据值,发送给通讯模组(NB或者WIFi、4G),同时MCU还管控着整个系统的流程、以及时钟、另外也作为系统故障的检测与处理的角色。
目前使用的MCU的型号如下:
 STM系列:
STM32F407、STM32F103、STM32F030
 Arduino系列:
Arduino uno R3、Arduino mega2560、Arduino mini
 ESP系列(同时可作为通讯模组):
ESP01、ESP12F、ESP32

通讯模组类型:

概述:
通讯模组作为硬件系统的传输层,把MCU发来的数据点,通过特定的协议(MQTT、HTTP、COAP)发送到云服务器,同时内部芯片里面集成了传输需要的通讯逻辑与时钟调配。
目前测试的通讯模组型号如下:
 WIFI模组:
ESP01、ESP12F、ESP32
 NB模组:
高新兴物联ME3616、中移M5311、SIM7000C
 4G模组
SIM7600

通讯协议类型

 MQTT:
MQTT协议是一个面向物联网应用的即时通信协议,使用TCP/IP提供网络连接,能够对负载内容实现消息屏蔽传输,开销小,可以有效降低网络流量。这也是目前主流的物联网通讯协议
 COAP
由于物联网中的很多设备都是资源受限型的,即只有少量的内存空间和有限的计算能力,所以传统的HTTP协议应用在物联网上就显得过于庞大而不适用。 IETF的CoRE工作组提出了一种基于REST架构的CoAP协议。COAP的使用并不是太广泛,但是他占用的资源是非常的小的。
 HTTP
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。

IOT项目工作流程:

一、 数据采集:
由传感器(例如温湿度传感器)采集环境或者设备的状态值,内部芯片会处理为使用于工业通讯的格式,例如:485、0-5V、4-20MA,同时内部会生成必要的数据校验,为MCU处理数据做准备。
二、 MCU处理与发送以及接收:
MCU主动问询或者接收由传感器采集的数据点,进行必要的校验无误后,进行数据的简单处理,例如:滤波、换算等,进而进行数据的封包,封装成适合通讯模组的格式,例如:MD5加密、进制转换、数据整合等。
当收到通讯模组回传的下发命令,将进行解析并控制硬件执行相关的动作,例如:设备休眠、设备自检。

三、 通讯模组数据推送
通讯模组(NB、4G、WIFI)接收MCU封装好的数据,内部芯片利用支持的通讯协议将数据发送至指定IP的服务器,同时也接收服务器下发的命令,转发给MCU来执行命令。
四、 服务器接收:
服务器接收到硬件设备发来的数据进行校验和解密后,将数据推送至队列或者缓存至数据库,用于前端显示与用户界面的展示,例如:监控大屏。同时也接收用户发来的指令,将消息下发至MCU进而控制设备执行动作。

总结:
目前CITC-IOT平台的数据传输以及通讯协议均采用业内主流标准,部分项目数据传输严格按照国家标准协议,同时又开发了一些特有的通讯协议与标准,用来配合快速开发与设备验证,更多的协议支持还在建设中,同时更多的项目也在陆续对接。

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
物联网IoT硬件设备开发流程是一个相对复杂的过程,通常包括以下几个阶段: 1. 概念设计:在这一阶段,团队会对硬件设备的概念进行初步的确定。包括确定设备的功能、目标市场、成本预算和技术需求等。 2. 硬件设计:在此阶段,团队将进行硬件电路的设计和原型制作。这包括选择合适的组件和芯片来满足设备的功能要求,进行电路设计和布局,并制作出试验用的原型。 3. 软件开发:一旦硬件原型制作完成,团队将开始进行软件开发。这包括编写设备的固件和驱动程序,使其能够与其他设备进行通信、收集和分析数据。 4. 测试和验证:在这一阶段,硬件原型将进行严格的测试和验证。团队将验证设备是否按照预期工作,并进行功能和性能的测试。如果有需要,还可以进行安全性和可靠性的测试。 5. 生产和制造:一旦原型经过验证,并且团队满意设备的性能和质量,就可以进入批量制造阶段。这包括选择合适的原料和供应商,并制定制造流程和质量控制标准。 6. 上市和维护:一旦设备制造完成,就可以将其推向市场并进行销售。同时,团队还需要提供维护和技术支持,确保设备的正常运行,并进行后续的软件和硬件更新。 总体而言,物联网硬件设备开发流程包括概念设计、硬件设计、软件开发、测试和验证、生产和制造以及上市和维护等阶段。这些阶段需要团队成员的密切合作和专业知识,确保最终提供高质量、可靠的物联网硬件设备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值