图片49
硬件
物联网的核心是数十亿个相互联系的设备,通常是传感器和驱动器,它们能让你感知周围的物质世界(有时也能控制)。除传送所收集到的数据之外,这些设备还需要微控制器(FPGA)、片上系统(SoC)(FPGA)或现场可编程门阵列(FPGA)。
嵌入式编程
物联网的设备是“嵌入”的。他们可以通过商业微处理器平台来设计原型,然后再开发定制印制电路板(PCB)。将这些平台用于原型设计需要电路设计技巧、微处理器编程和一些硬件通信协议,如串行、I2C或SPI,这些协议被用来在微处理器与所连接的传感器和执行器之间建立通讯。内嵌程式通常是用C++或C开发的;然而,Python和JavaScript(用于UI和平台)已经成为物联网的原型设计和扩展的主流。
安全
在物联网中,安全性是一个非常重要的问题,它关系到数据道德、隐私和责任。在系统设计的每个步骤中都必须有它。由于每天连接着数以百万计的新设备,潜在(以及实际的)攻击媒介数量日益增加。面对各种风险,包括威胁评估、道德黑客、加密、保护网络结构和应用程序、事件监测、活动记录和威胁情报等安全工程技能成为关键。
网络和云集成。
由于联接设备数量巨大,并且网络设计决定可能会影响到大规模部署的物联网系统,网络设计和管理是非常重要的。
连通性允许设备与其他设备以及运行在云中的应用程序和服务进行通信。虽然云计算和物联网是两个不同的技术,但是实时数据流和汇聚成对物联网的正常运作至关重要。云计算基础结构用于数据存储、处理和分析,以及在物联网应用程序中执行业务逻辑。
资料分析与预测。
每天都会有大量的物联网设备,大数据上传到的数据量大大增加。开发者需要安全可靠地获取、存储和查询来自这些设备的大量异构数据。很多物联网设备都会产生延迟或者时间敏感的数据,所以过滤或丢弃无关的数据,而非把所有数据都发送到你的服务器。
AI和机器学习。
在物联网系统中,机器学习和人工智能是一个非常有用的工具,可以为物联网设备提供有价值的数据。这两种技术通过让机器在大量相关数据中暴露出来,教机器学习,能够实时地应用到传感器数据流中,以便进行预测分析,并根据输入数据自动作出决策。数据挖掘也可应用于历史数据,以识别数据中的模式或异常,从而作出重要决定。