开发IoT设备必须考虑的四种挑战

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介:

物联网是当今科技行业的热门词汇。但它也是一个不可否认的现实。物联网已经引发第四次工业革命,不管我们喜欢还是不喜欢,它将不可避免地成为我们生活的一部分。物联网技术已经逐渐应用于越来越多的行业,而且越来越多的企业都试图在未来的物联网世界占居一席之地。

现在的问题是,很多企业只顾深入研究物联网开发,而忽视评估或了解摆在他们面前的关键挑战。许多这些公司甚至根本没有一点IT行业和软件开发的背景,并且他们中的大多数都专注于提供互联网连接设备,从而让他们面临同样的竞争。即使是那些拥有软件和硬件设计经验者,往往也把物联网轻看为和传统计算技术一样,并在其发展过程中犯下可怕的错误。

一次次的事实证明,这样的做法简直是一个灾难,只会变成为一个个弄巧成拙的目标,并将糟蹋制造商的努力,从而破坏物联网的整体性。本文将提出所有制造商和开发人员在决定进军物联网行业时都应该慎重考虑的四大挑战。

连接性

首先要考虑的是,如何将设备连接到互联网和云计算平台。这在很大程度上要取决于装置使用的环境和提供给它们的通信基础设施的类型。

举例来说,如果你要创建一个智能家居设备(如连网的烤面包机),你可能访问Wi-Fi家庭路由器或一个ZigBee/Z-Wave物联网路由器;所以,您的设备必须能够支持一种或多种传输介质。然而,在一些环境中,如农业物联网或智能汽车——是无法访问Wi-Fi网络的,而移动网络可能是你唯一可能的连接选择。

因此,你必须权衡你的选择,并根据每一种选择所提供的可能性和投资而作出设计决策。例如,由于通过蜂窝网络传输数据到云服务可能是昂贵的,你可能会决定选择功能优先或者使用区块链(blockchain)模式,从而搭建较少依赖于云计算的物联网生态系统。

当然,您还需要考虑到物联网是一种仍处于早期阶段的技术,正在发生很大的变化和改造,存在太多的移动成份和竞争趋势。因此,许多今天正在使用的技术未来很可能成为过时。

另一方面,相对于计算机和智能手机每隔很短的年限就有可能被取代,IoT设备意味着有更长的寿命。例如,智能冰箱必须至少工作5~10年。因此,你必须制订一个计划,以确保您的设备在物联网未来初具规模时能够保持其连接性,并适应新技术取代旧技术。

安全和隐私问题

物联网安全性一直是颇具争论的一个问题。需要考虑的第一个挑战是,物联网的安全性和隐私与我们已经认识到的网络安全有着根本的不同。下面列举出一些你需要考虑的关键的安全设计要点:

l 物理安全:物联网设备通常处于旷野之中,无人值守且无物理保护。你必须确保它们不会被邪恶组织所恶意篡改,不能被黑客攻破,当然更不能使用平头螺丝刀来操作。你还必须保护存储在设备上的任何形式的数据。虽然在每一台物联网设备嵌入安全保护组件需要很高的代价,但是在设备上进行加密数据还是很重要的。

l 数据交换的安全性:因为数据要从IoT传感器和设备传输到网关,并从那里传输到云端;所以,数据保护也是很重要的。这就需要使用加密的传输协议,但是物联网安全性并非仅仅加密这一个方面,还应考虑到认证和授权等问题。

l 云存储的安全性:存储在云端的数据与物联网生态系统的其它部分一样脆弱。你的平台应该能够保护存储在云端的数据,这应当包括适当的加密和访问控制等。

l 更新:不管你如何为安全漏洞而强化您的产品代码和硬件,漏洞最终将浮出水面。在这种情况下,你首先需要有一个计划,以修复错误,并快速推出补丁(而不是让错误存在很长很长的时间)。其次,你需要能够向客户提供一种直观且安全的方式来进行错误修复。时下,以空中激活方式进行更新是一种更新连接设备的流行机制,但你必须确保它们本身不会成为一个安全漏洞。

在隐私方面,应考虑到物联网设备所收集的数据易受法律法规制约。例如,健身追踪器能够收集大量的用户信息,这在美国是受HIPAA(健康保险流通与责任法案)所保护的。这意味着,如果你在云服务器上存储这种类型的信息,你必须确保它符合法律规定。

作为一个经验法则,你最好匿名化客户数据,避免在云端存储个人身份信息。这将确保你不会在发生事故的情况下招致法律惩罚。

灵活性和兼容性问题

随着物联网格局正在不断变化,你要确保你的产品能够支持未来的技术。这需要在设计你的产品时在软件和硬件方面都要进行适当的平衡。

为您的设备创建专门的硬件会给你带来最佳的性能,但也有可能会限制你进行产品的更新。在另一方面,选择适量的存储和计算资源以及专门针对物联网定制的操作系统,如Linux,Brillo或Windows IoT,可能会导致性能下降,但却能使你更灵活地扩展设备,以应用新功能和进行补丁修复。

有些厂家尽可能提供合适的API和SDK,从而允许开发人员为他们的物联网设备增加功能。这方面的一个很好的例子是亚马逊回声器(Amazon Echo),这种物联网小工具可以通过编程来实现在一千个不同的方向加以扩展。

兼容性也是在设计IoT产品时需要关注的问题。你的物联网设备能够与用户的物联网生态系统无缝地融合在一起,而无需给已有的体验增加复杂性甚至带来挫折。这要从软件和硬件两个方面进行考虑。最理想的情况是,消费者不应该被强迫因他们在家中添置一台新智能设备而安装新的应用程序。苹果HomeKit和三星SmartThings就是这样的两个平台的例子,它们都支持开发人员能够在用户熟悉的环境中为用户提供新的物联网功能。

数据采集与处理

除了安全和隐私问题以外,你还必须规划好如何处理所有收集到的数据。首先,你必须对制作和收集的数据量进行评估,以便控制您的云存储的规模,从而满足你的平台需求。

但是,比这更重要的是你如何处理收集的数据。物联网的数据贵如黄金;但如果它静躺在你的服务器中,则根本不是这么回事。因此,你必须预测出能够把你的数据很好地利用所需的技能和工具;这包括聘用数据科学家以及采用恰当的分析和机器学习工具对收集的数据进一步提炼出可操作的洞察性信息等。

物联网的数据可以完成多种实用功能,具体包括以下一些方面:

补充现有数据:大多数企业在他们迁移到物联网业务之前已经具备了关于他们客户的海量的数据。把该数据与物联网设备收集的内容结合到一起就可以带来新的业务洞察力并提高收入机会。

分析和细分用户:从物联网设备收集的数据还可以告诉你很多关于客户的喜好和特点。分析和分类物联网数据可以帮助企业更好地了解客户的需求和喜好,进而以一种更聪明的方式解决这些问题。

找到提升产品的机会:对物联网数据的正确分析可以有助于理解产品中不应加入哪些功能,以及需要纠正哪些功能来提高利用产品效率和易用性,还助于知晓现有产品缺乏什么功能,从而了解应该把它们加入到未来的产品中并进行软件更新。

小结

总之,在参与制定物联网的产品中存在很多的挑战;本文中已经列出一些最为突出的方面。不考虑这些挑战犹如进入一个黑暗的隧道而不携带手电一样;在这种情况下,你不得不用手摸索着前进并提心吊胆地希望自己千万不要踏入陷阱中。事实上,物联网开发所面临的一系列挑战有可能更加复杂并具有综合性。如果你觉得还有其他方面需要纳入物联网开发挑战列表中,希望您能够与我们分享。


原文发布时间为: 2016年9月28日

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
2月前
|
传感器 存储 物联网
在物联网(IoT)快速发展的今天,C语言作为物联网开发中的关键工具,以其高效、灵活、可移植的特点
在物联网(IoT)快速发展的今天,C语言作为物联网开发中的关键工具,以其高效、灵活、可移植的特点,广泛应用于嵌入式系统开发、通信协议实现及后端服务构建等领域,成为推动物联网技术进步的重要力量。
52 1
|
3月前
|
Rust 资源调度 安全
为什么使用 Rust over C++ 进行 IoT 解决方案开发
为什么使用 Rust over C++ 进行 IoT 解决方案开发
109 7
|
3月前
|
人工智能 安全 物联网
|
5月前
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
当今社会,物联网技术的发展带来了许多繁琐的挑战,尤其是在数据库管理系统领域,比如实时整合海量数据、处理流中的事件以及处理数据的安全性。例如,应用于智能城市的基于物联网的交通传感器可以实时生成大量的交通数据。据估计,未来5年,物联网设备的数量将达数万亿。物联网产生大量的数据,包括流数据、时间序列数据、RFID数据、传感数据等。要有效地管理这些数据,就需要使用数据库。数据库在充分处理物联网数据方面扮演着非常重要的角色。因此,适当的数据库与适当的平台同等重要。由于物联网在世界上不同的环境中运行,选择合适的数据库变得非常重要。 原创文字,IoTDB 社区可进行使用与传播 一、什么是IoTDB 我
203 9
Apache IoTDB进行IoT相关开发实践
|
5月前
|
存储 监控 安全
使用IoT设备优化家庭生活的技术探索
【8月更文挑战第4天】IoT设备以其智能化、便捷性和高效性,正逐步成为现代家庭不可或缺的一部分。从智能照明到智能安防,从智能恒温器到智能厨房,再到智能语音助手,这些设备不仅优化了我们的家庭生活,还提升了我们的生活质量和幸福感。随着技术的不断进步和应用场景的不断拓展,我们有理由相信,未来的智能家居将会更加智能、更加人性化,为我们的生活带来更多惊喜和便利。
|
4月前
|
机器学习/深度学习 人工智能 算法
物联网(IoT)就像是一个大型派对,无数的设备都在欢快地交流着信息
【9月更文挑战第4天】在这个万物互联的时代,物联网(IoT)犹如一场盛大的派对,各类设备欢聚一堂。然而,如何让这些设备互相理解并协同工作呢?这就需要机器学习与人工智能的助力。例如,智能空调通过学习你的使用习惯来调节温度,使你更加舒适;智能安防系统则能识别异常行为并及时报警,保障家庭安全。此外,智能农业、交通等领域也因机器学习和人工智能的应用变得更加高效。下面通过一个简单的温度预测代码示例,展示机器学习在物联网中的实际应用,让我们一起感受其强大潜力。
75 0
|
6月前
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
IoTDB是专为物联网(IoT)设计的开源时间序列数据库,提供数据收集、存储、管理和分析。它支持高效的数据写入、查询,适用于处理大规模物联网数据,包括流数据、时间序列等。IoTDB采用轻量级架构,可与Hadoop和Spark集成,支持多种存储策略,确保数据安全和高可用性。此外,它还具有InfluxDB协议适配器,允许无缝迁移和兼容InfluxDB的API和查询语法,简化物联网项目的数据管理。随着物联网设备数量的快速增长,选择适合的数据库如IoTDB对于数据管理和分析至关重要。
267 12
|
6月前
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
The article introduces IoTDB, an open-source time-series database designed for efficient management of IoT-generated data. It addresses challenges like real-time integration of massive datasets and security. IoTDB supports high-performance storage,
154 0
Apache IoTDB进行IoT相关开发实践
|
5月前
|
存储 SQL JSON
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
|
7月前
|
传感器 安全 物联网
物联网(IoT)设备的硬件选型与集成技术博文
【6月更文挑战第28天】物联网设备硬件选型与集成聚焦关键要素:功能匹配、性能稳定性、兼容扩展及成本效益。嵌入式系统、通信协议、数据处理和安全性技术确保集成效果,支撑高效、智能的IoT系统,驱动家居、城市与工业自动化变革。