APLICACIONES DE LA INFORMÁTICA
Discapacidad, robótica, domótica
3. ROBÓTICA
A) Antecedentes
La necesidad cada vez más acuciante de aumentar la productividad y conseguir productos acabados de una calidad uniforme, está haciendo que la industria gire cada vez más hacia una automatización basada en el ordenador. En el momento actual, la mayoría de la tareas de fabricación automatizadas se realizan mediante máquinas de uso especial diseñadas para realizar funciones predeterminadas en un proceso de manufacturación. La inflexibilidad y generalmente el alto coste de estas máquinas, a menudo llamadas sistemas de automatización duros, han llevado a un interés creciente en el uso de robots capaces de efectuar una variedad de funciones de fabricación en un entorno de trabajo mas flexible y a un menor coste de producción.
La palabra robot proviene de la palabra checa robota, que significa trabajo. El diccionario Webster define a robot como un dispositivo automático que efectúa funciones ordinariamente asignadas a los seres humanos. Con esta definición, se pueden considerar que las lavadoras son robots. Una definición utilizada por el Robot Institute of America da una descripción más precisa de los robots industriales: un robot es un manipulador reprogramable multifuncional diseñado para mover materiales, piezas o dispositivos especializados, a través de movimientos programados variables para la realización de una diversidad de tareas. En suma, un robot es un manipulador reprogramable de uso general con sensores externos que pueden efectuar diferentes tareas de montaje. Con está definición, un robot debe poseer cierta inteligencia que se debe normalmente a los algoritmos de computación asociados con su sistema de control y sensorial.
Un robot industrial es un manipulador de uso general controlado por ordenador que consiste en algunos elementos rígidos conectados en serie mediante articulaciones prismáticas o de revolución. El final de la cadena está fijo a una base soporte, mientras el otro extremo está libre y equipado con una herramienta para manipular objetos o realizar cadenas de montaje. El movimiento de las articulaciones resulta en, o produce, un movimiento relativo de los distintos elementos. Mecánicamente, un robot se compone de un brazo y una muñeca más una herramienta. Se diseña para alcanzar una pieza de trabajo localizada dentro de su volumen de trabajo. El volumen de trabajo es la esfera de influencia de un robot cuyo brazo puede colocar el submontaje de la muñeca en cualquier punto dentro de la esfera. El brazo generalmente se puede mover con tres grados de libertad. La combinación de estos movimientos orienta la pieza de acuerdo a la configuración del objeto para facilitar su recogida. Estos tres últimos movimientos se denominan a menudo elevación (pitch), desviación (yaw) y giro (roll). Por tanto para un robot con seis articulaciones, el brazo es el mecanismo de posicionamiento, mientras que la muñeca es el mecanismo de orientación.
Muchos robots industriales, que están disponibles comercialmente, se utilizan ampliamente en tareas de fabricación y de ensamblaje, tales como manejo de material, soldaduras por arco y de punto, montajes de piezas, pintura, carga y descarga de máquinas controladas numéricamente, exploraciones espaciales y submarinas, investigación de brazos protésicos y en el manejo de materiales peligrosos. Estos robots caen en una de las tres categorías que definen movimientos básicos:
- Coordenadas cartesianas (tres ejes lineales) (ejemplo: robot RS-1 de IBM y robot Sigma de Olivetti).
- Coordenadas cilíndricas (dos ejes lineales y uno rotacional) (ejemplo: robot Versatran 600 de Prab).
- Coordenadas esféricas (un eje lineal y dos rotacionales) (ejemplo: Unimate 2000B de Unimation Inc.).
La mayoría de los robots industriales de hoy en día, aunque están controlados por mini y microcoordenadores, son básicamente simples máquinas posicionales. Ejecutan una tarea dada mediante la grabación de secuencias preregistradas o preprogramadas de movimientos que han sido previamente guiadas o enseñadas por el usuario con un control de mando portátil. Más aún, estos robots están equipados con pocos o ningún sensor externo para obtener la información vital en su entorno de trabajo. Como resultado de esto, los robots se utilizan principalmente en tareas repetitivas relativamente simples. Se está dedicando un gran esfuerzo de investigación para mejorar el rendimiento global de los sistemas manipuladores.
B) Desarrollo histórico
La palabra robot se introdujo en la escuela inglesa en 1921 con el drama satírico R.U.R. de Karel Capek (Rossum Universal Robots). En este trabajo, los robots son máquinas que se asemejan a los seres humanos, pero que trabajan sin descanso. Inicialmente, los robots se fabricaron como ayudas para sustituir a los operarios humanos, pero posteriormente los robots se vuelven contra sus creadores, aniquilando a toda la raza humana. La obra de Capek es en gran medida responsable de algunas de las creencias mantenidas popularmente acerca de los mismos en nuestro tiempo, incluyendo la perfección de los robots como máquinas humanoides dotadas con inteligencia y personalidades individuales.
Esa imagen se reforzó en la película alemana de robots Metropolis, de 1926, con el robot andador eléctrico y su perro Sparko, representada en 1939 en la Feria Mundial de Nueva York, y más recientemente por el robot C3PO, protagonista en la película de 1977, La Guerra de las Galaxias. Ciertamente los robots industriales modernos parecen primitivos cuando se comparan con las expectativas creadas por los medios de comunicación durante las pasadas décadas.
Los primeros trabajos que condujeron a los robots industriales de hoy en día se remontan al período que siguió inmediatamente a la Segunda Guerra Mundial. Durante los años finales de la década de los cuarenta, comenzaron programas de investigación en Oak Ridge y Argonne National Laboratories para desarrollar manipuladores mecánicos controlados de forma remota para manejar materiales radiactivos. Estos sistemas eran del tipo maestro-esclavo, diseñados para reproducir fielmente los movimientos de mano y brazos realizados por un operario humano. El manipulador maestro era guiado por el usuario a través de una secuencia de movimientos, mientras que el manipulador esclavo duplicaba a la unidad maestra tan fidedignamente tal como le era posible. Posteriormente se añadió la realimentación de la fuerza acoplado mecánicamente el movimiento de las unidades maestro y esclavo de forma que el operador podía sentir las fuerzas que se desarrollaban entre el manipulador esclavo y su entorno. A mediados de los años cincuenta, el acoplo mecánico se sustituyó por sistemas eléctricos e hidráulicos en manipuladores tales como el Handyman de General Electric y el Minotaur I construido por General Mills.
El trabajo sobre manipuladores maestroesclavo fue seguido rápidamente por sistemas más sofisticados capaces de operaciones repetitivas autónomas. A mediados de los años cincuenta, George C. Devol desarrolló un dispositivo que él llamó dispositivo de transferencia articulada, un manipulador cuya operación podía ser programada (y, por tanto cambiada) y que podía seguir una secuencia de pasos de movimientos determinados por las instrucciones en el programa. Posteriores desarrollos de este concepto por Devol y Joseph F. Engelberger condujo al primer robot industrial, introducido por Unimation Inc. en 1958. La clave de este dispositivo era el uso de un ordenador en conjunción con un manipulador para producir una máquina que podía ser enseñada para realizar una variedad de tareas de forma automática. Al contrario que las máquinas de automatización de uso dedicado, estos robots se podían reprogramar y cambiar de herramienta a un coste relativamente bajo para efectuar otros trabajos cuando cambiaban los requisitos de fabricación.
Aunque los robots programados ofrecían una herramienta de fabricación nueva y potente, se hizo patente en los años sesenta que la flexibilidad de estas máquinas se podía mejorar significativamente mediante el uso de una realimentación sensorial. Al comienzo de esa década, H.A.Ernst publicó el desarrollo de una mano mecánica controlada por ordenador con sensores táctiles. Este dispositivo, llamado el MH-1, podía sentir bloques y usar esta información para controlar la mano de manera que apilaba los bloques sin la ayuda de un operario. Este trabajo es uno de los primeros ejemplos de un robot capaz de conducta adaptativa en un entorno razonablemente no estructurado. El sistema manipulativo consistía en un manipulador ANL, modelo 8, con seis grados de libertad, controlado por una ordenador TX-O mediante un dispositivo de interfase. Este programa de investigación posteriormente evolucionó como parte del proyecto MAC, y se le añadió una cámara de televisión para comenzar la investigación sobre la percepción en la máquina. Durante el mismo período Tomovic y Boni desarrollaron una mano prototipo provista con un sensor de presión que detectaba el objeto y proporcionaba una señal de realimentación de entrada a un motor para iniciar uno de los modelos de aprehensión. Una vez que la mano estaba en contacto con el objeto, se enviaba a una ordenadorinformación proporcional a su tamaño y peso mediante estos elementos sensibles a la presión. En 1963, la American Machine y Foundry Company (AMF) introdujo el robot comercial VERSATRAN. Comenzando en este mismo año, se desarrollaron diversos diseños para manipuladores, tales como el brazo Roehampton y el Edinburgh.
A finales de los años sesenta, McCarthy y su colegas en el Stanford Artificial Intelligence Laboratory publicaron el desarrollo de un ordenador con manos, ojos y oídos (es decir, manipuladores, cámaras de TV y micrófonos). Demostraron un sistema que reconocía mensajes hablados, veía bloques distribuidos sobre una mesa y los manipulaba de acuerdo con instrucciones. Durante este período, Pieper estudió el problema cinemático de un manipulador controlado por ordenador, mientras que Kahn y Roth [1971] analizaban la dinámica y el control de un brazo restringido utilizando control bangbang (casi de tiempo mínimo).
Mientas tanto, otros países (en particular Japón) comenzaron a ver el potencial de los robots industriales. Ya en 1968, la compañía japonesa Kawasaki Heavy Industries negoció una licencia con Unimation para sus robots. Uno de los desarrollos más poco usuales en robots sucedió en 1969, cuando se desarrolló un camión experimental por la General Electric para la Armada Americana. En el mismo año se desarrolló el brazo Boston y al año siguiente el brazo Stanford, que estaba equipado con una cámara y controlado por ordenador. Algunos de los trabajos más serios en robótica comenzaron cuando estos brazos se utilizaron como robots manipuladores. Un experimento en el brazo Stanford consistía en apilar automáticamente bloques de acuerdo con diversas estrategias. Esto era un trabajo muy sofisticado para un robot automatizado de esa época. En 1974, Cincinnati Milacron introdujo su primer robot industrial controlado por ordenador. Lo llamó The Tomorrow Tool (la herramienta del mañana) o T3, que podía levantar más de 45 kg así como seguir a objetos móviles en una línea de montaje.
Durante los años setenta se centró un gran esfuerzo de investigación sobre el uso de sensores externos para facilitar las operaciones manipulativas. En Stanford, Bolles y Paul, utilizando realimentación tanto visual como de fuerza, demostraron que un brazo Stanford controlado por ordenador, conectado a un Digital PDP-10, efectuaba el montaje de bombas de agua de automóvil. Hacía la misma época, Will y Grossman en IBM desarrollaron un manipulador controlado por ordenador con sensores de contacto y fuerza para realizar montajes mecánicos en una máquina de escribir de veinte piezas. Inoue, en el Artificial Intelligence Laboratory del MIT, trabajó sobre los aspectos de inteligencia artificial de la realimentación de fuerzas. Se utilizó una técnica de búsqueda de aterrizajes, propia de la navegación aérea, para realizar el posicionado inicial de una tarea de montaje precisa. En el Draper Laboratory, Nevins y colaboradores investigaron técnicas sensoriales basadas en el control coordinado de fuerza y posición. Este trabajo desarrolló la instrumentación de un dispositivo remote center compliance (RCC) (centro remoto de control coordinado de fuerza y posición) que se unió a la placa de montaje de la última articulación del manipulador para cerrar el conjunto de coincidencias de piezas. Bejczy, en el Jet Propulsion Laboratory, desarrolló una técnica de control de par basada en ordenadorsobre su brazo Stanford ampliado para proyectos de exploración espacial. Desde entonces han sido propuestos diversos métodos para manipuladores mecánicos.
Hoy día vemos la robótica como un campo de trabajo mucho más amplio que el que teníamos simplemente hace unos pocos años, tratando con investigación y desarrollo en una serie de áreas interdisciplinarias, que incluyen cinemática, dinámica, planificación de sistemas, control, sensores, lenguajes de programación e inteligencia de máquina.
C) Cinematica y dinamica del brazo del robot
La cinemática del brazo del robot trata con el estudio analítico de la geometría del movimiento de un brazo de robot con respecto a un sistema de coordenadas de referencia fijo sin considerar las fuerzas o momentos que originan el movimiento. Así, la cinemática se interesa por la descripción analítica del desplazamiento espacial del robot como una función del tiempo, en particular de las relaciones entre la posición de la variables de articulación y la posición y orientación del efecto final del brazo del robot.
Hay dos problemas fundamentales en la cinemática del robot. El primer problema se suele conocer como el problema cinemático directo, mientras que el segundo es el problema cinemático inverso. Como las variables independientes en un robot son las variables de articulación, y una tarea se suele dar en términos del sistema de coordenadas de referencia, se utiliza de manera más frecuente el problema cinemático inverso. Denavit y Hartenberg en 1955 propusieron un enfoque sistemático y generalizado de utilizar álgebra matricial para describir y representar la geometría espacial de los elementos del brazo del robot con respecto la un sistema de referencia fijo. Este método utiliza una matriz de transformación homogénea 4 x 4 para describir la relación espacial entre dos elementos mecánicos rígidos adyacentes y reduce el problema cinemático directo a encontrar una matriz de transformación homogénea 4 x 4 que relaciona el desplazamiento espacial del sistema de coordenadas de la mano al sistema de coordenadas de referencia. Estas matrices de transformación homogéneas son también útiles en derivar las ecuaciones dinámicas de movimiento del brazo del robot. En general, el problema cinemático inverso se puede resolver mediante algunas técnicas. Los métodos utilizados más comúnmente son el algebraico matricial, iterativo o geométrico.
La dinámica del robot, por otra parte, trata con la formulación matemática de las ecuaciones del movimiento de un manipulador son un conjunto de ecuaciones matemáticas que describen la conducta dinámica del manipulador. Tales ecuaciones de movimiento son útiles para simulación en ordenadordel movimiento del brazo, el diseño de ecuaciones de control apropiadas para el robot y la evaluación del dise-ño y estructura cinemática del robot. El modelo dinámico real de un brazo se puede obtener de leyes físicas conocidas tales como las leyes de Newton y la mecánica lagrangiana. Esto conduce al desarrollo de las ecuaciones dinámicas de movimiento para las distintas articulaciones del manipulador en términos de los parámetros geométricos e inerciales especificados para los distintos elementos. Se pueden aplicar sistemáticamente enfoques convencionales como las formulaciones de Lagrange-Euler y de Newton-Euler para desarrollar las ecuaciones de movimientos del robot.
D) Planificacion de la trayectoria y control del movimiento del manipulador
Con el conocimiento de la cinemática y la dinámica de un manipulador con elementos series, sería interesante mover los actuadores de sus articulaciones para cumplir una tarea deseada controlando al manipulador para que siga un camino previsto. Antes de mover el brazo, es de interés saber si hay algún obstáculo presente en la trayectoria que el robot tiene que atravesar (ligaduras de obstáculos) y si la mano del manipulador necesita viajar a lo largo de una trayectoria especificada (ligaduras de trayectoria). El problema del control de un manipulador se puede dividir convenientemente en dos subproblemas coherentes: el subproblema de planificación de movimiento (o trayectoria) y el subproblema de control del movimiento.
La curva espacial que la mano del manipulador sigue desde una localización inicial (posición y orientación) hasta una final se llama la trayectoria o camino. La planificación de la trayectoria (o planificador de trayectoria) interpola y/o aproxima la trayectoria deseada por una clase de funciones polinomiales y genera una secuencia de puntos de consignas de control en función del tiempo para el control del manipulador desde la posición inicial hasta el destino.
En general, el problema de control de movimientos consiste en: 1) obtener los modelos dinámicos del manipulador, 2) utilizar estos modelos para determinar leyes o estrategias de control para conseguir la respuesta y el funcionamiento del sistema deseado. Desde el punto de vista de análisis de control, el movimiento del brazo de un robot se suele realizar en dos fases de control distintas. La primera es el control del movimiento de aproximación en el cual el brazo se mueve desde una posición/orientación inicial hasta la vecindad de la posición/orientación del destino deseado a lo largo de una trayectoria planificada. El segundo es el control del movimiento fino en el cual el efector final del brazo interacciona dinámicamente con el objeto utilizando información obtenida a través de la realimentación sensorial para completar la tarea.
Los enfoques industriales actuales para controlar el brazo del robot tratan cada articulación como un servomecanismo de articulación simple. Este planteamiento modela la dinámica de un manipulador de forma inadecuada porque desprecia el movimiento y la configuración del mecanismo del brazo de forma global. Estos cambios en los parámetros del sistema controlado algunas veces son bastante significativos para hacer ineficaces las estrategias de control por realimentación convencionales. El resultado de ello es una velocidad de respuesta y un amortiguamiento del servo reducido, limitando así la precisión y velocidad del efector final y haciéndolo apropiado solamente para limitadas tareas de precisión.. Los manipuladores controlados de esta forma se mueven a velocidades lentas con vibraciones innecesarias. Cualquier ganancia significativa en el rendimiento de esta y otras áreas de control del brazo del robot requieren la consideración de modelos dinámicos más eficientes, enfoques de control sofisticados y el uso de arquitecturas de ordenadors dedicadas y técnicas de procesamiento en paralelo.
E) Sensores del robot
La utilización de mecanismos sensores externos permite a un robot interaccionar con su entorno de una manera flexible, esto esta en contraste con operaciones preprogramadas en las cuales a un robot se le enseña para efectuar tareas repetitivas mediante un conjunto de funciones preprogramadas. Aunque esto último es con mucho la forma más predominante de operación de los robots industriales actuales, la utilización de tecnología sensorial para dotar a las máquinas con un mayor grado de inteligencia al tratar con su entorno es realmente un tema de investigación y desarrollo activo en el campo de la robótica.
La función de los sensores del robot se pueden dividir en dos categorías principales: estado interno y estado externo. Los sensores del estado interno tratan con la detección de variables tales como la posición de la articulación del brazo, que se utiliza para controlar el robot. Por otra parte, los sensores de estado externo tratan con la detección de variables tales como alcance, proximidad y contacto. Los sensores externos se utilizan para guiado de robots, así como para la identificación y manejo de objetos. Aunque los sensores de proximidad, contacto y fuerza juegan un papel significativo en la mejora del funcionamiento del robot, se reconoce que la visión es la capacidad sensorial más potente del robot. La visión del robot se puede definir como el proceso de extraer, caracterizar e interpretar información de imágenes de un mundo tridimensional. Este proceso, también comúnmente conocido visión de máquina o de ordenador, se puede subdividir en seis áreas principales:
1) sensor
2) preprocesamiento
3) segmentación
4) descripción
5) reconocimiento
6) interpretación.
Es conveniente agrupar estas diversas áreas de visión de acuerdo con la sofisticación que lleva su desarrollo. Consideramos tres niveles de procesamiento: visión de bajo, medio y alto nivel. Aunque no existen fronteras nítidas entre estas subdivisiones, proporcionan un marco útil para categorizar los distintos procesos que son componente inherentes de un sistema de visión por máquina. En nuestra discusión, trataremos los sensores y el preprocesamiento como funciones de visión de bajo nivel. Esto nos llevará desde el propio proceso de formación de imagen hasta compensaciones tales como la reducción de ruido, y finalmente a la extracción de características primitivas de imágenes tales como discontinuidades en la intensidad. Asociaremos con la visión de medio nivel aquellos procesos que extraen, caracterizan y etiquetan componentes en una imagen resultante de la visión de bajo nivel. En términos de nuestras seis subdivisiones, trataremos la segmentación, descripción y reconocimiento de objetos individuales como funciones de visión de medio nivel. La visión de alto nivel se refiere a procesos que intentan emular el conocimiento.
F) Lenguajes de programación de robots
Un gran obstáculo en la utilización de los manipuladores como máquinas de uso general es la falta de comunicación eficaz y apropiada entre el usuario y el sistema robótico, de forma que éste pueda dirigir al manipulador para cumplir una tarea dada. Hay algunas formas de comunicarse con un robot, y los tres grandes enfoques para lograrlo son: el reconocimiento de palabra discreta, enseñar y reproducir y lenguajes de programación de alto nivel. El estado actual del reconocimiento de voz es bastante primitivo y generalmente depende del orador. Pueden reconocer un conjunto de palabras discretas de un vocabulario limitado y normalmente requiere que el usuario pare entre palabras. Aunque es posible reconocer palabras en tiempo real debido a componentes de ordenadormás rápidos y algoritmos de procesamientos eficientes, la utilidad del reconocimiento de palabras discretas para describir una tarea es limitada. Más aún, requiere una gran cantidad de memoria para almacenar el discurso, y normalmente se necesita un período de entrenamiento para incorporar patrones de voz con fines de reconocimiento.
El método de enseñar y reproducir lleva consigo el instruir al robot al dirigirlo a través de los movimientos que va a realizar. Esto se suele efectuar en los pasos siguientes:
1) dirigir al robot en movimiento lento utilizando control manual a través de la tarea de montaje completa, siendo grabados los ángulos de las articulaciones del robot en posiciones apropiadas con el fin de reproducir el movimiento;
2) edición y reproducción del movimiento enseñado, y
3) si el movimiento enseñado es correcto, entonces el robot lo ejecuta a una velocidad apropiada de forma repetitiva. Este método se conoce también como guiado y es el enfoque más comúnmente utilizado en los robots industriales de hoy día. Un planteamiento más general para resolver los problemas de comunicación hombre-robot es la utilización de programación de alto nivel. Los robots se utilizan comúnmente en áreas tales como soldadura por arco, soldadura de punto y pintura al spray". Estas tareas no requieren interacción entre el robot y el entorno y se pueden programar fácilmente mediante guiado. Sin embargo, el uso de robots para efectuar tareas de montaje requiere generalmente técnicas de programación de alto nivel. Se necesita este esfuerzo porque el manipulador se controla normalmente por una ordenador, y la manera más efectiva para que los humanos se comuniquen con las ordenadors es a través de un lenguaje de programación de alto nivel. Más aún, al utilizar programas para describir tareas de montaje, permite a un robot efectuar trabajos diferentes simplemente ejecutando el programa apropiado. Esto aumenta la flexibilidad y versatilidad del robot.
G) Inteligencia del robot
Un problema básico en robótica es la planificación de movimiento para resolver alguna tarea preespecificada, y luego controlar al robot cuando ejecuta las órdenes necesarias para conseguir esas acciones. Aquí planificación significa decidir un curso de acción antes de actuar. Esta parte de síntesis de acción del problema del robot se puede lograr mediante un sistema de resolución de problemas que logrará algún objetivo marcado, dada alguna situación inicial. Un plan es así una representación de un curso de acción para lograr un objetivo dado.
La investigación sobre resolución de problemas con robots ha conducido a muchas ideas acerca de los sistemas para la resolución de problemas en inteligencia artificial. En una formulación típica de un problema de robot tenemos un robot que esta equipado con sensores y un conjunto de acciones primitivas que puede realizar en algún mundo fácil de comprender. Las acciones del robot cambian un estado o configuración del mundo en otro. En el mundo de bloques, por ejemplo, imaginamos un mundo de algunos bloques etiquetados colocados en una mesa o uno sobre otro y un robot consistente en una cámara de televisión y un brazo móvil que es capaz de tomar y mover bloques. En algunas situaciones, el robot es un vehículo móvil con una cámara de TV que efectúa tareas tales como empujar objetos de un sitio en un entorno que contiene otros objetos.
La discusión hace énfasis en la resolución del problema o aspectos de planificación de un robot. Un planificador de robot intenta encontrar una trayectoria desde nuestro mundo del robot inicial hasta un mundo del robot final. El camino consiste en una secuencia de operaciones que se consideran primitivas para el sistema. Una solución a un problema podría ser la base de una secuencia correspondiente de acciones físicas en el mundo físico. La planificación de robots, que proporciona la inteligencia y la capacidad de resolución de problemas a un sistema robótico, es todavía un área de investigación muy activa. Para aplicaciones de robots en tiempo real, necesitaremos algoritmos de planificación potentes y eficaces que se ejecutarán por sistemas de ordenadors de uso especial a alta velocidad.
Si bien el hombre ha buscado crear máquinas que puedan realizar las mismas tareas que él, ahora su meta va más allá: lograr que éstas no sólo reproduzcan conductas inteligentes, sino que lo hagan utilizando los mismos principios que se han descubierto en los seres vivos y en particular en el hombre.
Esta ciencia llamada robótica etológica o fisiológica pretende que la naturaleza indique los caminos. Estos robots permiten a los investigadores entender algunas funciones imposibles de desentrañar directamente a través de la experimentación animal.
La universidad de Guadalajara (México) ofrece un interesante tutorial sobre robótica.
...ANTERIOR INICIO
Contenidos por:
Programa Informática Aplicada al Trabajo Social
Universidad de Murcia
18/09/05
|