Closed yaoqiuguo closed 2 years ago
AliOS Things 3.3版本于2021年4月23日正式发布开源,项目地址:
本次发布包含的新特性有:
我们会继续秉持全面开源的思想,不断把新开发出来的组件和案例,快速的贡献到开源社区,请大家持续关注。
AliOS Things 3.3版本分别在Github、Gitee、Code China开源,分支均为rel_3.3.0。用户贡献代码可在Github上提交申请,AliOS Things开发工具默认是从Gitee下载源码。Github、Code China主要是方便用户浏览所有开源代码。
AliOS Things 3.3版本在Github平台上,所有功能模块共用一个仓库。用户可以通过登录本项目在Github上的地址,并切换代码分支为rel_3.3.0,即可查看到AliOS Things 3.3 版本所有开源代码,如下图。
AliOS Things 3.3版本在Gitee平台上,每个功能模块分配一个独立的仓库。概览页面的精选区域目前是放置着常用的案例仓库和通用文档仓库,如简单示例工程helloworld_demo、通用文档仓库documentation等,如下图。
若用户想查看或搜索其他组件或案例仓库,可以点击上图选项栏中的“仓库”切换到“仓库”页,如下图。在搜索栏中输入目标组件或案例的名称,确认后即可显示搜索结果。
打开目标组件或案例的仓库,切换代码分支为rel_3.3.0,即可查看到该组件或案例3.3版本对应的源代码,如下图。
AliOS Things 3.3版本在Code China平台上,所有功能模块共用一个仓库。用户可以通过登录本项目在Code China上的地址,并切换代码分支为rel_3.3.0,即可查看到AliOS Things 3.3 版本所有开源代码,如下图。
AliOS Things 3.3版本系统架构如下图:
系统架构图中,使用深灰色和橙色字体标记的模块是经过测试验证并已开源的模块,如“OTA组件”、“JS引擎”;而使用浅灰色字体标记的模块是正在研发或待测试的模块,如“支付组件”,今后会陆续开源。
AliOS Things 3.3版本源码是按照系统架构的分层设计进行目录划分:
AliOS Things3.3版本操作系统内核新增内核对象管理功能,对任务、互斥量、信号量等资源进行一致性管理,并对驱动框架、调试能力以及AOS API做了优化和升级。
对系统内核资源如任务、互斥量、信号量等采用相同的管理方式,提高代码的可维护性和可扩展性。
新版本驱动框架,对上提供全新便利的AOS API,对下提供原子化驱动原语,把驱动复杂逻辑封装在各驱动子系统中。最大化提升应用和厂商驱动的开发效率。
提升栈回溯解析率、新增printk调试打印接口、cpuuage统计改善、增加调试诊断命令等。
本次发布是在AliOS Things 3.1版本基础之上,精简了不必要的组件,增加了满足物联网领域所需的音视频、UI交互以及AI能力相关的组件,并对OTA、LinkSDK等核心组件进行了升级,详情参见下表:
AliOS Things研发团队根据典型的物联网应用场景为开发者打造的多个实用的示例工程,方便开发者在此基础上快速的打造属于自己的物联网应用。示例工程仓库地址和使用说明如下表:
AliOS Things提供的轻应用功能采用解释型编程语言JavaScript或Python,开发过程无需搭建嵌入式开发环境、无需编译、烧录。硬件设备的开发可以不再依赖嵌入式软件技术栈,调用简洁的API即可操控硬件行为。支持一键热更新推送应用代码到硬件,获取极致的开发体验。开发者可以参考如下教程开始AliOS Things轻应用的开发:
使用Python进行嵌入式应用开发
视频参见:Python轻应用开发教程
文章参见:https://blog.csdn.net/HaaSTech/article/details/115179241
使用JavaScript进行嵌入式应用开发
视频参见:JavaScript轻应用开发教程
文章参见:https://blog.csdn.net/HaaSTech/article/details/110158362
目前AliOS Things 3.3支持的HaaS开发板如下:
alios-studio是AliOS Things配套的开发环境基于VSCode的插件。支持图形化应用开发、编译、调试、烧录等功能,使用方法可参考: 开发环境使用视频教程
aos-tools是AliOS Things团队开发的命令行构建工具,支持组件管理、程序编译、烧录等功能。aos-tools是使用git来获取组件代码并维护代码版本。aos-tools的安装及常用命令的操作说明如下:
pip install -U aos-tools
aos command options
aos help
aos help command
aos init
aos init manifest-lab -b branchname
aos install component
aos install component -b branchname
aos show
aos make
aos make V=1
aos make clean
aos burn
aos debug
aos create project
aos create project -b <board> -t <solution> -d <destdir> <solution_name>
注解: [1] aos命令是指aos-tools支持的命令。 [2] aos工作区是指已执行过aos init的文件夹路径。 [3] aos工作区工程目录是指aos工作区solution目录下的工程根目录,如solution/helloworld_demo。
package.yaml是组件或工程的配置文件,配置内容包含源文件,头文件,宏定义,以及组件依赖关系描述等等,替代了传统的makefile文件。
yaml语法说明
https://www.ruanyifeng.com/blog/2016/07/yaml.html
https://yaml.org/spec/1.2/spec.html
yaml格式校验工具
https://www.bejson.com/validators/yaml_editor/
构建配置字段说明
https://haas.iot.aliyun.com/aliosthings/packageyaml_user_manual.html
package.yaml示例
a. 组件名称
b. 依赖信息****
c. 编译链接信息
d. 宏配置信息
SmartTrace V1.4
SmartTrace是AliOS Things自研的智能调试分析工具:支持查看串口日志、coredump死核分析、实时查看内存变量、在运行时设 置内存变量、通过uart、telnet等方式连接设备、本地日志离线分析。工具下载和使用方法可参见: https://alios-things-public.oss-cn-hangzhou.aliyuncs.com/SmartTrace_v1.4.zip, https://haas.iot.aliyun.com/aliosthings/smarttrace.html。
SystemView AliOS Things现支持业内常用的性能分析工具SystemView,工具说明和使用方法可参见: https://haas.iot.aliyun.com/aliosthings/trace.html, https://blog.csdn.net/HaaSTech/article/details/117779881。
为方便开发者能够迅速的定位到目标内容,我们对AliOS Things操作系统内核、组件、案例、API以及配套开发工具的所有相关文档进行了梳理分层,目录层次包括:
AliOS Things 概述
提供AliOS Things 操作系统框架、版本说明、文档入口、支持硬件、开发者交流通道等信息。
快速开始
为用户提供基于HaaS100或HaaS EDU k1等硬件,快速搭建开发环境、下载源码、运行简单示例工程或设备连接阿里云示例工程的方法。
开发工具
介绍AliOS Things操作系统配套的开发环境aos-studio、构建工具aos-tools以及构建配置package.yaml的使用方法。
内核编程
从AliOS Things操作系统内核实现原理出发,提供任务、互斥量、信号量等功能的使用示例,帮助开发者为其应用编程选择合适的内核能力以及正确使用API。
组件介绍
组件是AliOS Things操作系统为物联网应用开发提供的上层能力。该板块列出了所有开源组件的使用说明,帮助用户快速的了解组件的用途和使用方法。
案例开发
案例是AliOS Things操作系统根据典型的物联网应用场景为开发者打造的示例工程。该板块列出了每个案例所需的软硬件条件和使用说明,方便开发者在此基础上快速的打造属于自己的物联网应用。
开发者贡献
为开发者贡献文档、贡献代码提供操作指南。
API用户手册
对内核和组件常用API的提供说明。
贡献代码
贡献文档
贡献HaaS积木
HaaS官网:https://haas.iot.aliyun.com/
HaaS技术社区:https://blog.csdn.net/HaaSTech
开发者钉钉群和微信公众号见下图,开发者钉钉群每天都有技术支持同学值班。
https://m.gelonghui.com/p/679272 AliOS-Things以后是什么路线呢 ? 还搞吗 ?
@YiluMao
AliOS Things 3.3版本于2021年4月23日正式发布开源,项目地址:
本次发布包含的新特性有:
我们会继续秉持全面开源的思想,不断把新开发出来的组件和案例,快速的贡献到开源社区,请大家持续关注。
AliOS Things 3.3 开源仓库
AliOS Things 3.3版本分别在Github、Gitee、Code China开源,分支均为rel_3.3.0。用户贡献代码可在Github上提交申请,AliOS Things开发工具默认是从Gitee下载源码。Github、Code China主要是方便用户浏览所有开源代码。
Github
AliOS Things 3.3版本在Github平台上,所有功能模块共用一个仓库。用户可以通过登录本项目在Github上的地址,并切换代码分支为rel_3.3.0,即可查看到AliOS Things 3.3 版本所有开源代码,如下图。
Gitee
AliOS Things 3.3版本在Gitee平台上,每个功能模块分配一个独立的仓库。概览页面的精选区域目前是放置着常用的案例仓库和通用文档仓库,如简单示例工程helloworld_demo、通用文档仓库documentation等,如下图。
若用户想查看或搜索其他组件或案例仓库,可以点击上图选项栏中的“仓库”切换到“仓库”页,如下图。在搜索栏中输入目标组件或案例的名称,确认后即可显示搜索结果。
打开目标组件或案例的仓库,切换代码分支为rel_3.3.0,即可查看到该组件或案例3.3版本对应的源代码,如下图。
Code China
AliOS Things 3.3版本在Code China平台上,所有功能模块共用一个仓库。用户可以通过登录本项目在Code China上的地址,并切换代码分支为rel_3.3.0,即可查看到AliOS Things 3.3 版本所有开源代码,如下图。
AliOS Things 3.3 系统概述
系统架构
AliOS Things 3.3版本系统架构如下图:
系统架构图中,使用深灰色和橙色字体标记的模块是经过测试验证并已开源的模块,如“OTA组件”、“JS引擎”;而使用浅灰色字体标记的模块是正在研发或待测试的模块,如“支付组件”,今后会陆续开源。
代码目录
AliOS Things 3.3版本源码是按照系统架构的分层设计进行目录划分:
内核优化
AliOS Things3.3版本操作系统内核新增内核对象管理功能,对任务、互斥量、信号量等资源进行一致性管理,并对
驱动框架、调试能力以及AOS API做了优化和升级。对系统内核资源如任务、互斥量、信号量等采用相同的管理方式,提高代码的可维护性和可扩展性。
新版本驱动框架,对上提供全新便利的AOS API,对下提供原子化驱动原语,把驱动复杂逻辑封装在各驱动子系统中。最大化提升应用和厂商驱动的开发效率。
提升栈回溯解析率、新增printk调试打印接口、cpuuage统计改善、增加调试诊断命令等。
组件整编
本次发布是在AliOS Things 3.1版本基础之上,精简了不必要的组件,增加了满足物联网领域所需的音视频、UI交互以及AI能力相关的组件,并对OTA、LinkSDK等核心组件进行了升级,详情参见下表:
典型案例
AliOS Things研发团队根据典型的物联网应用场景为开发者打造的多个实用的示例工程,方便开发者在此基础上快速的打造属于自己的物联网应用。示例工程仓库地址和使用说明如下表:
轻应用支持
AliOS Things提供的轻应用功能采用解释型编程语言JavaScript或Python,开发过程无需搭建嵌入式开发环境、无需编译、烧录。硬件设备的开发可以不再依赖嵌入式软件技术栈,调用简洁的API即可操控硬件行为。支持一键热更新推送应用代码到硬件,获取极致的开发体验。开发者可以参考如下教程开始AliOS Things轻应用的开发:
使用Python进行嵌入式应用开发
视频参见:Python轻应用开发教程
文章参见:https://blog.csdn.net/HaaSTech/article/details/115179241
使用JavaScript进行嵌入式应用开发
视频参见:JavaScript轻应用开发教程
文章参见:https://blog.csdn.net/HaaSTech/article/details/110158362
AliOS Things 支持的HaaS开发板
目前AliOS Things 3.3支持的HaaS开发板如下:
音视频编码模块、电源管理模块、双模蓝牙5.0模块、三路模拟麦克风阵列以及六路数字麦克风阵列和丰富外设资源;
2.5MBSRAM、16MBPSRAM和16MBflash;
用于物联网控制网关、wifi远程扬声器和智能蓝牙音响等场景
兼容CortexM33指令集并支持浮点dsp功能,集成512KBsram和4MBpsram;
km0同样采用armv8架构,主频20MHz,兼容cortexM23指令集并集成64MKBsram和1KBretentionsram;
支持wifi802.11a/b/g/n 双频、蓝牙5.0和丰富的外设资源;
用于智能家居、智慧园区等场景
内置1200mAh锂电池、OLED屏幕和游戏键盘设计;
内嵌Z8IDA金融级国密芯片;
Tf 卡槽、USBtypeC接口(充电、烧录、调试等)
AliOS Things 开发工具
开发环境
alios-studio是AliOS Things配套的开发环境基于VSCode的插件。支持图形化应用开发、编译、调试、烧录等功能,使用方法可参考: 开发环境使用视频教程
构建工具
aos-tools是AliOS Things团队开发的命令行构建工具,支持组件管理、程序编译、烧录等功能。aos-tools是使用git来获取组件代码并维护代码版本。aos-tools的安装及常用命令的操作说明如下:
pip install -U aos-tools
aos command options
b. install、unisntall等命令必须在aos工作区[2]目录下使用
c. make、burn等命令必须在aos工作区的工程目录[3]下使用
options:执行命令的可选项
aos list
b. 显示服务器端所有组件信息
aos list -r
aos help
aos help command
aos help init
aos init
mkdir alios_iot
cd alios_iot
aos init
aos init manifest-lab -b branchname
branchname:可选项,仓库版本分之名称
_aos init git@gitlab.alibaba-inc.com:aliosiot/manifest.git -b v1.0.0
aos install component
aos install component -b branchname
branchname:版本分之名称
_aos install helloworlddemob. 下载v1.0.0版本的cli组件
aos install cli -b v1.0.0
aos show
aos make
aos make V=1
_cd solutions/helloworlddemo
aos make
aos make clean
aos burn
aos debug
aos create project
aos create project -b <board> -t <solution> -d <destdir> <solution_name>
-t
-d
-r
-B:可选项,指定远程manifest仓库的分支,默认为master; solution_name:必选项,指定工程名。
_aos create project -b haas100 -t helloworlddemo -d /home/johnny/myworkspace mysolution
注解: [1] aos命令是指aos-tools支持的命令。 [2] aos工作区是指已执行过aos init的文件夹路径。 [3] aos工作区工程目录是指aos工作区solution目录下的工程根目录,如solution/helloworld_demo。
配置文件
package.yaml是组件或工程的配置文件,配置内容包含源文件,头文件,宏定义,以及组件依赖关系描述等等,替代了传统的makefile文件。
yaml语法说明
https://www.ruanyifeng.com/blog/2016/07/yaml.html
https://yaml.org/spec/1.2/spec.html
yaml格式校验工具
https://www.bejson.com/validators/yaml_editor/
构建配置字段说明
https://haas.iot.aliyun.com/aliosthings/packageyaml_user_manual.html
package.yaml示例
a. 组件名称
b. 依赖信息****
c. 编译链接信息
d. 宏配置信息
分析工具
SmartTrace V1.4
SmartTrace是AliOS Things自研的智能调试分析工具:支持查看串口日志、coredump死核分析、实时查看内存变量、在运行时设 置内存变量、通过uart、telnet等方式连接设备、本地日志离线分析。工具下载和使用方法可参见: https://alios-things-public.oss-cn-hangzhou.aliyuncs.com/SmartTrace_v1.4.zip, https://haas.iot.aliyun.com/aliosthings/smarttrace.html。
SystemView AliOS Things现支持业内常用的性能分析工具SystemView,工具说明和使用方法可参见: https://haas.iot.aliyun.com/aliosthings/trace.html, https://blog.csdn.net/HaaSTech/article/details/117779881。
AliOS Things 说明文档
内容提纲
为方便开发者能够迅速的定位到目标内容,我们对AliOS Things操作系统内核、组件、案例、API以及配套开发工具的所有相关文档进行了梳理分层,目录层次包括:
AliOS Things 概述
提供AliOS Things 操作系统框架、版本说明、文档入口、支持硬件、开发者交流通道等信息。
快速开始
为用户提供基于HaaS100或HaaS EDU k1等硬件,快速搭建开发环境、下载源码、运行简单示例工程或设备连接阿里云示例工程的方法。
开发工具
介绍AliOS Things操作系统配套的开发环境aos-studio、构建工具aos-tools以及构建配置package.yaml的使用方法。
内核编程
从AliOS Things操作系统内核实现原理出发,提供任务、互斥量、信号量等功能的使用示例,帮助开发者为其应用编程选择合适的内核能力以及正确使用API。
组件介绍
组件是AliOS Things操作系统为物联网应用开发提供的上层能力。该板块列出了所有开源组件的使用说明,帮助用户快速的了解组件的用途和使用方法。
案例开发
案例是AliOS Things操作系统根据典型的物联网应用场景为开发者打造的示例工程。该板块列出了每个案例所需的软硬件条件和使用说明,方便开发者在此基础上快速的打造属于自己的物联网应用。
开发者贡献
为开发者贡献文档、贡献代码提供操作指南。
API用户手册
对内核和组件常用API的提供说明。
访问入口
AliOS Things 开发者生态
开发者贡献
贡献代码
贡献文档
贡献HaaS积木
开发者支持
HaaS官网:https://haas.iot.aliyun.com/
HaaS技术社区:https://blog.csdn.net/HaaSTech
开发者钉钉群和微信公众号见下图,开发者钉钉群每天都有技术支持同学值班。