Skip to content

Commit 6f241aa

Browse files
authored
Merge branch 'docusaurus-version' into dev-en-s2100-water-leak
2 parents 749536e + 562297c commit 6f241aa

File tree

11 files changed

+1081
-10
lines changed

11 files changed

+1081
-10
lines changed

sites/en/static/js/language-switcher.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// 语言切换器 - 生产环境优化版本
2-
// 生成时间: 2026-03-09 14:04:02 (北京时间)
3-
// 多语言页面: 2202
2+
// 生成时间: 2026-03-10 10:07:43 (北京时间)
3+
// 多语言页面: 2203
44

55
(function() {
66
'use strict';
@@ -910,6 +910,12 @@
910910
"es",
911911
"ja"
912912
],
913+
"/ai_robotics_control_soarm_by_openclaw_on_jetson_thor": [
914+
"cn",
915+
"en",
916+
"es",
917+
"ja"
918+
],
913919
"/fine_tune_gr00t_n1.5_for_lerobot_so_arm_and_deploy_on_jetson_thor_bk": [
914920
"cn",
915921
"en",
Lines changed: 346 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,346 @@
1+
---
2+
description: Este wiki muestra cómo controlar SO-Arm en Jetson Thor con OpenClaw y LeRobot.
3+
title: Controlar SO-Arm con OpenClaw en Jetson Thor
4+
image: https://files.seeedstudio.com/wiki/reComputer-Jetson/openclaw/soarm_claw.webp
5+
slug: /ai_robotics_control_soarm_by_openclaw_on_jetson_thor
6+
sku: 100060965 | 100046482
7+
last_update:
8+
date: 03/09/2026
9+
author: youjiang
10+
---
11+
12+
# Controlar SO-Arm con OpenClaw en Jetson Thor
13+
14+
## Introducción
15+
16+
Este wiki explica cómo combinar OpenClaw y LeRobot en Jetson Thor para controlar un SO-Arm con un agente de IA local.
17+
18+
**NVIDIA Jetson AGX Thor** es una plataforma de IA de borde de alto rendimiento diseñada para robótica y cargas de trabajo de IA física, que proporciona una potente computación en el dispositivo para percepción, planificación y control.
19+
20+
**SO-Arm** es una plataforma de brazo robótico de código abierto y bajo costo (SO-ARM100/SO-ARM101) que se utiliza ampliamente para experimentos de IA encarnada, teleoperación y desarrollo de tareas de manipulación.
21+
22+
**OpenClaw** es un framework de agente de IA que puede orquestar herramientas y modelos locales. En este proyecto, OpenClaw se utiliza como la interfaz de control de alto nivel, mientras que LeRobot proporciona las utilidades de comunicación de motor de bajo nivel y calibración para SO-Arm.
23+
24+
<div align="center">
25+
<img width={900}
26+
src="https://files.seeedstudio.com/wiki/reComputer-Jetson/openclaw/soarm_claw.png" />
27+
</div>
28+
29+
:::note
30+
En esta guía, OpenClaw se encarga de la planificación del agente y la orquestación de tareas, mientras que la ejecución del movimiento de SO-Arm es manejada por LeRobot.
31+
:::
32+
33+
## Tabla de contenidos
34+
35+
1. [Preparación de hardware](#preparación-de-hardware)
36+
2. [Configuración del sistema en Jetson Thor](#configuración-del-sistema-en-jetson-thor)
37+
3. [Instalar Ollama y ejecutar un LLM local](#instalar-ollama-y-ejecutar-un-llm-local)
38+
4. [Instalar OpenClaw en Jetson Thor](#instalar-openclaw-en-jetson-thor)
39+
5. [Conectar y calibrar SO-Arm](#conectar-y-calibrar-so-arm)
40+
6. [Ejecutar demostración de control](#ejecutar-demostración-de-control)
41+
7. [Referencias](#referencias)
42+
43+
## Preparación de hardware
44+
45+
### Lista de dispositivos
46+
47+
- 1x Kit de desarrollo NVIDIA® Jetson AGX Thor™
48+
- 1x SO-ARM101 Brazo de IA de bajo costo
49+
50+
<div class="table-center">
51+
<table style={{ textAlign: 'center' }}>
52+
<tr>
53+
<th> Kit de desarrollo NVIDIA® Jetson AGX Thor™ </th>
54+
<th> SO-ARM101 Brazo de IA de bajo costo </th>
55+
</tr>
56+
<tr>
57+
<td>
58+
<div style={{textAlign:'center'}}>
59+
<img src="https://media-cdn.seeedstudio.com/media/catalog/product/cache/bb49d3ec4ee05b6f018e93f896b8a25d/i/m/image-kit-3.png" style={{width:400, height:'auto'}}/>
60+
</div>
61+
</td>
62+
<td>
63+
<div style={{textAlign:'center'}}>
64+
<img src="https://media-cdn.seeedstudio.com/media/catalog/product/cache/bb49d3ec4ee05b6f018e93f896b8a25d/1/-/1-100046482-so-arm-101-assembled-kit-pro.jpg" style={{width:400, height:'auto'}}/>
65+
</div>
66+
</td>
67+
</tr>
68+
<tr>
69+
<td>
70+
<div class="get_one_now_container" style={{textAlign: 'center'}}>
71+
<a class="get_one_now_item" href="https://www.seeedstudio.com/NVIDIA-Jetson-AGX-Thor-Developer-Kit-p-9965.html">
72+
<strong><span><font color={'FFFFFF'} size={"4"}> Consigue uno ahora 🖱️</font></span></strong>
73+
</a>
74+
</div>
75+
</td>
76+
<td>
77+
<div class="get_one_now_container" style={{textAlign: 'center'}}>
78+
<a class="get_one_now_item" href="https://www.seeedstudio.com/SO-ARM-101-Assembled-Kit-Pro-p-6691.html">
79+
<strong><span><font color={'FFFFFF'} size={"4"}> Consigue uno ahora 🖱️</font></span></strong>
80+
</a>
81+
</div>
82+
</td>
83+
</tr>
84+
</table>
85+
</div>
86+
87+
### Cableado y conexión
88+
89+
- Conecta la placa controladora de SO-Arm a Thor mediante USB.
90+
- Conecta el adaptador de alimentación de CC correspondiente a la placa controladora de SO-Arm.
91+
- Enciende Thor y luego enciende la placa controladora del brazo.
92+
93+
### Lista de verificación de encendido
94+
95+
- Thor arranca con normalidad y la red está disponible.
96+
- Los LED de la placa controladora de SO-Arm están encendidos.
97+
- El dispositivo serie aparece después de la conexión USB.
98+
99+
```bash
100+
ls /dev/ttyACM*
101+
```
102+
103+
Si se detecta un nodo serie en la salida del terminal, la conexión de hardware es correcta.
104+
105+
<div align="center">
106+
<img width={900}
107+
src="https://files.seeedstudio.com/wiki/reComputer-Jetson/openclaw/check_serial.png" />
108+
</div>
109+
110+
## Configuración del sistema en Jetson Thor
111+
112+
### Actualizar paquetes del sistema
113+
114+
```bash
115+
sudo apt update
116+
sudo apt install -y nvidia-jetpack git curl ffmpeg python3-pip
117+
python3 -m pip install -U pip
118+
```
119+
120+
### Instalar dependencias principales
121+
122+
Instalar Miniconda (recomendado):
123+
124+
```bash
125+
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh
126+
chmod +x Miniconda3-latest-Linux-aarch64.sh
127+
./Miniconda3-latest-Linux-aarch64.sh
128+
source ~/.bashrc
129+
```
130+
131+
<div align="center">
132+
<img width={900}
133+
src="https://files.seeedstudio.com/wiki/reComputer-Jetson/openclaw/conda.png" />
134+
</div>
135+
136+
Crear entorno LeRobot:
137+
138+
```bash
139+
conda create -y -n lerobot python=3.12
140+
conda activate lerobot
141+
git clone https://github.com/huggingface/lerobot.git ~/lerobot
142+
cd ~/lerobot
143+
pip install -e .
144+
pip uninstall torch torchvision
145+
pip install torch torchvision --index-url https://pypi.jetson-ai-lab.io
146+
```
147+
148+
Instalar Pinocchio en el entorno LeRobot:
149+
150+
```bash
151+
conda install pinocchio -c conda-forge
152+
```
153+
154+
### Verificar CUDA y dispositivos periféricos
155+
156+
```bash
157+
python -c "import torch; print(torch.cuda.is_available())"
158+
lerobot-find-port
159+
```
160+
161+
Resultado esperado:
162+
163+
- `torch.cuda.is_available()` imprime `True`
164+
- Se detectan los puertos serie del brazo (por ejemplo `/dev/ttyACM0`)
165+
166+
## Instalar Ollama y ejecutar un LLM local
167+
168+
Instalar Ollama:
169+
170+
```bash
171+
curl -fsSL https://ollama.com/install.sh | sh
172+
```
173+
174+
Descargar un modelo:
175+
176+
```bash
177+
ollama pull qwen3-vl:9b
178+
```
179+
180+
:::info
181+
Esta guía utiliza `qwen3-vl:9b` como ejemplo. Puedes reemplazarlo por otro modelo de Ollama según tus restricciones de rendimiento y memoria.
182+
:::
183+
184+
## Instalar OpenClaw en Jetson Thor
185+
186+
### Instalar OpenClaw
187+
188+
```bash
189+
curl -fsSL https://openclaw.ai/install.sh | bash
190+
```
191+
192+
### Configurar parámetros de ejecución
193+
194+
Edita `~/.openclaw/openclaw.json` y establece Ollama como el proveedor de modelo predeterminado:
195+
196+
```json
197+
{
198+
"agents": {
199+
"defaults": {
200+
"models": {
201+
"ollama": {}
202+
},
203+
"model": {
204+
"primary": "ollama/qwen3-vl:9b"
205+
}
206+
}
207+
},
208+
"models": {
209+
"providers": {
210+
"ollama": {
211+
"baseUrl": "http://127.0.0.1:11434/v1",
212+
"apiKey": "ollama-local",
213+
"api": "openai-completions",
214+
"models": [
215+
{
216+
"id": "qwen3-vl:9b",
217+
"name": "Qwen3 VL 9B",
218+
"reasoning": false,
219+
"input": [
220+
"text"
221+
],
222+
"cost": {
223+
"input": 0,
224+
"output": 0,
225+
"cacheRead": 0,
226+
"cacheWrite": 0
227+
},
228+
"contextWindow": 128000,
229+
"maxTokens": 8192
230+
}
231+
]
232+
}
233+
}
234+
}
235+
}
236+
```
237+
238+
:::note
239+
Opcional: también puedes usar directamente el script proporcionado por Ollama para configurar rápidamente el archivo de configuración de OpenClaw.
240+
241+
`ollama launch openclaw --model qwen3.5`
242+
:::
243+
244+
### Más configuración
245+
246+
Instalar la skill de control de SO-Arm:
247+
248+
- Descarga [soarm-control Skill](https://clawhub.ai/yuyoujiang/soarm-control)
249+
- Extráela en `~/.openclaw/workspace/skills`
250+
251+
Preparar archivo de descripción del robot:
252+
253+
- Descarga [SO-ARM101 URDF](https://github.com/TheRobotStudio/SO-ARM100/blob/main/Simulation/SO101/so101_new_calib.urdf)
254+
- Muévelo a `~/.openclaw/workspace/skills/soarm-control/references`
255+
256+
Reinicia la pasarela de OpenClaw:
257+
258+
```bash
259+
openclaw gateway restart
260+
```
261+
262+
Abrir WebUI:
263+
264+
```text
265+
http://127.0.0.1:18789/
266+
```
267+
268+
## Conectar y calibrar SO-Arm
269+
270+
### Permisos y detección del puerto serie
271+
272+
```bash
273+
conda activate lerobot
274+
lerobot-find-port
275+
sudo chmod 666 /dev/ttyACM*
276+
```
277+
278+
### Calibración inicial
279+
280+
Calibrar el brazo seguidor:
281+
282+
```bash
283+
lerobot-calibrate \
284+
--robot.type=so101_follower \
285+
--robot.port=/dev/ttyACM0 \
286+
--robot.id=openclaw_soarm
287+
```
288+
289+
Los archivos de calibración se guardan en:
290+
291+
`~/.cache/huggingface/lerobot/calibration/`
292+
293+
:::note
294+
Para una guía completa de calibración, consulta:
295+
[SO-Arm en LeRobot - Calibrate](https://wiki.seeedstudio.com/es/lerobot_so100m_new/#calibrate)
296+
:::
297+
298+
## Ejecutar demostración de control
299+
300+
### Iniciar servicio de OpenClaw
301+
302+
Asegúrate de que los entornos de OpenClaw y LeRobot estén listos:
303+
304+
```bash
305+
openclaw gateway restart
306+
conda activate lerobot
307+
```
308+
309+
### Ejecutar tarea básica de movimiento
310+
311+
En OpenClaw WebUI, introduce instrucciones de control del robot. OpenClaw analizará tu prompt y llamará a la skill `soarm-control` instalada para mover el brazo a la posición objetivo.
312+
313+
El vídeo muestra tres comandos:
314+
315+
1. Mover el efector final del brazo robótico hacia arriba 20 cm.
316+
2. Luego moverlo hacia adelante 20 cm, manteniendo la altura sin cambios.
317+
3. Volver a la posición inicial.
318+
319+
Las respuestas de OpenClaw a estos tres comandos coinciden con el comportamiento esperado.
320+
321+
<div class="video-container">
322+
<iframe width="800" height="450" src="https://www.youtube.com/embed/5fPBpAno2wc" title="Using OpenClaw to Control the SOARM 101 Robot Arm | Robotics Demo" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
323+
</div>
324+
325+
## Referencias
326+
327+
- https://docs.openclaw.ai/
328+
- https://wiki.seeedstudio.com/es/local_openclaw_on_recomputer_jetson/
329+
- https://unstabledemos.com/tutorials/openclaw-orin-nano/
330+
- https://wiki.seeedstudio.com/es/lerobot_so100m_new/
331+
- https://github.com/huggingface/lerobot
332+
- https://github.com/TheRobotStudio/SO-ARM100
333+
334+
## Soporte técnico y debate sobre el producto
335+
336+
Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.
337+
338+
<div class="button_tech_support_container">
339+
<a href="https://forum.seeedstudio.com/" class="button_forum"></a>
340+
<a href="https://www.seeedstudio.com/contacts" class="button_email"></a>
341+
</div>
342+
343+
<div class="button_tech_support_container">
344+
<a href="https://discord.gg/eWkprNDMU7" class="button_discord"></a>
345+
<a href="https://github.com/Seeed-Studio/wiki-documents/discussions/69" class="button_discussion"></a>
346+
</div>

sites/es/sidebars.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3910,6 +3910,7 @@ const sidebars = {
39103910
'Edge/NVIDIA_Jetson/Application/Physical_AI/es_Fine_tune_GR00T_N1.5_for_LeRobot_SO_Arm_and_Deploy_on_Jetson_Thor',
39113911
'Edge/NVIDIA_Jetson/Application/Physical_AI/es_Fine_tune_GR00T_N1.6_for_LeRobot_SO_Arm_and_Deploy_on_AGX_Orin',
39123912
'Edge/NVIDIA_Jetson/Application/Physical_AI/es_J501_Mini_StarAI_Viola_Fruit_Sorting',
3913+
'Edge/NVIDIA_Jetson/Application/Physical_AI/es_Control_SoArm_by_OpenClaw_on_Jetson_Thor'
39133914
]
39143915
},
39153916
// Managed Services

sites/es/static/js/language-switcher.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// 语言切换器 - 生产环境优化版本
2-
// 生成时间: 2026-03-09 14:04:02 (北京时间)
3-
// 多语言页面: 2202
2+
// 生成时间: 2026-03-10 10:07:43 (北京时间)
3+
// 多语言页面: 2203
44

55
(function() {
66
'use strict';
@@ -910,6 +910,12 @@
910910
"es",
911911
"ja"
912912
],
913+
"/ai_robotics_control_soarm_by_openclaw_on_jetson_thor": [
914+
"cn",
915+
"en",
916+
"es",
917+
"ja"
918+
],
913919
"/fine_tune_gr00t_n1.5_for_lerobot_so_arm_and_deploy_on_jetson_thor_bk": [
914920
"cn",
915921
"en",

0 commit comments

Comments
 (0)