0% encontró este documento útil (0 votos)
52 vistas27 páginas

Manual 1 Basico Go Robotica

MANUALES DE ROBOTICA REALIZADAS POR EL PROFESOR LUIS IVAN DORANTES GOMEZ, INSTRUTOR EN PROYECTOS DE ROBOTICA, ESTE MANUAL ES PARA ALUMNOS DE NIVEL BASICO Y MEDIO SUPERIOR, PARA EL DESARROLLO LOGICO COGNITIVO EN PROGRAMACION ARDUINO DESARROLLANDO SUS HABILIDADES EN DISEÑO, ELECTYRONICA Y MECANICA

Cargado por

ivan do
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
52 vistas27 páginas

Manual 1 Basico Go Robotica

MANUALES DE ROBOTICA REALIZADAS POR EL PROFESOR LUIS IVAN DORANTES GOMEZ, INSTRUTOR EN PROYECTOS DE ROBOTICA, ESTE MANUAL ES PARA ALUMNOS DE NIVEL BASICO Y MEDIO SUPERIOR, PARA EL DESARROLLO LOGICO COGNITIVO EN PROGRAMACION ARDUINO DESARROLLANDO SUS HABILIDADES EN DISEÑO, ELECTYRONICA Y MECANICA

Cargado por

ivan do
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 27

ROBÓTICA

Manual 1

Programación ARDUINO

Instructor:
LUIS IVAN DORANTES GOMEZ
LUIS IVÁN LIC. INFORMATICA
LIC. EDUCACIÓN PRIMARIA
DORANTES GOMEZ MAESTRÍA EN ADMINISTRACIÓN
DIR. DE GO ROBÓTICA Y GESTIÓN EDUCATIVA
PRESIDENTE DE A.C. EDUKAB PROGRAMADOR C++,
LENGUAJE ARDUINO
CLUNI: EEU18032430S69
DESARROLLADOR DE APP

En Colaboración

INFORMES

Go Coatzacoalcos

9211988158
Índice

1.1 Introducción al Arduino.

¿Qué es Arduino? Pág. 1

Pines de alimentación (Power Pins)

Digital Inputs/Outputs Pág. 2

1.2 Primeros pasos con Arduino

Descarga del IDE (Software) de Arduino Pág.3

Ejecutamos la aplicación Arduino

1.3 Funciones básicas para su programación.

E/S Digitales Pág. 4

analogWrite (pin, valor) Pag. 5

1.4 Diodo led y resistencias eléctricas

¿Qué es un LED? Pag. 5

¿Qué es una Resistencia? Pag. 6

1.5 Ejemplo de aplicación.

Practica 1…14 Pag. 6 - 19

Practicas Extraordinarias Pag. 20 - 21


1.1 Introducción al Arduino.

¿Qué es Arduino?

Arduino es una herramienta y una plataforma desarrollo de computación física (physical computing)
de código abierto, basada en una placa con un sencillo microcontrolador y un entorno de desarrollo
para crear software (programas) para la placa.

Puedes usar Arduino para crear objetos interactivos, leyendo datos de una gran variedad de
interruptores y sensores y controlar multitud de tipos de luces, motores y otros actuadores físicos.
Los proyectos con Arduino pueden ser autónomos o comunicarse con un programa (software) que
se ejecute en tu ordenador. el software de desarrollo es abierto y lo puedes descargar gratis desde
la página: https://www.arduino.cc/

El Arduino puede ser alimentado a través de la conexión USB o con una fuente de alimentación
externa. (recomendada de 7-12V), vamos a tener unas salidas de tensión continúa debido a unos
reguladores de tensión y condensadores de estabilización.

Pines de alimentación (Power Pins)

Estos pines son:

VIN: se trata de la fuente tensión de entrada que contendrá la tensión a la que estamos alimentando
al Arduino mediante la fuente externa.

5V: fuente de tensión regulada de 5V, esta tensión puede venir ya sea de pin VIN a través de un
regulador interno, o se suministra a través de USB o de otra fuente de 5V regulada.

3.3V: fuente de 3.3 voltios generados por el regulador interno con un consumo máximo de corriente
de 50mA.

GND: pines de tierra.

1
Digital Inputs/Outputs

Cada uno de los 14 (0-13) pines digitales se puede utilizar como una entrada o salida. Cada pin
puede proporcionar o recibir un máximo de 40 mA y tiene una resistencia de pull-up (desconectado
por defecto) de 20 a 50 kOhm. Además, algunos pines tienen funciones especializadas como:

 Pin 0 (RX) y 1 (TX). Se utiliza para recibir (RX) y la transmisión (TX) de datos serie TTL.
 Pin 2 y 3. Interrupciones externas. Se trata de pines encargados de interrumpir el programa
secuencial establecido por el usuario.
 Pin 3, 5, 6, 9, 10 y 11. PWM (modulación por ancho de pulso). Constituyen 8 bits de salida
PWM con la función analogWrite ().
 Pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estos pines son de apoyo a la comunicación
SPI.
 Pin 13. LED. Hay un LED conectado al pin digital 13. Cuando el pin es de alto valor, el LED
está encendido, cuando el valor está bajo, es apagado. Analog Inputs

El Arduino posee 6 entradas analógicas, etiquetadas desde la A0 a A5, cada una de las cuales
ofrecen 10 bits de resolución (es decir, 1024 estados). Por defecto, tenemos una tensión de 5V, pero
podemos cambiar este rango utilizando el pin de AREF y utilizando la función analogReference (),
donde le introducimos una señal externa de continua que la utilizara como referencia.

2
1.2 Primeros pasos con Arduino

Descarga del IDE (Software) de Arduino Una vez que conocemos todo el pin necesario para
nuestro manejo y control del Arduino, vamos a instalar el software para poder programarlo mediante
el ordenador.

Contamos la placa Arduino Conectamos la placa Arduino al ordenador usando el cable USB, una
vez conectada el led de la placa PWR (led de alimentación) deberá permanecer encendido a partir
de ahora.

Instalamos los drivers Al conectar el Arduino, Windows automáticamente deberá de inicializar la


instalación de los drivers.

Ejecutamos la aplicación Arduino, seleccionamos la placa y el puerto serie.

Una vez abierta la aplicación nos vamos al Comando “Herramienta”, Seleccionamos: Placa:
Arduino/Genuino UNO

Una vez seleccionado el modelo de nuestra placa tendremos que seleccionar el dispositivo serie
de la placa:

3
Una vez que tenemos configurada nuestra placa Arduino al ordenador, vamos a estudiar la estructura
del lenguaje de programación de Arduino.

Cargar el programa a la placa. Una vez que tenemos desarrollado el programa completo para
cargarlo en el Arduino solo tenemos que:

Copilar o Verificar subir

1.3 Funciones básicas.

E/S Digitales

pinMode (Pin, Modo)

Configura el pin especificado para comportarse como una entrada (INPUT) o una salida
(OUTPUT).

Ejm: pinMode (Pin13, OUTPUT) pinMode(Pin13,INPUT)

digitalWrite (pin, valor)

Asigna el valor HIGH (5V) o LOW (0V) a un pin digital.

Ejm: digitalWrite (Pin13, HIGH); digitalWrite(Pin13 , LOW);

4
analogWrite (pin, valor)

Escribe un valor analógico (PWM) en un pin. Puede ser usado para controlar la luminosidad de un
LED o la velocidad de un motor y los valores de analogWrite van desde 0 a 255

Parámetros:

 pin: Es el pin en el cual se quiere generar la señal PWM.


 valor: El ciclo de trabajo deseado comprendido entre 0 (siempre apagado) y 255 (siempre
encendido).

Ejm: val = analogRead(analogPin); analogWrite(ledPin, val );

Comunicación Serie

Se utiliza para la comunicación entre la placa Arduino y un ordenador u otros dispositivos. Todas las
placas Arduino tienen al menos un puerto serie Serial. Se comunica a través de los pines digitales 0
(RX) y 1 (TX),

Serial.begin(speed)

Establece la velocidad de datos en bits por segundo (baudios) para la transmisión de datos en serie.
Para comunicarse con el ordenador, utilice una de estas velocidades: 300, 1200, 2400, 4800, 9600,
14400, 19200, 28800, 38400, 57600 o 115200.

Ejm: Serial.begin(9600);

Serial.read () Lee los datos entrantes del puerto serie. Ejm; Byte = Serial.read();

1.4 Diodo led

Vamos a explicar que es un LED, o mejor dicho un diodoLED.

Los diodos son componentes electrónicos que permiten el paso de la corriente en un solo sentido,
Los Diodos Leds tienen dos patillas de conexión una larga (-) y otra corta (). Para que pase la
corriente y emita luz se debe conectar la patilla larga al polo positivo y la corta al negativo. En caso
contrario la corriente no pasará y no emitirá luz. En la imagen siguiente vemos un diodo led por
dentro.

5
¿Qué es una Resistencia?

La Resistencia Eléctrica es la oposición o dificultad al paso de la corriente eléctrica. Cuanto más se


opone un elemento de un circuito a que pase por el la corriente, más resistencia tendrá.

El valor de una resistencia de este tipo viene determinado por su código de colores. Vemos en la
figura anterior varias resistencias, y como las resistencias vienen con unas franjas o bandas de
colores. Estas franjas, mediante un código, determinan el valor que tiene la resistencia.

Para saber el valor de una resistencia tenemos que fijarnos que tiene 3 bandas de colores seguidas
y una cuarta más separada. Las 3 primeras bandas nos dicen su valor, la cuarta banda nos indica la
tolerancia, es decir el valor + - el valor que puede tener por encima o por debajo del valor que marcan
las 3 primeras bandas. Para aprender a calcular el valor de una resistencia visita el siguiente enlace:
Código de Colores de Resistencias.

Tipos de Resistencias

- Resistencias fijas: Son las que presentan un valor que no podemos modificar.

- Resistencias variables: Son las que presentan un valor que nosotros podemos variar
modificando la posición de un contacto deslizante. A este tipo de resistencia variables se le
llama Potenciómetro.

- Resistencias especiales: Son las que varían su valor en función de la estimulación que
reciben de un factor externo (luz, temperatura...). Por ejemplo, las LDR son las que varían
su valor en función de la luz que incide sobre ellas.

6
1.5 Ejemplo de Aplicación

Practica 1: Crear un programa que controle el parpadeo de un led, con las funciones anteriormente
explicadas, y que se pueda variar el tiempo de estado alto y el tiempo de estado bajo del mismo.
Utilizar la instrucción delay(ms), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: Podemos asignar la función que encienda y apague a cualquier pin digital, exceptuando
el 0 y 1, como comentamos anteriormente, por lo tanto, si asignamos el pin 13 como el responsable
de esta función, el circuito a montar es muy sencillo y el código de programación para el control del
parpadeo del LED sería:

7
Practica 2: Crear un programa que controle el parpadeo de un led, con las funciones anteriormente
explicadas, y que se pueda variar el tiempo de estado alto y el tiempo de estado bajo del mismo.
Utilizar la instrucción delay(500), que hace |que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución:

8
Practica 3: Crear un programa que controle el encendido de dos leds, con las funciones
anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el tiempo de estado bajo
del mismo. Utilizar la instrucción delay(1000), que hace que el programa se pare y espere el tiempo
seleccionado en milisegundos.

Solución: se agrega un pinMode(12,OUTPUT);

9
Practica 4: Crear un programa que controle el encendido de dos leds, al prender uno primero y lo
apague y después encienda el otro y lo apague con las funciones anteriormente explicadas, y que
se pueda variar el tiempo de estado alto y el tiempo de estado bajo del mismo.

Utilizar la instrucción delay(1000), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: se agrega un pinMode(12,OUTPUT);

10
Practica 5: Crear un programa que controle el encendido de dos leds, y los prenda al mismo tiempo,
con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el
tiempo de estado bajo del mismo.

Utilizar la instrucción delay(500), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: se agrega un pinMode(12,OUTPUT);

11
Practica 6: Crear un programa que controle el encendido de tres leds, y los prenda al mismo tiempo,
con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el
tiempo de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: se agrega un pinMode(11, OUTPUT);

12
Practica 7: Crear un programa que controle el encendido de tres leds, y los prenda uno a la vez, con
las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el tiempo
de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: en esta práctica le pondremos un de retardo delay(250); en los LOW

13
Practica 8: Crear un programa que controle el encendido de tres leds, y los prenda uno a la vez, con
las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el tiempo
de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos.

Solución: en esta práctica le quitaremos el retardo delay(250); en los LOW y observemos la


diferencia del programa.

41
4
Practica 9: Crear un programa que controle el encendido de 4 leds, y los prenda todos a la vez, con
las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el tiempo
de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos. Utilizando los pines del 13 a 10.

Solución: en esta práctica el retardo delay(250); todos en HIGH y después todos el LOW.

41
5
Practica 10: Crear un programa que controle el encendido de cuatro leds, y los prenda uno a la
vez, con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y
el tiempo de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo
seleccionado en milisegundos. Utilizando los pines del 13 a 10.

Solución:

41
6
Practica 11: Crear un programa que controle el encendido de cinco leds, y los prenda uno a la vez,
con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto y el
tiempo de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos. Utilizando los pines del 13 a 9.

Solución:

41
7
Practica 12: Crear un programa que controle el encendido de cinco leds, y los prenda todos al mismo
tiempo, con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto
y el tiempo de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos. Utilizando los pines del 13 a 9.

Solución

41
8
Practica 13: Crear un programa que controle el encendido de seis leds, y los prenda todos al mismo
tiempo, con las funciones anteriormente explicadas, y que se pueda variar el tiempo de estado alto
y el tiempo de estado bajo del mismo.

Utilizar la instrucción delay(250), que hace que el programa se pare y espere el tiempo seleccionado
en milisegundos. Utilizando los pines del 13 a 8.

Solución

41
9
Practica 14: Crear un programa que controle el encendido de seis leds, y los prenda los leds en
sentido de un semáforo, con las funciones anteriormente explicadas, y que se pueda variar el
tiempo de estado alto y el tiempo de estado bajo del mismo.

Utilizar la instrucción delay(3000), que hace que el programa se pare y espere el tiempo
seleccionado en milisegundos. Utilizando los pines del 13 a 8.

Solución

42
0
Practicas Extraordinarias

42
1
Practicas Extraordinarias

21
Proyecto de tecnología de robótica alumno de 4 grado

Video en Uxpanapa, Veracruz en comunidad Rural e Indígena


Aplicaciones de Go Robótica

App: focos Go Robótica GoCarRobotica

GoAraneae143 SILABARIO

AutoBrazoGoRobotico

También podría gustarte