
「只要有人的地方,就有物联网技术。」我不清楚这句话的出处,我只知道有人的地方就有江湖~哈哈。我想说的是,「物联网技术」这个名词是一个很大很泛的概念,我可以说不存在这种技术,我也可以说这技术实际上就是当今电子、通信、计算机三大领域的基础技术。
我在这问题下的回答「物联网和互联网的区别和联系?」简单阐明了物联网和互联网之间的关系。请问,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程序员的事情;电池技术也需要单方面突破,超小体积、超大容量,这个还得等待多时。
与其说物联网是一种技术吧,不如说它是一个时代,物联网通过对相关技术进行整合,形成一个时代的概念,是一个建立在技术基础之上的时代。
现在创客平台有Arduino,RaspberryPi,Make等。1、Arduino:一个简单易用的开发板和开源软件平台,用于搭建交互式项目。
2、RaspberryPi:一个流行的单板计算机,可用于各种DIY项目,如智能家居,机器人等。
3、Make:一个创客社区,提供了丰富的创客项目和教程,涉及各种科技项目和手工艺术。
4、Instructables:一个社交平台,让用户发布和分享他们的创意,项目和教程,涵盖多个领域,如科技,工艺,食品等。
5、Hacksterio:另一个创客社区,提供了一系列创新项目和教程,包括物联网,机器人,生物制造等。
6、Thingiverse:一个由MakerBot创建的平台,让用户分享和下载设计模型,涵盖多个领域,如电子,3D打印等。
7、Adafruit:一个开源硬件和软件的在线商店,提供了各种DIY工具和零件,同时也有创客项目和教程。
8、SeedStudio:一个涵盖各类电子元器件和模块的在线商店,同时也提供了设计和制造的服务,是一个完整的开发平台。1,你这个代码不会是20秒才能跑完的,一定是有其他部分在起作用。要查到真相,你要把全部代码发上才能分析清楚的。
2,u8g2库很费资源,这么大的图,如果是arduino uno的板子,静态显示也费劲,别说是移动了…
3,想达到移动显示效果,用显示屏自带的更底层的库去写,不要用u8g2,哪怕是用u8g也比它强。Arduino开发板。arduino开发板种类有很多,大致可分为初学者、满足网络连接需求的级别,教育创客爱好者,可穿戴类型(较多传感器项目)及物联网级别的板子。其中最常见也是入门学习基本都会选择的就是ArduinoUNO开发板。凡路团队是长沙理工大学规模最大、发展最快、技术门类最齐全的IT科技创新团队之一。
凡路团队成立于2012年9月,位于长沙理工大学云塘校区理科楼B205,目前在校成员超过200人,分技术、策划、美术三类,来自计通、设艺、经管、电气等学院。团队分应用、游戏和算法三个板块,以移动互联网、物联网和人工智能为特色方向,以“创新、规范、传承、感恩”为文化精神,集学科竞赛、外包服务和科学研究于一体。
凡路团队分应用、游戏和算法三个板块,外加财务小组。应用板块包括:硬件技术部、后端技术部、前端开发部、移动开发部、应用策划部,游戏板块包括:游戏程序部、游戏策划部、游戏美术部,算法板块包括:AI算法部、大数据部。
(1) 硬件技术部
硬件技术部主要负责各类单片机和嵌入式系统的应用开发。部门成员前期主要学习51单片机、stm32、以及各类传感器的编程应用;中期主要学习掌握树莓派、Arduino等智能硬件平台的复杂功能实现;后期主要学习嵌入式 *** 作系统,以实现物联网多平台的兼容性。通过组队开发项目和参加各类竞赛,部门成员基本具备常见单片机和嵌入式系统功能开发的能力,进而达到硬件工程师等就业岗位的技能要求。目前,部门代表项目有:《智能导航盲杖》、《汽车滞留儿童险情预警系统》、《物联网生命腰带》等,不少成员就职于台湾联发科、深信服等公司。
(2) 后端技术部
后端技术部主要负责各类软件系统和物联网系统的后台开发。部门成员前期主要学习Java语言、MySQL数据库、Spring Boot、MyBatis等;后期主要学习技术底层源码。通过组队开发项目和参加各类竞赛,部门成员基本具备完成一个完整的java web项目的能力和水平,进而达到后台开发工程师等就业岗位的技能要求。目前,部门代表项目有:《智能会议室管理系统》、《智能坐姿矫正护眼台灯》等,不少成员就职于腾讯、字节跳动、PingCAP等公司或读研于中国科学技术大学、厦门大学等高校。
(3) 前端开发部
前端开发部主要负责页面的展示及其逻辑的处理。部门成员前期主要学习html、css; 中期主要学习JavaScript,包括ECMAScript 5、ECMAScript 6;后期主要学习前端主流框架React、Vue。通过组队开发项目和参加各类竞赛,部门成员基本具备独立开发一个前端项目的能力和水平,进而达到前端开发工程师等就业岗位的技能要求。目前,部门代表项目有:《积分宝》、《女性防狼手环小程序》、《智能会议室管理系统》等,不少成员就职于美团、滴滴出行等公司。
(4) 移动开发部
移动开发部主要负责移动应用APP的开发,包含界面的绘制和展示、数据的存储和交互、用户体验的提升和优化。部门成员前期主要学习Java基础等;中期主要学习安卓开发入门等;后期主要学习安卓开发进阶。通过组队开发项目和参加各类竞赛,部门成员基本具备界面设计、开源组件使用的能力和水平,进而达到安卓开发工程师等就业岗位的技能要求。目前,部门代表项目有:《智能台灯APP》、《约球APP》、《爱宠APP》等,不少成员就职于字节跳动、阿里、网易、腾讯等公司。
(5) 应用策划部
应用策划部主要负责各类产品策划、实验室活动策划和实验室官方媒体管理。部门成员前期主要学习Visio、PPT等基础技能;中期主要学习平面设计、视频图像处理等;后期主要学习如何策划一款高质量产品、编写规范设计文档等。通过组队开发项目和参加各类竞赛,部门成员基本具备能对产品进行理念包装、市场定位、发展规划的能力和水平,进而达到产品策划、产品经理等就业岗位的技能要求。目前,部门代表项目有:《远方旅人》、《爱宠APP》、《心悦智音》等,不少成员就职于碧桂园等公司。
(6) 游戏程序部
游戏程序部主要负责各类单机游戏或网络游戏的开发。部门成员前期主要学习C#语言的基础内容以及特性等;后期主要学习Unity3D实际 *** 作部分,学习如何制作一款游戏,以及如何使用各种Unity3D所支持的插件。通过组队开发项目和参加各类竞赛,部门成员基本具备完成一个单机或联网游戏所需的能力和水平,进而达到游戏前端开发工程师等就业岗位的技能要求。目前,部门代表项目有:《远方旅人》、《Space Bounce》、《EZ4Slime》等,不少成员就职于多益网络、萌蛋互动等公司。
(7) 游戏策划部
游戏策划部主要负责规划组织一款游戏的开发和进行项目团队组织管理等。部门成员前期主要学习游戏的设计与制作流程、相关历史等内容;后期主要学习关卡设计、游戏数值、项目团队组织管理等相关知识。通过组队开发项目和参加各类竞赛,部门成员基本具备策划制作一个单机或联网游戏所需要的能力和水平,进而达到游戏数值策划、游戏主策划、游戏剧情策划和游戏关卡策划等就业岗位的技能要求。目前,部门代表项目有:《远方旅人》、《Space Bounce》、《EZ4Slime》等,不少成员就职于多益网络、萌蛋互动等公司。
(8) 游戏美术部
游戏美术部主要负责游戏美术素材的制作。部门成员前期主要学习Ps、Ai等,为游戏的2d美术提供支持;中期学习通过Ae、Flash等动画特效软件进行的动画特效制作;后期主要学习Maya、Sp,为游戏3d模型与贴图绘制提供支持。通过组队开发项目和参加各类竞赛,部门成员基本具备完成一个完整的游戏素材制作项目的能力和水平,进而达到游戏原画师、游戏动画师、游戏3d模型师、游戏特效师等就业岗位的技能要求。目前,部门代表项目有:《远方旅人》、《Space Bounce》、《EZ4Slime》等,不少成员就职于深夜学院、湖南卫视、蜗牛等公司。
(9) AI算法部
AI算法部主要负责人工智能领域中高级复杂算法模型的学习、应用和改进。部门成员前期主要学习线性回归、Logistics回归等经典机器学习算法;中期主要学习搭建卷积神经网络等经典网络、数据挖掘基础;后期主要学习中文分词、Word2vec等自然语言处理方面内容。通过组队开发项目和参加各类竞赛,部门成员基本具备独立搭建神经网络、数据分析的能力和水平,进而达到深度学习工程师、数据挖掘工程师、算法工程师、数据分析师等就业岗位或深度学习、数据挖掘等读研方向的技能要求。
(10) 大数据部
大数据部主要负责大数据平台和可视化,机器学习与大数据分析的学习。部门成员前期主要学习python, java语言和linux编程开发基础;中期主要学习Hadoop大数据存储与处理、Hive数据库等技术和统计学习、机器学习等理论基础;后期分两个方向:①大数据平台和可视化方向主要学习Spark, Kafka, HBase等大数据进阶平台和Superset, Kylin等可视化前端技术;②机器学习与大数据分析方向主要学习深度学习理论及其应用(视频数据、自然语言、文本等)。通过组队开发项目和参与各类竞赛,部门成员基本具有完成大数据相关项目所需要的能力,进而达到数据分析师、大数据工程师等就业岗位的技能要求。
(11) 财务小组
财务小组主要负责团队财务的各项管理工作,采用团队责任老师和总裁决策、出纳和会计执行的管理方式,具体事项包括:团队基金的收支预算管理、团队部门的活动经费审批、团队成员的发票报销工作、毕业成员的团队赞助资金、团队成员的竞赛奖金捐赠等。通过合理利用团队经费,有效开展团队各项活动,保证团队和各部门的良好运转和持续发展。
截止2020年底,团队成员参加学科竞赛荣获国家级25项、省级80项,获批大学生创新性实验项目国家级1项、省级3项、校级10项,承接企事业单位外包项目14项,成功申请软件著作权32项。每年均有一批毕业生就职于腾讯、字节跳动、滴滴出行、美团等一流企业,或进入中科院、浙江大学、中国科技大学、华中科技大学、国防科技大学等一流高校读研深造。花开半夏
面向物联网的21个开源软件项目有哪些,物联网开源平台搭建
admin 07-26 04:41 166次浏览
2019独角兽企业重金招聘Python工程师标准
51CTOcom直译物联网市场呈现碎片化、无定形化、不断变化的特征,其性质通常只需关注互 *** 作性。 难怪开源在这方面不俗。 ——客户犹豫不决,害怕将物联网的未来寄托在可能难以定制或互联的专有平台上。
本文介绍了主要的开源软件项目,重点讨论了面向家庭和工业自动化的开源技术。 我们忽略了专注于垂直领域的物联网项目,如Automotive Grade Linux和Dronecode。 我们还忽略了面向互联网的开源 *** 作系统发行版,包括Brillo、Contiki、Mbed、OpenWrt、Ostro、Riot和Ubuntusnappping。这次,我们将智能
这里介绍的21个项目包括由Linuxfoundation管理的两个大型项目: Allseen(Alljoyn )和ocf (iotivity ),以及物联网传感器的端点和网关我还介绍了几个专门针对物联网生态系统特定领域的小项目。 我们曾介绍过更多的项目,但越来越难分清物联网软件和普通软件的区别。 从嵌入式环境到云,越来越多的项目都带有物联网元素。
您声称这21个项目都是开源的,但请确保完整的名称不在本文的范围内。 它们至少在生态系统的一个部分运行Linux,大多数都完全支持Linux,从开发环境到云/服务器、网关和传感器端点部件。 大多数组件都有可以在Linux开发板(如Raspberry Pi和BeagleBone )上运行的组件,大多数都支持Arduino。
物联网领域仍然有很多专有技术,特别是在自上而下的企业平台上。 但是,其中也提供了部分开放访问权限。 例如,威瑞森的ThingSpace针对4G智慧城市APP应用,拥有一套免费的开发API,支持开发板,尽管核心平台本身是独一无二的。 相似的是,亚马逊的AWS物联网工具包包括部分开放的设备SDK和开源入门工具包。
其他主要的专有平台包括苹果的HomeKit和微软的Azure物联网工具包。 在拥有230个成员的Thread Group中,该组织监督基于6LoWPAN的对等Thread网络协议。 Thread Group由谷歌的母公司Alphbet旗下的Nest设立,没有提供像AllSeen和OCF那样全面的开源框架。 但是,它与Brillo相关,也与Weave物联网通信协议相关。 5月,Nest发布了名为OpenThread的开源版Thread。
介绍21个面向物联网的开源软件项目。
AllseenAlliance(Alljoyn ) )。
由Allseenalliance(asa )监管的AllJoyn互 *** 作系统框架可能是市场上采用最广泛的开源物联网平台。
Bug Labs dweet和freeboard
bugglas是从制造基于模块化Linux的有bugh的硬件设备开始的,但很久以前就演变成了与硬件无关的企业级物联网平台。 Bug Labs提供“dweet”消息、警告系统和“freeboard”物联网设计APP。 dweet使用HAPI Web API和JSON来帮助发布和描述数据。 freeboard是一种拖放式工具,用于设计物联网仪表板和可视元素。
DeviceHive
DataArt基于AllJoyn的设备管理平台可以运行在许多云服务上,包括Azure、AWS、Apache Mesos和OpenStack。 DeviceHive专注于使用ElasticSearch、Apache Spark、Cassandra和Kafka,分析大数据。 有些网关组件可以在运行Ubuntu Snappy Core的任何设备上运行。 模块化网关软件与DeviceHive云软件和物联网协议配合使用,作为Snappy Core服务进行部署。
DSA
分布式服务架构(DSA )便于集中式设备的互 *** 作性、逻辑和APP应用。 DSA项目正在构建分布式服务链接(DSLinks )库,以支持协议转换以及与第三方数据源的数据集成。 DSA提供了一个可扩展的网络拓扑,其中包括多个DSLinks,用于在连接到分层代理分层结构的物理互联网边缘设备上运行。
EclipseIOT(Kura ) )。
Eclipse基金会的物联网主要围绕基于Java/OSGi的Kura API容器和聚合平台,支持在服务网上运行的m2m APP应用。 Kura基于Eurotech的Everywhere Cloud物联网框架往往与Apache Camel集成,后者是基于Java的基于规则的路由和中介引擎。 Eclipse物联网子项目包括Paho消息传递协议框架、面向轻量级服务器的Mosquitto MQTT体系结构和Eclipse SmartHome框架。 有些项目实现名为Californium的基于Java的受限APP应用协议(CoAP )。
Kaa
CyberVision支持的Kaa项目为云互联的大型物联网提供了可扩展的端到端物联网框架。
该平台包括一种支持REST的服务器功能,可用于服务、分析和数据管理,通常部署成由Apache Zookeeper协调的节点集群。Kaa的端点SDK支持Java、C++和C开发,负责处理客户机/服务器通信、验证、加密、持久性和数据编排。SDK包括针对特定服务器、支持GUI的模式,这些模式可转换成物联网物件绑定。模式治理语义,并抽象一组迥异设备的功能。
Macchinaio
Macchinaio提供了一种“支持Web、模块化、可扩展的”JavaScript和C++运行时环境,可用于开发在Linux开发板上运行的物联网网关应用程序。Macchinaio支持一系列广泛的传感器和连接技术,包括Tinkerforge bricklet、XBee ZB传感器、GPS/GNSS接收器、串行和GPIO联网设备以及方向感应器。
GE Predix
GE面向工业物联网的平台即服务(PaaS)软件基于Cloud Foundry。它增添了资产管理、设备安全、实时预测分析,并支持不同数据的采集、存储和访问。GE Predix是GE为内部运营而开发的,它已成为最成功的企业物联网平台之一,收入大约60亿美元。GE最近与HPE达成了合作伙伴关系,HPE将把Predix整合到自己的服务中。
Home Assistant
这个作为后起之秀的草根项目提供了一种面向Python的家居自动化方法。
Mainspring
M2MLabs的基于Java的框架针对远程监控、车队管理和智能电网等应用领域中的M2M通信。与许多物联网框架一样,Mainspring高度依赖REST Web服务,并提供了设备配置和建模工具。
Node-RED
这种面向Nodejs开发人员的可视化布线工具拥有基于浏览器的数据流编辑器,可用于设计物联网节点当中的数据流。然后,节点可以迅速部署成运行时环境,并使用JSON来存储和共享。端点可以在Linux开发板上运行,支持的云包括Docker、IBM Bluemix、AWS和Azure。
Open Connectivity Foundation(IoTivity)
英特尔和三星支持的开放互联联盟(OIC)组织和UPnP论坛组成的这个组织正在努力成为物联网方面领先的开源标准组织。OCF的开源IoTivity项目依赖充分利用的JSON和CoAP。
openHAB
OpenIoT
这款基于Java的OpenIoT中间件旨在使用一种公用云计算交付模式,为开放、大规模的物联网应用提供便利。除了表示物联网物件的本体、语义模型和标注外,该平台还包括传感器和传感器网络中间件。
OpenRemote
OpenRemote为家庭和楼宇自动化而设计,它以广泛支持众多智能设备和网络规范而出名,比如1-Wire、EnOcean、 xPL、Insteon和X10等规范。规则、脚本和事件都得到支持,还有基于云的设计工具,可用于用户界面、安装、配置、远程更新及诊断。
OpenThread
这是Nest最近从基于6LoWPAN的物联网Thread无线网络标准分离出来的开源项目,它还得到了ARM、Microchip旗下的Atmel、Dialog、高通和德州仪器的支持。OpenThread实现了所有Thread网络层,还实现了Thread的端点设备、路由器、Leader和边界路由器等角色。
Physical Web/Eddystone
谷歌的Physical Web让蓝牙低能耗(BLE)信标可以将URL发送到智能手机。它针对谷歌的Eddystone BLE信标经过了优化,这提供了除苹果的iBeacon之外的一种开放技术。其想法是,行人可以与任何具有BLE功能的支持性设备(比如汽车停放计时器、标牌或零售产品)联系。
PlatformIO
基于Python的PlatformIO包括IDE、项目生成器和基于Web的库管理器,它是为访问来自基于微控制器的Arduino和基于ARM Mbed的端点的数据设计的。它为200多种板卡提供了预先配置的设置,并与Eclipse、Qt Creator及其他IDE整合起来。
The Thing System
这种基于Nodejs的智能家居“监管”软件声称支持真正的自动化,而不是简单的通知。其自学习人工智能软件可处理许多协同式M2M *** 作,不需要由人干预。缺少云组件恰恰提供了更好的安全性、隐私性和控制性。
ThingSpeak
成立五年的ThingSpeak项目专注于传感器日志、位置跟踪、触发器及提醒以及分析。ThingSpeak用户可以使用用于物联网分析和可视化的MATLAB版本,不需要向Mathworks购买许可证。
Zetta
Zetta是一种面向服务器的物联网平台,利用Nodejs、REST和WebSockets构建而成,奉行基于数据流的“响应式编程”开发理念,用Siren超媒体API连接起来。设备被抽取成REST API,用云服务连接起来,这些服务包括可视化工具,并支持Splunk之类的机器分析工具。该平台可将Linux和Arduino开发板之类的端点与Heroku之类的云平台连接起来,以便构建地理分布式网络。
转载于:>1 编程方面:C、汇编
2 嵌入式系统基础
3硬件器件与平台:节点器件(T-Mote Sky、TI MSP430等);平台(Arduino,树莓派等)
3无线传感器网络:基础知识、协议栈(ZigBee,IETF 6LowPan, CoAP 等)
4无线传感器网络 *** 作系统(TinyOS, Contiki等)
5在网上找典型应用案例,学术性综述等,这一工作实际上不是在最后进行,而是贯穿在前面4步中
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)