前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >探索Xiotman:物联网软件架构的创新之路

探索Xiotman:物联网软件架构的创新之路

作者头像
小点点
发布2023-10-16 19:39:32
1700
发布2023-10-16 19:39:32
举报
文章被收录于专栏:小点点小点点

探索Xiotman:物联网软件架构的创新之路

什么是物联网

🚀🚀众所周知,物联网是当今科技领域的一个热门话题,它指的是通过互联网将各种物理设备、传感器、终端等连接起来,实现信息的交换和通信。物联网的应用场景非常广泛,涉及智能家居、智能城市、智能医疗、智能工业等领域。然而,物联网终端应用的开发也面临着很多挑战,例如:

  • 🚀🚀应用的多样性:物联网终端需要支持不同的功能和场景,例如温湿度监测、人脸识别、语音控制等,这就要求开发者能够灵活地开发和切换不同的应用。
  • 🚀🚀组件的多样性:物联网终端需要使用不同的硬件和软件组件,例如传感器、显示器、摄像头、网络模块等,这就要求开发者能够方便地集成和解耦不同的组件。
  • 🚀🚀RTOS的多样性:物联网终端可能需要运行在不同的实时操作系统(RTOS)上,例如FreeRTOS、RT-Thread,ucos等,这就要求开发者能够兼容和适配不同的RTOS。
  • 🚀🚀MCU的多样性:物联网终端需要使用不同的微控制器(MCU)芯片,例如STM32、RA系列、ESP32等,这就要求开发者能够支持和移植不同的MCU。

什么是Xiotman

🚀🚀为了解决这些挑战,一套全新的物联网多应用框架Xiotman应运而生。Xiotman是一套致力于解决物联网终端应用多样化挑战的软件架构解决方案,它由 CSDN博客专家 架构师李肯在2023年RT-Thread全球技术峰会上首次公开发布,并在GitHub和Gitee上开源。


Xiotman的特点

🚀🚀Xiotman的主要特点如下:

  • 🚀🚀支持多应用开发:Xiotman提供了一个统一的应用接口和入口,开发者只需要编写自己的应用逻辑代码,并在配置文件中选择要编译和运行的应用即可。Xiotman还提供了一些常见的应用示例,例如智能房间、调试串口等,供开发者参考和学习。
  • 🚀🚀支持多组件解耦:Xiotman提供了一个组件管理机制,开发者可以将自己使用的硬件和软件组件封装成独立的模块,并在配置文件中选择要加载和使用的组件即可。
  • 🚀🚀支持多RTOS:Xiotman提供了一个RTOS适配层,开发者可以在配置文件中选择要运行在哪个RTOS上,并根据不同RTOS提供的API进行编程。目前Xiotman已经支持了RT-Thread V5.0.X版本,并计划支持更多版本和其他RTOS。
  • 🚀🚀支持多MCU:Xiotman提供了一个MCU适配层,开发者可以在配置文件中选择要使用哪个MCU芯片,并根据不同MCU提供的驱动和外设进行编程。目前Xiotman已经支持了qemu-veXpress-a9(仿真)、RA2E1、RA2L1、RA4M2、RA6M4等芯片,并计划支持更多芯片。

Xiotman的架构

🚀🚀Xiotman的架构如下图所示:

image-20230602232120443
image-20230602232120443

Xiotman的使用

🚀🚀Xiotman的使用方法也非常简单,接下来我们就来详细介绍一下:


安装env工具

🚀🚀这个地方我们需要注意,我们最好使用官方最新的版本,目前最新是1.3.5版本,笔者在测试的时候使用的是1.1.0版本的,有许多❌错误❌,所以还是希望大家用最新版的。

🚀🚀下载连接如下所示:env下载链接

在这里插入图片描述
在这里插入图片描述

获取源代码

🚀🚀这边我们还是建议获取Github上面的最新版,但是考虑到Github在国内访问不太友好,所以我们也在Gitee上开源了我们的代码,可以使用Git去获取,也可以直接点击下载ZIP再解压使用。


使用

🚀🚀首先将env注册到右键,当然,直接手动进入目录也可以,注册到右键与使用env的教程如下:Env 用户手册 ,然后进入到 Xiotman/build 目录,右键,进入env(进入env之后通过命令行进去也是可以的):

menuconfig 常用快捷键
menuconfig 常用快捷键
在这里插入图片描述
在这里插入图片描述

🚀🚀执行 scons --list_app 查看当前选择编译的应用、MCU、RTOS版本等信息;

在这里插入图片描述
在这里插入图片描述

🚀🚀执行 scons --menuconfig=build选择对应的应用、MCU及RTOS和RTOS版本,默认的情况下,选择的是 app_uart_debug应用、qemu-vexpress-a9、rt-thread-v5.0.x版本;

在这里插入图片描述
在这里插入图片描述

🚀🚀执行 scons 开始编译当前应用,输出如下所示就说明编译成功了,在 out/app_uart_debug(qemu-vexpress-a9)/ 目录可以看到对应的固件文件输出;

在这里插入图片描述
在这里插入图片描述

🚀🚀执行编译输出的固件;进入到 xiotman/out/app_uart_debug(qemu-vexpress-a9)/ 目录,执行 ./qemu-nographic.bat 即可运行;

image-20230603085818951
image-20230603085818951

🚀🚀当然了,如果你想要清除当前选择的应用的中间编译输出,执行 scons --clean 就好了。

在这里插入图片描述
在这里插入图片描述

🚀🚀同时xiotman还保留了原生的 RTOS 的配置,执行 scons --menuconfig=rtos 即可进入配置:

在这里插入图片描述
在这里插入图片描述

🚀🚀我手上刚好有一块RA2E1的开发板,于是验证了一下,发现可以正常运行,结果如下所示。教程就和上述一样,只不过换了一个芯片,除了RA2E1之外,其他的我都测试过,没有什么大问题。

在这里插入图片描述
在这里插入图片描述

其他教程

🚀🚀Xiotman还提供了一些演示视频,展示了它在不同的硬件平台和应用场景下的运行效果,可以在B站搜索【Xiotman 基础功能演示】观看。


Xiotman的开源地址

🚀🚀Xiotman是一个完全开源的项目,遵循 Apache License 2.0 开源许可协议,可以免费在商业产品中使用,并且不需要公开私有代码,没有潜在商业风险。Xiotman的代码仓库地址如下:

  • GitHub: https://github.com/recan-li/xiotman
  • Gitee: https://gitee.com/recan-li/xiotman

总结

🚀🚀总之,Xiotman是一个全新的物联网多应用框架,它为物联网终端应用的开发提供了一个灵活、方便、兼容、可扩展的软件架构解决方案。同时也希望大家能给Xiotman提出宝贵的建议与看法,感谢大家。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 探索Xiotman:物联网软件架构的创新之路
    • 什么是物联网
      • 什么是Xiotman
        • Xiotman的特点
        • Xiotman的架构
        • Xiotman的使用
        • Xiotman的开源地址
      • 总结
      相关产品与服务
      物联网
      腾讯连连是腾讯云物联网全新商业品牌,它涵盖一站式物联网平台 IoT Explorer,连连官方微信小程序和配套的小程序 SDK、插件和开源 App,并整合腾讯云内优势产品能力,如大数据、音视频、AI等。同时,它打通腾讯系 C 端内容资源,如QQ音乐、微信支付、微保、微众银行、医疗健康等生态应用入口。提供覆盖“云-管-边-端”的物联网基础设施,面向“消费物联”和 “产业物联”两大赛道提供全方位的物联网产品和解决方案,助力企业高效实现数字化转型。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档