物联网专题(三)硬件相关简介

374 阅读2分钟

这是我参与8月更文挑战的第21天,活动详情查看:8月更文挑战

在现实中并不是每个 Device 都联网,目前的行业惯例是这些 Device 先接入物联网网关, 实际上收发 MQTT 消息的是物联网网关。

Device 系统

由于 Device 上要运行程序,所以它上边通常跑着一个 RTOS(实时操作系统),程序则运行在这个系统之上,下列是部分开源物联网系统

  • RIOT The friendly OS for IoT
  • FreeRTOS FreeRTOS 的设计小巧且简易,整个核心代码只有 3 到 4 个 C 文件
  • rt-thread 小而美的物联网操作系统

Device 上也可以不跑操作系统,直接运行项目,例如以下项目支持直接运行在某些芯片上

Device 一般需要与网关协作,采用 树莓派 或 Arduino 做网关是个不错的选择。

Device 芯片

  • esp32 芯片自带蓝牙和wifi,价格低廉,支持micropython。
  • nrf52 系列的芯片支持 bluetooth5,micropython 社区正在对其进行兼容。
    • nrf52系列 芯片对开发者极为友好,开源了大量的工具和项目,开发者可以将其用作脚手架,快速构建产品。
    • nRF52840 支持协议:Bluetooth 5 Bluetooth mesh Thread Zigbee 802.15.4 ANT 2.4 GHz

Arduino 简介

Arduino官网:www.arduino.cc/

Arduino 是一款简单易用、便于上手的开源电子原型平台,包含硬件部分(各种符合 Arduino 规范的开发板)和软件部分(Arduino IDE和相关的开发包)。

  • 硬件部分(或称开发板)由微控制器(MCU)、闪存(Flash)以及一组通用输入/输出接口(GPIO)等构成,你可以将它理解为是一块微型电脑主板。
  • 软件部分则主要由 PC 端的 Arduino IDE 以及相关的板级支持包(BSP)和丰富的第三方函数库组成。使用者可以借由 Arduino IDE 轻松地下载你所持有的开发板相关的BSP和需要的函数库,用于编写你的程序。

Arduino 是一个开源平台,至今已经有了多种型号及众多衍生控制器,包括 Arduino Uno、Arduino Nano、ArduinoYún 等等。

Arduino IDE 如今也不仅仅支持 Arduino 系列开发板,还以引入 BSP 的方式增加了对 Intel Galileo、NodeMCU 等流行开发板的支持。

Arduino UNO: