La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Clase II: Introducción a la Programación

Presentaciones similares


Presentación del tema: "Clase II: Introducción a la Programación"— Transcripción de la presentación:

1 Clase II: Introducción a la Programación
Robótica para Todos Clase II: Introducción a la Programación

2 ¿Qué es la Programación?
Te has preguntado ¿Cómo entienden los Robots?

3 ¿Qué es la Programación?
La programación constituye un lenguaje a través del cual damos instrucciones a un sistema como un computador o un robot. ¿Alguna vez te has preguntado cómo se hizo Windows, iOS, Word, Facebook y tantos videojuegos? Larry Page y Serguéi Brin Google Mark Zuckerberg Facebook Bill Gate Microsoft Steve Jobs Apple

4 ¿Qué es un lenguaje de Programación?
La manera como los robots comprenden instrucciones al igual que los seres humanos es a través de un lenguaje o idioma. Cada lenguaje tiene su propia estructura, por lo que debemos aprender a usar el lenguaje de los robots. Los robots entienden instrucciones paso, esto se conoce como algoritmos.

5 ¿Qué es un Algoritmo? Un algoritmo es una lista de pasos o instrucciones para resolver un problema o realizar un acción. Ejemplos: Un manual de instrucciones de un electrodoméstico. Una serie órdenes que da un jefe a un empleado. Un programa computacional para indicar a un computador qué pasos específicos debe seguir para desarrollar una tarea.

6 Actividad Pygbot esta atrapado y quiere encontrar la salida, ayúdalo dándole las instrucciones necesarias. Pygbot solo entiende estas tres instrucciones. Avanzar. Girar a la Derecha Girar a la Izquierda ¡Enumera todos los pasos que necesita para salir! Paso 1. Avanzar 8 pasos. Paso 2. ¿?

7 Conecta las baterías y el motor derecho a la Tarjeta Innobot como se ilustra en la figura

8 ¡Precaución! Precaución: tener precaución cuando se desaprieten los tornillos del puerto de motores, volver a apretar nuevamente los tornillos incluso si no se están utilizando, se podrían salir muy fácilmente.

9 Programando nuestro Robot
Programación Para programar nuestros robot debemos dar instrucciones a la Unidad de Control haciendo uso del Computador.

10 Tarjeta de Control Innobot
Actividad: Identifica cada uno de los componentes de la Tarjeta de Innobot.

11 Interfaz de Programación
Para programar el Innobot debemos usar un Software o Interfaz de Programación que nos permita escribir las instrucciones deseadas. La Interfaz de Programación se llama Arduino IDE. Para instalarlo mira la Guía de Instalación de Software Innobot en

12 ¡Nuestro primer código!
#include <Innobot.h> Innobot mirobot; void setup(){ mirobot.motorOn(M1, FORWARD); } void loop(){ Copia el siguiente código en el Arduino IDE conservando las letras minúsculas y mayúsculas, los corchetes y puntos y comas, luego lo explicaremos mejor. Luego haz clic en el botón Verificar

13 Verificar nuestro código
Si has escrito correctamente el código te debería aparecer el siguiente resultado en la barra inferior de Arduino, sino deberías revisar que lo has escrito bien.

14 Conectamos la Tarjeta Innobot al Computador a través del puerto USB

15 Clic en el menú Herramientas -> Tarjetas -> Arduino Leonardo

16 Clic en Herramientas -> Puerto Serial -> COMxx
Finalmente en el botón Cargar

17 Si todo salió correctamente el robot debería GIRAR HACIA LA IZQUIERDA

18 ¿Y qué hacemos si no funciona correctamente?
El robot no gira HACIA LA IZQUIERDA

19 Hay que cambiar la polaridad de los motores intercambiando los cables

20 ¿Y como funciona el código?

21 Reto Conecta al motor izquierdo en el puerto M2 como se ilustra en la figura. Cambia en el código M1 por M2 y realiza nuevamente la prueba de polaridad con el motor Izquierdo. Recuerda Verificar y luego Cargar.

22 ¡Hasta el infinito y más allá!
#include <Innobot.h> Innobot mirobot; void setup(){ mirobot.motorOn(M1, FORWARD); mirobot.motorOn(M2, FORWARD); } void loop(){ Agrega esta línea al código y cárgalo, ¿que sucedió? El Innobot va hacia adelante. El Innobot girar a la izquierda El Innobot gira hacia la derecha El Innobot gira hacia atrás

23 a. El Innobot va hacia adelante

24 Aprendiendo el lenguaje de Programación C++
¿Qué significa void setup() y void loop()? ¿Por qué debemos escribir puntos y comas y corchetes?

25 ¿Y para qué vamos a aprender C++?
Porque es el lenguaje de programación que usamos en Arduino IDE para programar nuestro Innobot, veamos cómo funciona: En Arduino IDE siempre vamos a encontrar estas dos funciones principales: void setup() void loop() Veamos que significa cada una.

26 void setup() La función void setup() se usa para establecer las configuraciones iniciales de nuestro robot. Por ejemplo, si deseamos que los puertos sean de entrada o salida. Esta función se ejecutará una única vez cuando se conecte la energía a la tarjeta de control de Innobot o cuando se oprima el pulsador de reinicio.

27 El lenguaje C++ es sumamente preciso…
Estos son algunos errores comunes cuando usamos el void setup() Forma Incorrecta Descripción setup() Si omites void el compilador te arroja un error. voidsetup() Las palabras void y setup deben estar separadas por un espacio. void setup Si omites los paréntesis () el compilador te arroja un error. void Setup() C++ identifica minúsculas y mayúsculas: setup() no es igual a Setup()

28 Como todos los lenguajes existen
Hay grandes diferencias entre las palabras, una imprecisión puede cambiar el significado completo de una palabra. ¡En la programación sucede lo mismo! Ay, Hay, Ahí

29 void loop() La función void loop() se usa para realizar una tarea una y otra vez hasta que se desconecte la energía, loop en inglés se conoce como bucle. Ejemplos. Revisar un sensor una y otra vez, por ejemplo para evadir obstáculos. Esperar comunicación de algún mando de control. El loop es la parte activa del robot, porque allí está alojado el programa principal del robot.

30 Las llaves {} Has notado que void setup() y void loop() comienzan con una llave { , y luego terminan con otro llave } Esto significa que el robot ejecutara todo los se encuentra entre ellas void setup(){ …todas configuraciones aquí… } void loop(){ …todo el código principal aquí…

31 El punto y coma ; ¿Has notado que la mayoría de las instrucciones terminan en punta y coma? El punto y coma ; denota el fin de una instrucción, para continuar con la siguiente, si omites el punto y coma el robot no sabrás donde termina la instrucción. ;

32 Los paréntesis () ¿Has notado que las funciones pinMode, digitalWrite y delay tienen unos paréntesis ()? Se usan para ingresar los parámetros. Por ejemplo: motorOn(M1, FORWARD); tiene 2 parámetros: el motor M2 y la dirección de giro ADELANTE (FORWARD en inglés). delay(1000); tiene sólo 1 parámetro: el tiempo de espera, en este caso 1000 milisegundos.

33 ¡Gira que gira! Abre el ejemplo que se encuentra en Archivo -> Ejemplos -> Innobot > _1MotorControl

34 Giro hacia la izquierda
#include <Innobot.h> Innobot mirobot; void setup(){ } void loop(){   //Adelante   mirobot.motorOn(M1, FORWARD);   mirobot.motorOn(M2, FORWARD);   delay(2000);   //Izquierda   mirobot.motorOff(M2);   //Derecha   mirobot.motorOff(M1);   //Parar   //Atrás   mirobot.motorOn(M1, REVERSE);   mirobot.motorOn(M2, REVERSE); Hacia Adelante Giro hacia la derecha Giro hacia la izquierda Detenerse Hacia Atrás

35 ¿Por qué se repite la secuencia una y otra vez?
Porque las instrucciones de movimiento se encuentran entre los corchetes del void loop()

36 ¿Qué sucede si colocamos todo el código activo en void setup()?
#include <Innobot.h> Innobot mirobot; void setup(){ //Adelante   mirobot.motorOn(M1, FORWARD);   mirobot.motorOn(M2, FORWARD);   delay(2000);   //Izquierda   mirobot.motorOff(M2);   //Derecha   mirobot.motorOff(M1);   //Parar   //Atrás   mirobot.motorOn(M1, REVERSE);   mirobot.motorOn(M2, REVERSE); } void loop(){    ¿Qué sucede si colocamos todo el código activo en void setup()? La secuencia de movimiento se repite una y otra vez. La secuencia de movimiento sólo se hace una vez. La secuencia de movimiento no se hace nunca.

37 b. La secuencia de movimiento sólo se hace una vez.
La secuencia se hace sólo una vez porque está dentro del void setup(), si estuviera en el void loop() se repetiría muchas veces.

38 Reto Ahora podrías escribir un código que el robot realice las siguientes figuras:

39 En la próxima Clase En la próxima clase vamos ver como usar sensores, sus funcionalidades y aplicaciones


Descargar ppt "Clase II: Introducción a la Programación"

Presentaciones similares


Anuncios Google