65.9K
CodeProject 正在变化。 阅读更多。
Home

物联网。

2014年10月20日

CPOL

7分钟阅读

viewsIcon

27816

物联网需要你!

物联网——入门介绍

“别害怕,小鱼儿,”帽子里的猫说。“这些东西都是好东西。”他拍了拍它们。“它们很温顺,非常温顺!它们来这里是为了玩耍。它们会让你在这个潮湿、潮湿、潮湿的日子里玩得很开心。”

 

很久很久以前,在一个并不起眼的小行星上,围绕着一颗相当普通的恒星运转,在数万亿个相似的螺旋星系中一个相当普通的角落里,那些相当不聪明的居民发明了计算机。

它们经历了通常的几个阶段——

“我认为全世界大概只需要五台计算机。”

“未来的计算机可能重不过一吨半。”

“在精神正常的人看来,没有任何理由会想在家里拥有一台计算机。”

“640k 对任何人来说都足够了,另外,什么是网络?”

“有一台计算机曾在下棋时击败过我,但在踢拳方面它根本不是我的对手。”

依此类推。

然后它们发明了互联网。

这使得它们的计算机,以及计算机的用户,无需离开家就能相互通信,还能互相观看裸照。

“太棒了!”他们喊道。大多数情况下。

由于他们不再出门,他们变得懒惰了。这导致一个懒惰的程序员设置了一个连接到计算机的摄像头——这样他就可以在不离开肥胖屁股的情况下查看厨房里的咖啡壶。

虽然这只是一个网络摄像头,连接到一台计算机(实际上是一台 Acorn Archimedes)——事实上,这可能是在地球上第一个网络摄像头——但这却是物联网的开端。

能够从世界任何地方查看剑桥的咖啡壶,是人们迈出的第一步,他们开始将设备(尽管在这种情况下,是一个连接到计算机的设备)直接连接到互联网。

设备互联网听起来很枯燥,不是吗?但“物联网”就不一样了。听起来有点意思!

但第一个“东西”毕竟只是一个摄像头。浏览器无法向它发送任何信息——无法控制摄像头,也无法关闭咖啡。它实际上只提供了一个信息——咖啡壶里还有多少咖啡?

时间像它惯常的那样,继续向前。设备变得越来越便宜,越来越强大。无线网络成为常态,成本和体积不断缩小,直到我们习以为常地使用连接到互联网的手持设备。这在很大程度上得益于手机的发展,随着组件成本的降低,几乎所有电子设备都可以添加连接功能。

例如冰箱。“LG 全新高端法式对开门冰箱配备触摸屏 LCD 面板和智能手机应用程序,用户可以进出食物以管理存储和到期日期。此外,一旦您登记了购买的所有食物,冰箱将建议利用现有食材的食谱。

 

 

甚至牛 http://www.bbc.com/news/uk-scotland-scotland-business-26705812 也成了互联网上的“东西”。

 

 

 

事实上,人们已经开始将如此多的东西连接到互联网,以至于需要一种新的寻址方法(IPv6),该方法能够单独寻址 340,282,366,920,938,463,463,374,607,431,768,211,456 台设备——这应该足够了,我们可以想象。

虽然最初的设备只是为人类消费提供数据(网络摄像头、天气传感器等),但人们很快就开始编程这些设备,使它们能够在没有人为干预的情况下直接相互通信。

所以你的闹钟可能会在你醒来之前启动咖啡机;当你发动引擎时,汽车会告诉车库门,让它打开——等你开走后再次关闭。但那只是局部的——你的 GPS 可以引导你去还有停车位的停车场——当你所在的车道前方堵塞时,警告你换道。

它变得越来越个人化,同时也变得越来越非个人化。你的“东西”可能在你的手机里,收集温度、湿度、气压等数据。想象一下,拥有数百万个数据点而不是数千个数据点,天气预报将会有多大的改进——由一群“东西”贡献的众包数据。

想象力是一件美妙的事情——物联网的真正限制只在于人们的想象力。然而,实现和实际操作往往会减缓进步。例如,尽管谷歌现在拥有了自动驾驶汽车(当然,它们是联网的),但立法不会让它们很快上路。

但,总有一天……

物联网设备需要进行编程。而且需要好好编程。

我们仍然发现,要编写一个能在多种设备上运行的简单应用程序非常困难;Android 使用 Java,iOS 使用 Objective C 或 Swift,而 Windows Phone……好吧,没有人再为 Windows Phone 编写任何东西了,所以这真的无关紧要。

现在我们需要学习编程各种不同的设备——并让它们相互通信。

看看你现在就能买到的、只需几美元就能变成“东西”的设备

Netduino – 可使用 C# 的 .NET Micro Framework 进行编程

树莓派 (Raspberry Pi) – 可使用 Python、C、C++、Java、Scratch 和 Ruby 进行编程

Edison – 以及其他 Arduino 兼容板,可使用 C++ 进行编程

当然,每天都有更多设备出现。

这些设备的低成本和灵活性意味着我们可以将一个设备变成一个不同的“东西”。无论是通过互联网控制你的圣诞树灯,还是在你家狗吠叫时让你的家通知你,低成本意味着这些设备可以被编程为单一功能,而不是一个通用的计算设备。

然后,这个功能可以被集成到一个真正小巧的设备中——SIM 卡大小——并连接到现实世界中的物体上。

当然,我们开发者可能会将同一台设备用于将视频流传输到电视、下载种子、监控家庭安全以及晚上关闭窗帘——但越来越多的设备将作为零售产品以单一用途的形式构建,因为普通大众无法编程他们的机顶盒,而且根本不想花时间去配置设备。

这些设备可以做得足够小巧且便宜,以至于它们可以通过放置在或粘贴在现实世界物体上来简单地添加到基础设施中。

所以我们需要标准。我们也需要安全。

我们需要能够使用不同制造商的设备,并且它们不仅能够相互通信,而且能够真正理解对方,并对接收到的信息采取行动。

我们需要防止我们的设备 被恶意接管,用于发送垃圾邮件和参与僵尸网络。

这就是我们开发者发挥作用的地方。无论是通过帮助推动标准化、开发跨平台模式,还是仅仅构建驱动这些设备的软件。

这些设备现在已经存在——但它们的数量将增加,而尺寸将减小。开发者需要帮助推动这场革命。我们需要为“东西”本身开发软件——同时也要开发将使用这些“东西”提供的信息的软件产品。

想象一下

汽车之间相互通信,适当调整速度以帮助交通顺畅流动。

婴儿监视器无创地监测婴儿的体温和呼吸。

当丈母娘来访时会提醒你的门铃——当她把你的地址输入 GPS 时!

能告诉你伴侣在哪里的袜子。

可穿戴设备记录你所做的一切——让你通过面部识别搜索人名,告诉你你最后一次见到他们的时间,以及他们妻子的名字。

这将成为现实。

 

© . All rights reserved.