Full text
Dise˜no y uso de una paleta h´aptica para pr´acticas de teleoperaci´on con simulink Juan M. Gandarias Palacios, Sepehr Akbari Kalhor y J. Manuel G´omez de Gabriel Dto. de Ingenier´ıa de Sistemas y Autom´atica Universidad de M´alaga [email protected] Resumen En este art´ıculo se presenta el uso de dispositivos de realimentaci´on de fuerzas de un grado de libertad como herramienta para el desarrollo de aplicaciones docentes en asignaturas de teleoperaci´on y telerrob´otica, con el objetivo de disponer de una interfaz f´ısica que pueda ser utilizada como equipo de pr´acticas. Estos dispositivos, conocidos como haptic paddle, ya han sido probados satisfactoriamente para aplicaciones educativas de modelado y simulaci´on de sistemas, introducci´on a los haptics e ingenier´ıa control en diversas universidades. Para el desarrollo de los experimentos que se muestran en este art´ıculo se han utilizado dos dispositivos haptic paddle con un controlador basado en Arduino y fabricados mediante tecnolog´ıas aditivas de impresi´on 3D. Gracias a los sensores de fuerza y posici´on incorporados se pueden implementar esquemas bilaterales de teleoperaci´on de posici´onposici´on y fuerza-posici´on. Palabras clave: Educaci´on, Arduino, Haptics, Teleoperaci´on, Simulink, Impresi´on 3D. 1. INTRODUCCI ´ ON Hoy en d´ıa existe un gran n´umero de plataformas y equipos de pr´acticas disponibles para docencia en el ´area de ingenier´ıa de sistemas y autom´atica, cuyo fin es servir como apoyo a las lecciones te´oricas y facilitar el aprendizaje. En [1, 2] se pueden ver algunas aplicaciones basadas en internet, uso de laboratorios remotos y simulaci´on. Los ejercicios basados en simulaci´on no tienen el mismo impacto que el uso de laboratorios reales de pr´acticas; as´ı, tal y como se concluye en [2], el mejor m´etodo de ejercicios pr´acticos a la docencia sigue siendo el uso de equipos de pr´acticas reales. Por otro lado, la aparici´on de plataformas Open Source como Arduino, han supuesto un revolucionario avance en el desarrollo de equipos de pr´acticas reales a bajo coste. En [4] se exponen los beneficios del uso de dispositivos basados en Simulink yArduino como herramienta para pr´acticas de rob´otica. Siguiendo la idea de desarrollar un equipo de pr´acticas de bajo coste se encuentra el dispositivo haptic paddle, cuya filosof´ıa se puede ver en [11, 12]. Dicho dispositivo ha sufrido una evoluci´on con la incorporaci´on de un sistema de control basado en Arduino. Existen diversas versiones como las de los haptic paddle de las universidades de Vanderbilt [8], Rice [13] y la ´ultima versi´on de la Universidad de Stanford, el Hapkit [15], que adem´as incorpora el uso de impresoras 3D para su fabricaci´on, lo que aumenta enormemente la accesibilidad a este dispositivo. Los haptic paddle son dispositivos de realimentaci´on de fuerzas de un grado de libertad que, generalmente, disponen de un motor de corriente continua como actuador, un sistema sensorial con un sensor de posici´on angular y un sistema de control basado en Arduino. Esta herramienta ya ha sido probada con ´exito para el desarrollo de actividades docentes en control y simulaci´on de sistemas, como se puede ver en [7]. El principio b´asico de funcionamiento de estos dispositivos consiste en calcular una fuerza o par de actuaci´on, en funci´on de la fuerza o movimiento que el usuario aplica sobre la paleta del dispositivo, y traducirlo en un movimiento transmitido de nuevo al usuario mediante un motor de corriente continua. El esquema b´asico de funcionamiento se muestra en la figura 1. Figura 1: Esquema b´asico de funcionamiento de un haptic paddle Para realizar estos experimentos se ha dise˜nado una versi´on de haptic padde basado en el con-
cepto del Hapkit del uso de tecnolog´ıas de fabricaci´on aditivas y en el uso de la plataforma Arduino. Asimismo, su uso se centra en la aplicaci´on del concepto de ingenier´ıa basada en modelos o MDE (Model-Driven Engineering), cuyas ventajas se muestran en [6]. En este trabajo se muestran las diferentes aplicaciones educativas que pueden llevarse a cabo gracias a un haptic paddle de bajo coste dise˜nado en la Universidad de M´alaga, mostrando algunos experimentos y centr´andose principalmente en a˜nadir a la lista de actividades pr´acticas realizables con los haptic paddle, el uso de ´estos como equipo de pr´acticas en asignaturas de teleoperaci´on y telerrob´otica, presentando experimentos de implementaci´on de esquemas de bilaterales de teleoperaci´on de posici´on-posici´on [9]. El dise˜no y desarrollo del dispositivo, as´ı como los experimentos, se han llevado a cabo en el TaISLab (Teleoperation and Interactive Systems Laboratory) de la Universidad de M´alaga [17]; adem´as, los archivos para impresi´on 3D del dispositivo y los programas utilizados se pueden encontrar en los repositorios de la cuenta GitHub creada para facilitar el acceso al proyecto en [16]. El presente art´ıculo est´a estructurado de la siguiente forma: en el siguiente punto se comentan las caracter´ısticas del dispositivo, as´ı como los elementos que lo forman. En el apartado 3 se comentan las capacidades docentes del dispositivo para la teleoperaci´on mediante la exposici´on de los experimentos realizados y, finalmente, en el ´ultimo apartado se explican las conclusiones obtenidas y los trabajos a realizar en el futuro. 2. EL DISPOSITIVO UMA HAPTIC PADDLE 2.1. Caracter´ısticas generales La robustez y la sencillez de la construcci´on han sido los objetivos principales de este nuevo dise˜no, manteniendo siempre la precisi´on necesaria para su correcto funcionamiento y sin olvidarse de aspectos est´eticos. Se han tenido en cuenta las limitaciones de construcci´on de las impresoras 3D para evitar cualquier fallo de impresi´on, y todos los elementos mec´anicos utilizados como tornillos o tuercas son de alta disponibilidad y de acuerdo al est´andar del sistema m´etrico de unidades. En la imagen de la figura 2 se muestra el dise˜no actual del dispositivo. ´ Este posee las siguientes caracter´ısticas: Fabricable mediante impresoras 3D de tipo FDM convencionales. El sistema de actuaci´on del dispositivo est´a compuesto por un motor de corriente continua y transmisi´on tipo Capstan. Sensor magn´etico de posici´on angular con salida anal´ogica. Reutiliza el microcontrolador basado en Arduino, el Hapkit board, que posee caracter´ısticas similares al Arduino UNO, dise˜nado y desarrollado por la Universidad de Stanford para el proyecto Hapkit. Asimismo, se ha ampliado el dise˜no incorporando un sensor de fuerzas basado en una c´elula de carga. No obstante, los detalles del dise˜no pueden encontrarse en los repositorios de la cuenta github comentada en la secci´on 1. Figura 2: Versi´on actual del dise˜no del dispositivo UMA Haptic Paddle 2.2. Fabricaci´on con impresoras 3D Aprovechando el notable crecimiento tecnol´ogico en el que se est´a viendo involucrada la industria de la impresi´on 3D, y con el objeto de obtener un equipo de pr´acticas barato y de f´acil accesibilidad, la fabricaci´on del dispositivo se ha realizado ´ıntegra utilizando tecnolog´ıas aditivas de impresi´on 3D, exceptuando en este sentido elementos mec´anicos tales como tornillos, arandelas o rodamientos. El hecho de presentar un dise˜no realizable con impresi´on 3D proporciona al alumno la posibilidad de imprimir su propio equipo de pr´acticas individual, ya sea con una impresora casera, enviando el dise˜no a alg´un taller de impresi´on 3D, o incluso a trav´es de alguna plataforma web de impresi´on 3D.
Este concepto fue el que motiv´o el dise˜no del Hapkit en su versi´on de impresi´on 3D, impulsado tambi´en por la idea de poder realizar cursos online o MOOC (Massive Online Open Courses) en los que cualquier estudiante se pueda imprimir su propio equipo de pr´acticas y montarlo de manera sencilla en casa, para poder realizar estudios a distancia, basados en ejercicios pr´acticos, con dispositivos reales y sin necesidad de asistir a un laboratorio. 2.3. Dise˜no mec´anico del dispositivo El requerimiento de transparencia de los dispositivos h´apticos implica que las fuerzas din´amicas debidas al sistema mec´anico deben minimizarse en t´erminos de masa y fricci´on. Asimismo debe poseer una estructura robusta que permita su uso pr´actico por un gran n´umero de alumnos. El sistema de transmisi´on del movimiento generado por el motor de corriente continua hacia la paleta o joystick se puede implementar t´ıpicamente de varias formas: Friction drive: Por fricci´on, a˜nadiendo elementos que aumenten la adherencia de las superficies del eje del motor y la paleta, como por ejemplo el neopreno. Capstan drive: El mecanismo conocido como capstan drive utiliza un cable que recorre la base de la paleta y va enrollado en el eje del motor. Mecanismo de engranajes entre el eje y la paleta. Mecanismo basado en el uso de correas. De todos estos mecanismos lo m´as utilizados son los dos primeros. Siendo el capstan drive, seg´un [13] el mejor de ellos. ´ Esto se debe, principalmente, a que se elimina la alta componente de fricci´on del mecanismo friction drive, lo que permite traducir mejor las sensaciones h´apticas. Adem´as, el mecanismo por fricci´on introduce una alta probabilidad de deslizamiento de la paleta sobre el eje del motor. Con el fin de eliminar deslizamientos, y asegurar la sincron´ıa entre el movimiento de la paleta y el motor, se han dise˜nado tambi´en prototipos basados en mecanismos de engranajes y correas, pero ambos introducen un alto grado de fricci´on. Por lo tanto el mecanismo utilizado en el dispositivo que se presenta en este art´ıculo es el de tipo capstan con cable de acero. Entre las caracter´ısticas a˜nadidas al dise˜no se encuentran el sistema de ajuste de la tensi´on del cable y la limitaci´on mec´anica del rango de giro de la paleta para evitar da˜nar el eje del motor. 2.4. Microcontrolador basado en Arduino En la parte de control, se ha utilizado un microcontrolador dise˜nado por la Universidad Stanford, el Hapkit board [15], con el fin de ser usado en los dispositivos Hapkit. Este microcontrolador est´a basado en Arduino e incorpora un microprocesador ATmega 328p, el mismo que el Arduino UNO. De hecho, el Hapkit board es an´alogo al Arduino UNO, pero adem´as incorpora un lector de tarjeta SD y una etapa de potencia basada en un m´odulo L298N. Con ´esto se consigue reducir el n´umero cables ´unicamente a las conexiones positiva y negativa del motor, convirti´endose en un controlador todo en uno para este dispositivo. 2.5. Sistema sensorial El sistema dispone de un sensor de posici´on anal´ogico. Al igual que en la mayor´ıa de dispositivos haptic paddle, se ha incorporado un sensor magn´etico que mide las variaciones del campo magn´etico generado por un im´an acoplado al eje del motor, este im´an tiene la particularidad de inducir campo magn´etico de forma radial, as´ı, cuando el motor gira, se produce una variaci´on del campo magn´etico que es le´ıda por el sensor. Adem´as, y diferenciando as´ı este dise˜no del resto de dispositivos haptic paddle, se ha incorporado un sensor de fuerzas con el objetivo de poder implementar esquemas de teleoperaci´on bilateral de fuerza-posici´on entre dos dispositivos. En futuros experimentos se a˜nadir´a un circuito de acondicionamiento de la se˜nal producida por el sensor de fuerzas que permita que ´esta pueda ser le´ıda y procesada en el microcontrolador. 3. USO DOCENTE DEL DISPOSITIVO La versatilidad del dispositivo se demuestra en la gran cantidad de ramas de la autom´atica y la mecatr´onica en las que puede tener una aplicaci´on directa, en esta secci´on se comentan algunas de ellas, habi´endose realizado experimentos de modelado y simulaci´on de sistemas y teleoperaci´on. Para la realizaci´on de las pr´acticas se ha dise˜nado un bloque de simulink que se suministra a los alumnos como plantilla. Dicho bloque puede parametrizarse para trabajar con diferentes entradas y salidas para poder implementar m´as de una paleta en un ´unico microcontrolador, como es el caso de los sistemas bilaterales. Este bloque recibe como entrada el par deseado y proporciona como salida
la posici´on angular de la palanca. La obtenci´on de la velocidad se realiza externamente mediante el uso de bloques de derivada discreta. 3.1. Modelado y simulaci´on de sistemas din´amicos El haptic paddle permite reproducir el comportamiento de modelos de distintos sistemas f´ısicos de un solo grado de libertad. Como pr´actica inicial se ha implementado un modelo en Simulink de un amortiguador con muelle y fricci´on (figura 3). El diagrama de simulink es muy visual y autoexplicativo. No hay necesidad de dedicar tiempo de la asignatura a introducir el uso de la herramienta de desarrollo. Torque Angle Load UMA Haptic Paddle K (z-1) Ts z Discrete Derivative kv Damping kp Stiffness Position Velocity Figura 3: Modelo de un sistema din´amico de un amortiguador en Simulink Si bien, el dispositivo h´aptico carece de sensor de velocidad, ´esta puede ser calculada por el propio modelo usando los bloques de las librer´ıas est´andares de simulink. 3.2. Interacci´on con entornos virtuales Una de las aplicaciones de los haptics es la de implementar la interacci´on del usuario con entornos virtuales, que devuelvan las fuerzas resultantes de interactuar con elementos virtuales como paredes. En la figura 4 se muestra el ejemplo t´ıpico de pared virtual, similar al modelo del amortiguador, pero donde las ganancias son mucho m´as elevadas y se introducen discontinuidades mediante bloques de tipo switch. 3.3. Identificaci´on de sistemas Para realizar la tarea de identificaci´on de sistemas se propone el uso de la herramienta System Identification del entorno Matlab. La identificaci´on consiste en obtener un modelo del sistema completo. Para ello se programa el dispositivo mediante un Torque Angle Load UMA Haptic Paddle K (z-1) Ts z Discrete Derivative kv Damping kp Stiffness > 0 Switch 0 No contact Force Position Velocity Figura 4: Modelo del contacto con una pared virtual localizada en la posici´on central. modelo implementado en Simulink. En dicho modelo se exportan al espacio de trabajo las componentes de la entrada y la salida del sistema. De esta manera se obtiene una variable de tipo iddata que puede ser importada directamente desde la aplicaci´on System Identification. 3.4. Control por computador Una vez que se han identificado los par´ametros de modelo din´amico del dispositivo, se pueden dise˜nar e implementar distintos tipos de controladores y estrategias de control, como en el caso del sistema mostrado en la figura 5. El uso del modelo del dispositivo permite adem´as ejecutar las aplicaciones de autoajuste de controladores para alcanzar las especificaciones de control deseadas. Torque Angle Load Plant P Reference PID(z) Discrete PID Controller Error Controlled Variable Figura 5: Implementaci´on de un sistema de control PID discreto de la posici´on del haptic No obstante las limitaciones del rango de movimiento de ±40◦restringen la variedad de aplicaciones en este campo.
3.5. Teleoperaci´on y telerrob´otica El principal objetivo de este dispositivo es desarrollar actividades pr´acticas de teleoperaci´on con un dispositivo real de un grado de libertad. La docencia en teleoperaci´on y telerrob´otica est´a marcada por el uso de entornos de simulaci´on, por lo que disponer de un equipo de pr´acticas de bajo coste, como el que se expone en este art´ıculo, resulta una opci´on muy interesante e innovadora de cara a explicar y analizar algunos problemas t´ıpicos de teleoperaci´on, como programaci´on de entornos h´apticos, an´alisis de la estabilidad, programaci´on de sistemas bilaterales o modelado y evitaci´on de los efectos del retardo en la comunicaci´on. Estos problemas se exponen en [5, 10, 9, 14, 3]. Para la implementaci´on de sistemas bilaterales con bajo retardo, se pueden conectar dos paletas h´apticas a un mismo controlador. Se utilizan dos entradas anal´ogicas distintas y el puente H doble permite accionar dos motores independientemente. En la figura 6 se muestra dicha configuraci´on. Figura 6: Dos dispositivos haptic paddle conectados a un solo controlador para implementar sistemas bilaterales sin retardo de comunicaci´on. Con el fin de mostrar la capacidad del dispositivo para servir como herramienta pr´actica para teleoperaci´on, se ha implementado un esquema b´asico de posici´on-posici´on (figura 7). Dicho esquema incorpora una ganancia de control proporcional para el maestro Kmy otra para el esclavo Ks, donde el error es la diferencia de posici´on entre maestro y esclavo. Es decir, la posici´on de los dispositivos maestro y esclavo depende proporcionalmente de la posici´on del otro. As´ı se consigue una configuraci´on en la que el esclavo sigue al maestro, pudiendo considerarse, por tanto, maestro el dispositivo que es manipulado por el usuario y esclavo el que lo sigue. En la figura 8 se representa el comportamiento de los dispositivos en dicha configuraci´on. Al tratarse de un esqueSlave Master Torque Angle Velocity Load Master Torque Angle Velocity Load Slave km Master Gain ks Slave Gain Figura 7: Esquema b´asico de sistema de teleoperaci´on bilateral de tipo posici´on-posici´on ma bilateral sim´etrico pueden intercambiarse los papeles del maestro y del esclavo. Si bien, en este esquema no se tienen en cuenta las velocidades, sirve como punto de partida para experimentar. En concreto, en la figura 8 se muestran las trayectorias de un experimento en el que se intercambian los roles de maestro y esclavo. No obstante, el pobre rendimiento del esquema posici´on-posici´on y la escasa transparencia del sistema, pueden ser mejoradas si se a˜nade al dispositivo esclavo un sensor de fuerzas para medir la interacci´on con el entorno. Este esquema (V´ease figura 9) se denomina fuerza-posici´on, mejora la calidad de la realimentaci´on de fuerzas y permite implementar esquemas de control bilateral m´as avanzados. 4. RESULTADOS Y CONCLUSIONES A la vista de los resultados obtenidos, se puede concluir que el dispositivo est´a listo para ser utilizado como herramienta docente en pr´acticas de teleoperaci´on. Asimismo, se han expuesto una serie de disciplinas en las que podr´ıan desarrollarse actividades pr´acticas con este dispositivo. Los experimentos se han realizado desde Simulink con el objetivo de poder mostrar la eficacia de la ingenier´ıa basada en modelos. Los experimentos futuros ser´an demostrar este hecho mediante evaluaciones realizadas en el aula con seminarios o actividades pr´acticas por alumnos. Adem´as, se propone la elaboraci´on de diferentes actividades pr´acticas a desarrollar en las distintas disciplinas ya comentadas en las que se ponga en uso el dispositivo. No obstante, el UMA haptic paddle a´un est´a en fase de desarrollo y durante la realizaci´on de los
0 2 4 6 8 10 12 14 16 18 20 time (s) -50 -40 -30 -20 -10 0 10 20 30 40 50 angle (º) position-position haptic1 haptic2 master: haptic1 slave: haptic2 master: haptic2 slave: haptic1 Figura 8: Trayectorias obtenidas durante la ejecuci´on de un sistema bilateral del tipo posici´on-posici´on. En la parte izquierda se puede observar c´omo el dispositivo denominado haptic1 lleva la configuraci´on de maestro y es seguido por el haptic2, ocurriendo lo contrario en la parte derecha de la gr´afica Slave Master Torque Angle Velocity Load Master Torque Angle Velocity Load Slave kf Force Gain ks Slave Gain Slave Forces Figura 9: Esquema b´asico de sistema de teleoperaci´on bilateral de tipo fuerza-posici´on programado en simulink experimentos se han encontrado los problemas que se enumeran a continuaci´on, junto con algunas posibles soluciones: 1. En primer lugar cabe comentar que la baja capacidad computacional del ATMega 328P ha impedido la implementaci´on de algunos esquemas complejos en Simulink. Como soluci´on se propone el uso de un microcontrolador con mayor capacidad computacional, como el Arduino DUE o el Arduino MEGA. 2. Por otro lado, la implementaci´on del m´odulo L298 en el Hapkit board, al igual que en la mayor´ıa de los m´odulos para Arduino con este circuito integrado, no es la ideal. ´ Esta posee dos se˜nales digitales de control de la direcci´on del motor, y otra se˜nal PWM para el control de la potencia entregada. Sin embargo, una configuraci´on con una se˜nal digital que habilita la salida del motor del puente H y dos se˜nales de control PWM tanto para direcci´on como para potencia resulta dar una salida m´as lineal. 3. Asimismo, el sensor de posici´on anal´ogico impide que se pueda leer la posici´on correctamente si se trabaja a velocidades altas. Una posible soluci´on ser´ıa implementar un motor de corriente continua con un encoder digital. Agradecimientos Este proyecto ha sido patrocinado por Seeed Studio (seeedstudio.com) que ha suministrado los componentes electr´onicos utilizados. Los materiales y equipos utilizados para la impresi´on 3D de los prototipos han sido cedidos por Jes´us Manuel G´omez de Gabriel. Este trabajo han sido parcialmente financiado por el Proyecto de Innovaci´on Educativa de la Universidad de M´alaga PIE15-180. Referencias [1] Candelas Her´ıas, F. A. and S´anchez Moreno, J. (2005). Recursos did´acticos basados en internet para el apoyo a la ense˜nanza de materias del ´area de ingenier´ıa de sistemas y autom´atica. [2] Dormido, S., S´anchez, J., and Morilla, F.
(2000). Laboratorios virtuales y remotos para la pr´actica a distancia de la autom´atica. In XXI Jornadas de Autom´atica, Conferencia plenaria. [3] Funda, J. and Paul, R. P. (1991). Efficient control of a robotic system for time-delayed environments. In Advanced Robotics, 1991.’Robots in Unstructured Environments’, 91 ICAR., Fifth International Conference on, pages 219– 224. IEEE. [4] Gil, J., Mu˜noz, A., Torres, V., and G´omez, J. (2014). Uso de simulink y arduino para pr´acticas de rob´otica. XXXV Jornadas de Autom´atica. Valencia. [5] Gil, J. J., Avello, A., Rubio, A., and Florez, J. (2004). Stability analysis of a 1 dof haptic interface using the routh-hurwitz criterion. Control Systems Technology, IEEE Transactions on, 12(4):583–588. [6] G´omez de Gabriel, J. M., Mu˜noz Ram´ırez, A. J., and Fern´andez Lozano, J. J. (2015). Ingenier´ıa basada en modelos en pr´acticas de rob´otica. [7] Gorlewicz, J. L., Kratchman, L. B., and WEBSTER III, R. J. (2014). Haptic paddle enhancements and a formal assessment of student learning in system dynamics. Advances in Engineering Education, 4(2). [8] Gorlewicz, J. L. and Webster III, R. J. (2012). A formal assessment of the haptic paddle laboratories in teaching system dynamics. In American Society for Engineering Education. American Society for Engineering Education. [9] Lau, H. and Wai, L. (2005). Implementation of position–force and position–position teleoperator controllers with cable-driven mechanisms. Robotics and Computer-Integrated Manufacturing, 21(2):145–152. [10] Niemeyer, G., Preusche, C., and Hirzinger, G. (2008). Telerobotics. In Springer handbook of robotics, pages 741–757. Springer. [11] Okamura, A. M., Richard, C., Cutkosky, M., et al. (2002). Feeling is believing: Using a forcefeedback joystick to teach dynamic systems. Journal of Engineering Education, 91(3):345– 349. [12] Richard, C., Okamura, A. M., and Cutkosky, M. R. (1997). Getting a feel for dynamics: Using haptic interface kits for teaching dynamics and controls. In 1997 ASME IMECE 6th Annual Symposium on Haptic Interfaces, Dallas, TX, Nov, pages 15–21. [13] Rose, C. G., French, J. A., and O’Malley, M. K. (2014). Design and characterization of a haptic paddle for dynamics education. In Haptics Symposium (HAPTICS), 2014 IEEE, pages 265–270. IEEE. [14] Sheridan, T. B. (1993). Space teleoperation through time delay: review and prognosis. Robotics and Automation, IEEE Transactions on, 9(5):592–606. [15] Stanford. Stanford university. hapkit. http://hapkit.stanford.edu/index.html. [16] TaisLab. https://github.com/taislab/hapticpaddle. http://taislab.uma.es. [17] TaisLab. Universidad de m´alaga. http://taislab.uma.es.