肯定不是啊!
理论上说,所有网站类型、所有桌面软件都可以用PHP来实现。
我还见过PHP开发的socket服务器框架,被广泛的用于手机app、移动通讯,微信小程序,手游服务端、网络游戏、PHP聊天室、硬件通讯、智能家居、车联网、物联网等领域的开发。
「只要有人的地方,就有物联网技术。」我不清楚这句话的出处,我只知道有人的地方就有江湖~哈哈。我想说的是,「物联网技术」这个名词是一个很大很泛的概念,我可以说不存在这种技术,我也可以说这技术实际上就是当今电子、通信、计算机三大领域的基础技术。
我在这问题下的回答「物联网和互联网的区别和联系?」简单阐明了物联网和互联网之间的关系。请问,1994年中国接入互联网以来,我们作为互联网原著居民的90后,认为互联网技术又是一种怎样的技术呢?
我就奇了怪了,当初教育局怎么不开一个互联网技术专业?实际上现在也没必要开设互联网专业了,当今大学的计算机系本科所学的大部分内容,就是互联网会用到的技术。其中之一是Web建站技术。
Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASPNET、Web Services 是什么? - 张秋怡的回答
什么?你们计算机系不是学这些?来来来,我电脑坏了,过来帮我修一下电脑吧~
总之,互联网是一个时代,物联网,也是一个时代。物联网技术是当今电子、通信、计算机、IT行业技术的大融合。如图,物联网技术的技术组成(简单版)。
# 物联网技术之一:单片机/嵌入式开发
智能硬件,哎,不就是单片机吗?说到底就是一个微控制器,现在出现的智能手表,调光LED灯,蓝牙开锁,WiFi插座等等,说到底不就是单片机开发嘛?单片机,电子和通信专业一般都会教51或AVR、计算机系接触不到。现在流行的Arduino也是单片机开发的一种。
但是要做一款智能硬件,技术上只会单片机编程还是不行的。哎呀嘛什么智能硬件,本质上就是一个电子产品!。所以你要开发一款能拿得出手的智能硬件,电子系统设计必须要会的!
电子系统设计(电子系统设计与实践 (豆瓣)),我不是指《电子系统设计》这本书里的内容,而是一个动手实验过程。要做智能硬件,广看书没用,只会单片机编程也不够的!真正有用的是一个实打实的课程设计,或者一个项目经历。一个电子系统设计流程一般是这样的:
硬件设计阶段:
MCU选择
电路设计(电路图)
验证电路(面包板、万用板)
电路板设计(PCB图)
送工厂打板或自己做板
元器件、物料管理(采购等)
拿到电路板后
焊接芯片和元器件
上电测试
烧写最后版本的代码到芯片里
如果你熟悉以上硬件设计阶段,并知道要做什么事情,已经是一个合格的单片机硬件工程师了哈~接下来就是单片机软件工程师的事情了,单片机软件一般都不会太复杂,有的还是不用上 *** 作系统的裸机开发,做过单片机课程设计的学生都懂。
软件设计流程:
确定软件架构(主循环?状态机轮询?)
编写软件
调试代码(开发板或自己搭建好的电路)
烧写最终版本的代码到电路里
这些都不算复杂了,如果你用的芯片高级一点,不是微控制器而是微处理器的话,那么就是嵌入式开发了。
如图是ARM芯片架构系列。
一般网上STM32开发板的芯片是STM32F103,也就是Cortex-M3核,还算是单片机开发,如果外设没有太多功能,单片机想用更小巧一点的,可以选用M0核的芯片,名副其实的微控制器了。如果使用Cortex-A9开发,你这是要开发手机还是机顶盒(黑人问号)?
Cortex-A系列芯片的开发,或者说这类产品,一般一个人不可能独立完成所有工作,这种嵌入式开发的技术最少分为四个层次:硬件层、驱动层、系统层和应用层。每一层次都需要有人去设计。驱动和系统可以移植,硬件电路板肯定要专门的硬件工程师去做的,应用层可以交给应用工程师,只要上了Linux系统,不也就是Linux应用开发嘛?如果去网上买回来的嵌入式开发板,能拿得出手的项目只能应用层开发,比如什么「数码相框系统」、「视频点播系统」。别告诉我学会移植uboot或Linux就可以找工作了。
# 物联网技术之二:网络通信协议
智能硬件与传统的电子产品最大的差别,就是智能硬件连上了网络。要连上网络,就需要用到网络通信模块及学习网络通信协议——TCP/IP。
TCP/IP是一个技术的总称,里面包含两种协议TCP、UDP,位于网络通信分层模型的传输层,同时也是由 *** 作系统管理。而>
为了让电子产品有联网的能力,只要在电路设计上给主控芯片连接一个通信模块,写好收发网络指令的代码,剩下的就是电子产品设计了。
到这里,基本是一个物联网产品的雏形了,以上也是物联网中基本会用到的电子和通信技术。
# 物联网技术之三:服务端开发框架
Client/Server架构,即客户端/服务器架构。智能硬件连上后台服务器后,其就是一个客户端,一个终端。由于单片机中资源受限,实际上是不太可能用>
服务端开发就比较复杂了。单片机/嵌入式软件开发还好,只要学习好C语言即可打遍天下无敌手,而服务端开发,用Java呢还是Python还是PHP?反正Java和Python选一个就好了,嵌入式出身的工程师,一般都会学Python。
Python服务器端的开发框架种类繁多,Web开发的有Django、Flask、Tornado Web Server,TCP服务器可以用Twisted,等等。MQTT有已经做好的服务器,像这样的服务器不用自己开发,直接部署即可。
如图,这是我开发一个智能硬件的服务器端的框架图。使用Redis作为>
在这个项目开发中,最少需要开发用户端的>
到了这里,服务端开发和前面两个技术可以作为一个分层,前面的单片机/嵌入式和网络通信的开发可以算作是一个电子设备的开发,后台工程师只要拿到了这个电子设备,知道这个设备提供了哪些接口(API),就可以进行后台开发了——把设备连上网络,分配给它一个IP或者什么的,配置好接口及相关 *** 作,剩下的事情就交给前端了。
## 关于前端技术
关于前端技术,我这里不好单独写一个主题,其一,我对前端技术没有那么熟悉,还处于前端技术=HTML+JavaScript+CCS的概念,以及手机端的APP开发;其二,前端技术与电子硬件技术间隔相差太远,前端更多的是和美工沟通,和后台协调,和设计师交流,甚至可能还需要有一定的美感;其三,大部分项目的最重要的是实现设备的稳定性、联网、数据的获取和控制。如果设备不稳定,数据出现差错,没法控制,再漂亮的前端页面也没用。其四,如果是做智能家居,做消费电子领域的项目,针对广大普通消费者,比如WiFi插座,一个漂亮的界面是很重要,但是大多数的物联网项目,只需要一个后台管理界面就行了。
所以,没有前端的设计,界面都是很丑咯!
# 物联网技术之四:无线自组网
无线自组网,或称无线传感网络,这肯定是物联网专业的学生要学的一门学科,属于通信领域,电子、计算机出身的人对这没有太多的概念。无线自组网最典型的技术之一是,ZigBee。
什么是自组网?做个对比,比如我们的WiFi,我们要用手机去连一个SSID,输入密码才能连上WiFi,而且你的手机,一般来说也不可能再发射Wifi出去让其他手机连接,WiFi网络拓扑成星型网。
而自组网不一样,不需要用户输入用户名和密码,直接连到最近的一个自组网设备,最后自组网设备也可以作为一个中间节点,让下一级的设备连接进来,网络拓扑可以成星型网、簇型网和网型网。那么无线自组网的数据怎么流动呢?流去哪?无线自组网一般都会有一个数据汇聚的地方,这个地方就是网关。
但是ZigBee并没有连上互联网啊,它最多只是一个局域网!——这还不简单?这是就是网关要处理的事情了。而且,ZigBee协议栈Z-Stack是有Linux网关版本的。
Z-Stack - ZigBee 协议栈
不过呢,由于各种原因,ZigBee开始走下坡路了,最新的6LoWPAN会逐渐替代。6LoWPAN,是一种低功耗的无线网状网络,其中每个节点都有自己的 IPv6 地址,允许其使用开放标准直接连接到互联网。Zigbee使用网内专用地址,互联网主机无法访问。集成 Ipv6/6LoWPAN 堆栈的开源 *** 作系统Contiki也会逐步取代Z-Stack。
如果大学开设了无线自组网的课程,不是学习ZigBee的Z-Stack就是Contiki。使用无线自组网也并不是一个单独的开发过程,其技术需要结合单片机/嵌入式开发。
## 电源问题
是的,如果要用无线自组网,电池续航的能力是一个问题。如果是类似与WiFi插座、智能饮水机、智能风扇等等,接上市电就能用,这些电源都不是问题。而对于无线自组网,往大的方向说就是所有的便携式智能设备,都受限于电池续航能力,比如智能手表,运动手环。不过呢,突破电池技术并不是物联网开发者所需要做的工作,我们能做的,只能是挑选更低功耗的芯片,设计电路功耗更低一点,让单片机休眠并使用中断唤醒机制。
图,用水果电池供电的某430单片机系统。
# 物联网技术之五:RFID
仔细观察上面那张无线技术的图,最右边,NFC/RFID。嗯,对,RFID,非接触射频识别,也是物联网技术重中之重的技术,很多物联网书籍都会介绍RFID,搞得很多人以为RFID就是物联网。
介绍RFID前先简单说一下条形码。去超市购物的时候,收银员把扫描q对准上面的条形码扫一扫,商品信息和价格就录入到电脑里了。条形码替代了收银员手动输入数据,工作效率提高了几倍。
可是,进入21世纪后,条形码已经不能满足人们的需求,存储能力小、工作距离近、穿透能力弱、不能写 *** 作等等都是条形码的缺点。这个时候就出现了RFID技术。典型应用如下图:
(。。。好像没有什么奇怪的啊?)
一二线城市早已实现了的公交卡,以及校园一卡通,用的就是RFID技术。RFID可读可写,所以公交卡、校园卡的钱能存在卡里面。
NFC,也是RFID的技术一种,目前大部分手机都支持的NFC功能,手机取代公交卡真的是迟早的事。要是手机没有NFC功能,也可以这么装逼:
我看他用手机刷卡出入站挺方便,就问他怎么弄的,是不是要下载什么软件。
他告诉我:“这个很简单,只要把公交卡藏在手机套里就行了。”
同样,RFID开发也是离不开单片机开发,网上也有相关的RFID开发套件出售。
# 结语
当然,物联网技术绝对不止以上五种,物联网本身就是所有技术的大融合,做电子产品的还要考虑产品外壳,不过这是结构工程师的事情;做服务器后台的还要考虑用户帐号数据库读写等,前端也要考虑如何把设备数据和 *** 作方式优雅的展现给用户看,这些是IT程序员的事情;电池技术也需要单方面突破,超小体积、超大容量,这个还得等待多时。
与其说物联网是一种技术吧,不如说它是一个时代,物联网通过对相关技术进行整合,形成一个时代的概念,是一个建立在技术基础之上的时代。
SOA(Service Oriented Architecture)和云计算以及SaaS一样,也是近年来IT业界的热点,其受关注度甚至超过云计算和SaaS。到2008年,从百度指数可以看出,“物联网”、“传感网”、“M2M”这三个词在中文网站中受关注度猛然升高。焦点是集成
SOA、EAI(Enterprise Application Integration)、M2M乃至物联网等技术的焦点都是信息集成,目标是消除信息孤岛,实现泛在的互联互通。物联网技术的要点是要消除“物-物相联的信息孤岛”,而SOA的目标是要消除所有的IT信息孤岛。
SOA和EAI作为重要的应用集成中间件技术,必然是物联网所依赖的重要技术之一。
计算机应用系统的发展经历了“独立应用系统”(Packaged Applications)和“集成应用系统”(Integrated Applications)两个主要阶段,随着无处不在的网络技术的发展,早年普遍存在的“独立应用系统”越来越少,或“被集成”为“集成应用系统”的一部分。集成应用系统和技术的发展和演变主要围绕EAI和SOA两个理念,SOA是对更早出现的EAI技术和理念的演变和提升。SaaS技术也和SOA密切相关,都强调“服务”,可以说,SaaS是SOA技术和理念的一种扩展和特有的存在形式。
EAI是一种将使用各种不同技术和平台(CORBA、NET、JavaEE、LAMP等)构建的各种异构应用集成的一种技术和方法。国外往往习惯加Enterprise(企业级)这个词,说成是“企业应用集成”,但EAI不只是面向“企业”应用。可以毫不夸张地说,IBM、Oracle、微软、SAP等软件巨头都是EAI公司,早期的EAI公司还有很多,如BEA、WebMethods、SeeBeyond、TIBCO、VITRIA等等。
从架构上看,EAI主要有两种方式:Hub/Spoke和BUS。Hub/Spoke方式好比“中心城市和卫星城市”的构架,所有外延(Spoke)的系统都通过适配器(Adaptor)与中心枢纽(Hub)系统实现多点对一点(非P2P)连接和集成。BUS方式是一种更开放和通用的架构,使用一个统一总线,一般是MQ(Message Queue)或ESB(Enterprise Serice Bus),子系统把消息发送给总线,总线负责消息的路由,可实现P2P服务或总体应用集成。
SOA将各种应用或子系统看成一个个独立的、自包含并良好定义的服务或组件(Service Component Architecture),通过把这些服务进行组装,统一注册,并在网络系统中发布,让(泛在)网络上的别的应用能够查询、发现和调用这些服务,实现应用集成或构成新的应用。SOA(包括相关的Web Service、SOAP、SCA等理念)的出现,一统了CORBA、NET、JavaEE乃至LAMP(Linux、Apache、MySQL、Perl/PHP/Python)等几大技术阵营多年来“水火不相容”的“不妥协”竞争局面, 这也是物联网技术和产业发展值得借鉴的宝贵经验。SOA的愿景同样是实现“无处不在”的泛在计算和服务。
业界一般认为SOA这个理念和技术比EAI晚出现,其实也不尽然,笔者记得SOA的理念早在1996年就在BEA公司内部实现TUXEDO系统的升级开发时就提出来了。从SOA概念诞生之日起,围绕SOA与EAI的重合、关联及差异所展开的争论一直没有平息。顾名思义,EAI以集成应用为己任,通过接口标准化整合应用,而这恰恰也是SOA的核心任务。SOA将一些EAI功能模块进行封装,并使之标准化,以满足应用的整合、拼装和复用的需要。在Intranet(内网)、Extranet(专网)和Internet(互联网)部署环境中,独立应用一般运行在内网,EAI一般运行在专网, SOA一般运行在专网和互联网上。
SOA和EAI是一种相辅相成、共同发展的关系,EAI理念近几年提得较少,笔者在这里再重提EAI,是希望其在物联网、M2M应用中能够得以广大发扬,以MAI(M2M Application Integration)的方式实现物联网的互联互通和大集成,进一步发展到以M2M as a Service(MaaS)或TaaS(Things as a Service)的基于云计算的营运方式提供大规模IOT服务。
SODA:将设备“统领”起来
笔者在《物联网:技术、应用、标准和商业模式》一书中提出并强调“统一的数据交换标准”是物联网技术的核心,中间件是物联网产业发展的关键,也指出了面向于RFID应用的RFID中间件EPCIS、Savant和Edgeware(边缘件),以及ONS、PML等标准对总体物联网技术发展的重要借鉴意义。而基于SOA技术和理念的SODA(Service Oriented Device Architecture,面向服务的设备架构)的提出,包括类似的基于OSGi技术框架的ECF(Eclipse Communication Framework)等,对物联网数据标准和中间件的发展也具有重要的代表意义,值得深入研究。
SODA是一个由IBM和美国Florida大学发起的倡议(Initiative)和联盟(Alliance),通过引入基于服务(SOA)的编程模型,以规范和简化智能设备(Devices)与企业应用的集成。SODA致力于充分利用嵌入式系统和IT领域已有的标准,为智能设备与SOA技术的融合提供一个标准平台。 SODA的目标是让软件开发者能够像用SOA技术实现IT业务集成那样在诸如远程医疗、军事以及RFID等物联网系统中实现与传感器和执行器的集成。
具体来说,SODA提供标准接口,把硬件设备功能转换成与硬件无关的可调用的软件服务,实现如下目标:
1 将应用集成商与设备和传感器制造商无缝对接;
2 Integrate once, Deploy everywhere, 使用户专注于整体应用方案而不是陷于设备连接工作;
3 在应用和众多(泛在)设备协议之间建立一个通用接口和DDL(设备描述语言),形成统一数据交换标准;
4 作为一个中间件平台,为众多行业应用提供应用支持。
在SODA的系统架构中,设备集成接口定义是关键,也就是所谓的API(Application Programming Interface)和设备描述语言(Device Description Language)的定义。由于末端设备对实时性以及footprint大小要求较高,一般用REST而不是用SOAP来定义和实现Web Services接口。
目前SODA的工作基本上还处在研究阶段,中间件和数据接口标准作为物联网的关键和核心,在世界范围内还没有统一标准。SODA属于美国在开展的几个类似项目之一,欧盟已经有了基于SOA的HYDRA物联网中间件项目和EPoSS项目。中国急需参与或自己成立一个联盟,开展类似SODA这样的工作,提出自己的数据标准和中间件参考实现,这是占领物联网产业制高点的关键之一!
联联看
烟草物联网全国布局
9月16日,全国烟草行业物联网建设规划研讨会在无锡召开。中烟电子商务有限责任公司总经理秦前浩、江苏省烟草专卖局(公司)局长、总经理尉彭城等领导出席会议。
会议围绕国家局局长姜成康对行业物联网提出的“全面覆盖、全面感知、全程控制、全面提升”的总体目标要求,对行业物联网建设规划进行了全面的探讨和研究。与会代表着重就《烟草行业物联网总体框架与卷烟物流物联网规划》(讨论稿)的六个方面内容进行了认真的讨论交流,并对《规划》提出了改进完善的建议。
秦前浩在总结讲话中阐述了打造烟草行业物联网的意义,提出了深化行业物联网建设规划工作的具体思路,要求成立烟叶工商各物流环节的专业化工作小组,明确了先行试点单位、试点内容以及试点完成时间,确定了《规划》分步实施、全面实现的步骤和措施。他要求各单位强化组织领导,调动和发挥力量,汇聚资源,共同推动行业物联网建设工程。
尉彭城在讲话中指出,打造中国烟草物联网,是实现“卷烟上水平”的重要内容,是提升企业核心竞争实力的重要支撑。要多听取各方面的好经验、好建议,用创新的思路做好烟草物联网的规划工作,努力实现低成本、高效率。江苏烟草将在物联网规划与实施上作进一步的探索,为打造中国烟草物联网做出自己的贡献。
与会代表还参观了无锡物联网产业研究院以及无锡市烟草专卖局(公司)物流中心。
中移动“宜居通”亮相通信展
物联网应用“宜居通”是中移动在“2010中国国际信息通信展”上展出的、中移动首个基于TD的典型物联网应用。据了解,该业务已于今年5月17日在重庆试商用,随后在北京的一些小区进行了试推广。“宜居通”作为中移动的全国一类业务,在移动内部深受重视。一方面,它是首个基于TD的物联网产品,此前中移动的物联网业务很多用的是GPRS网络;另一方面,它将TD 3G网络以及家庭内部的小型传感网络融合在了一起;再有,此前中移动的物联网业务大多都是政企行业应用,而“宜居通”则是首个面向大众的物联网产品,能将中移动的用户资源与TD业务很好地结合在一起。
“宜居通”整合了家庭安防、智能家居和通信等各种功能。未来,用户可通过家中的TD家庭多功能信息终端和TD手机来 *** 控“宜居通”,如远程控制空调等家电,预警温度、烟雾等危险,使家中的各种设备通过传感器连成了一个小型传感网,并与TD网络进行信息交互。
据了解,“宜居通”最晚将在明年1月在全国大规模试商用,明年6月将正式商用。
为了这一产品的顺利推广,中移动专门制定了家庭场景下的传感网通信标准,目前产业链内上下游厂商针对此标准已经开发了相应的产品。
(作者系同方泰德国际科技公司CTO)周洪波
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)