本帖最后由 Shentalon 于 2020-6-23 14:57 编辑
[RTOS]+RT-Thread的AIOT实战(一)--K210上跑RTT
AIOT就是AI+IOT,熟悉的例子是安检口的人脸识别装置,通过部署在本地的网络模型,获取人脸的特征,再将人脸的特征信息,上传至云服务器。云端再下达相应的指令,由本地设备来执行相应的操作。再比如我们熟悉的天猫精灵和小爱同学,也是通过AIOT技术使得边缘端设备有语音唤醒和语音交互的能力。这样的场景会在我们的日常生活中越来越多。不过,像对于语音和视频这种非结构信息的解释,常见的算法一般不能够很好地解决,深度学习到目前被认为是一种及有效的处理非结构数据的方法。在嵌入式设备上跑深度模型是一种极其有趣的想法,不过目前来看,支持模型跑起来的硬件资源要求还是很高的。这次比赛,我将利用自己的搭载K210的板子,进行一次AIOT技术的尝试和分享,这次先来谈谈RT-Thread如何移植到K210芯片的。
我本次的比赛没有选择官方提供的板子,因为手里正好有一块Maixduino板子,搭载了K210芯片。K210 包含 RISC-V 64 位双核 CPU,每个核心内置独立 FPU。 K210 的核心功能是机器视觉与听觉,除了常见的资源外,其包含用于计算卷积人工神经网络的 KPU 与用于处理麦克风阵列输入的 APU,分别用于机器视觉和机器听觉。同时 K210 具备快速傅里叶变换加速器,可以进行高性能复数 FFT 计算。因此对于大多数机器学习算法,K210 具备高性能处理能力。
在RT-Thread提供的官方bsp下虽然有K210,但是实际的使用过程真的是问题频出,我希望通过这一帖给入门此芯片的玩家一些提示。
首先是编译工具链的选择问题,如果是想将RTT移植到K210上,建议使用我提供的这个编译工具链,否则会报软浮点和硬浮点不兼容的问题(而且要选择8.3版本的,8.20版本也会报错,会有函数冲突的问题)。
同时,在编译前要将此bsp文件夹下文件rtconfig.py进行修改配置
但远没有万事大吉,此时编译阶段虽然顺利通过,但链接过程可能还会提示缺少相关文件的问题, 还要使用menuconfig的命令,在配置菜单中将K210的SDK修改为最新的版本。
此时的编译和链接阶段终于可以走通啦,再使用KFLASH
将编译的文件通过KFLASH进行烧录,终于出现了我期待已久的RTT界面啦!
|