开篇一谈
什么是HaaS
HaaS Python是阿里云IoT HaaS团队针对物联网领域推出的低代码云端一体开发框架的重要组成部分,它真正做到了“Python也可以轻松开发智能硬件”。
HaaS Python是阿里云IoT团队最新研发的一套低代码编程框架,兼容MicroPython编程规范,依托HaaS平台软硬件积木提供AI、支付、蓝牙配网、云连接、UI等物联网场景常用的能力,从而解决了物联网应用开发难的问题。
有了Python轻应用框架,物联网编程不再局限于专业软件开发人员,一般的技术员也可以快速实现复杂的物联网需求。
阿里云HaaS团队如是说,但当年HaaS让我兴奋的其实是传说中能支持JS。而后来也只有部分HaaS硬件可以运行AliOS Things来运行JS轻应用。为此我买了几户所有的2023年以前所有的HaaS硬件。
常言道:“无图无真相!”
我先上一张我自己拥有的HaaS开发板吧~
第一排从左到右依次是 HaaS 600、M5 Core2、HaaS 506
第二排从左到右依次是 HaaS200、HaaS100、HaaS EDU K1
什么是AliOS Things
AliOS Things 发布于2017年杭州云栖大会, 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统,于2017年10月20号宣布在github上开源,2022年末的最新的版本是 AliOS Things 3.3 。
而上面提到的AliOS家族则有如此的来历:
AliOS是阿里巴巴集团推出的移动操作系统。AliOS以驱动万物智能为目标,可应用于智联网汽车、智能家居、手机、Pad等智能终端,为行业提供一站式IoT解决方案,构建IoT云端一体化生态,使物联网终端更加智能。从汽车开始,AliOS正在定义一个不同于PC和移动时代的物联网操作系统。
当年的计划可是要AliOS Everything,截至2022年底,只剩下了Things和汽车版。
2017年我第一次参加云栖大会,好多有趣的东西,AliOS Things只是一个故事,一个学法律的妹子三天搞出来一套智慧厕所的物联网设备。听说支持JS。对于一个到处鼓吹JS Everything的我来说,无疑是非常兴奋的。
HaaS的发展阶段
HaaS 1.x 时期
2020年我在重庆筹办阿里云MVP闭门会的时候,听到HaaS团队带来的消息。第一时间获得了HaaS 100,不得不说这是诚意之作。用料扎实,但是生态实在糟糕。
凤凰端子、树莓派兼容的插针、整齐的布局和扎实的用料让人觉得诚意十足,但配置开发环境我花费了将近一个月时间。
2.4G/5G Wi-Fi、百兆网卡、蓝牙5.0、板载LED,但是点灯、配网结束、支付宝小程序一玩结束,就真的结束了。
可能发现大家都只是玩了那些东西,HaaS团队就搞了个HaaS 1000装在了一个盒子里,名字叫做HaaS EDU K1。
这次就太猛了,继承了各种各样的传感器、按钮、接口、显示等外设,恨不得做什么都可以。用料和配置也就更猛。同时还开发了,十多个演示程序,贪食蛇什么的都有。
但不论是HaaS 100 还是EDU K1,都面临一个非常直接的问题,用户希望用HaaS开发产品,不是个玩具、教具或者极客工具。虽然硬件领域经常会有,制作电子玩具、编程教具、极客创作工具的需求,但都不是最主要的。
一块好几百块的开发板,而且买不到模组,又十分昂贵,这样的设备没办法让人安心购买然后开发产品。于是HaaS 200出现了,支持Wi-Fi/蓝牙,性能强大,堪比ESP32。总算是有款能用做开发的板子了。
但没有Wi-Fi或有线网络的时候该如何接入互联网呢?
HaaS的答案是600,一个在2022年已经找不到任何官方支持的项目。
这次的创新就是接口兼容Arduino了,这配置高得吓人,烧录的复杂程度也创新高。支持4G,板载北斗定位。
其实这样的开发板也是属于价格很贵,该有的没有,不需要的很多。于是他们出了一个简化版本的HaaS600。
没过多久HaaS团队发布了第二款有产品意义的开发板HaaS506,因为其支持当前的HaaS 2.x版本,所以我就放到下一节来回顾了。
HaaS 2.x 时期
一个版本有继电器有外壳,其实就是一个网络IO,但可以在上面用Python轻应用编程,用4G Cat-1方便地接入阿里云。
另一个无外壳版本,没有继电器,但引出了常用IO,距离实用性突破也在咫尺了。这也是目前HaaS 唯一支持4G的开发板了。
除了之前的HaaS200继续支持HaaS 2.x外,千呼万唤的ESP32总算来了。
有了ESP32似乎就有了一切需要的生态,资源,社区支持。尽管ESP32与HaaS200相比硬件上差了很多,但硬件生态远比是否先进重要。
上图为M5 Core2,其中MCU为ESP32。根据最新的HaaS Python支持来看,ESP32、ESP32-C3、ESP32-S3都已经支持。
选型推荐
支持Wi-Fi/蓝牙
对5GWi-Fi有需求可以考虑HaaS200,否则ESP32系列的开发板将是最佳选择。
支持4G
HaaS506系列,网络的功能IO就可以满足需求直接要带外壳的。几乎是开发完就能部署。
持续等待中的LoRaWan
当你阿里云的朋友告诉我,IoT的接入他们全力投入LoRaWan,阿里云自己的标准叫做LinkWan。我等了很多年,没有一款终端支持aliOS Things 或者 HaaS,当年的路线图里我可是看到了的。
写在最后
HaaS Python的出现让我看到了HaaS从理想化走向成熟的技术路径变化,开始符合商业化需求。硬件开始全面支持ESP32,让我对于HaaS的装机量的提升乐观了许多。一款物联网操作系统10年才到可用期,路还长,天也还早。