Sie sind auf Seite 1von 11

TALLERES DE ARDUINO

CAS

TALLER DE ARDUINO #N 1
ELEMENTOS Y FUNCIONE S BSICAS

TALLERES DE ARDUINO

CAS

NDICE DE CONTENIDOS
introduccin ........................................................................................................................................... 3
Descripcin ........................................................................................................................................ 3
Objetivos ............................................................................................................................................. 3
Metodologa ....................................................................................................................................... 3
Algunas Reflexiones ............................................................................................................................ 4
CAS ........................................................................................................................................................ 4
Redec .................................................................................................................................................... 4
Open source y colaboracin ........................................................................................................ 5
Experiencias........................................................................................................................................... 6
Experiencia #1: Blink ..................................................................................................................... 6
Experiencia #2: Botn ................................................................................................................... 7
Experiencia #3: fade ....................................................................................................................... 9
Anexos ....................................................................................................................................................10
Anexos a: cdigos de experiencias..........................................................................................10

TALLERES DE ARDUINO

CAS

INTRODUCCIN
DESCRIPCIN
En este taller se aprender la estructura estndar de una funcin en el programa
Arduino, adems de las funciones bsicas relacionadas a componentes digitales.
OBJETIVOS
-

Aprender a crear una funcin en el comando Arduino


Aprender a usar protoboard y elementos electrnicos digitales bsicos.
Crear intuicin de cmo programar para lograr un objetivo determinado.

METODOLOGA
Cada experiencia cuenta con el marco terico necesario para realizar lo pedido. El
expositor lo explicar una vez frente a todos, para que luego cada uno se la ingenie
para lograr el objetivo.

TALLERES DE ARDUINO

CAS

ALGUNAS REFLEXIONES
CAS

El grupo Ciencia Aplicada a la Sociedad o CAS es


una comunidad que busca la auto transformacin y la
obtencin de los conocimientos necesarios para que
cada ser humano tenga la capacidad de existir en un
mundo con acceso a los recursos necesarios para el
buen vivir, de forma de que todas las necesidades
bsicas de las personas se encuentren satisfechas en
una relacin simbitica mutualista con el planeta tierra.
De esta forma la sociedad se encontrar en un contexto propicio para un desarrollo
personal de cada individuo y un desarrollo de la humanidad basado en la
colaboracin y la creatividad, conceptos ligados profundamente al Open Source.
Este objetivo se pretende lograr a travs de la materializacin de los
conceptos e ideas, charlas, talleres, proyectos, empoderamiento cognitivo y
tecnolgico e iniciativas que presenten un modelo colaborativo por sobre el actual
modelo competitivo.
Contctanos en:
cienciaaplicada.sociedad@gmail.com
www.facebook.com/cas.concienciasocial
Tenemos un grupo interno de Facebook donde mantenemos una actividad
permanente, si quieres unirte envanos un mensaje al Facebook anterior.
REDEC
La Red De Evolucin Colaborativa o RedEC es una red
de organizaciones y personas que se mueven entorno al
objetivo comn de llevar a la sociedad a un nuevo nivel en el
que existan las condiciones necesarias para desarrollarse
personal y colectivamente. Esto contempla un nuevo orden
econmico, poltico y cultural.
Por lo anterior, RedEC pretende impulsar el desarrollo
de la humanidad hacia un estado en el que las necesidades de
los individuos y grupos se encuentren satisfechas,
entendiendo como necesidad todo lo que siendo satisfecho permite a un humano
se libre y por libertad el que un individuo o grupo pueda hacer lo que su voluntad
le dicte, sin ser sometido ni someter a nadie ms.

TALLERES DE ARDUINO

CAS

OPEN SOURCE Y COLABORACIN


El concepto de Open Source se asocia a la accin de compartir el detalle de
diseo, fabricacin e implementacin de alguna creacin con la comunidad, ya sea
software, hardware, arte, ideas o cualquier obra de creacin que se pueda
compartir.
De la utilizacin de esta idea han emergido crecientes fenmenos culturales
de gran impacto en mbitos polticos, sociales, econmicos, cientficos etc.
Probablemente uno de los fenmenos ms relevantes del Open Source, es su
aspecto colaborativo. Cuando una persona comparte los derechos sobre los
detalles de alguna creacin o idea, todas las personas tendrn la capacidad de
observar esa creacin, estudiarla, replicarla y mejorarla, para compartir
nuevamente este trabajo. De esta manera se genera un esquema de desarrollo en
donde colectivamente se implementan mejoras sucesivas, entre personas que no
necesariamente poseen una relacin fuera de la obra. Es importante notar que la
mayor parte de esta forma de trabajo no proviene de un incentivo monetario, sino
que por el inters puramente colaborativo, ya sea con el fin de contribuir a alguna
causa, o simplemente por la satisfaccin obtenida de crear y compartir.
El da de hoy vivimos en un modelo basado en la competencia que se
expresa socio-econmicamente en el capitalismo, que ha desencadenado en
notables injusticias y perjuicios a la sociedad y al planeta tierra, como la
sobreexplotacin de los recursos naturales (limitados), una cultura basada en el
consumismo y una produccin intencionalmente obsolescente, por decir algunos.
Un esquema colaborativo presenta una alternativa en la que no existe la necesidad
de ganar a otro, si no que se anan fuerzas en torno a un objetivo comn con el
foco de la creacin de un objeto de alta calidad y eficiencia. Actualmente existe un
distanciamiento entre el usuario y el producto del mercado, ya que se desconoce su
funcionamiento, sus contenidos y sus procesos y suelen deteriorarse rpidamente.
Curioso notar que uno de los ndices del sistema actual para medir el bienestar
social se relacione con la cantidad de dinero que cada individuo posee, dejando de
lado su desarrollo en trminos cualitativos o valricos, como por ejemplo de su
creatividad. En la prctica esto sugiere que el mundo puede funcionar en base a
otro tipo de motivaciones fuera de las lucrativas o competitivas que son
perpetuadas por el sistema el da de hoy.
Algunos links de iniciativas motivadas por estos principios:

Arduino:
Instructables:
Open source ecology:
Open source hardware association:
Raspberry Pi:

www.arduino.cc
www.instructables.com
www.opensourceecology.org
www.oshwa.org
www.raspberrypi.org

TALLERES DE ARDUINO

CAS

EXPERIENCIAS
EXPERIENCIA #1: BLINK
INTRODUCCIN:
En esta experiencia se prender y apagar un LED, con lo que se aprender a usar
las funciones digitalWrite y pinMode y el pin digital como OUTPUT.
PRCTICA
Conecte un led a un pin digital del Arduino. El circuito equivalente es el siguiente:

TEORA
Electrnica:
Conexin de LED: Dispone de dos patas de conexin, donde la ms larga es la
positiva, por lo que debe ir al pin, y la ms corta es el negativo, por lo que debe
conectarse a tierra.
Resistencia: Es importante su conexin para disminuir la corriente que fluye por el
led, evitando as que se queme.
Conexin en protoboard: Los pines donde se conectan los cables en la protoboard
estn conectados entre s de acuerdo a la siguiente imagen:

TALLERES DE ARDUINO

CAS

Se usan colores para ilustrar que pines estn conectados entre s, adems se ilustra
con una separacin (lnea negra) que la mitad de la protoboard esta desconectada
de la otra mitad, por lo que si se desea definir como tierra, por ejemplo los pines
negros y azules, se debe conectar ambos lados de la protoboard con un cable.
Programacin:
void setup() {} : Funcin en la que se inicializan los pines de entrada y salida,
adems de las condiciones iniciales. Slo se ejecuta una vez.
void loop() { } : Funcin que forma el cuerpo principal de tu programa, una vez
que se finaliza se vuelve a ejecutar.
pinMode(#Pin, X) : Indica que el pin nmero #Pin enva 5V (X=OUTPUT) o recibe
hasta 5V(X=INPUT)
digitalWrite(#Pin, X) : Indica que el pin nmero #Pin enva 5V (X=HIGH) o enva 0V
(X=LOW). Slo es usable si el pin es de salida (OUTPUT) y digital.
delay(#tiempo) : Indica que el programa esperar una cantidad #tiempo de
milisegundos.
CDIGO
Con las funciones anteriores escriba un cdigo que haga que el led se apague y
prenda con un segundo de diferencia.
Cdigo en Anexos.
EXPERIENCIA #2: BOTN
INTRODUCCIN
En esta experiencia se aprender a prender un led al apretar un botn. Las
funciones aprendidas sern if y digitalRead.
PRCTICA
Al circuito anterior agregue un botn conectado por un lado a 5[V] y por el otro a
un pin digital y a tierra, pasando por una resistencia.
El circuito a realizar es el siguiente

TALLERES DE ARDUINO

CAS

TEORA
Electrnica
Pulsador: Dispositivo que al ser presionado cortocircuitea dos de sus terminales
(pares sealados en la figura a continuacin). En caso contrario se encuentra en
circuito abierto (no fluye corriente por l).

Programacin
digitalRead(#Pin) : Devuelve HIGH si recibe 5[V] o LOW si recibe 0[V]. Slo es
usable si el pin es de entrada (INPUT) y digital.
if(){} : Si ocurre la instruccin dentro del parntesis, se ejecuta la accin entre
llaves.
CDIGO
Escriba un cdigo que haga que al estar el botn en estado HIGH se ejecute la
funcin creada en la Experiencia 1. De lo contrario, el led se encontrar apagado.
Para ayuda ver Anexos.

TALLERES DE ARDUINO

CAS

EXPERIENCIA #3: FADE


INTRODUCCIN
En esta experiencia se proceder igual que la Experiencia 1, pero cuando se
presione el pulsador se controlar la luminosidad de un led a travs de un pin
digital PWM.
PRCTICA
Se conecta un led de forma normal, pero el pin digital al que se conecte debe ser
PWM (en arduino stos estn sealados con una colita de chancho al lado del
nmero del pin). Adems, se conecta un pulsador de la forma explicada en la
Experiencia 2.

TEORA
PWM: Modulacin por ancho de pulso. Es una onda digital cuadrada donde la
frecuencia es constante, pero vara el tiempo durante el cual la seal est
encendida.
CDIGO
Si el pulsador est en su estado natural el led actuar con un blink. Si se pulsa, el
pin PWM regular la intensidad de luz de acuerdo al ancho de su pulso.
Ayuda en Anexos.

TALLERES DE ARDUINO

CAS

ANEXOS
ANEXOS A: CDIGOS DE EXPERIENCIAS
CDIGO EXPERIENCIA #1:
/* Haremos que un Led parpadee
Definiremos el nombre de nuestro led a prender
y le asignaremos el pin al que esta conectado.*/
int pinLed=8;
// Ajustemos las entradas y salidas de voltaje.
void setup(){
pinMode(pinLed, OUTPUT);
}
// Colocamos lo que se repetir eternamente.
void loop(){
//Encendemos el led.
digitalWrite(pinLed, HIGH);
//Esperamos 1000ms (=1segundo).
delay(1000);
//Apagamos el Led.
digitalWrite(pinLed, LOW);
//Volvemos a esperar 1s.
delay(1000);
//Ahora el loop comienza nuevamente!
}

CDIGO EXPERIENCIA #2:


int led=8;
int boton=9;
int estadoBoton;
void setup(){
//Se declara la salida.
pinMode(led,OUTPUT);
//Se define la entrada.
pinMode(boton,INPUT);
//Se da una condicin inicial.
digitalWrite(led,LOW);
}
void loop(){
//Se lee si el botn ha sido presionado.
estadoBoton=digitalRead(boton);
//Si fue presionado, dir HIGH.
//En Arduino HIGH es igual a true, por lo que se puede usar
//como condicin estadoBoton==HIGH, o simplemente estadoBoton.

10

TALLERES DE ARDUINO
if(estadoBoton){
digitalWrite(led,HIGH);
delay(1000);
digitalWrite(led,LOW);
delay(1000);
}
}

CDIGO EXPERIENCIA #3:


int led=8;
int boton=9;
void setup(){
//Se declara la salida.
pinMode(led,OUTPUT);
//Se define la entrada.
pinMode(boton,INPUT);
//Se da una condicin inicial.
digitalWrite(led,LOW);
}
void loop(){
if(digitalRead(boton)==0){
//Blink.
digitalWrite(led,HIGH);
delay(500);
digitalWrite(led,LOW);
delay(500);
}
else{
//Fade.
for(int i=0;i<=255;i+=5){
analogWrite(led,i);
delay(100);
}
}
}

11

CAS

Das könnte Ihnen auch gefallen