不知道就OUT了,开源硬件相关平台

时间: 2019-05-12阅读: 316标签: 物联网

在网上查找树莓派与Android的实践时,看到硬件开源的很多解决方案。

全球最流行的几个开源硬件平台!不知道就OUT了!

 

随着物联网的推广和普及,五年内全球会有200亿台智能设备的需求,而如今随着创客概念的兴起,开源硬件也越加的火热,让我们来看看现在都有哪些主流的开源硬件平台,这些平台又是用什么芯片呢,全志、三星、瑞芯微、飞思卡尔?下面让我们来数一下吧!

1.树梅派(Raspberry Pi)-ARM1176JZF-S核心

树莓派由注册于英国的慈善组织“Raspberry Pi 基金会”开发,Eben·Upton/埃·厄普顿为项目带头人。2012年3月,英国剑桥大学埃本·阿普顿(Eben Epton)正式发售世界上最小的台式机,又称卡片式电脑,外形只有信用卡大小,却具有电脑的所有基本功能,这就是Raspberry Pi电脑板,中文译名"树莓派"!它是一款基于ARM的微型电脑主板,以SD卡为内存硬盘,卡片主板周围有两个USB接口和一个网口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,以上部件全部整合在一张仅比信用卡稍大的主板上,具备所有PC的基本功能只需接通电视机和键盘,就能执行如电子表格、文字处理、玩游戏、播放高清视频等诸多功能。 Raspberry Pi B款只提供电脑板,无内存、电源、键盘、机箱或连线。

 

树莓派和Code Club合并 让孩子们学编程更容易

Raspberry Pi(树莓派)自问世以来,就受到众多计算机发烧友和创客的追捧,曾经是一“派”难求,其强大的功能也受到了广大DIY爱好者的青睐。不过,这款信用卡大小的卡片式电脑的初衷是为了学生计算机编程教育而设计,以提升学校计算机科学及相关学科的教育、让计算机变得有趣为宗旨。

目前Raspberry Pi销量惊人,迄今为止已经售出700万片,影响力巨大。日前,Raspberry Pi基金会CEO Philip Colligan宣布,Raspberry Pi将于Code Club合并,让更多的孩子能够学习计算机编程知识。

Code Club成立于2013年6月,俱乐部一直在智力与激发9-11岁的儿童对科技的兴趣。目前,英国已经建立了3250个Code Club俱乐部,有超过四万名儿童参与其中,在其他国家和地区还有1000家Code Club在进行儿童计算机教育。

在早前,Raspberry Pi就和Code Club有过共同合作的项目,由于两个组织的所致力的领域相似,并且有很多共同目标,特别是在计算机教育领域里,所以两家在思虑过后决定合并,将技能、目标相融合,加快Code Club在全球的成长,让更多的人能够接受计算机编程方便的基础学习。

另外,Google、三星等科技巨头也都是Raspberry Pi和Code Club的支持者,他们也希望两家的努力能够培育出更多的互联网专业人才,为科技的发展做出更多的贡献。

利用微型计算机开展学生编程教育已经屡见不鲜,Arduino、Galileo等微型电脑开发板厂商也都尝试致力于计算机编程教育领域,今年10月份,BBC Micro:bit迷你计算机设备的生产公司向英国六年级的孩子们免费发放了100万台BBC Micro:bit设备,并且提供开源资料,这一切都是鼓励和支持儿童与年轻人学习编程技术。

在互联网时代,科技迅猛发展,编程似乎不再是专业人士运用的技能,而是成为了一门人人都需要了解的基础学科,Raspberry Pi和Code Club的融合就是为了促进更多人去学习和了解它。双方表示,在未来都会在网上提供免费的编程资源,Code Club的工作也会持续发展,在全球各地建立更多的教育俱乐部,让更多人受益。

 

 

2.Armcore-全志A20

Armcore是由视美泰公司为企业级DIY定制的一款开源硬件,其标准都是按照工业级制定。为了更方便企业开发产品,Armcore将CPU、DDR、FLASH、PMU等核心模块封装到一个核心板之上,而且将安卓系统集成到系统上,基本上市面上的主流标准设备的驱动都应有尽有,以此来节省企业开发项目的时间周期和成本。更诱人的是这些都是开源的!不过该平台不足的地方就是对于个人创客的支持力度很低,主要还是针对企业用户。

 

 

3.Arduino-Atmega328

Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。它适用于爱好者、艺术家、设计师和对于“互动”有兴趣的朋友们。

 

4.BeagleBone-AM3359

BeagleBone是一个开源软件和嵌入式硬件设计非营利公司。BeagleBone为开源爱好者提供了一个很好的开源硬件和软件交流的平台。BeagleBone可以说完全是靠开源爱好者推动的一个硬件平台。

 

5.Cubieboard-全志A10

Cubieboard是由一支中国珠海的技术团队Cubieteam开发的一个开源MiniPC,有些类似于英国人开发的树莓派。适合个人创客,在这个平台开发产品不需要看英文资料是最大的优势,哈哈!我们一直坚信中国品牌总有走出国门的一天,虽然Cubieboard在国内名气不大,但是凭借其过硬的品质已经在国外赢得了一部分市场。

 

6.Armpc-全志A20

Armpc是基于全志A20开发的一款供个人DIY玩家使用的开源开发平台,其丰富的扩展性,是其最大的特点,因为它几乎包含了Arduino和树莓派的所有接口,所以,它支持的DIY模块会比前两者多出许多。Armpc和Beaglebone一样是由开源社区推动的一款开源硬件。其不足就是只开放软件源码,而没有开放硬件原理图,不过这也丝毫不影响创客们对它的宠爱。

 

7.UDOO-飞思卡尔 i.MX6 ARM

UDOO和Raspberry Pi一样,是一个ARM架构的Linux板,而在电路板上也装有第二颗ARM处理器用来模拟Arduino Due。

UDOO拥有双核与四核两个版本的ARM cortex-A9 CPU,采用了与Arduino Due一样的ARM SAM3X处理器。UDOO还内置OpenGL加速器、54数位I/O和模拟输入(有和Arduino R3兼容的pinout)、Ethernet、内建WiFi、HDMI、USB、SATA及类比声音讯号。

 

7、SparkCore-单片机

SparkCore是一个拥有配套云服务的平台,可兼容Arduino,并内置有WiFi功能。和Yún一样,SparkCore也可以通过WiFi连接并进行程式开发。而除了无线局域网络,SparkCore也可以同时通过云服务随处存取更新自己的进度。

 

8.DigiSpark-单片机

DigiSpark也是一个基于ATTiny85架构的开发板,并且体积也足够小,支持Arduino IDE 1.0+ (OSX/Win/Linux)。

虽然DigiSpark只有6个 I/O Pins,但可利用各式各样的扩充工具延伸它的可能性。并且DigiSpark的售价只有12美元,无论是学习开发入门还是功能拓展都是一个不错的选择。

 

10、pcDuino-全志A10

pcDuino可以运行完整的PC操作系统,如Ubuntu和Android的ICS,并且易于使用工具链,又兼容Arduino开放的生态系统,包括Arduino shield和开源项目。值得注意的是它能够兼容使用大部分的Arduino扩充板,且所有的Arduino扩展引脚都可以通过API访问,包括UART、ADC、PWM、GPIO、I2C。

 

11. Sinovoip与富士康全力打造第三代香蕉派开发板:banana pi BPI-M3

Banana PI M1是为了配合Elastos.org 开源OS推广而推出开源硬件平台,BananaPI M1是一款比树莓派更强悍的双核Android4.2产品。BananaPI 支持 Android系统,,Debian linux系统,Ubuntulinux系统, Raspberry Pi 系统and cubieboard 系统.可以作为媒体播放器,智能路由交换器,中继器,工控机,机顶盒,网络播放器,开发板,个人娱乐学习编程软件等。

Elastos将协调多CPU形成基于“软件/硬件服务”的家庭云生态环境。
Banana Pi 外型类似树莓派,但它性能却比树莓派更加强焊,并且可以运行树莓派image.  

Banana PI 硬件:硬件基于ARM架构,1Ghz ARM7双核处理器,1GB DDR3内存,千兆以太网口,SATA Socket,流畅运行Android4.2.2。Banana PI M1体积如信用卡大小,轻松运行《雷神之锤三:竞技场》这样的游戏,支持1080P高清视频输出,GPIO兼容Raspberry Pi并直接运行其ROM Image.

  • Raspberry Pi 的详细介绍:请点这里

想通过手机客户端(支持 Android、iPhone 和 Windows Phone)访问开源中国:请点这里

 

 

12. FireBlock是基于Scratch的一款跨平台的图形编程,编程的方式只需要像搭积木搭建。无须学习编程语言,Firefly加入了控件硬件的各种插件,可以轻松控制Fireduino。同时利用Fireduino的2.4Ghz wifi模组,编程过程完全脱离数据线,现在,只需要把你的创意搭建起来,编程造出好玩的东西!

 

  1.  2015 Go Day开放日:新一代机智云3.0及Gokit3正式发布

9月19日,机智云智能硬件自助开发及云服务平台在北京举行GO DAY 2015发布会,正式发布新一代机智云3.0,全面提升产品接入后的服务和管理能力,同时新一代物联网开源硬件开发板Gokit3也同期发布,其能够直接支持语音、蓝牙、2G/3G/4G、及更高性能的处理器,整体功能更强大、更人性化、更具连接性,这将在技术层面更进一步推动整个物联网的发展。

机智云3.0是基于机智云2.0之上推出的目前国内首个智能硬件一站式开发和设备运营平台(PaaS+SaaS),是机智云过去一年技术的积累。机智云3.0在原有机智云2.0上增强了九大功能:定向远程升级、规则引擎、消息推送、设备自动化操作、设备联动、企业API、用户自定义统计分析、2G/3G产品支持和多种数据输出接口,使智能硬件设备自助接入后的功能更加完善,更加便于管理。

同时,机智云3.0全面提升了产品接入后的服务能力,例如:生产支持、库存管理、经销商管理、售后服务管理、用户管理等服务。让企业真正实现从卖产品到运营产品的升级。

在今天的发布会上,机智云还同步首发了Gokit3,相较于Gokit1和Gokit2,整体功能更强大、更人性化、更具连接性,对于Gokit3的性能提升,机智云CEO黄灼表示:“未来智能硬件的交互方式将会越来越丰富,伴随着硬件的快速发展,目前主流的触屏智能手机将难以完全满足用户所有的需求,因此我们在Gokit上加入了语音互动和体感等新的功能,同时跟云知声合作开发语音识别,其具备的声音降噪功能,不仅能够在技术方面为用户带来准确体验,同时也让智能家居和其他需要直接跟硬件互动的场景衍变的更为自然。”

在技术层面,机智云针对开发者的底层需求,将原生支持Wi-Fi的Gokit1代和2代进行了升级,直接将Wi-Fi、蓝牙、2G/3G/4G的上网能力整合在Gokit开发板上提供给开发者。

同时,面对通信芯片行业的变革,MCU和射频的双芯片解决方案逐渐被单芯片的方案取代,机智云在Gokit开发板上实现了通过一个SOC通信模块直接完成Wi-Fi传输和对设备元器件的控制,降低了智能硬件量产后成本的问题,未来,越来越多主流的智能硬件将会这样的方式进行接入和控制。

另外特别值得指出的是,面对越来越多开发者不同的硬件开发需求,对运算能力的要求也在不断提升,因此机智云在Gokit3上直接加入了高运算能力的处理器,例如IntelEdison、高通的Snapdragon、君正的MIPSCPU等,这些高性能的处理器可以帮助开发者实现像机器人一样更加智能化的硬件产品。”据悉,Gokit3将继续开源并且兼容Arduino,免费发放给开发者,继续推动物联网开发者生态的发展。

机智云3.0以及GoKit3的正式发布,不仅从技术层面为开发者带来了积极的帮助,大大降低了智能硬件的进入门槛,同时也进一步的完成了从物联平台布局到生态搭建的转变,伴随着移动互联时代的快速发展,机智云将以更强的技术实力,更前瞻性的布局为硬件厂商提供更完善的一站式物联网全周期开发及运维管理服务。

—关于机智云—

机智云是国内首个面向开发者的全自助智能硬件开发平台(PaaS),为开发者提供快捷的智能硬件开发工具,为智能硬件厂家提供一站式物联网开发和运维服务,目前服务的客户来自消费类智能硬件厂家(含智能家居、智能硬件、可穿戴产品)、工业及商业应用客户、智慧城市建设及创新创业支持等,自2014年9月19日发布以来平台聚集了上万名开发者,自助接入智能硬件设备超过9000款,接入设备数量超过330万,开源项目23个,代码26万行,每天发送超过2亿条指令,受到全球超过500家客户信赖,是目前国内外最大的智能硬件集群之一。

—关于“GoKit”—

GoKit是机智云在2014年9月19日推出的一款全球第一个用于快速了解、学习智能硬件开发的物联网开源智能硬件教学开发板,集成了Wi-Fi模块、LED灯、温湿度传感器、红外光感、马达等智能硬件通用传感器。第二代GoKit于2015年2月9日机智云微信万人发布会隆重发布,升级主要实现了设备与开发环境可选,提供Arduino和ST两种开发底板,同时兼容了市面主流得Wi-Fi模组和2G/3G模组,继续降低物联网开发门槛,目前已有过万名开发者申请。

 

14. PcDuino3S

Pcduino 是一台mini PC平台,硬件性能指标远超树莓派,性能稳定,做工精良。它可以像PC机一样安装Ubuntu和Android ICS,HDMI的高清显示器输出接口,而且可以兼容Arduino 接口,也可以开发google TV。

PcDuino专门针对开源社区快速增长的需求,即希望有一个平台可以运行完整的PC操作系统,容易使用的工具链和兼容流行的Arduino开放的生态系统,如Arduino shield和开源项目等。其硬件性能指标远超树莓派,性能稳定,做工精良。PcDuino迷你计算机的CPU采用1GHz ARM Cortex-A8内核,DRAM为1GB,板载存储达到2GB Flash, 完全兼容Arduino接口。另外,PcDuino 可以从NAND或者从mini-SD卡(TF卡)启动,在NAND Flash内有出厂预装了ubuntu系统,拿到手即可使用。

 

15. Cubietruck

Cubietruck也称为“Cubieboard3”,配置着一枚与Cubieboard2一样的Allwinner A20主控芯片,并在2版的基础上增强了许多硬件配置,如2GB内存、千兆以太网、无线网卡、蓝牙、VGA接口等。

CubieTruck特征如下:

1.处理器

•Allwinner A20,双核ARM Cortex-A7,ARM Mali400 MP2 Complies 支持OpenGL ES 2.0/1.1

2.板载资源

•2GB DDR3@480MHz

•8GB NAND Flash,可扩展支持高达32GB SD卡

•10M/100M/1000M网卡RTL8211E

•WIFI+BT无线网卡BCM AP6210,板载天线

•5V@2.5A电源,内置Li-battery和RTC

•HDMI+VGA视频输出接口

•SATA 2.0接口

•USB Host x2,OTG x1,SPDIF x1,IR x1,LEDs x4,Headphone x1,Keys x3

•扩展接口:54pin,包括I2S,I2C,SPI,CVBS,LRADCx2,UART,PS2,PWMx2,TS/CSI,IRDA,LINEIN&FMIN&MICIN,TVINx4等接口。

3.其他

尺寸:11cm x 8cm x 1.4mm

系统:支持Android4.2.2,Ubuntu 12.04以及其他linux版本,出厂预烧Android4.2.

 

 16. Firefly RK3288瑞芯微开源硬件平

使用瑞芯微最新的RK3288处理器,支持Android4.4和Ubuntu系统,并支持HDMI 4K超高清输出,扩展还预留了MIPI、LVDS等LCD显示接口以及GPIO、SPI、I2C等一列的常规接口,适合用作文件服务器、微型电脑主机、工控机、网络播放器、机顶盒、广告播放机、开发板、软件编程学习等。

 

  1. 开源机器人

NASA的Robo­naut 2、Rethink Robotics的Baxter和波士顿动力的Atlas,它们的共同之处是都运行机器人操作系统ROS(Robotics Operating System)——一个开源的操作系统,正迅速成为机器人行业的Android。开源机器人基金会CEO Brian Gerkey称他们已经达到了临界点,过去一年ROS软件的下载量翻了一番,达到了350万次,随着ROS 2.0的发布普及率有望再次飙升。

 

 

当然除了上述几个主要的开源平台,国内也还有很多优秀的不开源的平台,比如友坚恒天,友善之臂,飞凌,天嵌等到。

 

什么是node.js

提到node.js,就不得不先提一下javascript(以下简称js)。我们不要被js的外表所迷惑, 其实js和java一丁点关系都没有。

可见有如下几种,当然树莓派由于直至再用,这里不做补充:

js是一种最基础的网络脚本语言,用于web应用开发,通 常是被嵌入在HTML中以实现自身的功能。所以js只能在浏览器中运行。

1.UDOO:

但2009年出现的 node.js彻底改变了这一局面,使得js可以脱离浏览器,在node.js引擎中运行,似乎这还不 足以激动人心,但node.js一重磅功能是使js运行于服务端!这无疑对前端开发工程师们有里 程碑的意义,终于可以平滑的接触node.js后端开发了。

图片 1

这些似乎看起来和嵌入式八竿子打不 着。但由于node.js引擎跨平台特性,理所当然的在嵌入式平台上运行起来,并且提供了事件 驱动,非阻塞I/O模型,轻量,高效,跨平台等优秀特性,适应了新型物联网嵌入式开发的潮 流。

4倍树莓派性能+Android/Linux全兼容+Arduino开发,UDOO打造极客个人电脑DIY新高度,为教育、创新行业提供强大支撑。    

物联网嵌入式开发现状和困境

今天为大家介绍的新奇玩物名叫UDOO,它是一台与此前鼎鼎大名的树梅派功能相似的迷你电脑。UDOO主板内置i.MX6 Freescale处理器和Arduino开发板,可以运行Android和Linux操作系统,而且价格低廉,非常适合教育、创新、IT行业和各路 Geek使用。

我们知道,物联网嵌入式开发都是以具体的求功能为出发点,在某个具体平台上实现功能 代码,开发上特点也很鲜明:

UDOO非常适合软件开发和程序设计,简单易用,不需要非常多的背景知识。UDOO将不同的操作系统融合在一起,每个操作系统自身的优势和劣势都可以被用户极好地把握,更好地发挥不同的操作系统的功能。

a、入门门槛较高,知识点非常零散。

UDOO属于开源硬件的一部分,搭载ARM i.MX6 Freescale处理器,主板上同时还带有一颗Arduino DUE出品的ARM SAM3X处理器,能够满足Android和Linux操作系统的性能需求。 其尺寸非常小,只有11cm x 8.5m,功耗也低。

b、平台依赖很强,换平台比较痛苦。

目前UDOO迷你电脑正在Kickstarter上募资,可以为消费者提供两种不同配置的主板。消费者可选双核或四核A9处理器(售价分别为99和 129美元),内置1G RAM,支持WiFi网络连接,HDMI、RJ45网口、Mini USB、USB、SATA、Micro SD等接口齐全,支持触摸屏。UDOO可运行Linux版Ubuntu,提供任何编程所需的环境;UDOO也可运行Android 4.0.4 Ice Cream Sandwich操作系统,功能齐全;UDOO搭载的Arduino开发板同样符合Arduino社区的标准。

c、开发中出现的问题较难定位,往往涉及到多个技术层面协同工作。

图片 2

d、公司多选择闭源,对整体软硬件生态的贡献接近于零,阻碍了开源的发展。

UDOO为开发者提供灵活的开发环境,可以提供Android、Linux、ArduinoTM、Google ADK开发平台,同时其强大的性能还能参与最新的“物联网”开发。通过更换Micro SD,用户可以在数秒之内切换Android和Linux,非常便捷。

e、实践多于理论,此领域的大牛多是不断的编程、验证、思考等一步一步成长起来的,几乎 没有捷径。

 

嵌入式开发的这些特点就注定了它的神秘、难度大、团队作战。然而,开发者们总是不会 拒绝更简单的语言、更友好的封装、更易用的平台的。如何更快的将创意变为现实?在国外, 以Raspberry Pi为代表的微型卡片电脑使得神秘的嵌入式平台更加平易近人,它在卡片大小的 体积上提供了完整的电脑的功能,可以开发多种应用程序和丰富功能的硬件产品,正由于其高 度的软硬件整合使得大大降低了开发门槛,让创业者可以轻松的将创意转化为现实,甚至儿童 都可以在其上边实现自己的想法。还有以Arduino为代表的入门平台使得微控制器开发变得极 为简单,比如拿读取温度传感器的数据来说,在普通单片机上实现可能需要半天时间,而在Arduino上可能只需10分钟。对于小白来讲,使用Arduino大大降低了开发难度。反观国内 这一领域起步较晚,有个别嵌入式板卡供应商在陆续转向这个方向。例如friendlyarm出品的 nanoPI系列开源硬件、Firefly出品的四核卡片电脑开源平台Fireprime。随着国内开源软硬件 的增多,国内对整个开源生态的贡献逐步加大,开源的思路和跨平台的方式逐步被越来越多的 开发者青睐,我认为这和传统嵌入式开发已经有足够的区别,暂且称为“新型物联网开发”, 归纳出了以下几个特点:

 

a. 由“支持网络”上升到“基于网络”。

二.香蕉派Banana PI

b. 软硬件高度整合,将复杂的底层处理隐藏起来,留给用户友好的API。

Banana PI M1是为了配合Elastos.org 开源OS推广而推出开源硬件平台,BananaPI M1是一款比树莓派更强悍的双核Android4.2产品。BananaPI 支持 Android系统,,Debian linux系统,Ubuntulinux系统, Raspberry Pi 系统and cubieboard 系统.可以作为媒体播放器,智能路由交换器,中继器,工控机,机顶盒,网络播放器,开发板,个人娱乐学习编程软件等。将协调多CPU形成基于“软件/硬件服务”的家庭云生态环境。Banana Pi 外型类似树莓派,但它性能却比树莓派更加强焊,并且可以运行树莓派image. 

c. 扩展变得极其简单,就像电脑上安装软件一样。

Banana PI 硬件:硬件基于ARM架构,1Ghz ARM7双核处理器,1GB DDR3内存,千兆以太网口,SATA Socket,流畅运行Android4.2.2。Banana PI M1体积如信用卡大小,轻松运行《雷神之锤三:竞技场》这样的游戏,支持1080P高清视频输出,GPIO兼容Raspberry Pi并直接运行其ROM Image.

d. 设备互联更重要,甚至可随处推送并部署代码,随处访问。

硬件接口说明:

e. 一般会有社区、github、wiki等伴随成长。

图片 3

基于node.js的新型物联网开发框架

 

目前流行的新型物联网框架有iot.js、Duktape、tessel、Three.js、icoolpy、johnnyfive、linkit等等,且绝大部分新型物联网开发框架不约而同的选择了node.js平台为核心。

 外接设备:

Widora就是这样一个初生的极简开源硬件,基于MT7688 MIPS CPU运行OpenWrt系统, 也正在融入javascript带来的基于WEB的新型物联网生态。

图片 4

js俨然成为WEB世界里的“二进制”,另外Widora提供了MT7688以及OpenWrt Chaos Calmer操作系统,等同于打包了底层软硬件。这中间缺了一道“桥梁”就是node.js 运行时,在Widora联网的情况下,只需要一条“#opkg install node”命令安装node.js和 npm让这个桥梁架设起来。

 

基于node.js新型开发方式案例:云端控制LED实例

香蕉派的官网:www.banana-pi.com  www.sinovoip.com.cn  

我们通过联发科MCS云平台和Widora开源硬件创建一个可以云端远程控制的LED,来 展示如何通过node.js实现远程网络数据控制功能,以及如何用这种全新的开发方式实现。大 致的架构如下:

 

在MCS云端建立一个“widora”原型,并添加一个叫“switch1”的测试装置,新增资料 通道类型选择为“开关”,创建完会得到DeviceId 和DeviceKey,这两个标识很重要,本地 的应用程序会用到。此时应该会看到一个“开关”的标志,证明MCS端的控制已经就绪。

 

本地硬件使用的是Widora开源硬件,以板载的WLED灯为控制目标。板载了OpenWrtChaos Calmer(Linux)操作系统,故本地需要开发一个javascript的应用程序连接MCS云 获取数据,进而本地处理数据。由于本地需要和MCS云连接,故本地要用到mcsjs模块,在 Widora上可以通过#npm install mcsjs提前安装一下。本次应用程序设计的流程图如下:

三.嵌入式物联网软硬件开发平台 OpenFPGAduino

该程序中,需要先调用mcsjs模块的register方法将预先获取的DeviceID和DeviceKEY 注册并TCP长连接到MCS云,进而注册一个监听事件对接收到的数据进行判断。核心就是数 据的一个处理。首先本地的打开和关闭LED使用shell命令即可,具体命令是:

OpenFPGAduino 是开源的基于 nodejs 与 FPGA 的嵌入式物联网软硬件开发平台。与Arduino等快速原型开发平台相类似。

打开LED

不仅提供了基于nodejs网络交互能力特别是用于开发的网络IDE以及类似树莓派的linux软件开发系统方便安装各种linux通用软件,而且通过FPGA提供了可编程的兼容arduino外围接口用于与丰富的物联网传感器进行连接。

#echo 1  /sys/class/leds/mediatek:orange:wifi/brightness

 图片 5

关闭LED

 

#echo 0  /sys/class/leds/mediatek:orange:wifi/brightness

 

下面是所有程序app.js

技术亮点
1提供了基于云端web的IDE开发环境,能够在任何可以浏览网页的设备完成软件开发工作, 甚至可以在iphone ipad android上进行OpenFpgaDuino的开发,只需要打开网页浏览器,输入开发板的ip地址,就可以在IDE中编写代码了。
2 基于FPGA进行IO扩展,提供了多达,可以实现任意的通信控制逻辑设计。扩展接口能够适应多种外部IO总线与接口模型。所有io口都能够进行任意配置,如果需要,可以将所有IO都作为I2C总线或者全部作为SPI总线使用。同时,能够提供实时控制逻辑设计,将cpu从繁重的IO任务中解放出来,专注于计算与网络服务。
3 所有扩展接口A与B提供了防静电保护,不用担心在触碰开发平台的过程中烧坏IO引脚。
4 完整的Linux系统支持,包括Linux标准库函数以及文件系统,可以像PC Linux一样使用apt-get安装需要的程序,并提供了对通用外设的良好支持。同时与FPGA相结合,将实时处理任务交由FPGA处理,避免了Linux实时处理能力弱的问题。

var mcs = require(‘mcsjs‘); //使用mcsjs模块,用于TCP长连接到MCS云通信var exec = require(‘child_process‘).exec; //使用child_process模块用于执行shell命令var myApp = mcs.register({ deviceId: ‘DfjtWtoa‘, //注册deviceId deviceKey: ‘7iXqgxkDmBrjQ7eJ‘, //注册deviceKey host: ‘api.mediatek.cn‘ //mcs域名});console.log(‘mcs init ok‘);myApp.on(‘switch1‘, function(data, time) { //注册switch1监听事件用于监听数据 if(Number(data) === 1){ //如果数据为1console.log(‘on‘); //控制台输出onexec(‘echo 1  /sys/class/leds/mediatek:orange:wifi/brightness‘,function(error,stdout,stderr){}); //打开LED } else { //如果数据不为1console.log(‘off‘); //控制台输出offexec(‘echo 0  /sys/class/leds/mediatek:orange:wifi/brightness‘,function(error,stdout,stderr){}); //关闭LED }});

视频

本地程序写好后,可以使用#node app.js运行看看有没有错,我的运行结果如下:

root@Widora:~# node app.jsmcs init ok

此时点击页面的开关,本地会交替打印出如下信息,同时也会看到WLED亮灭交替变化

总结通过使用了MCS云平台和Widora展示的云端控制LED实例,在不足20行代码的情况下 完成了C语言数百行才能做到的事情,并且整个开发没有碰触到Linux驱动层或Linux本身系 统层的难点,在该实例的背后,有相当多的基础服务、基础平台的支撑,才得以使上层开发如 此简单。今后的新型物联网嵌入式,开发方式一定是朝着抽象化、简单化、层次化的方向衍变, 并且可能会派生出更多类似node.js的平台,我也相信国内会有更多的开源爱好者加入到新型 物联网嵌入式的开发潮流,为整体软硬件生态做出更多贡献。

应用场景

  • 智能家居信号汇总处理
  • 物联网中央节点
  • 机器人运动控制
  • 快速原型开发

准备构建环境:

Install the docker: https://docs.docker.com/installation/#installation

Download the Build environment: 
sudo docker pull openfpgaduino/openfpgaduino

Run the environment and open the shell:
sudo docker run --privileged -i -t openfpgaduino/openfpgaduino

Pull the view:
git clone --recursive https://github.com/OpenFPGAduino/OpenFPGAduino.git

 

 

本文由澳门威斯尼人平台登录发布于Web前端,转载请注明出处:不知道就OUT了,开源硬件相关平台

相关阅读