开发者学堂课程【极简开发 - 平头哥 YoC 平台如何帮助开发者快速入门 AIoT :平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(一)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/735/detail/13098
平头哥 YoC 平台——支持从芯片到云全链路高效设计的 IoT 全栈技术平台(一)
内容介绍:
一、YoC 物联网开发平台
二、部分功能介绍
三、三大子系统
四、实例工程
五、让芯片 SDK 开发更快速
六、问答
本节内容主要是介绍平头哥 YoC 平台,以支持从芯片到云全链路高效设计的 IoT 全栈技术平台为主题,介绍 YoC 物联网开发平台是如何成为带给开发者极简的平台。
一、YoC 物联网开发平台
YoC 物联网开发平台是解决芯片到云全链路高效设计的 IoT 全栈技术平台,简单的说,就是解决芯片制造的一些技术问题。
1.当前物联网的发展状态:
在2018年时,网上的信息有110亿个 IoT 的产品接入,预计到2025年将达到400亿。特别是人工智能和物联网的的结合后,可以看到近一两年智能语音等应用已经普及到生活的方方面面,物联网已经从万物互联的时代进入到万物智联的时代。对芯片算力的要求越来越高,促进了 IoT 的芯片的设计,进行了架构升级,也会吸引更多芯片企业的加入。
芯片设计企业数量再次大幅上升:
在2018年时,中国有1698家芯片设计企业,2019年增加了82家,达到1780家,有互联网创业的感觉。芯片从设计到量产中间有很多技术迭需要突破,特别是在 IoT 芯片,需要实际的设计方法和技术设施上的突破来来解决芯片的技术问题或产品化的问题。
2.平头哥介绍
平头哥在2018年的云栖大会上阿里巴巴宣布成立平头哥半导体,一年来其发布了多款产品,包括玄铁处理器、无剑芯片平台、AliOS 与基础软件、面向领域算法。玄铁处理器在一些芯片设计带来很强的算力,具备开发灵活的优势。无剑芯片平台也是为 AIoT 时代提供提供暂时的芯片设计的方案,能够帮助芯片的设计企业减低成本,大大的缩短芯片的设计周期。AliOS 的基础软件是针对物联网的一些场景提供一些丰富的软件基础,后面会对其进行进一步的介绍。
3.平头哥芯片开放社区(OCC)模式
平头哥芯片开放社区提供了三个武器,分别是 OCC 、YoC、CDK。OCC 简单来说就是一个网站,里面有芯片空间、应用商城、开发中心、技术部落,其中会提供很多的芯片资源、解决方案的资源和技术的文章等等,可以在 OCC 的网站浏览 OCC 社区的资料。YoC 就是提供 IoT 应用的子系统,包括芯片对接(芯片快速对接 YoC 的生态提供了很多丰富的物联网应用开发的组件)、基础组件、应用领域框架。CDK 就是集成开发环境,能够直接融合 OCC 和 YoC 的一些组件,开发软件会非常的方便。内部称之为铁三角,三个武器的联手目的就是帮助开发者能够让产品开发更加简单,快速的完成其产品开发,也可以帮助芯片公司的芯片能够快速的完成 SDK 的开发,能够保证芯片驱动的质量,做的更快、更好。
4.如何让产品开发更简单
软件的整体框架图如下:
上图能够一目了然的看到 YoC 基础软件平台提供的功能。
对中端产品开发来说,主要看上图中的上面部分,提供了三个子系统,包括接入子系统、语音子系统、边缘计算子系统。这三个子系统在物联网领域在当前比较流行,例如传统的数字接入、蓝牙、wife 的接入,在语音方面,可以做智能语音的交互的一些智能中端的产品。对边缘计算会有转码、视觉推理的计算能力。
会以应用框架的形式将 IoT 领域的解决方案,例如电子标签等解决方案可以快速的做一些开发。
上图下部分,如果是芯片公司,会提供芯片驱动统一接口(CSI),这样可以快速的帮助芯片公司的芯片能够接入 IoT 的开发平台,享受开源的组件和应用的方案。
上图中间部分,有两部分,Alios-things API / POSIX API 提供操作系统的一些最基础的组件。在基础组件,也就是面向 IoT 领域网络的组件、物联网的协议、多媒体组件等等功能,后面会展开说明。
如果想知道还有哪些组件,还可以登录 OCC 的网站查看组件列表,其中有几百个组件的清单。
二、部分功能介绍
1.Alios-things 组件
实时操作系统:
特点是开销小、实时性强,还传了一些 POSIX 的 API ,支持 C++ 的开发。
2.KV 文件系统:
在做一些小型应用时非常需要,KV 文件系统非常小,代码只有1000行左右,内存开销只有几K ,但是其能够支持断电保护、日志功能,在 ROT 的一些产品之间非常方便。
3.轻量级功耗框架:
IoT 产品中低功耗的能力非常重要,一个产品可能会待机很久,甚至几年的时间。如果做过低功耗开发,知道其中有很多的困难,轻量级功耗框架就是帮助解决中端产品的低功耗管理的问题。
4.BLE/MESH 协议栈:
例如接入时困难用到蓝牙这种协议栈,现在很多通过蓝牙就可以控制设备的开关,蓝牙协议上已经通过 BQB 的一些官方的认知来做到非常小的低功耗设计,而且非常稳定。
5.LWIP 协议栈:
还有网络的协议栈,支持底层的各种协议,例如 DHCP 等一些物联网 IoT 的接入的一些组件。
6.升级服务:
支持插分升级和 AB 升级,基本的组件在物联网的产品开发会用到。