模块化机器人仪表盘
A Modular Robot Dashboard

原始链接: https://github.com/transitiverobotics/transact

## TransAct:构建您自己的机器人舰队管理仪表盘 TransAct 由 Transitive Robotics 开发,是一个开源仪表盘,旨在赋能机器人公司构建定制的舰队管理系统,而无需进行代价高昂的“自建或购买”决策。它既是一个演示,也是一个集成指南和开发者的起点。 主要功能包括**远程遥控**(低延迟视频控制)、**终端**(用于 shell 访问)、**ROS 工具**(用于数据可视化)、**配置管理**和**健康监控**。 用户可以快速在本地部署 TransAct 并将其连接到他们的 Transitive 帐户(在 [https://portal.transitiverobotics.com](https://portal.transitiverobotics.com) 创建)。然后,仪表盘将显示和管理已连接的机器人及其功能。 TransAct 使用 React、Tailwind CSS 和 ShadCn UI 组件库构建,提供可定制且视觉上吸引人的界面。鼓励开发者 fork 仓库,使用他们的品牌进行个性化定制,并利用 Transitive Portal 中的“Embed”功能,为预配置的代码片段量身定制嵌入的功能,以满足他们的特定需求。可通过 Slack 获取支持。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 一个模块化机器人仪表盘 (github.com/transitiverobotics) 4 点赞 by chfritz 1 小时前 | 隐藏 | 过去 | 收藏 | 讨论 帮助 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:
相关文章

原文

An open-source robot fleet management dashboard

by Transitive Robotics

Screenshot from 2025-01-22 16-56-03

Screenshot from 2025-01-22 16-55-38

TransAct is an example of the kinds of robot fleet management dashboards/cloud portals/mission control centers/robot operating centers you can build using Transitive. It serves three purposes:

  1. demonstrate how Transitive can be used to build web-based robot management systems,

  2. demonstrate how to integrate Transitive Capabilities into your own web dashboards, and

  3. serve as a reference implementation that we invite you to fork and build on if you are just starting out building your own system.

We believe that robotics companies face a make-vs-buy dilemma and our mission is to solve this by offering a middle-ground: making it easy for them to build their own fleet management system that perfectly meets their needs.

In the standard configuration it embeds several capabilities:

  • Remote Teleop, to control your robot with low-latency video from anywhere in the world,
  • Terminal, for web-based shell access,
  • ROS Tool, for subscribing to ROS topics from the web, used to show robot pose, battery and charging status in our example, and make service calls,
  • Configuration Management, for editing config files on your fleet hierarchically (with fleet defaults and robot specific overwrites), and
  • Health Monitoring, for monitoring device diagnostics and aggregated fleet diagnostics.

We encourage you to fork this repository and use it as a starting point to build your own dashboard.

After forking, clone transAct locally (replace SUPERBOTS with your github org)

git clone [email protected]:SUPERBOTS/transact.git

Or you can just clone from this repo directly if you're just taking a look

git clone [email protected]:transitiverobotics/transact.git

Your local transAct deployment will interface with a Transitive deployment to find robots and capabilities.

  1. Go to https://portal.transitiverobotics.com and create an account.
  2. In your local transAct clone, copy sample.env file to .env and edit it:
  3. Run npm install to install all dependencies.
  1. Run npm run dev to start transAct locally in dev mode.
  2. Navigate to http://localhost:3000/.
  3. Enjoy!

At first you won't see any robots on your dashboard. This is because you haven't yet added any robots to your Transitive account on transitiverobotics.com. We'll do this next.

Follow the instructions to add robots to your Transitive account. If you just want to see it working quickly you can use our example Docker image. Go to fleet page, down to the end of the Add devices section and you'll find a command you can grab to run a local Docker robot.

Finally add some capabilities to the devices you've added from the fleet page

Once these robots show up in the Transitive Portal, they will also appear in your local transAct deployment.

Edit src/client/config/config.ts to set the Transitive capabilities you have installed on your robots (e.g., webrtc-video) and the props you want to use for them (see the Embed in the Transitive Portal after you've configured a capability).

The code is yours! A good first step is to find and replace "SuperBots" in the entire project with the name of your own company and change the logo. After that you'll probably want to go through the sections in src/client/sections and edit the properties of the embedded Transitive capabilities to fit your needs, e.g., choose the right video sources (cameras, ROS topics, etc.) for webrtc-video and remote-teleop. The easiest way to do this is to go to your Transitive Portal page, open the capability there, configure it, and then get the pre-configured React code from the "Embed" modal.

This project uses ShadCn project for UI components and Tailwind CSS for styling. You have a lot of beautiful components to choose from in the ShadCn collection, you can find instructions on how to use them there, but as an example, if you need a Slider component in your app you just need to:

npx shadcn@latest add slider

Once it's installed (it just gets copied in the client/components/ui folder) you can use it like this:

import { Slider } from "@/components/ui/slider"
...
<div>
  <Label  htmlFor="password"  className="text-xl"> Robot happiness </Label>
  <Slider id="robot-happiness" defaultValue={[100]} max={100} step={1} />
</div>

Note that the className="text-xl" is from tailwindcss.

Questions? Join our Slack and we'll try to help. For suggestions, please open issues or pull-requests.


SuperBots Logo: Robot icons created by Freepik - Flaticon

联系我们 contact @ memedata.com