NeuralActuator: Neural Actuation Modeling for Robot Dynamics and External Force Perception
Autores: Zhiyang Dou, John U. Onyemelukwe, Hangxing Zhang, Heng Zhang, Minghao Guo, Yunsheng Tian, Michal Piotr Lipiec, Joshua Jacob, Chao Liu, Peter Yichen Chen, Yuri Ivanov, Wojciech Matusik · RSS 2026
Licencias
- Acceso abierto
- Artículo: CC BY 4.0
Todo lo que sigue se basa en el artículo completo bajo su licencia CC BY 4.0; su figura se muestra con crédito a los autores.
En resumen
Un modelo de actuador basado en transformadores para brazos de servos de bajo coste, entrenado a través de MuJoCo diferenciable a partir de datos de pose, estima la fuerza en el efector final sin sensor de fuerza y mejora la imitación consciente de la fuerza.
Por qué importa
Proporciona a los brazos de bajo coste una señal de fuerza utilizable sin sensor de fuerza/par en el momento de la inferencia, con una inferencia en GPU de menos de un milisegundo, por encima de una frecuencia de control de 60 Hz. Esa señal aumentó el éxito de la clonación del comportamiento en tareas con carga, y el modelo puede recalibrarse en una unidad nueva con 12 trayectorias en unos seis minutos.
Problema
Los brazos de servos de bajo coste usan actuadores de CC con escobillas y reductora en los que la fricción, la histéresis, el juego y la deriva térmica rompen la hipótesis de relación lineal entre corriente y par. Esto corrompe la simulación, el seguimiento del esfuerzo y cualquier estimación de fuerza basada en la corriente del motor. Los modelos de actuador aprendidos anteriores necesitan etiquetas de par procedentes de sensores de par articular o de una corriente calibrada, que estas plataformas no proporcionan de forma fiable.
Solución propuesta
NeuralActuator es un transformador de cuatro capas que lee nueve fotogramas de órdenes, estados articulares y telemetría de los actuadores (corriente o carga, tensión, temperatura) y produce un sustituto de par, una fuerza 3D bruta en el efector final, una puerta de probabilidad de contacto y una puntuación de estado por motor. La cabeza de par se entrena propagándola a través de un simulador diferenciable MuJoCo/MJX y ajustando las poses medidas, por lo que no se necesitan etiquetas de par; las cabezas de fuerza, de puerta y de estado se entrenan directamente con etiquetas del nuevo Neural Actuation Dataset, grabado con un par líder-seguidor de brazos OpenManipulator-X y un sensor de fuerza/par de seis ejes.
Ideas clave
- En servos de bajo coste con reductora, la relación lineal entre corriente y par puede fallar por completo: ajustar Kt por articulación en el OpenManipulator-X dio pendientes negativas en dos articulaciones antes de aplicar el recorte
- Las trayectorias de pose propagadas a través de un simulador diferenciable bastan para supervisar un sustituto de par cuando no existen etiquetas de par
- Separar la regresión de fuerza de una puerta de probabilidad de contacto mantiene la fuerza predicha cerca de cero cuando no hay contacto, situación en la que los observadores clásicos generan falsos contactos
- Los modelos paramétricos de fricción fijos (Stribeck, juego) aportan poco sobre el modelo lineal en estos servos; una red condicionada por el historial capta las no linealidades dominantes
- La fuerza predicha, usada como entrada adicional, mejora las políticas de aprendizaje por imitación en la manipulación de cargas
Resultados principales
- Benchmark de carga a 100 pasos: MAE de fuerza de 0,12 N frente a 0,66 N de la mejor línea base clásica (observador de momento generalizado), 1,23 N de ID-Friction y 1,41 N de ID-Linear; los métodos clásicos mostraron un 33-59 % de contactos falsos positivos en el régimen sin contacto
- Benchmark con sensor de seis ejes y fuerzas de hasta 9 N: MAE de fuerza de 0,36-0,39 N a 100 pasos y de 0,38-0,57 N a 500 pasos; 0,00-0,02 N predichos en referencias sin contacto
- Clonación del comportamiento en 40 ensayos: el éxito en coger y colocar pasó del 80 % al 92,5 % y en subir y mantenerse del 85 % al 95 % con la entrada de fuerza de NeuralActuator
- Detección del estado del motor (articulación 3 restringida con una goma elástica): 91,0 % de exactitud, 96,2 % de exhaustividad y 0,95 de AUC-ROC, frente a 67,1 % de exactitud y 0,72 de AUC-ROC de la mejor línea base diseñada a mano (Random Forest)
- Tiempo de ejecución: 1,44M parámetros, inferencia media en GPU de 0,25 ms y un rendimiento de 4019 Hz con tamaño de lote 1
- Entre plataformas: MAE de fuerza offline en el Franka Panda de 0,26-0,42 N con cargas de 200-600 g; MAE de fuerza en el SO-101 de 0,47-0,73 N a 500 pasos; la adaptación en línea con 12 trayectorias (356 s) redujo el error de seguimiento en torno a un 44 %
Limitaciones
- Las ejecuciones de horizonte largo condicionadas por la telemetría grabada acumulan error y acaban degradando la precisión del seguimiento (los autores lo mitigan con una adaptación en línea con pocas trayectorias)
- El sustituto de par es equivalente al del simulador, no un par de actuador medido: cuando faltan contactos o cargas en el modelo directo, puede absorber sus efectos y otros desajustes del modelo
- La inferencia en línea necesita telemetría de los actuadores en directo, y el modelo no puede simular órdenes candidatas no ejecutadas, por lo que no puede usarse para planificación contrafactual como MPC sin un modelo adicional de respuesta del esfuerzo
- La cabeza de fuerza estima una única fuerza resultante 3D en el efector final: sin localización de contactos multipunto ni torsor completo, y necesita etiquetas de fuerza explícitas para el entrenamiento
- Las cargas de unos 50 g o menos (unos 0,5 N) quedan cerca del umbral de ruido de la plataforma de bajo coste; los resultados con Franka son un benchmark offline que usa un estado futuro como aproximación de la señal de orden
Impacto en el campo
Ganador del RSS 2026 Outstanding Systems Paper in Memory of Seth Teller Award y finalista del RSS 2026 Outstanding Paper Award; 5 citas hasta ahora. Los autores publican el Neural Actuation Dataset e indican una página del proyecto y un repositorio de código.
Resumen
Los simuladores diferenciables han impulsado el aprendizaje de políticas y el control basado en modelos, pero la dinámica de los actuadores sigue siendo una fuente importante de error sim-to-real. Esto es especialmente grave en plataformas de bajo coste, donde la relación lineal entre corriente y par τ = K_t·I deja de ser fiable durante el seguimiento de objetivos ordenados debido a la fricción, la histéresis, el juego y los efectos térmicos. Presentamos NeuralActuator, un modelo neuronal de actuador que predice conjuntamente (i) un sustituto del esfuerzo generalizado equivalente al del simulador para la propagación de trayectorias en plataformas de servos de bajo coste, (ii) la fuerza externa con una puerta de probabilidad de contacto para la percepción de fuerza sin sensores, y (iii) una puntuación del estado del motor para la articulación supervisada. También presentamos el Neural Actuation Dataset (NAD), recopilado con un sistema de teleoperación de dos brazos gemelos que registra los estados del robot y la telemetría de los actuadores junto con etiquetas de fuerza externa. La cabeza del sustituto de par se entrena mediante simulación diferenciable a partir de trayectorias de pose sin etiquetas directas de esfuerzo generalizado, mientras que las cabezas de fuerza, de puerta y de estado del motor reciben supervisión directa. Un transformador captura las dependencias temporales y admite inferencia en tiempo real. Evaluamos NeuralActuator en un OpenManipulator-X de 5-DoF, un SO-101 de 6-DoF y un Franka Emika Panda de 7-DoF, que abarcan tres familias de actuadores y plataformas con un coste de aproximadamente 500 USD a más de 30 000 USD. Las plataformas de bajo coste permiten evaluar la dinámica y la fuerza, mientras que el experimento offline con Franka aporta un benchmark adicional de estimación de la fuerza de la carga. Los experimentos demuestran además su aplicación a la estimación del estado del motor en el OpenManipulator-X y una mejora del rendimiento de la clonación del comportamiento cuando NeuralActuator se usa como módulo preentrenado.
Enlaces
- arXiv 2607.11734: https://arxiv.org/abs/2607.11734
- DOI 10.15607/rss.2026.xxii.159: https://doi.org/10.15607/rss.2026.xxii.159
- PDF: https://arxiv.org/pdf/2607.11734v1
- Código: https://github.com/Frank-ZY-Dou/Dynamics-Modeling/tree/main/NeuralActuator
- Página del proyecto: https://frank-zy-dou.github.io/projects/NeuralActuator/index.html