miércoles, 16 de diciembre de 2015

Primer reto!!!

Para empezar os daremos unas nociones básicas sobre Arduino.
Lo primero que hay que saber es que como todo lenguaje informático es muy estricto por lo que no podemos equivocarnos al escribir por que el ordenador no lo entendería.
Estos son los primeros pasos para empezar:
Nuestro primer reto será algo muy sencillo, encender y apagar un led.
Para empezar la configuración se pone el comando void setup () y abrimos la llave{ que significa que lo que escribamos a continuacion será lo que el ordenador detecte como configuración asi que pasaremos a la siguiente línea poniendo pinMode(<nº de pin que queremos configurar>, OUTPUT[que lo configura como salida]) y despues de cerrar el paréntesis ponemos punto y coma (;) y ya que hemos acabado la configuración pasamos a la siguiente línea en la que cerraremos la llave }
Pasaremos luego a empezar el ciclo que vamos a programar asi que se escribe void loop () y se vuelve a abrir la llave {. Pasamos a la siguiente línea y ponemos digitalWrite(<el nº de pin que queremos y hayamos asignado>, HIGH[que significa encendido al igual que LOW significa apagado]) y el punto y coma no debemos olvidarlo (;). Luego en la siguiente línea deberemos darle un delay(tiempo) de encendido en este caso y el punto y coma y luego en las dos siguientes líneas hacemos lo mismo pero apagando el led para despues cerrar la llave } y así finalizar nuestra primera configuración.
void setup() {
  pinMode(2,OUTPUT);
}

void loop() {
 digitalWrite(2,HIGH);
 delay(1000);
 digitalWrite(2,LOW);
 delay(1000);
}


martes, 15 de diciembre de 2015

Último reto! Cruce de semáforos

Ahora añadiremos el comando for que sirve para definir los pines que queremos usar para ello lo que ponemos es for(n=[nº del menor pin];n<[nº del mayor pin más uno];n++) y abrimos llave{ y lo que tenemos que hacer en pinMode es sustituir los pines por n y acordarnos de cerrar la llave}. El ++ sirve para que los pines vayan de menor a mayor


int tiempolargo=10000;
int tiempocorto=2000;
int n;
void setup () {
  for(n=3;n<9;n++){
    pinMode (n,OUTPUT);
  }
}

void loop(){
  digitalWrite(3,HIGH); digitalWrite(8,HIGH); delay (tiempolargo);
  digitalWrite(3,LOW); digitalWrite(8,LOW);
  digitalWrite(3,HIGH); digitalWrite(7,HIGH); delay(tiempocorto);
  digitalWrite(3,LOW); digitalWrite(7,LOW);
  digitalWrite(5,HIGH); digitalWrite(6,HIGH); delay(tiempolargo);
  digitalWrite(5,LOW); digitalWrite(6,LOW);
  digitalWrite(4,HIGH); digitalWrite(6,HIGH); delay(tiempocorto);
  digitalWrite(4,LOW); digitalWrite(6,LOW);
}

Ponemos los digitalWrite seguidos por que el programa lo lee de arriba a bajo en bloque y barriendolo todo por así decirlo.


Y eso es todo, si habéis conseguido hacer estos retos sin fijaros demasiado en los programas ya hechos ya sabéis lo básico de arduino

Reto 3 coche fantástico!!!

En este tercer reto vamos a enseñaros a programar las luces de del coche fantástico, para ello vamos a hacer como en el anterior tutorial, voy a escribiros el codigo abajo y voy a comentarlo


int t=800; //configura que donde pongamos t será 800
int n;
void setup(){ //comienza la configuración

pinMode(4,OUTPUT); //configurar el pin 4 como salida
pinMode(5, OUTPUT);//configurar el pin 5 como salida
pinMode(6,OUTPUT);//configurar el pin 6 como salida
pinMode(7,OUTPUT);//configurar el pin 7 como salida
}
void loop(){
digitalWrite(4,HIGH); //envía 5 voltios al pin 4
delay(t); //espera 800ms
digitalWrite(4,LOW); //asigna 0 Voltios a pin 4
delay(t);
digitalWrite(5,HIGH);
delay(t);
digitalWrite(5,LOW);
delay(t);
digitalWrite(6,HIGH);
delay(t);
digitalWrite(6,LOW);
delay(t);
digitalWrite(7,HIGH);
delay(t);
digitalWrite(7,LOW);
delay(t);
digitalWrite(6,HIGH); //envía 5 voltios al pin 6
delay(t); //espera 80ms
digitalWrite(6,LOW); //asigna 0 Voltios a pin 6
delay(t);
digitalWrite(5,HIGH);
delay(t);
digitalWrite(5,LOW);
delay(t);

}

lunes, 14 de diciembre de 2015

reto 2

En este segundo reto vamos a aprender a programar un semáforo, para ello voy a escribiros el codigo abajo y voy a comentar cada paso.

int tl=5000;// el comando int sirve para darle a una letra o pala un significado en este caso tl(iniciales de tiempo largo) significaria 5000 milisengundos(no olvideis que en el lenguaje  de arduino el tiempo viene en milisegundos)

int tc=2000;//aqui vendría a ser lo mismo que en el paso aterior pero con 2000 ms

int n;// cuando metemos el comando int n significa que cuando ponemos n mas abajo estamos trabajando sobre todas las entradas conectadas(en este caso la 3, 4 y 5)
void setup() {// void setup sirve para cofigurar el programa)

  for(n=3;n<6;n++){// sinifica que vamos a usar desde el pin 3 hasta el <6 (el 5) y que estos van a ir en orden ascedente (n++)

    pinMode(n, OUTPUT);//aqui ya empezamos a programar el semaforo( no olvidemos que n signica todos pines, es decir entradas)
  }
}
void loop(){
  digitalWrite(5,HIGH);// pin 5 le llega voltaje y esta encendido
  delay(tl);// delay es el tiempo, en este caso hemos puesto tl que no olvidemos significa 5 segundos  y que HIGH significa encendido

  digitalWrite(5, LOW);// pin 5 apagado por que no le llega voltaje, no olvidemos que LOW significa apagado
  digitalWrite(4, HIGH);// pin 4 encendido, REPETIMOS EL PROCESO ANTERIOR CON CADA UNO DE LOS PINES.
  delay(tc);
  digitalWrite(4, LOW);// pin 4 apagado
  digitalWrite(3, HIGH);
  delay(tl);
  digitalWrite(3  , LOW);
}

El esquema de montaje es este:
Y el resultado este:
Esperemos que os haya funcionado, si teneis problemas acudid a Antonio o Ignacio

 
Hola somos Antonio e Ignacio del instituto IES Miguel de Cervantes, a través de este blog trataremos de enseñar a nuestros compañeros de la clase de informatica a usar Arduino.
¿Qué es Arduino?
Arduino es una plataforma de hardware libre, basada en una placa con un microontrolador y un entorno de desarollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.
Esto significa que en este blog trataremos de enseñaros a programar una placa muy simple a través de la cual podremos desarrollar diversos proyectos cuyo unico límite es vuestra imaginación.
¡¡Esperamos que os sea de ayuda!!