为什么说开源是物联网开发消除厂商绑定的关键?

物联网(IoT)项目的开发可能是一个艰巨的任务。从原型的设计和代码的构建,到产品的最终发布和全球部署,如何确保您的IoT项目顺利实现和上市?

鉴于未来数年将有数十亿设备投放市场,封闭的专属系统会使不同设备间的互操作变得更困难。ProgrammableWeb主编David Berlind将持续演化的封闭IoT生态系统看作一种“连环事故”。让按照设计本无法配合使用的不同系统组件和元素协同工作,可能需要花费大量的时间和精力,延长部署所需时间并导致总成本飙升。开源技术是解决这种问题让不同设备相互通信的方法之一。

不同应用领域的IoT解决方案有很多共通之处:需要无线连接的能力,需要在设备和后端系统之间具备通信能力,需要收集和解析获得的数据,大量共通之处不一而足。但是随之而来的大量专有系统通常是“各自为政”的,这使得解决方案的开发和构建工作变得更为复杂,需要额外投入更多时间。专有系统还会让不同系统之间的开放式通信变得更复杂,并有可能妨碍到未来的创新和更广泛的运用。

面对这个快速演进,碎片化程度日趋严重的行业,这些挑战也变得越来越棘手,不过只要愿意配合使用,市面上依然有几个可用的解决方案。之所以说开源技术是IoT开发的关键,主要有下列几个原因:

用开放式协作和标准铺平道路

行业标准的建立和实施可以帮助我们实现更强的互操作性。通过合作制定的完善标准可提供更丰富的选择和更大灵活性:开发者可以针对具体需求,使用不同供应商的设备构建解决方案,进而在构建解决方案的过程中实现更大的创新,获得更大成本效益。

除了标准化开发,另一种互补的方法是将行业生态系统制定的设计和规范开放给开源社区,借此形成由所有人遵守的开源硬件和接口标准。这种方法日益受到欢迎,随着主要业内人士通过合作提供支持,开放的硬件参考设计和接口标准逐渐变得唾手可得。

例如越来越多的开发者开始通过Arduino、Raspberry Pi以及BeagleBone快速创建原型。但此类开放式硬件有一个问题,尽管可用于快速创建原型,但如果想将产品投放市场,还需要重新再来一遍,这可能是因为此类硬件产品的许可不允许用于最终产品,或者组件过于廉价不适合用于商用级别的产品。开放式硬件平台也在进化,其中一些已经可以同时用于原型和商用产品中。

开发者需要寻找对业务更为友好的开源许可,要找到以开源方式提供的工业级组件以及一系列工具,随后才能更快速地将有关IoT的创意从最初的原型变为可量产的大规模部署。实际上这一过程需要进行的大量集成、测试,以及验证工作已经预先完成了,就算需要扩展为全球化规模,开发者也不需要付出太多成本。

通过开放式硬件加速IoT开发

上述开放式平台可以让开发者借助有限的硬件、无线网络,或低层软件开发经验,在数天而非数月内完成应用程序的开发。若能妥善运用,开源平台和硬件之间的相互通信能力可确保各种连接器和传感器无需额外编写代码便可自动配合使用,这样便可以大幅缩短从构思和原型,再到最终量产过程所要付出的时间和精力。借助工业级的规范,此类下一代平台不仅可用于快速创建原型,而且可以快速实现IoT应用程序的工业化生产,因为原型可直接进入量产阶段。

配合使用多个供应商和多个平台,这样的能力为第三方合作关系和IoT初创企业提供了大量新机遇。这样的做法为新一代互联应用程序奠定了基础,使得开发者可以无需考虑所用设备直接开发IoT应用程序。

更完善的生态系统支持

开源解决方让项目在投资和周期方面更经得起考验,项目完成后多年时间内均可通过各种资源和工具不断对项目进行完善。这样的特性不仅可以保护解决方案开发阶段所付出的时间和投资,也可以通过简化的过程缩短从创新到最终上市所需的时间。

软件方面,如果使用能得到广泛支持的开源软件应用程序框架和开发环境,例如Linux,将能为开发工作提供极大的帮助。如果使用专有解决方案,只能从原始供应商处获得有关开发框架的支持,而这些供应商的规划可能无法与您的需求保持一致。开源解决方案可以通过更广泛的开发社区为您提供帮助,确保哪怕在多年后您依然能找到各种实用的开发资源。您在解决方案开发过程中投入的时间和成本也能获得更妥善的保护。

使用开源软件还能获得另一个优势。例如,为数众多的开发者确保软件代码可以经历更严格的审查,这样您的解决方案也能更安全。此外IoT应用程序开发者还可以根据具体安全需求对代码进行修改。

没人可以预见IoT技术适用的每个应用场景,但基于标准和开源技术的战略有助于促进IoT创新,让开发者能够以更快,更简单的方式将更长生命周期的应用程序投放到市场。标准保障了技术的互操作性,开源项目保障了软硬件组件在产品和服务平台演进之后依然可以实现复用。如果不这样做,IoT领域的创新将依然面临各种阻碍。

文章转载自 开源中国社区[http://www.oschina.net]

时间: 2024-09-30 04:13:23

为什么说开源是物联网开发消除厂商绑定的关键?的相关文章

利用物联网操作系统Zephyr实现“连续集成”开源软件的开发

物联网操作系统是配置在物联网硬件设备上的第一层软件,是对物联网硬件系统的首次扩充. Zephyr作为一款专门为内存受限的物联网设备而推出的开源实时操作系统,其一大特点就是具有高度开源性.Zephyr操作系统如何进行"连续集成"软件开发?不妨通过一个实例演示来看一看. 这个演示实例是Linaro和Zephyr操作系统基于单片机进行的.它是一个高度开放.高度透明的开发过程,开发者在本地只需要运行一个git工具,其余的集成过程(包括代码检查,测试)完全在云端解决.我们接下来将进行实例演示过程

专为物联网开发的开源操作系统Contiki(转)

专为物联网开发的开源操作系统Contiki(转)    (2012-04-19 15:31:09) 原文网址:http://blog.sina.com.cn/s/blog_6de000c201010z7n.html   Contiki 是一个小型的,开源的,极易移植的多任务电脑操作系统.它专门设计以适用于一系列的内存首先的网络系统,包括从8位电脑到微型控制器的嵌入系统.它的名字来自于托尔·海尔达尔的康提基号.Contiki只需几KB的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持.

基于JavaScript语言的快速物联网开发架构

随 JavaScript 语言的流行,及物联网领域的崛起,我们能看到它们结合的可能性,同时也发现它特别适合于物联网开发.因此,在这篇文章里,笔者将主要从以下三个方面进行介绍: 典型的物联网架构,及多种语言带来的问题: 只使用 JavaScript 语言的物联网架构: 详解基于 JavaScript 语言的物联网不同层级结构. 那么,先让我们看看典型的物联网架构是怎样的吧. 典型的物联网架构 我们甚至还可以认为,物联网只是对互联网的扩展.与传统的 C/S 架构相比,它多了一个"数据采集层"

英特尔® 物联网开发套件 v1.0 正式发布

您现在可以通过软件下载页面获得新版英特尔 物联网开发套件 v1.0 软件包(2015年3月5日). 我非常高兴地宣布英特尔 物联网开发套件v1.0正式发布.这是最初支持英特尔 Galileo和英特尔 Edison平台的beta版本开发套件的延续.英特尔物联网开发套件面向有兴趣开发物联网解决方案的发烧友.学生和创业型开发者.去年我们在全球举办了10场英特尔 物联网创客马拉松活动,吸引了超过1100名开发者参与创造出200多个项目,其中有50余个项目通过instructables网站分享.2015年

OpenStack巴黎峰会第一天——开源重塑软件开发

一年两度的OpenStack盛典终于拉开序幕,这次峰会主题是开源重塑软件开发,软件掌控企业,转变企业格局,拓展新生态.我们可以看到Open的理念贯穿始终,更多世界著名企业登上OpenStack舞台,也包括中国的华为.EasyStack.UnitedStack等公司,OpenStack让他们快速变革,让我们对OpenStack的未来充满期待.这里将为大家回顾峰会第一天的会议重点. 2014年11月3日早9点30分(北京时间11月3日下午4点30分),OpenStack 巴黎峰会在超过90家赞助厂商

利用开源项目Hibernate开发Blog系统

项目 开发工具采用MYECLIPS3.6,首先是建立项目,导入STRUTS+HIBERNATE包,然后配置SRC跟目录下的hibernate.cfg.xml.我采用的是MYSQL数据库,所以配置如下: <hibernate-configuration>     <session-factory>        <!-- properties -->        <property name="connection.username">r

嵌入式 物联网-物联网开发android手机客户端问题。

问题描述 物联网开发android手机客户端问题. 以下是关于物联网开发手机客户端的问题 1,应该怎么实现手机a,b连接到同一个wifi下,手机a通过手机b的ip地址给b发送一条数据. 我测试了下,通过一部手机作为服务器端socketServer,另一部手机作为客户端socket.客户端通过服务器端从wifiInfo中获取自己的ip地址发送一条数据给服务器端,没有成功接收到信息. 2,如果当不知道手机b的ip信息情况下,手机a可以从连接上的wifi去获取手机b的ip吗? 解决方案 做服务器注册a

如何成为一名优秀物联网开发人员

物联网(IoT)行业正蓬勃发展.根据最近的Gartner报告,在2017年,全球使用的互联设备数量将达到84亿,超过全球人口总量. Gartner预测,到2020年,将会有超过208亿件物联网设备. 随着家庭互联.汽车互联和办公室互联变得越来越主流化,需要更多的开发人员来确保互联设备正常.安全地运行. IBM物联网开发人员生态系统主管Greg Gorman说:"'物联网开发人员'一词的含义很广泛,包括安全.网络.系统工程.云编程和硬件设备编程.开发人员应该在团队中灵活地扮演许多不同的角色.&qu

如何成为一名合格的现代化物联网开发人员

过去几年,联网设备的增长是惊人的.从日常用品,比如可穿戴设备和恒温器,到大型设备,比如太阳能电池板和街道瓷砖,似乎所有的设备都以某种形式联网.未来,我们将迎接完全联网的城市.医院和家庭,物联网开发人员的职能正变得越来越重要. 开发所有类型的软件和设备是很重要的,但没有比开发联网设备更关键.如果你的Fitbit出现故障是一回事,但是如果一个联网医疗设备在手术期间出现故障,或者无人驾驶汽车在高峰时期失控,则是另外一回事了.因为物联网设备在我们的生活中起到关键作用,开发的很差的物联网设备可能会危及生命