使用 TypeScript 和 Viam 在 ROS 上构建机器人 Web 应用程序 | Viam

Viam 利用软件工程原理简化机器人的创建和维护。在这篇文章中,我们展示了如何在仪表板中轻松可视化机器人数据。

来源:Viam 博客

今年早些时候,我们在 Viam 推出了 TypeScript SDK。我非常喜欢使用 React,因此我很高兴尝试创建一个基本的 Web 应用程序,该应用程序显示来自与真实机器人的实时连接的数据,这是我最熟悉的 Web 编程堆栈。

TypeScript SDK

具体来说,我想尝试扩展我们的 React / TypeScript 远程操作 repo 演示,以集成基于 Tailwind CSS 和 Tremor 构建的第三方数据可视化库,将用户界面专门设计为仪表板。

React / TypeScript 远程操作 repo Tremor

下面,我将分享我构建的内容、使用的开发堆栈以及实现核心部分的详细信息。所有代码都可以在 GitHub 上找到:@viam-labs/ts-dash。

@viam-labs/ts-dash

项目概述

我的项目包括两个主要任务:获取我们感兴趣的数据,然后以有效的格式显示该数据。

下面,我将概述我如何:

    通过连接到机器人检索应用程序的数据 创建相关组件的客户端 查询这些客户端的状态或传感器读数 可视化返回的数据
  • 通过连接到机器人检索应用程序的数据
  • 创建相关组件的客户端
  • 查询这些客户端的状态或传感器读数
  • 可视化返回的数据
  • 项目设置

    该项目使用以下工具:

    我们不使用任何后端框架(例如 Express),因为目前我计划只在我自己的计算机上本地运行该项目。

    为了安装上述库和框架,我做了以下工作:

    机器人连接

    在创建项目脚手架并安装所需的库后,我们需要实现一种连接机器人并查询数据的方法。为此,我们创建了两个文件:client.ts 和 state.ts。

    client.ts state.ts

    client.ts 文件直接使用 Viam TypeScript SDK 与我们的机器人建立连接,并充当机器人组件和传感器客户端的工厂。