阿里云IoT存储及转发K210芯片数据的设计与实现
2022-04-29朱鹏
朱鹏
关键词:K210;物联网;阿里云
1引言
我国正处于物联网高速发展的时期,物联网技术应用到社会、生活的各个方面,对人们的影响也越来越大。物联网技术的应用离不开软硬件技术的发展和进步,嵌入式硬件设备可以对实际物理场景进行数据采集,软件产品将嵌入式硬件设备采集的数据对物理场景进行虚拟模拟并向用户展示,有利于用户对实际场景的了解和掌控,真正将信息技术应用到社会生活中。
2软硬件设备
2.1MAIX Dock K210开发板
本平台基于开源MAIX Dock K210开发板。MAIX Dock开发板是SiPEED公司MAIX产品线的一员,是一款基于嘉楠堪智科技的边缘智能计算芯片K210(RISC-V架构64位双核)设计的AIOT开发板。该开发板使用“模块+底板”方式设计,具有简易、小巧的特征,板载Type-C接口和USB-UART电路,用户可以直接通过USB Type-C线连接计算机进行开发,配置128 Mbit Flash,LCD,DVP,Micro SD卡等接口,并把所有10引出,方便用户扩展。
2.2MaixPy软件开发平台
MaixPy是一个为了简化AIOT应用编程而诞生的开发套件,让开发者可以使用简单的Micropython语法开发平台,其内置功能库丰富,并基于性能强大且价格低廉的带硬件A!加速的双核RISC-V芯片,可以快速进行AIOT应用验证和开发。MaixPy不仅支持常规MCU功能,同日寸更擅长机器视觉、机器听觉,如人脸识别、物体识别、麦克风阵列应用等。
2.3MQTT物联网传输协议
MQTT物联网传输协议是为物联网场景设计的基于TCP的pub/sub协议,是基于发布/订阅模式的物联网通信协议,具有简单易用、支持QoS、报文小、轻量、节省带宽、不关心数据具体格式、可以日寸刻感知设备是否在线等特点。图1为MQTT协议图。
3阿里云物联网控制平台
阿里云物联网控制平台是一个集成了设备管理、数据安全通信和消息订阅等能力的一体化平台。其向下支持连接海量设备,采集设备数据上云;向上提供云端API,服务端可通过调用云端API将指令下发至设备端,实现远程控制。阿里云物聯网控制平台与设备、服务端、客户端的消息通信流程如图2所示。
4将终端获取的数据传输到阿里云平台
(1)使用MAIX Dock K210板载ESP8285连接Wi-Fi,部分代码如下:
阿里云物联网控制平台通过MQTT获取终端数据。图3为阿里云物联网控制平台界面。
5桌面端获取阿里云物联网控制平台中的数据
桌面程序使用Python来实现,通过MQTT来获取阿里云物联网控制平台的数据,部分代码如下:
6连接测试
在MaixPy IDE程序开发平台中编写Python物联网程序,获取终端数据,使用MAIX Dock K210人工智能开发板板载ESP8285来连接周围已联网的Wi-Fi设备,并将程序烧录到开发板中。在阿里云物联网控制平台配置虚拟设备,并配置数据转发功能,先进行虚拟设备在线调试,再真实连接底层的终端物联网设备。
应用端也采用Python语言进行编程,通过MQTT协议和阿里云物联网控制平台提供的对外API获取终端上传的数据,然后以图表的形式展示给用户。硬件连接测试如图4所示。
7结束语
本文将MAIX Dock K210人工智能开发板作为终端数据采集设备,并介绍了此开发板的特点,着重论述利用阿里云物联网控制平台实现数据传输和转发应用,同时提供终端和应用端的具体实现代码,总体上实现了预想的方案。但是,本文研究只针对传输终端采集的离散数据,并不能将终端采集的语音和视频等数据传输到阿里云物联网控制平台,进而转发给应用终端,后续将继续开展相关研究。