物联网项目实战:基于Android Things系统
上QQ阅读APP看书,第一时间看更新

1.2 IoT组件

几个不可忽略的要素推动着IoT生态系统的发展,要了解IoT,就要弄清楚它们在其中扮演的角色,这对更好地理解我们将使用Android Things构建的项目也相当有用。

IoT由一个个智能对象组成。它们是能够交换数据并且连接到互联网的设备,可以是用于测量压力、温度等环境变量的简单传感器,也可以是更复杂的一套完整系统。烤箱、咖啡机,甚至洗衣机都可以是智能对象连接到互联网的例子。所有这些智能对象都可以当作IoT中的成员。总之,IoT对象不仅可以是智能化的家用电器,还可以是汽车、建筑物和执行器等。可以在连接时引用这些对象,使用某种唯一标识符与它们交流互动。

在底层,这些设备使用网络层中的相关技术来交换数据。在IoT底层,重要且常用的协议包括:

 

• Wi-Fi;

• Bluetooth;

• ZigBee;

• Cellular network;

• NB-IoTLoRA。

 

在应用层中,IoT项目也广泛使用了几种通用协议。其中一些协议派生自特定的环境(如Web),也有一部分特定于IoT。常见的有以下几种:

 

• HTTP;

• MQTT;

• CoAP;

• AMQP;

• Rest;

• XMPP;

• Stomp。

 

现在,它们在你眼中可能只是一个空洞的英文名称,但在本书深入探讨如何在Android Things中使用这些协议后,你将豁然开朗。

原型开发板在IoT中扮演着至关重要的角色,有助于开发具有一定量级的连接对象。使用开发板,可以实现多种IoT项目。本书将一一探究如何使用与Android Things兼容的一些开发板构建并测试IoT项目。我们可能已经了解了市场上已经有的几种原型开发板,它们各具特色且功能各异。例如:

 

• Arduino(配置各异);

• Raspberry Pi(配置各异);

• Intel Edison;

• ESP8266;

• NXP。

 

在本书的项目中,我们将主要使用Raspberry Pi 3主板和Intel Edison主板,因为目前Android Things官方支持这两款主板。在本书中,我们也将会使用一些其他主板,以了解它们各自的集成方式。