火遍全球的Arduino,为什么在国内惨遭专家痛骂?

        在国外,Arduino几乎就是创客和硬件创新的代名词,21世纪最重要的科技性事件——创客运动兴起的标志,就是2005年冬季第一块arduino开发板的诞生。这款电路板,在全球范围内瞬间激发起了经久不衰创客风潮。

        大量涌现的创客项目,包括机器人、无人机、智能家居控制、3d打印等都主要是以Arduino为原型或基础研发。而基于 Arduino电路及引申的产业,例如Arduino改进或兼容板,服务创客从 Arduino 原型到批量生产等业务,也在开源硬件大潮中异常火爆——在全球硬件创客的武器库中,Arduino已经连续12年独霸头把交椅。

        但是国内的电子界,专家们始终对这款革命性极客产品充满诟病,诸如“业余的东西,在专业领域没谁用过”、“效率低,代码冗余多”、“无法定制底层驱动、、“ 配置太差、跑不了系统“……等等不一而足。更有甚者,一位国内电子学界的权威,将arduino比作“廉价的懒惰毒品”,并禁止自己的学生使用,认为会妨碍学习stm32、arm等“真本事”。

        Arduino作为一款享誉全球创客界的霸主级产品,那么为什么在中国技术界被说的一无是处?

一、专家的“高门槛”情结

        革命性技术的诞生都带来了传统行业门槛的大幅降低。例如,冷兵器时代,骑士们花费一生时间学习剑术、马术和各种格斗技术。但火枪诞生后,只要扣动扳机就行了,几乎任何人都能轻松做到,骑士们自然感到落寞。又比如,早期的程序员花了大量时间学习汇编语言甚至机器语言,但后来简洁易懂的高级语言诞生了,这些前辈们突然发现编程不再是一件可以装逼的工作了,自己所学也变成了古董。

        Arduino最大的贡献就是,给极为复杂难懂的电子制作“装上了扳机”——它把极客们最头疼的电子电路和底层驱动库都打包集成为黑箱,进而省略掉了大部分与电路和硬件驱动相关的操作,最终只剩下了简单的控制逻辑。这让程序员无需学习复杂的电子基础,也能够轻松制作出精良而可靠的电子创意产品,Arduino带来的电子技术门槛的降低,激发了21世纪的创客浪潮,而电子专家们却因此落寞了,愤怒了,开始无休止地对Arduino进行鸡蛋挑骨头。这一点在国内电子界尤为明显。

二、误导一:Arduino性能差

        专家们最爱说的就是Arduino性能极差,运行不了系统,形同玩具,因此比不上stm32、arm等高级产品,所以千万别用arduino做开发。

        但是,工具选择的关键在于合适,高级的并不等同于合适的,就像人们不会用曙光超级计算机来玩魔兽,也不会用高射炮来打蚊子,不同的平台有完全不同的用途和特定优势。聪明的开发者会选择合适自己、合适项目的硬件平台,而不是一味选择性能最强大的硬件平台:

        Arduino的优势在于电路控制和传感器数据收集上,它使用简单、效率奇高、执行速度快、驱动库众多,耗电量还低,在这方面无人能出其右。

        而ARM、树莓派等带系统运行的开发板,主要擅长实现更复杂的运算处理,如图形图像处理、大型数据运算等等。但ARM等高端芯片的底层驱动较为复杂,并且执行效率远不及arduino。

        因此, 其实arduino的性能非常优异,否则也根本无法实现哪些狂拽酷炫的功能。并且,即便遇到了复杂的运算需要,也完全可以取长补短——用树莓或者PC来做中控(处理算法),再用arduino来做执行不就行了?

误导二:Arduino程序效率很低

        专家们又说了,Arduino的程序运行效率不及AVR、51、stc。

        这貌似在理论上有点道理,因为Arduino核心库是对AVR的二次封装,增加了冗余代码,理论上确实会降低一点点的运行效率。但关键在于,这差距只是几微妙而已,开发者真的看重这几微妙么?

        就像编程语言的选择一样,目前为止,效率最高也最精简的是汇编语言乃至机器语言,用它们编出的程序所提高的效率可能不只几秒,但是现在也没见过谁用汇编语言来写软件、编系统。

        和开发难度、驱动资源、成本等各方面比较起来,这几微妙实在是微不足道的,即便放在专业领域也是忽略不计,至少在工业领域内,很少看到对实时性效率要求如此苛求的项目;

        Arduino的开发者,最迫切的需要是快速进行从想法到原型的开发——选择一个合适硬件工具和一个强大易用的库文件资源包,飞速地做出初级产品,并通过不断地调试,快速完善产品。而这才是许多极客选择Arduino的初衷——arduino代码简单,写起来既愉又快,产品优化时,软件可以在原型软件上完善。

        当然,用传统方式,可以把效率做到极致,如果不嫌累,你甚至可以用汇编来开发单片机,但付出的学习成本和时间是惊人的,程序后期的修改也会变得异常繁琐,举步维艰;而收获就是那几微妙。

        所以,觉得那些拿效率说事的专家们还真不是一般的无聊。

误导三:Arduino是玩具,无法做产品

        专家们对这一结论,没有给出任何根据。但现实是,国内外很多著名的产品都是用arduino研发的,比如国内小米的yeelight、无人机的大疆、Pebble 智能手表和 Makerbot 3D 打印机,等等这些产品都是使用Arduino作为平台基础开发产品。这些产品都是专业级的,在市场上也非常成功。因此。所谓arduino的无法做产品,只能当玩具一说,完全是扯淡。

        Arduino说白了,和其他的IC产品是完全一样的,只是她的类库和SDK的数量和质量领先于其他IC。并且,国内外很多从事硬件开发的人员,都在借鉴arduino的底层和驱动类库。因为由于开源和极受欢迎,avr+sdk为核心的arduino的资源已经以惊人的速度扩充了十多年,几乎每种驱动库,都有数十种不同特点方案可选,这令任何其他一款IC大厂商推出的类库都相形见绌。

        因此,可以说当今大量的专业创新产品都是以arduino为基础打造的,并且arduino比其他任何IC都更容打造出好产品。

误导四:Arduino价格高

        专家们说,arduino的成本很高,正版的要200人民币一块,不适合打造产品。

        Arduino的设计初衷就是降低电子开发板的成本,因此硬件和软件都是开源的,有大量的兼容板,一直是世界上最便宜的开发板之一。中国就是全球最大的arduino兼容板的产地(深圳),淘宝上一块质量过硬的UNO兼容板只要15-20块人民币,价格仅有树莓、arm等的1/10不到。即便是正版的arduino,售价也远低于其他开发版。

        并且,arduino只是用来打造和调试产品原型机/验证机,正式的产品则只会用arduino的控制芯片——avr来代替。这种芯片只有几块钱,成本更低、体积更小、功耗更省,功能与arduino完全一样。因此,使用arduino开发完全可以大大的降低你的开发成本。

真相揭露

        国内的专家们一再的攻击和构陷arduino,并不是因为arduino不好,恰相反,是她太优秀了,以至于动了很多人的蛋糕,这是某些人对arduino不断进行歪曲和误导的原因。


评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值