¿Qué es la robótica? (Introducción a la robótica y microcontroladores)

Hazlo tú mismo

Gustavo Hernández Heras

Fecha: 2017-11-20


¿Que es la robotica? Arduino y Microcontroladores 

En pleno siglo XXI en donde la tecnología está presente en nuestra vida diaria, es común usar un vocabulario técnico para referirnos a las cosas y actividades que nos rodean. Sin embargo cuando se le pregunta a las personas, ¿qué es la robótica? tienen confusiones al momento de definirla. En la mayoría de los casos, describen que es lo relacionado con máquinas de apariencia humana o hacen referencia a lo conocido por películas de ciencia ficción.

 

¿Qué es la robótica?

La robótica es una rama interdisciplinaria de la ingeniería, que se desprende de las ingenierías mecánica, electrónica, eléctrica, teoría del control y de las ciencias de la computación. Estudia el análisis, diseño, manufactura y aplicación de máquinas automáticas con cierto grado de inteligencia, capaces de realizar tareas que pueden reemplazar las actividades de un ser humano.

 

¿Qué es un robot?

Un robot es una maquina programable que posee cierto grado de inteligencia, es capaz de ejecutar tareas de manera automática en función de las decisiones que toma basándose en la estructura de su programa.

Hasta aquí podemos concluir que la robótica es un área de la tecnología encargada del diseño, investigación y desarrollo de robots, que pueden ejecutar tareas específicas para las que han sido programados.

 

Clasificación de la robótica

Veamos ahora los campos de aplicación de la robótica, los cuales son muchos y muy variados.

  • Robótica industrial: Encargada del diseño de robots que permiten realizar tareas relacionadas al proceso de ensamble y manufactura de componentes a nivel industrial, como son: ensamble de autopartes, clasificación de piezas, posicionamiento de componentes electrónicos, empaquetado de alimentos, control de calidad, etc. El objetivo principal es reducir el costo y tiempo de producción, reducir los errores por manufactura humana y mejorar los procesos.
     

 

  • Robótica de servicio: Se enfoca en el diseño de robots que proporcionan servicios a los seres humanos. Un robot de servicio opera de manera totalmente o parcialmente autónoma. Las tareas comunes de este tipo de robots son: sistemas de cirugía, cuidado de personas, servicios de limpieza domestica e industrial, entretenimiento, exploración, desactivación de bombas, minería, rescate, etc.
     

 

  • Robótica espacial: Esta área  se enfoca en el diseño de robots para la actividad espacial como es la exploración planetaria o la asistencia en órbita. Entre muchas otras cosas, son utilizados para obtener muestras del terreno y  estudiar la composición del suelo y de la atmosfera. Un ejemplo son los robots Spirit y Oportunity cuya misión fue realizar labores de investigación para detectar posibles índices de la existencia de agua en el planeta Marte.
     


 

Como podemos darnos cuenta hoy en día la robótica juega un papel fundamental en el desarrollo tecnológico del siglo XXI debido a que se encuentra involucrada en infinidad de áreas con las que nos relacionamos día con día. Tambien es un área extremadamente apasionante, a la vez tan flexible para poder investigar e innovar en todos los campos, solucionando los problemas que se encuentran en la sociedad, y a la vez tan compleja que requiere años de práctica y de estudios en ciencia y tecnología avanzada. Sin embargo no es un área únicamente reservada para profesionales, cualquier persona interesada en el tema puede realizar proyectos robóticos que pueden ir desde lo amateur hasta lo más avanzado e inimaginable.  

Es por esto, que en esta serie de artículos de la serie “Robótica para no ingenieros” nos enfocaremos en el desarrollo de proyectos que te permitirán adquirir los conocimientos básicos para poder desarrollar proyectos de robótica. 

Arquitectura de un robot

¿Sabías que los robots están integrados por grupos de componentes que al interactuar entre ellos hacen posibles su funcionamiento?

Estos elementos son piezas mecánicas, electrónicas y electromecánicas, algunos ejemplos son engranes, soportes, tornillos, dispositivos electrónicos, sensores, motores y muchas otras  pieza.

Estos componentes se agrupan en conjuntos llamados sistemas. Hagamos una analogía de los sistemas principales de un robot y el cuerpo humano que nos permitirá entender con mejor claridad.

Sistema sensorial vs sentidos

Los seres humanos adquirimos información del mundo real a través de los cinco sentidos: tacto, gusto, olfato, oído y vista. De la misma manera un robot debe obtener información del medio, y esto es posible por medio de los sensores, existen sensores de todo tipo: temperatura, posición, presión, aceleración, etc. Los cuales veremos con detalle en artículos posteriores.

Sistema de control vs cerebro

Día con día, debemos tomar decisiones con base en la información que obtenemos del medio, nuestro cerebro recibe millones de datos que debe procesar a una velocidad asombrosa y en tiempo real, y así, mandar determinadas acciones a nuestro cuerpo. Análogamente todo robot, dispone de una unidad de procesamiento que le permite analizar y operar sobre los datos obtenidos a través de los sensores, para poder tomar decisiones basándose en la estructura de su programación.

Sistema mecánico vs cuerpo humano

Una de las partes más importantes del ser humano, es el cuerpo, pues es la estructura integrada por músculos, huesos, articulaciones, etc. Y que hacen posible tener libertad de movimiento, de lo contrario solo seriamos seres inanimados. De la misma manera todo robot posee una estructura que le permite tener un soporte rígido y hace posible su movimiento, los motores, actuadores lineales como pistones y engranes para la transmisión de movimiento son algunos ejemplos de componentes que integran el sistema mecánico.

Microcontroladores

En esta primera entrega  nos vamos a enfocar en el sistema de control, y específicamente de los microcontroladores que son la unidad de procesamiento central en muchos de los robots y hacen posible la toma de decisiones para ejecutar todo tipo de tareas.

Un microcontrolador es un circuito integrado programable, que ejecuta las instrucciones almacenadas en su memoria, es la unidad lógica y de control en todo robot. En el mercado existen muchísimos tipos, y modelos de microcontroladores, desde los más básicos hasta los más avanzados capaces de ejecutar millones de instrucciones por segundo y controlar diversos componentes como sensores y motores a una gran velocidad.

Arduino la tarjeta de desarrollo por excelencia par no ingenieros e ingenieros.

Para elaborar nuestras prácticas utilizaremos una tarjeta de desarrollo llamada Arduino UNO desarrollada  por la empresa Italiana Arduino. Al ser una tarjeta de desarrollo, ésta ya se encuentra integrada con todos los componentes necesarios para su funcionamiento, por lo que solo necesitaras un cable USB para conectarla a la computadora y comenzar a descubrir un nuevo mundo lleno de posibilidades y creatividad. Existe gran comunidad de seguidores de Arduino, por lo que encontraras infinidad de material como: documentación, manuales, libros, proyectos listos para implementar, foros de ayuda y consulta, y mucho más,  todo esto de las demás personas que siguen la misma filosofía de Arduino “compartir el conocimiento”.

Además la plataforma Arduino ofrece una gran colección de programas y librerías listas para usar, por lo que podrás utilizarlas en cualquier momento y mejorar tus proyectos dotándolos de nuevas funcionalidades, y ¿por qué no?, también podrás crear tus propias porciones de código y compartirlas con la comunidad.

¿Dónde compro una tarjeta de desarrollo Arduino UNO?

No te preocupes que son muy comerciales, a continuación te daré algunos tips de opciones en donde podrás comprarla.

Tiendas en línea

La ventaja de esta opción es que puedes comprarla desde cualquier parte del mundo en donde te encuentres y recibir el producto por paqueteria en la puerta de tu casa, algunas de las tiendas de confianza son:

Si eres de la Ciudad de México podrás encontrarla en cualquier tienda de electrónica sobre la calle:

Republica del salvador entre Calle de Bolivar y Eje central lazaro cardenas, en el Centro histórico muy cerca del metro Isabel la católica.

Manos a la obra

Practica 1: Conociendo nuestra tarjeta Arduino

Introducción

En esta práctica prepararemos el terreno para poder desarrollar proyectos de robótica. Pretende servir de introducción para conocer los componentes básicos de la tarjeta de desarrollo Arduino UNO y el entorno de desarrollo integrado Arduino IDE

Objetivos:

  • Conocer la arquitectura básica de la tarjeta de desarrollo Arduino UNO

  • Instalación del entorno de desarrollo Arduino IDE e identificación de las secciones básicas

  • Cargar un programa a la tarjeta Arduino UNO
     


 

Arquitectura de la tarjeta Arduino UNO

Por lo pronto no daremos detalles sobre todas las partes y funcionalidades de Arduino Uno, será más interesante y divertido descubrirlas poco a poco,  por el momento basta con que aprendas las partes indicadas en la ilustración.
 

Instalando Arduino IDE

Secciones de Arduino IDE

En la siguiente imagen se muestra una captura entorno de desarrollo, hemos puesto unas etiquetas en las secciones de importancia, por el momento te recomendamos que te las aprendas.

Para nuestro primer poder trabajar con la placa Arduino UNO es necesario instalar un programa llamado Arduino IDE, este software es la herramienta de trabajo principal. En ella se escribe todo el código de instrucciones que serán enviados a nuestro Arduino UNO. A continuación te mostramos como instalarlo.

  1. Ingresa al siguiente enlace https://www.arduino.cc/en/Main/Software

  2. Elige una opción de descarga de acuerdo a tu sistema operativo. 


     

  3. En caso que desees donar a Arduino podrás hacerlo en esta sección. De lo contrario solo da clic en “Just Download”

  4.  Una vez finalizada la descarga deberás ejecutar el instalador y seguir los pasos de instalación.
     

Secciones de Arduino IDE

En la siguiente imagen se muestra una captura entorno de desarrollo, hemos puesto unas etiquetas en las secciones de importancia, por el momento te recomendamos que te las aprendas.



 

Cargando nuestro primer programa a la tarjeta.

Como se ha dicho anteriormente, Arduino UNO tiene un microcontrolador el cual se encarga de leer el programa almacenado en la memoria interna. Posteriormente interpreta las instrucciones y las ejecuta. En la siguiente imagen se muestra el proceso gráficamente.


 

Vamos a cargar un primer programa a la tarjeta Arduino

  1. Ejecuta Arduino IDE

  2. Creamos un nuevo proyecto, en Arduino reciben el nombre de Sketch. Vamos a menú Archivo/Nuevo.


     

  3. Nos abrirá un nuevo Sketch en blanco. Vamos aguardarlo nuevamente, menú Archivo/Salvar. Seleccionamos la ubicación de nuestra preferencia, y lo guardamos con el nombre “practica_1”.


                   

     

  4. Ahora podemos observar en la barra de título que nuestro Sketch aparece  con el nombre guardado.

  5. Nos aseguramos de borrar y dejar totalmente en blanco el “Área para escribir el código”, no debe apareces ninguna letra o carácter.




     

  6. Procedemos a copiar el siguiente código y pegarlo en nuestro Sketch
    //Declaracion de variables
    String nombre;
    char juego;
    char resp;
    
    void setup() {
      // put your setup code here, to run once:
      Serial.begin(9600);
      while(!Serial){
        
      }
    
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
      Serial.println("Saludos humano, ¿cuál es tu nombre?");
      while(Serial.available() == 0){
        
      }
      nombre = Serial.readString();
      Serial.print("Hola ");
      Serial.println(nombre);
      Serial.println("Soy HRN88 el sistema dentro de tu Arduino");
      Serial.println("por el momento no se realizar muchas cosas,");
      Serial.println("pero pronto podras programarme para realizar nuevas tareas:");
      Serial.println("controlar motores, leer sensores, desplegar informacion");
      Serial.println("incluso, puedo ser el sistema de control de tus robots.");
      Serial.println("Descubriremos un mundo lleno de posibilidades y creatividad");
      Serial.println();
      Serial.println("Te gustaria ver un video sobre todo lo que podras ser capaz de hacer");
      Serial.println("                Ingresa s para si o n para no");
      Serial.println();
      while(Serial.available() == 0){
     
      }
      resp = Serial.read();
      if(resp == 's'){
        Serial.println("      Genial, ingresa a esta direccion en tu navegador: ");
        Serial.println("         https://www.youtube.com/watch?v=eJg3yuAAawA");    
      }
      else if(resp == 'n'){
        Serial.println("Qué lastima te hubiera encantado");
      }
      Serial.println();
      Serial.println();
      delay(10000);
      Serial.print("Por el momento me despido, espero que el video te haya motivado "); 
      Serial.print(nombre);
      Serial.println("pronto nos veremos nuevamente, y recuerda estar al pendiente de las proximas publicaciones :)");
      Serial.println("Cerrando sesion");
      Serial.println("..........");
      while(1){}  
    
    }

  7. Debemos seleccionar que nuestro destino es una tarjeta Arduino Uno, vamos al menú Herramientas/Placas: Ahí nos despliega un submenú, en donde debemos seleccionar la opción “Arduino/Genuino UNO”


     

  8. Antes de cargar el programa es necesario compilarlo (revisar si hay errores de sintaxis). Para esto presionamos CTRL+R. Si todo sale bien nos mostrará la siguiente ventana.




     

  9. Ahora debemos conectar nuestra tarjeta Arduino a la PC por medio del cable USB, esperamos un momento para que sea reconocida por el sistema. Una vez conectada, debemos seleccionar el puerto de comunicación adecuado. En este  caso en particular es el puerto COM3, pero puede variar en función de cada equipo. También es probable que si tienes diferentes dispositivos aparezcan más de uno. Te recomendamos que después de seleccionar el puerto des clic en la opción “Obtener información de la placa” si el puerto es correcto aparecerá una ventana mostrándote información de tu tarjeta Arduino.



     

  10. Procedemos a cargar el programa presionando las teclas CTRL+U. Al realizar esto verás en el “Área de mensajes” cómo se va cargando el programa y si todo sale correctamente no se mostraran errores.
     

¿Y, ahora qué?

Hasta este punto quizá te estés preguntando para qué sirve el programa que acabas de grabar en tu Arduino. Bueno pues te daremos una pista, es solo un sencillo ejemplo que te permitirá interactuar con tu Arduino. En el código se ha simulado que tu tarjeta tiene personalidad propia y puede entablar un pequeño dialogo con Tigo. Pero no te espantes que esto no significa que tu Arduino sea un ente pensante y racional, recuerda que las maquinas son programadas para hacer lo que nosotros queremos (por ahora).

Para poder interactuar con el Arduino deberás abrir una sesión de comunicación con la terminal, esto es el canal con el que podrás comunicarte. Para ello dirige tu puntero hacia la esquina superior derecha del IDE y da clic en el icono “Monitor Serie”
 



A partir de aquí es diversión pura, así que siéntete libre de jugar con el programa.

Hasta aquí hemos terminado nuestro primer tutorial introductorio, te invitamos a estar al pendiente de nuestras nuevas publicaciones en las que daremos continuidad al tema de la robótica, tenemos preparadas sesiones muy interesantes en las que desarrollaremos un par de proyectos finales que serán de tu agrado.

Esperamos que la información presentada aquí haya sido de tu agrado. De la misma manera si tienes dudas, sugerencias o simplemente algún comentario, no dudes en contactarnos.

 



Referencias:

Web: https://www.arduino.cc/ Libros: Gonzálo Zabala. Rebotica. Guía teórica y práctica, USERS



Etiquetas: arduino,microcontroadores,robótica,electrónica

Revista Hacia El Espacio de divulgación de la ciencia y tecnología espacial de la Agencia Espacial Mexicana.