La detección de fuerza y torsión en robótica: aplicaciones, sensores y comienzo
Guía práctica para la detección de la fuerza y el par para robots: 5 aplicaciones clave, guía de selección de sensores, tutorial de integración ROS2, los conceptos básicos de control de admisión y cómo la detección de F/T permite la manipulación rica en contactos.
La visión le dice a un robot dónde están las cosas. La sensorización de la torsión de fuerza le dice cuán difícil es empujar, tirar y apretar. Para la manipulación rica en contacto - ensamblaje, inserción, pulido, tareas de colaboración - la detección F/T no es opcional. Es lo que separa a los robots que pueden manejar ensamblaje delicado de los robots que rompen todo lo que tocan. Esta guía abarca las aplicaciones, el hardware y los pasos de integración para que el sensor F/T funcione en su robot.
Qué medidas detectan la fuerza y el torque
Un sensor de fuerza-torque (F/T) mide seis componentes de carga mecánica en un punto del robot: tres fuerzas lineales (Fx, Fy, Fz) a lo largo de cada eje cartesiano y tres torques (Tx, Ty, Tz) alrededor de cada eje. Juntos, estos seis valores forman una llave de giro - una descripción completa de la interacción mecánica entre el robot y su entorno en la ubicación del sensor.
La mayoría de los sensores F/T están montados en la muñeca - entre el último enlace del brazo y el [efector final]
Esta información es invisible para las cámaras y no se puede inferir confiablemente de las corrientes motoras conjuntas por sí solas. Mientras que algunos brazos modernos (Franka Emika, Kuka iiwa) proporcionan estimaciones de par conjunta que dan una señal de tipo F/T gruesa, un sensor F/T dedicado montado en la muñeca proporciona datos calibrados de fuerza de alto ancho de banda con una precisión y características de ruido significativamente mejores. Para una visión técnica más profunda, vea nuestro [entrada en el glosario de detección de torque de fuerza]
Aplicación 1: Insertar con penetración y precisión
La inserción de peg-in-hole es la aplicación canónica para la detección de torque de fuerza. La tarea requiere guiar una peg a un agujero con claras tan pequeñas como 0.1-0.5 mm, mucho más apretada de lo que la mayoría de los brazos robóticos pueden lograr solo mediante el control de posición. Sin retroalimentación de fuerza, el robot o pierde el agujero por completo o atasca la peg contra el borde con suficiente fuerza para dañar las partes.
Con la detección de F/T, el robot puede ejecutar un patrón de búsqueda: mover la fijación a través de la superficie mientras vigila las fuerzas laterales. Cuando la fijación cae en el agujero, la firma de la fuerza lateral cambia de manera característica (las fuerzas de contacto disminuyen a medida que la fijación se alinea). Este enfoque permite una inserción fiable en ensambles de tolerancia apretada en los que el control de posición puro falla.
El mismo principio se aplica al apareamiento de conectores, el montaje de ajustes rápidos, la inserción de tornillos y cualquier tarea en la que el robot debe guiar una parte a una geometría limitada.
Aplicación 2: Seguimiento y pulido de superficies
La superficies siguientes requieren que el robot mantenga una fuerza de contacto constante contra una superficie mientras rastrea un camino - utilizado en el pulido, la pulido, desborrado, pintura y inspección. Sin control de la fuerza, la curvatura de la superficie o la incertidumbre de posición hace que el robot pierda el contacto (destruyendo el acabado) o presione demasiado duro (gugando el material).
Con el sensor F/T, un controlador de admisión o impedancia mantiene la fuerza normal deseada independientemente de la geometría de la superficie. El controlador lee la fuerza de corriente, calcula el error relativo al punto de configuración de la fuerza deseada y ajusta la posición del robot para reducir el error. A las velocidades de control de 500-1000 Hz, esto produce un contacto suave y consistente incluso en superficies curvas o irregulares. El punto de configuración de la fuerza puede variarse a lo largo de la trayectoria para acomodar diferentes requisitos de superficie: fuerza más ligera en secciones delgadas, fuerza más pesada en secciones gruesas.
Aplicación 3: Colaboración humano-robótico
Los robots colaboradores (cobots) que comparten espacios de trabajo con los humanos deben detectar el contacto no intencional y responder de manera segura. Los sensores F/T permiten dos funciones de seguridad críticas: la detección de colisión (un aumento inesperado de la fuerza desencadena una parada inmediata o una retirada conforme) y la guía manual (el operador empuja físicamente al robot, y el sensor F/T detecta la fuerza aplicada para mover al robot en la dirección deseada).
La guía manual también se utiliza para la enseñanza cinestética: el operador mueve físicamente al robot a través de una trayectoria de tarea mientras el sistema registra el movimiento como una demostración. El sensor F/T distingue entre fuerzas de guía intencionales (suaves, direccionales) y fuerzas de contacto incidentales (de repente, aleatorias), lo que permite al sistema filtrar la trayectoria registrada para demostraciones más limpias.
Aplicación 4: Retorno de la fuerza de teleoperación
En sistemas de teleoperatorio bilaterales, un sensor F/T de muñeca en el robot seguidor mide las fuerzas de interacción con el entorno y las transmite de nuevo al dispositivo líder, donde se transmiten como retroalimentación ápticas al operador. Esta retroalimentación de fuerza mejora dramáticamente la calidad de la teleoperación para tareas ricas en contacto: el operador puede sentir cuando el agarre se pone en contacto con un objeto, cuánto presiona el robot durante la inserción y cuando un montaje se interpone.
La teleoperación habilitada para F/T produce datos de demostración de mayor calidad para [imitación de aprendizaje] ((
Aplicación 5: Control de calidad y detección de deslizamientos
Un sensor F/T de muñeca puede monitorear la estabilidad de agarre en tiempo real. Después de que el agarre se cierra en un objeto, la señal F/T revela si el agarre es seguro (profil de fuerza estable), deslizándose (fuerzas oscilantes o que se desplazan) o a punto de fallar (fuerza que se acerca al límite del cono de fricción). Esta información permite el ajuste reactivo de agarre - apretando el agarre cuando se detecta deslizamiento, re-agarrando cuando los perfiles de fuerza indican inestabilidad.
La detección de deslizamientos es particularmente valiosa para el manejo de objetos con propiedades de fricción inciertas (superficies húmedas, aceites o resbaladizas) y para tareas de manipulación en las que el objeto esté expuesto a fuerzas externas durante el transporte (enpillar objetos donde la distribución del peso cambia, montar componentes donde las fuerzas de inserción actúan en la parte agarrada).
Guía de selección de sensores
La elección del sensor F/T adecuado requiere equilibrar cuatro factores: rango de medición, resolución, ancho de banda y costo.
Rango de medición define la fuerza y el par máximos que el sensor puede medir sin daños. Un sensor con un rango demasiado pequeño se satura durante el funcionamiento normal, perdiendo datos en momentos críticos. Un sensor con un rango demasiado grande tiene una mala resolución para tareas delicadas. Compare el rango con su tarea: manipulación de luz (0-50 N fuerza, 0-5 Nm par), manipulación general (0-200 N, 0-20 Nm), manejo de carga útil pesada (0-500 N+, 0-50 Nm+).
** Resolución** determina el menor cambio de fuerza que el sensor puede detectar. Para las tareas de montaje de precisión (peg-in-hole con claridades apretadas), se necesita una resolución de 0,1 N o mejor. Para la detección de colisiones y el control de la fuerza gruesa, la resolución de 1 N es adecuada.
Ancho de banda determina la velocidad con que el sensor puede informar nuevas lecturas. Para la detección de contacto y el monitoreo de colisiones, es deseable un ancho de banda de 1 kHz o superior - los eventos de contacto ocurren en milisegundos, y un sensor de 100 Hz puede perder impactos transitorios. Para las tareas de seguimiento de superficie controlada por fuerza y estado estable, 100-500 Hz suele ser suficiente.
El costo varía ampliamente. El ATI Mini45 y Mini85 (el estándar de oro de investigación) cuestan entre 3.000 y 7.000 dólares dependiendo del rango y la interfaz, pero proporcionan una precisión excepcional, ancho de banda de 7 kHz y una extensa documentación. El Robotiq FT 300-S cuesta entre 2.000 y 3.000 dólares con un ancho de banda más bajo pero una integración USB/Ethernet más fácil y soporte ROS nativo. El OnRobot Hex integra la detección de F/T directamente en la interfaz de agarre-brazo a $2,000-$4,000. Para la investigación con presupuesto limitado, los sensores más nuevos de Bota Systems ($1,500-$3,000) y Wacoh Tech ofrecen un rendimiento sólido en puntos de menor costo.
Comparación de las especificaciones de los sensores F/T
| Sensor | Force Range | Resolution | Bandwidth | Noise (RMS) | Interface | Price |
|---|---|---|---|---|---|---|
| ATI Mini45 | +/-145 N (Fxy), +/-290 N (Fz) | 0.025 N | 7 kHz | 0.05 N | EtherCAT, Net F/T (Ethernet) | $4,000-5,500 |
| ATI Gamma | +/-65 N (Fxy), +/-200 N (Fz) | 0.0125 N | 7 kHz | 0.02 N | EtherCAT, Net F/T | $5,000-7,000 |
| Robotiq FT 300-S | +/-300 N | 0.2 N | 100 Hz | 0.5 N | USB, Ethernet, Modbus | $2,000-3,000 |
| OnRobot HEX-E | +/-200 N (Fxy), +/-500 N (Fz) | 0.2 N | 1 kHz | 0.3 N | Integrated (tool changer) | $2,500-4,000 |
| Bota Systems SensONE | +/-200 N | 0.1 N | 800 Hz | 0.15 N | EtherCAT, USB | $1,500-3,000 |
Para los laboratorios de investigación que realizan la recopilación de datos de aprendizaje imitativo, el ATI Mini45 es el estándar recomendado: su ancho de banda de 7 kHz capta los transitorios de contacto que los sensores de ancho de banda más bajo no logran, y su nivel de ruido es lo suficientemente bajo para la anotación de ensamblaje de precisión. El Bota Systems SensONE ofrece un buen intermedio entre el rendimiento a nivel ATI y el precio a nivel Robotiq.
Procedimientos de calibración
La calibración adecuada es la diferencia entre un sensor F/T que proporciona datos accionables y uno que añade ruido a su bucle de control.
1. Calibración de compensación cero: Sin nada conectado al sensor (o con sólo el efecto final conocido), graba la salida del sensor. Esta lectura de línea de base debe restarse de todas las mediciones posteriores. Realice una calibración cero al comienzo de cada sesión, ya que el sensor de compensación deriva con la temperatura (típicamente 0,01-0,1 N por grado C). Deje que el sensor se caliente durante 10 minutos antes de calibrar.
2. Compensamiento por gravedad: El peso del agarre y de cualquier herramienta adjunta crea una llave gravitacional que varía con la orientación del brazo. Para compensar: mover el brazo a al menos 6 orientaciones diferentes (idealmente 10+) que abarcan el espacio de orientación, registrar las lecturas F/T y la posición del brazo correspondiente en cada orientación, y resolver un cuadrado mínimo adecuado para la masa de la herramienta, el centro de masa y el offset del sensor. El resultado es una función que predice la llave gravitacional en cualquier orientación, que se restan de las lecturas en bruto para aislar las fuerzas de interacción.
3. Verificación de la comunicación transversal: Aplicar una fuerza conocida en cada eje de forma independiente (utilizando un peso calibrado en una cuerda para Fz y una escala de resorte para Fx/Fy) y verificar que las lecturas transversal del eje se encuentran dentro de la especificación del fabricante (generalmente <2% de la carga aplicada).
Tratamiento de señales para datos de F/T
Los datos de los sensores F/T en bruto contienen ruido de vibración mecánica, interferencia eléctrica y cuantización.
Filtrado a bajo paso: Un filtro Butterworth de segundo orden a 20 a 50 Hz elimina el ruido de alta frecuencia mientras se conserva la dinámica de contacto relevante para la manipulación. Para el control de admisión, ajuste el corte a 5 a 10 veces la frecuencia del bucle de control: si se ejecuta el control de admisión a 100 Hz, filtre los datos de F/T a 20 a 50 Hz. Las frecuencias de corte más bajas reducen el ruido pero añaden retraso de fase, lo que puede desestabilizar el bucle de control.
Medio móvil: Para aplicaciones en las que el retraso de fase es inaceptable (detección de colisión), utilice un promedio móvil causal con una ventana de muestra de 5 a 10 en lugar de un filtro IIR.
Trescal de detección de contacto: Detectar eventos de contacto mediante el seguimiento de la norma del vector de fuerza (FXF) = sqrt(Fx^2 + Fy^2 + Fz^2). Un umbral de 3-5 veces el piso de ruido RMS detecta de manera fiable el contacto al rechazar los falsos positivos de la vibración.
Estimación del Estado de contacto
Más allá de la simple detección de contacto, los datos de F/T permiten la estimación del estado de contacto, ya sea que el agarre esté en el espacio libre, haciendo contacto inicial, en agarre estable, deslizándose o atascado. La estimación del estado de contacto utiliza la evolución temporal de la señal de F/T, no solo valores instantáneos.
- Espacio libre: ** F ** F ** No se puede mover al máximo a una velocidad inferior al umbral de ruido.
- **Contacto inicial: >**F de tiempo se eleva por encima del umbral con un aumento de la derivada (dF/dt 0).
- Contacto estable: **F S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S S
- ** Deslizamiento:** Oscilación de fuerzas laterales (Fx, Fy) con fuerza normal decreciente (Fz). Indica que el agarre está fallando. Aumenta la fuerza de agarre o abortar y re-garre.
- Jam: Magnitud de fuerza que aumenta rápidamente (dF/dt >> 0) sin movimiento del robot correspondiente. El efecto final está atascado.
Una máquina de estado finito simple que implementa estos estados de contacto, impulsada por lecturas de F / T filtradas, proporciona una base sólida para la manipulación rica en contacto. Esta máquina de estado se puede utilizar como una capa de seguridad en la parte superior de las políticas aprendidas (sobrepasar la política si se detecta un estado de atasco) o como una observación para la política en sí (proporcionar el estado de contacto actual como una entrada categórica).
Código ROS2: Control de admisión con retroalimentación de F/T
# admittance_controller.py — ROS2 node for basic admittance control
import rclpy
from rclpy.node import Node
from geometry_msgs.msg import WrenchStamped, TwistStamped
import numpy as np
class AdmittanceController(Node):
def __init__(self):
super().__init__('admittance_controller')
# Admittance gains (compliance): higher = more compliant
self.M = np.diag([5.0, 5.0, 5.0, 1.0, 1.0, 1.0]) # virtual mass
self.D = np.diag([50.0, 50.0, 50.0, 10.0, 10.0, 10.0]) # damping
self.F_desired = np.array([0, 0, -5.0, 0, 0, 0]) # desired wrench (5N push in -z)
self.vel = np.zeros(6)
self.sub = self.create_subscription(
WrenchStamped, '/ft_sensor/wrench', self.wrench_cb, 10)
self.pub = self.create_publisher(
TwistStamped, '/servo_node/delta_twist_cmds', 10)
self.timer = self.create_timer(0.01, self.control_loop) # 100 Hz
self.current_wrench = np.zeros(6)
def wrench_cb(self, msg):
w = msg.wrench
self.current_wrench = np.array([
w.force.x, w.force.y, w.force.z,
w.torque.x, w.torque.y, w.torque.z])
def control_loop(self):
dt = 0.01
F_error = self.F_desired - self.current_wrench
# Admittance: M * a + D * v = F_error
acc = np.linalg.solve(self.M, F_error - self.D @ self.vel)
self.vel += acc * dt
# Publish velocity command
msg = TwistStamped()
msg.header.stamp = self.get_clock().now().to_msg()
msg.twist.linear.x = float(self.vel[0])
msg.twist.linear.y = float(self.vel[1])
msg.twist.linear.z = float(self.vel[2])
msg.twist.angular.x = float(self.vel[3])
msg.twist.angular.y = float(self.vel[4])
msg.twist.angular.z = float(self.vel[5])
self.pub.publish(msg)
Este controlador de admisión básica lee la llave F/T, calcula un error de fuerza relativo a una llave deseada y saca comandos de velocidad que cumplen con las fuerzas de contacto. Las matrices
Las consideraciones crecientes
Los sensores F/T deben estar mecánicamente montados entre la flange del brazo y el efecto final. El montaje debe ser rígido - cualquier conformidad entre el sensor y el brazo o entre el sensor y el agarre introduce un error de medición y reduce el ancho de banda.
El cable de cable es crítico. El cable del sensor debe ser encaminado a lo largo del brazo con suficiente alivio de la tensión y sin tensión en el conector. Los cables de sensor F / T son instrumentos de precisión - tirando de ellos o permitiéndolos atrapar durante el movimiento del brazo introducirá ruido y eventualmente dañar el sensor. Utilice clip de gestión de cables calificados para el rango de rotación del brazo y cables de ruta a través del conducto interno del brazo, si están disponibles.
Después de montar, realice una calibración de compensación por gravedad: mueva el brazo a varias orientaciones y graba las lecturas de F/T para calcular la llave gravitacional del conjunto de agarre. Sustraga esta llave de todas las lecturas posteriores para aislar las fuerzas de interacción.
Integración de ROS2: comienzo
La interfaz estándar ROS2 para sensores F/T utiliza el tipo de mensaje
Para los sensores ATI, el paquete
Un bucle de control de admisión básica en ROS2 lee la llave F/T, calcula una corrección de velocidad proporcional al error de fuerza (fuerza deseada menos fuerza medida) y envía el comando de velocidad corregido al controlador de brazo. La matriz de ganancia (6x6 para todos los ejes) determina el cumplimiento - ganancia más alta significa que el robot se mueve más en respuesta a la fuerza, ganancia más baja significa comportamiento más rígido.
Para las políticas de manipulación aprendidas, incluya la llave F/T como un canal de observación adicional: un vector de 6 dimensiones añadido a la observación en cada paso de tiempo. Esto es sencillo de implementar y permite a la política aprender comportamientos implícitamente dependientes de la fuerza. Para el control de fuerza estructurado, utilice una arquitectura híbrida donde la política aprendida produzca una llave de arranque o parámetros de cumplimiento deseados, y un controlador de admisión clásico maneja la regulación de fuerza de bajo nivel.
Detección y recogida de datos de F/T
Cuando se recopilan datos de demostración para tareas ricas en contactos, es esencial registrar datos de F/T. El perfil de fuerza durante una inserción o ensamblaje exitoso contiene información que las imágenes de la cámara no capturan: la progresión de las fuerzas de contacto, el momento de alineamiento, la firma de fuerza de un snap-fit exitoso. Las políticas formadas con observaciones de F/T superan consistentemente a las políticas de visión en tareas ricas en contacto, a menudo en un 30-50% en la tasa de éxito de la tarea.
Las estaciones de recopilación de datos de RCSV incluyen sensores ATI Mini45 F/T en la muñeca de cada brazo robótico, con datos F/T registrados sincrónicamente junto a cámaras y estados conjuntos a 500 Hz. Esta tasa de registro captura los transeúntes de contacto que son críticos para el aprendizaje de comportamientos ricos en contacto.
Comience con la detección de la fuerza y el torque
Para los equipos que exploran la manipulación rica en contactos, la detección de F/T es una inversión de alto apalancamiento. El costo del hardware es modesto en relación con el brazo robótico, la integración es sencilla con los paquetes ROS2 modernos y la mejora de rendimiento en las tareas ricas en contactos es dramática. Comience con un sensor montado en la muñeca en su brazo de investigación principal, implemente el control de admisión básico para familiarizarse con la interacción basada en la fuerza, y luego expanda a usar las observaciones de F / T en sus políticas aprendidas.
RCSV proporciona estaciones de robots equipadas con F/T a través de nuestro programa de arrendamiento de robots, consulta sobre selección e integración de sensores para configuraciones personalizadas, y servicios de recopilación de datos con hardware equipado con F/T para tareas ricas en contactos. Contacta con el equipo de ingeniería de RCSV para discutir tus requisitos de detección de fuerza, o navegar por nuestro catálogo de hardware para las configuraciones de sensores disponibles.
Relacionado: Guía de pegada de robot · Sensores de fuerza-torque (Glosario) · Configuración de cámara de robot · Aprendizaje de robot vs control clásico · Catálogo de hardware







