[物联网] 3.1 设备--通向现实世界的接口

2022-03-29 14:29:04 浏览数 (1)

为什么要学习设备的相关知识 经过前两章的学习,想必各位读者已经掌握物联网这个词描绘出的世界和用于实现物联网的系统架构了。基于这点,这一章将会为大家介绍在物联网世界中起着核心作用的因素,即设备的相关知识。 可能有人会觉得自己没有必要学习设备的机制,但是,请这样认为并想赶快读完本章的读者稍稍放慢速度,因为本章正是为了那些以往没有从事过设备开发的读者们编写的。 而且,所有的工程师都有必要加深对设备的理解,因为这关系到“连通性”给设备开发带来的变化。这里我们就先来看看这些变化。 连通性带来的变化 很显然,智能手机和随身听等伴随大家日常生活的设备都是由硬件和软件组成的。硬件经过了精致的设计,软件则用来控制硬件。设备开发的本质就是在最大限度上实现硬件和软件的完美配合。 对于平日里从事 Web 应用程序开发的各位软件工程师来说,提到设备开发,或许大家就会有一种敬而远之的感觉。在考虑独立开发某种设备的时候,肯定会有人担心以下这些问题。 ● 是否需要对硬件有深入的了解 ● 开发设备控制软件是否需要专业知识 ● 开发硬件是否需要特殊的开发环境 就结论而言,这些问题的答案很统一:需要。就像大多数人都知道的那样,用于控制设备的软件有一个明确的种类,那就是“嵌入式软件”。开发嵌入式软件需要极强的专业性,即使是在物联网的世界,这一本质也基本没有什么变化。 那么,物联网会带来哪些改变呢?解开这个问题的关键词就是“连通性”。连通性一词表示的是机器和系统间的相互连接性和结合性。物联网设备试图经由网络来“连接”外部系统,并通过以下技术革新让以往人们无法想象的一些设备都具备了连通性(图 3.1)。 ● 硬件的进化使设备的小型化和高级化得以发展 ● 能够在广域条件下轻易地利用高速度 / 高品质网络的环境得以实现

有些设备不具备连通性,这很正常,因为它们本身就是用来独立实现功能的。而且,这种设备一旦出了库就没法再变更商品规格了,所以需要花大把的时间和成本来开发。 一方面,物联网设备本身的结构非常简单,提供的是一种与云服务或智能手机等外部机器组合在一起的一体化服务。这种情况下,用于设备的应用程序能够很轻松地得到更新,在产品发布后还能一边从用户处获取反馈,一边不断改良软件(包括设备自身的固件)。此外,还能够在云端对大量的设备信息进行整合和加工,以一个应用程序为接口向用户提供有益的信息。 另一方面,硬件开发本身的成本竞争正在不断激化,设备开发必然会促进设备自身的高级化。而围绕设备开发,将服务整体作为一个生态系统来进行最适宜的设计规划,其重要性则不言而喻。想必在这股潮流中,存在差异性的部分也将会多元化。例如,构建算法,来为用户提供统一处理从设备处采集到的信息并进行高级分析的服务;或者构建应用程序,来实时反映设备不断变化的情况等。这些物联网设备的与众不同之处也必定会显现出来。 为了尽最大努力回应这种需求并无缝开发应用了物联网设备的服务,从事开发(设备本身的开发,连接设备的云端系统以及利用它们提供服务的应用程序等的开发)的工程师在开发的同时要达成共识,这点是非常重要的。在这个过程中,在软件开发高速化的牵引下,用以往难以想象的硬件开发速度不断开发和提供服务才是需求所在。要想实现这个目标,服务开发者和设备开发者都必须正确理解彼此在各自领域都是如何工作的(图 3.2)。

本章将会依据采用了物联网设备的服务开发所固有的特性,紧扣各位读者在新开发物联网设备及使用了物联网设备的服务时会遇到的各种各样的关键点,并针对设备的结构提取重点内容来进行解说。此外,本章还会介绍如何用“原型设计”在轻松搭建设备的同时评价以及审查产品与服务。

0 人点赞