uDevice Center - IoT在线开发板/设备平台

简介: IoT开发的一大痛点在于:硬件获取与setup路径太长;开发工具难以支持多设备联合开发。我们用uDevice Center把开发板/设备都搬到了线上,让用户可以不用买硬件接线,在线就能做IoT开发调试了。同时,uDevice Center也支持信息丰富的多设备联合开发。

背景

IoT的学习与开发是还是比较困难的。对于初学者来说,上手之路就很长:从某宝选购开发板-->等快递-->收到板子-->搞清楚怎么连线-->找个hub把一堆东西接到电脑-->安装开发软件熟悉开发环境。做完这么多事,才能写上第一行代码。选板子接线都是需要一定的硬件专业知识的,这会让很多没有基础的同学直接就放弃了。

background.png

同时,对于嵌入式老鸟来说,IoT的开发也引入了新的困难:以前做设备开发一台电脑一个板子就搞定了;现在做IoT智能应用开发,需要要多台设备联网通信,就不太容易开发了。比如一套智能家居的房子几十个设备,放地上贴墙上挂天花板上都有,怎么开发呢?现有开发工具大多都不支持多设备同时开发。用一台电脑开发的话,电脑接成八爪鱼都不够,还需要开十几个界面切来切去,开发效率低下。 多用几台电脑开发的话,coding的时间都用来跑来跑去了,不能专注于解决问题。

IoT开发的痛点在:硬件获取与setup路径太长;开发工具不支持多设备同时开发,也不支持方便可视化的网络应用开发。我们每天都在suffer着这样的问题,遂而开发了uDevice Center - 弹性在线的多设备开发平台 - 来让IoT开发更简单

uDevcie Center介绍

uDevice Center主要采用如下的方式解决了上述问题:

  1. 将IoT设备搬到线上,做成IoT的ECS:用户不必要买板子接线,装个软件就能做IoT的开发了;
  2. 提供信息丰富的多设备开发能力:多设备复杂网络开发,made easy!

线上的IoT开发平台 - IoT的ECS

uDevice Center把标准的IoT开发板/设备都搬到了线上,让用户可以像使用ECS服务器一样使用IoT开发板。用户只用装好软件,就可以用在线的开发板/设备开始编程调试了,再也不用买板子连线了。开发路径的简化,可以让程序员们把时间精力都集中在业务逻辑的开发调试上,加速IoT学习与开发的历程。弹性在线平台的优点包括:

  • 无需购买连接硬件,上手快
  • 无时间地域限制,哪都能做开发
  • 丰富可选的开发板型号,用哪种都有
  • 弹性增减的开发板数量,用几个都行

此外,对于特定应用场景(如智能家具)的开发,弹性在线的平台可以帮助开发者利用公共资源(如全屋智能实验室)很快速地开始应用的开发验证,降低开发门槛,节省成本。

architecture.png

uDevice Center的系统架构如上图所示,主要由:IoT硬件设备、uDevice Center Infrastructure和用户端AliOS Studio软件三部分构成。系统中的IoT硬件设备是由阿里及其合作伙伴提供的模组/开发板/智能设备/实验室等。uDevice Center Infrastructure平台用标准化的方式屏蔽了不同硬件在固件烧录/调试/传感/控制等方面的接口差异,以统一的方式将这些IoT硬件资源虚拟化,再通过网络提供给广大的开发者使用。用户端AliOS Studio软件为用户提供了友好地使用uDevice Center Infrastructure服务的界面。

此外,uDevice Center是一个开放的平台,可以为想要接入的厂商提供配套软件,帮助厂商将设备(芯片/模组等)快速接入到平台,并推广给开发者使用。

多设备联合开发

uDevice Center与AliOS Studio IDE深度结合,为IoT开发者提供信息丰富的多设备联合开发能力。uDevice Center的使用界面如下图所示:中间窗口显示了连接在线的设备,其中每一个圆点就是一个实际的IoT设备;点'07d'c'上的悬浮窗实时显示了这个设备的状态信息;点与点之间的连线展示了mesh网络连接的情况;右边的窗口是设备‘1d1c'的Shell交互界面。
image.png
uDevice Center为用户提供的多设备联合开发功能包括:

  • 多设备的代码开发/编译/固件烧录
  • 多设备shell命令行交互调试与设备控制
  • 实时显示设备的各种状态信息
  • 图形化显示设备的(uMesh)连接组网情况

这种信息丰富的多设备联合开发调试,可以加快物联网智能应用的开发与调试。

软件安装步骤

接下来我们将讲解使用uDevice Center进行开发需要安装的软件:

  1. 下载Visual Studio Code并安装
  2. 安装alios-studio插件:启动Visual Studio Code,并参考下图步骤安装
    image.png
  3. 下载安装AliOS Things代码及依赖工具Linux OSX Windows (Optional)

uDevice Center使用

uDevice Center平台上的设备有两种分配使用模式:

  1. 随机分配:适合于初学者上手开发与尝试,平台随机分配用户指定型号的一块空闲开发板给用户试用;
  2. 固定分配:适合于需要多台设备进行密集开发的用户,平台使用Access Key将某些开发板/设备固定分配给用户使用。需要固定分配开发板的用户,请邮件联系AliOS Things团队 (Email: aliosthings@service.aliyun.com ) 获取Access Key 。邮件请包含如下信息:

    • 个人信息:姓名 联系方式 公司名(optional)
    • 板子资源需求:型号、数量、使用时长等,并简要陈诉用途

目前支持的开发板型号包括:

    乐鑫-esp32-devkitc (Wifi+Bluetooth)
    乐鑫-esp8266(wifi)
    庆科-MK3060 (Wifi)
    庆科-EML3047 (LoRA)
    STM-stm32l432kc-nucleo

随机分配设备使用

uDevice Center可以随机分配平台上空闲的开发板给用户使用。这种使用方式适合如初学者快速上手开发,也能方便开发者选型尝试不同的开发板(做芯片模组选型)。随机分配使用方式有一定限制,包括:

  • 一台机器同一时间只能使用(任意型号的)一台设备
  • 每次分配的开发板不固定,不一定适用于持续密集开发的场景

随机分配设备进行开发的典型流程为:

使用alios studio编辑代码编译产生.bin --> 连接uDevice Center并随机分配设备-->用uDevice Center开发调试

下面以庆科MK3060开发板为例,一步一步介绍从uDevice Center平台随机分配一块开发板,进行AliOS Things的helloworld应用开发调试过程:

Step 1. 使用alios studio打开AliOS-Things目录,编辑helloworld代码,并编译产生固件

adhoc-open-alios

adhoc-select-app

adhoc-select-board

adhoc-edit-build

Step 2. 启动uDevice Center,随机分配一块mk3060开发板

adhoc-open-udc

adhoc-accesskey

adhoc-specify-model

adhoc-udc-intro

Step3. 烧录固件

adhoc-start-program

adhoc-program-progress

Step4. Shell交互调试

adhoc-shell-interaction

固定分配设备使用

随机分配设备方式能让开发者快速上手尝试AliOS Things的开发,但是由于使用随机分配的公共资源,也会有一定限制。对于需要规模密集开发者开发者,我们还提供了使用AccessKey固定分配设备进行开发的方式。固定设备开发方式具有设备固定,可以同时使用多个设备进行信息丰富的网络交互开发的特点。下面我们基于mk3060和esp32开发板,介绍固定设备开发的alink应用的流程:

Step 1.使用alios studio打开AliOS-Things目录,编辑alinkapp代码,并编译产生固件

image.png
fixed-select-app

fixed-select-board

fixed-edit-build

Step 2. 启动uDevice Center,熟悉uDevice Center

image.png

input-acceeskey.png

image.png

Step 3. 烧录固件
鼠标右键点击某个空闲MXCHIP3060开发板,选择“Program Last Build”将刚才编译固件烧录到开发板。Note:请注意核对板子型号,固件烧录到型号不对的板子将无法启动
image.png

Step 4. Shell交互调试

鼠标右键点击step 4烧录的MXCHIP3060开发板,选择“Shell”与开发板进行命令行交互

image.png

待完善功能点

  1. 支持GDB代码级调试
  2. 支持更丰富的设备状态显示
  3. 丰富硬件的控制功能

总结

uDevice Center是在线的IoT多设备开发调试平台,能方便开发者快速高效地进行IoT云端一体应用的开发、调试和测试等。通过硬件在线与虚拟化,既能让更多的开发新手快速上手学习IoT开发,又能帮助资深开发者快速高效地开发调试IoT应用。

钉钉群

使用交流uDevice Center可加入以下钉钉群
image.png

目录
相关文章
|
7月前
|
网络协议 物联网 5G
K3S 系列文章 -5G IoT 网关设备 POD 访问报错 DNS 'i/o timeout' 分析与解决
K3S 系列文章 -5G IoT 网关设备 POD 访问报错 DNS 'i/o timeout' 分析与解决
|
3月前
|
XML 网络协议 物联网
基于surging的木舟IOT平台如何添加网络组件
【8月更文挑战第30天】在基于 Surging 的木舟 IOT 平台中添加网络组件需经历八个步骤:首先理解 Surging 及平台架构;其次明确组件需求,选择合适技术库;接着创建项目并配置;然后设计实现网络功能;再将组件集成至平台;接着进行详尽测试;最后根据反馈持续优化与维护。具体实施时应参照最新文档调整。
64 10
|
2月前
|
人工智能 安全 物联网
|
4月前
|
存储 监控 安全
使用IoT设备优化家庭生活的技术探索
【8月更文挑战第4天】IoT设备以其智能化、便捷性和高效性,正逐步成为现代家庭不可或缺的一部分。从智能照明到智能安防,从智能恒温器到智能厨房,再到智能语音助手,这些设备不仅优化了我们的家庭生活,还提升了我们的生活质量和幸福感。随着技术的不断进步和应用场景的不断拓展,我们有理由相信,未来的智能家居将会更加智能、更加人性化,为我们的生活带来更多惊喜和便利。
|
3月前
|
机器学习/深度学习 人工智能 算法
物联网(IoT)就像是一个大型派对,无数的设备都在欢快地交流着信息
【9月更文挑战第4天】在这个万物互联的时代,物联网(IoT)犹如一场盛大的派对,各类设备欢聚一堂。然而,如何让这些设备互相理解并协同工作呢?这就需要机器学习与人工智能的助力。例如,智能空调通过学习你的使用习惯来调节温度,使你更加舒适;智能安防系统则能识别异常行为并及时报警,保障家庭安全。此外,智能农业、交通等领域也因机器学习和人工智能的应用变得更加高效。下面通过一个简单的温度预测代码示例,展示机器学习在物联网中的实际应用,让我们一起感受其强大潜力。
64 0
|
4月前
|
存储 SQL JSON
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
【Azure IoT Hub】从设备端如何向IOT发送海量数据,可以使用从设备到IoT连接的直接传输吗?如何把IoT Hub中的数据存储到Azure Storage中?
|
6月前
|
传感器 安全 物联网
物联网(IoT)设备的硬件选型与集成技术博文
【6月更文挑战第28天】物联网设备硬件选型与集成聚焦关键要素:功能匹配、性能稳定性、兼容扩展及成本效益。嵌入式系统、通信协议、数据处理和安全性技术确保集成效果,支撑高效、智能的IoT系统,驱动家居、城市与工业自动化变革。
|
7月前
|
安全 物联网 测试技术
构建未来:Android与IoT设备的无缝交互深入探索软件自动化测试的未来趋势
【5月更文挑战第30天】在物联网(IoT)技术快速发展的当下,Android系统因其开放性和广泛的用户基础成为了连接智能设备的首选平台。本文将探讨如何通过现代Android开发技术实现智能手机与IoT设备的高效、稳定连接,并分析其中的挑战和解决方案。我们将深入挖掘Android系统的底层通信机制,提出创新的交互模式,并通过实例演示如何在Android应用中集成IoT控制功能,旨在为开发者提供一套可行的指导方案,促进IoT生态系统的进一步发展。
|
7月前
|
安全 物联网 Android开发
构建未来:Android与IoT设备的无缝集成
【5月更文挑战第10天】 在数字化时代的浪潮中,智能设备与互联网的结合日益紧密。本文深入探讨了Android系统如何通过其开放性和灵活性成为连接物联网(IoT)设备的关键枢纽。我们将分析Android平台与IoT设备集成的技术途径,探索它们如何共同塑造智能家居、可穿戴技术以及工业自动化等领域的未来。文中不仅阐述了当前的发展状况,还展望了未来的发展趋势,特别是安全性和隐私保护方面的挑战及对策。
145 1
|
7月前
|
消息中间件 弹性计算 物联网
【阿里云弹性计算】阿里云ECS在IoT领域的应用:支撑大规模设备连接与数据处理
【5月更文挑战第26天】阿里云ECS是弹性计算服务,支持IoT设备的连接与数据处理。通过MQTT协议实现设备快速接入,配合消息队列处理异构实时数据。ECS可用于部署数据处理工具、应用服务,如智能家居控制系统,通过弹性伸缩适应负载变化。结合阿里云其他服务,ECS为IoT提供完整解决方案,助力企业数字化转型。
97 0