Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Cuaderno Depracticas Arduino

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 17

CENTRO DE EDUCACIÓN ALTERNATIVA

“PAULO FREIRE”

DISTRITO EL ALTO - 3

MODUL
O DE
PROGRA
MACIO
CUADE
RNON DE
PRÁCTIC
AS
CON AUTOR: PROF. LIC. SANTIAGO LUNA LUJAN

ARDUN
O
INTRODUCCION

Este compendio de programación y Ejercicio electrónico, nos permitirá, lograr entender el uso
adecuado de la tarjeta Programable ARDUINO, el lenguaje está compuesto por códigos escritos en
ingles lo cual no nos permite un desarrollo normal en el proceso de programación, pero tampoco
es imposible, más bien es un reto lograr componer ideas que se pueden lograr y desarrollar con
facilidad.

No es necesario saber inglés a profundidad, sino los comandos y/o palabras más incidentes en el
lenguaje de programación, en el cual nos ayudaremos de los manuales colgados en las páginas de
Internet, y direcciones originales del entorno de ARDUINO, para programar.

http :// www . arduino . cc


http :// www . wiring . org . co
http :// cslibrary . stanford . edu /101/

El requisito indispensable no es más que las ganas de aprender, por supuesto lo básico de la
electrónica.

Como principio debemos entender que el entorno ARDUINO nos permitirá realizar un co-dominio
de la electrónica, y este (la electrónica) dominar el OBJETIVO con el cual, enfocamos y deseamos
dominar.

A empezar con los primeros programas y a practicar!!!!!!


PRACTICA N°1

USO DE UNA SALIDA DIGITAL


OBJETIVO: El objetivo del presente laboratorio es:

- Manipular las salidas DIGITALES de la placa arduino.


- Conocer la estructura básica de programación. (Sketch, que simplemente es
nuestro programa)

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios( rojo,rojo,café).
- Leds.

CONOCIMIENTOS TEORICOS: El entorno arduino nos permite utilizar para las entradas y
salidas DIGITALES, usar dos comandos o funciones que permiten comandar dichas
entradas.

pinMode (pin,mode); // la escritura debe hacerse tal como lo vemos escrito en esta línea.

Noten que se invoca el pin (cualquiera de los pines digitales comprendido entre 0 – 13
salidas) podemos elegir el más conveniente para el objetivo de nuestra práctica, y el
MODO de TRABAJO los cuales son OUTPUT – INPUT, salida o entrada, para el caso de la
practica OUTPUT – salidas. Este proceso se debe indicar en la primera parte de la
estructura de programación, en este caso en el void setup(){ .

En la segunda parte dela estructura en el void loop{, escribimos la acción o la utilidad.


Entradas y Salidas
Digitales
PROCEDIMIENTO: Conectar a una salida digital una resistencia de 220 ohms, en serie con
un led, con su respectiva tierra, y aplicar el siguiente programa.

void setup() {

pinMode(12,OUTPUT); // se escribe el pin a utilizar y luego OUTPUT se escribe siempre


con mayúsculas, separadas por una coma “,”

void loop() {

digitalWrite(12,HIGH); // le ordenamos que al pin digital elegido le envie un voltaje de 5v.

delay(1000); //determinamos un tiempo con “delay” en milisegundos, lo q significa que


1000 unidades es 1 seg. 500 es medio segundo.

digitalWrite(12,LOW); // ordenamos que al pin se envie 0v. que es LOW.

delay(500);

NOTA: observemos que usamos el pin digital n°12, en el setup, y en la función loop, le
ordenamos a esta salida digital que encienda al led con la palabra digitalWrite(12,HIGH); y
el delay nos presenta el tiempo del encendido del led que se calcula en milisegundos,para
un segundo entonces colocamos (1000); para el apagado digitalWrite(12,LOW); con un
tiempo de delay (1000); esta función se repite continuamente en el loop.

Armar el siguiente esquema circuital para comprobar el programa:


PRACTICA N°2

EFECTOS DE LAS SALIDAS DIGITALES


OBJETIVO: El objetivo del presente laboratorio es:

- Manipular las salidas DIGITALES de la placa Arduino.


- Usar varias salidas digitales e interactuar las salidas.

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios ( rojo,rojo,café,dorado).
- Leds.

CONOCIMIENTOS TEORICOS: conociendo la estructura dela placa, manipulamos todas las


salidas digitales, conectados a un led, y lograr varios efectos.
Entradas y Salidas
Digitales

PROCEDIMIENTO: Conectar a las salidas digitales resistencias de 220 ohms, en serie con
un led, con su respectiva tierra, y aplicar el siguiente programa.

Void setup(){
pinMode (13,OUTPUT);
pinMode (12,OUTPUT);
pinMode (11,OUTPUT);
pinMode (10,OUTPUT);
pinMode (9,OUTPUT);
pinMode (8,OUTPUT);
pinMode (7,OUTPUT);
pinMode (6,OUTPUT);
pinMode (5,OUTPUT);
pinMode (4,OUTPUT);
pinMode (3,OUTPUT);
pinMode (2,OUTPUT);
pinMode (1,OUTPUT);
pinMode (0,OUTPUT);
}

void loop(){ // siempre la llave de apertura no olvidarse


digitalWrite (13, HIGH);// las dos barras indican comentarios del programa
delay (1000);
digitalWrite (13,LOW);// este bloque solo active el pin digital 13
delay (100);

digitalWrite (12, HIGH);// activa el pin digital 12


delay (1000);
digitalWrite (12,LOW);
delay (100);

digitalWrite (11, HIGH);


delay (1000);
digitalWrite (11,LOW);
delay (100);

digitalWrite (10, HIGH);


delay (1000);
digitalWrite (10,LOW);
delay (100);

digitalWrite (9, HIGH);


delay (1000);
digitalWrite (9,LOW);
delay (100);

digitalWrite (8, HIGH);


delay (1000);
digitalWrite (8,LOW);
delay (100);

digitalWrite (7, HIGH);


delay (1000);
digitalWrite (7,LOW);
delay (100);

digitalWrite (6, HIGH);


delay (1000);
digitalWrite (6,LOW);
delay (100);

digitalWrite (5, HIGH);


delay (1000);
digitalWrite (5,LOW);
delay (100);

digitalWrite (4, HIGH);


delay (1000);
digitalWrite (4,LOW);
delay (100);

digitalWrite (3, HIGH);


delay (1000);
digitalWrite (3,LOW);
delay (100);

digitalWrite (2, HIGH);


delay (1000);
digitalWrite (2,LOW);
delay (100);

digitalWrite (1, HIGH);


delay (1000);
digitalWrite (1,LOW);
delay (100);

digitalWrite (0, HIGH); // este es el último pin a utilizar en este programa


delay (1000);
digitalWrite (0,LOW);
delay (100);

} // no olvidarse la llave de sierre

Nota.- cada sentencia debe terminar siempre con el punto y coma.


ARMAR EL SIGUIENTE ESQUEMA CIRCUITAL CON ARDUINO.

Cargar el programa a la tarjeta, observaras el efecto secuencial de las salidas, los leds se
prenderán desde el pin 13 hacia el pin 0, y volverá a empezar nuevamente desde el 13.

Realice otros efectos como las luces del auto fantástico, que los leds inicien desde los
extremos hacia el centro, y retornen a los extremos. Que los leds se enciendan los pares y
luego los impares.( practique otros efectos), manipulando el orden de programación
solamente.
PRACTICA N°3

CONEXIÓN DE PULSADOR COMO ENTRADA DIGITAL

OBJETIVO: El objetivo del presente laboratorio es:

- Manejar las entradas DIGITALES de la placa Arduino.


- Usar las salidas digitales como respuesta de una entrada.
- Modo de conectar un pulsador a una entrada digital.

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios( rojo,rojo,café,dorado).
- Leds.
- Pulsador.

PROCEDIMIENTO: Para salida digitales conectar resistencias de 220 ohms, en serie con
un led, con su respectiva tierra, conectar un pulsador en serie con ua resistencia de 10K,
aplicando en un extremo 5v. y en el otro tierra, en medio de los dos componentes es la
entrada del pin digital al arduino, luego aplicar el siguiente programa.

int botonPin = 6; // conectamos el pulsador al pin digital 6, como entrada


int ledPin = 13; // conectamos la salida al pin 13 un led
int estadoBoton = 0; // el pulsador está abierto sin presionar

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(botonPin, INPUT);
}

void loop() {
estadoBoton = digitalRead(botonPin); // analiza el pulsador en su primer estado
if (estadoBoton == HIGH) { // si está presionado ordena que se prenda el led
digitalWrite (ledPin, HIGH);
} else { // sino ordena que se apague con el siguiente comando
digitalWrite(ledPin, LOW);
}
}

Nota.- En el programa se puede emplear palabras sencillas y fáciles de descifrar y


entender. Como trabajo de este comentario, cambiar otras palabras entendibles a las
variables.
ARMAR EL SIGUIENTE ESQUEMA CIRCUITAL: Nótese que la forma de conexión para
protección de la plaqueta arduino se coloca una resistencia de 10K a tierra en serie con el
pulsador. Y al pulsador conectar 5 voltios de la misma placa.
PRACTICA N°4

USO DE LAS E/S ANALOGICAS


OBJETIVO: El objetivo del presente laboratorio es:

- Manejar las entradas ANALOGICAS de la placa Arduino.


- Usar las salidas digitales como respuesta de una entrada ANALOGICA.
- Modo de conectar un POTENCIOMETRO a una entrada ANALOGICA.

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios( rojo,rojo,café,dorado).
- Leds.
- Potenciometro de 10K

CONOCIMIENTOS TEORICOS: Las entradas y salidas comprendidas entre A0 y A5


analogicas, en la mayoria de sus aplicaciones siempre se usan como entrada. Esta entrada
tiene una resolucion de 10 bits, lo que significa que los valores que podemos leer estan
entre 0 y 1023, por su convertidor analogico digital del Arduino este lo convierte desde 0 a
255, valores digitales que significa valores entre 0V. hasta 5 voltios.

Ejemplo:

0………………..125………………….255, // como señal digital

0………………..512…………………..1023 // como señal analogica

0V………………2,5V………………….5V // en valores de salida de voltaje en los pines digitales.

Entradas y salidas
analógicas
PROCEDIMIENTO: para configurar la salida analogica debemos tomar en cuenta que solo
es permitido una entrada en voltaje de 5 voltios maximo, y lo que soporta la tarjeta
arduino,( tomar en cuenta este comentario).

Conectar el potenciometro al pin analogico A0, y la salida al pin digital 13, escribir el
siguiente programa.

int potenciometroPin = A0; // conectamos el potenciometro al pin analógico A0, como


entrada
int ledPin = 13; // conectamos la salida al pin 13 un led
int estadoPot = 0; // el potenciómetro empieza con valor cero

void setup() {
pinMode(ledPin, OUTPUT);
}

void loop() {
estadoPot = analoglRead(potenciometroPin); // analiza el pulsador en su primer estado
digitalWrite (ledPin, HIGH);
delay (estadoPot); // el tiempo depende de la regulación y el valor del potenciómetro.
digitalWrite(ledPin, LOW);
delay (estadoPot);
}

Nota.- En el programa se puede emplear palabras sencillas y fáciles de descifrar y


entender. Como trabajo de este comentario, cambiar otras palabras entendibles a las
variables.
ARMAR EL SIGUIENTE ESQUEMA CIRCUITAL: el potenciómetro debe ser conectado un
extremo a 5 voltios, y el otro extremo a tierra, el electrodo del medio del potenciómetro
esta conectado a la entrada analógica A0, como se muestra en la siguiente figura.
PRACTICA N°5

USO DE LAS VARIABLES


OBJETIVO: El objetivo del presente laboratorio es:

- EL uso adecuado de las variables en el programa de Arduino.


- Usar las salidas digitales como respuesta del programa.
- Modo de uso de datos enteros “ INT”.

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios( rojo,rojo,café,dorado).
- Leds.
- Potenciometro de 10K

CONOCIMIENTOS TEORICOS: como sabemos las variables en matematicas son incognitas


que manejan cualquier valor, como ejemplo x=5, y=8, u x=2, y=7…. etc. En la
programacion arduino las variables que se decalaran toman nombres adecuados para
identificar el uso, por ejemplo si quiero usar un potenciometro puedo usar como variable
POT., un interruptor o swich como “pulsador”, un sensor como SENSOR, o simplemente
asignar una vaiable como cualquiera “x”, “y”, “z”…..etc., palabras que sean faciles de
reconocer para nosotros y aquellos que quieran conocer tu programa.

Por otra parte el uso de TIPOS de DATOS en programacion, nos permite usar diferentes
extenciones de datos, de acuerdo a las necesidades de nuestro proyecto, como el BYTE,
INT, LONG, FLOAT, ARRAYS. En este caso usaremos el tipo de datos INT, en programacion.

PROCEDIMIENTO.- En este caso haremos uso de un circuito que ya fue armado pero nos
enfocaremos en la programacion para demostrar diferentes programas, escribir en sketch
de arduino el siguiente ejemplo:

Int pot=A0; // asignamos una entrada analogica, en potenciometro


Int pinled= 9; // asignamos el pin 13 digital como salida de un LED
int estadoPot = 0; // el potenciómetro empieza con valor cero

void setup() {
pinMode(pinLed, OUTPUT);
}

void loop() {
estadoPot = analoglRead (pot ); // analiza el potenciómetro su estado inicial
digitalWrite (pinLed, HIGH);
delay (estadoPot); // el tiempo depende de la regulación y el valor del potenciómetro.
digitalWrite(pinLed, LOW);
delay (estadoPot);
}
NOTA:_ En este ejemplo notaremos que se usa en varias lineas el termino “int” que
designa valores enteros de respuesta, esta es una función entera de datos, adema seguido
de esta función escribimos la VARIABLE, como “pot” a un potenciómetro, y “pinLed” a una
salida que se conectara un led. “estadoPot”, para conocer el momento en que la
resistencia variable indica cierta impedancia.
ARMAR EL SIGUIENTE ESQUEMA CIRCUITAL:

NOTA: para el mismo circuito podemos variar con otras variables como por ejemplo:

int sensor=A0; // asignamos una entrada analogica, en potenciometro


int led= 9; // asignamos el pin 13 digital como salida de un LED
int valorSensor = 0; // el potenciómetro empieza con valor cero

void setup() {
pinMode(Led, OUTPUT); //la variable es “led”
}

void loop() {
valorSensor = analoglRead (sensor ); // analiza el potenciómetro su estado inicial
digitalWrite (Led, HIGH);
delay (valorSensor); // el tiempo depende de la regulación y el valor del potenciómetro.
digitalWrite(led, LOW);
delay (valorSensor);
}
NOTA: lo que podemos observar es que se cambio las variables con otros nombres usuales
y conocidos, también enfatizar que cuando declaramos funciones de tipos de datos como
int, float, long, arrays, si esta antes del SETUP, se puede Visualizar en todo el programa,
también si lo declaramos dentro de la función LOOP solo sirve dentro el LOOP, o diseñado
en cierta ocasión de trabajo.
PRACTICA N°6

USO DE LOS ESTAMENTOS if, else


OBJETIVO: El objetivo del presente laboratorio es:

- EL uso adecuado de Los estamentos “if – else” en el programa de Arduino.


- Usar las salidas digitales como respuesta del programa.

MATERIALES:

- Arduino UNO.
- Resistencias de 220 ohmios( rojo,rojo,café,dorado).
- Leds.
- Potenciometro de 10K

CONOCIMIENTOS TEORICOS: el estamento “if” significa “si”, sirve para probar si una
condicion de trabajo, alcanza su probabilidad objetiva, o no logra alcanzar, para luego salir
del programa, y ejecutarlo. Como lo escribimos dentro del programa? De acuerdo a su
estructura: if (variable==valor); // la igualdad “==” varia con otros operadores como “<”,
“>”, “<=”, ”>=”, “!=” no es igual. No debemos olvidar que despues de invocar este
estamento o funcion, le acompaña una llave de apertura, seguida de la funcion que debe
ejecutar, o las instrucciones que se deben realizar, luego cerrar la respectiva instrucción
con su llave de cierre }.

Para el estamento de if-else que significa “si”….”sino”..lo que da ha entender que si


cumple la condicion se ejecuta las ordenes de trabajo, sino cumple realiza otras ordenes
de trabajo.

PROCEDIMIENTO.- En este caso haremos uso de un circuito que ya fue armado pero nos
enfocaremos en la programacion para demostrar diferentes programas, escribir en sketch
de arduino el siguiente ejemplo:

int pin_a = 13;


int pin_b = 12;
int pin_c = 11;
int pin_d = 10;
int pin_e = 9; // los pines digitales habilitados
int x= 4; // una variable desiganda con un valor de 4

void setup() {
pinMode(pin_a, OUTPUT); // declararlos como salida a cada variable
pinMode(pin_b, OUTPUT);
pinMode(pin_c, OUTPUT);
pinMode(pin_d, OUTPUT);
pinMode(pin_e, OUTPUT);
}

void loop() {
if (x > 9) { // la condicional if, que pregunta si la variable x es menor a 9, si es asi
ejecuta el siguiente programa
digitalWrite(pin_a, HIGH);
digitalWrite(pin_b, HIGH);
digitalWrite(pin_c, HIGH);
digitalWrite(pin_d, HIGH);
digitalWrite(pin_e, HIGH);
delay (500);
digitalWrite(pin_a, LOW);
digitalWrite(pin_b, LOW);
digitalWrite(pin_c, LOW);
digitalWrite(pin_d, LOW);
digitalWrite(pin_e, LOW);

} */ este programa respondera solo si x sea menor a 9, de lo contrario no ejecuta tal


programa/*
ARMAR EL SIGUIENTE ESQUEMA CIRCUITAL: Realizar con valores de “x” mayores a dos y 5

También podría gustarte