miércoles, 21 de enero de 2015


Control de belén
PRIMER PROYECTO: 
Se trata de controlar la iluminación y los motores de un belén.


Una profesora del centro nos pidió ayuda para automatizar las lámparas de varios puntos del belén y controlar la velocidad de 4 motores (noria, torno de alfarero, bomba de agua y molino).

Para el encendido de luces empleamos una placa de 8 relés y para la regulación de la velocidad de los motores hemos montado tres transistores controlados por otras tantas salidas analógicas (PWM) que se regulan mediante potenciómetro

El código del programa es el siguiente: 


MATERIALES:
  • Placa de Arduino
  • Cable USB de conexión
  • Placa de relés
  • Transistores
  • Resistencias
  • Potenciómetro

CÓDIGO:
//CONTROL DE BELÉN CON PLACA DE RELÉS Y SALIDAS ANALÓGICAS (PWM)
// Cuatro salidas a relé programadas aleatoriamente y 3 salidas PWM para control de motores
//Definición de un array con las salidas 0 a 3 para controlar 4 salidas ON/OFF. Asignación de pines digitales de salida
byte salida[]={0,1,2,3};  
//Asignación de la duración de cada periodo de activación en los que va a mantenerse una determinada secuencia de salidas digitales, en segundos
int t1=2, t2=3, t3=5;
//Asignación de las secuencias de activación de las salidas digitales
  int sec1[ ]={1,0,1,0};
  int sec2[ ]={0,1,0,1};
  int sec3[ ]={1,0,1,0};

// Declaración de las variables y asignación de las salidas reguladas
const int analogOutPin[]={9,10,11};
// Declaración de las variables y asignación de las entradas de potenciometros para ajustar el valor regulado
const int analogInPin1 = A0;
const int analogInPin2 = A1;
const int analogInPin3 = A2;  
//Declaración y asignación de las variables de salida analógicas PWM. Lo hacemos en una sola instrucción separandolas con coma
int outputValue1, outputValue2, outputValue3 = 0;
//Declaración variables con los valores medidos
int sensorValue1, sensorValue2, sensorValue3;
void setup()
{
  //Declaramos los pines del array salida[] como salidas digitales mediante un bucle
  for(int f=0; f<4 ; f++)
{
  pinMode(salida[f],OUTPUT);
  }
  //Declaramos pines del analogInPin como salidas analógicas
pinMode(analogOutPin[0],OUTPUT);
pinMode(analogOutPin[1],OUTPUT);
pinMode(analogOutPin[2],OUTPUT);
}
void loop ()
{
   /* Escritura de las tres salidas analógicas */
  // lee el valor de la entrada analógica, lo mapea a 256 valores y lo escribe a la salida analógica

   sensorValue1 = analogRead(analogInPin1);
   outputValue1 = map(sensorValue1, 0, 1023, 0, 255);
   analogWrite(analogOutPin[0], outputValue1);
   delay(500);
    sensorValue2 = analogRead(analogInPin2);
    outputValue2 = map(sensorValue2, 0, 1023, 0, 255);
    analogWrite(analogOutPin[1], outputValue2);
    delay(500);
    sensorValue3 = analogRead(analogInPin3);
    outputValue3 = map(sensorValue3, 0, 1023, 0, 255);
    analogWrite(analogOutPin[2], outputValue3);
    delay(500);
for(int i=0;i<4;i++)
{
digitalWrite(salida[i],sec1[i]);
}
delay (t1*1000);
for(int i=0;i<4;i++)
{
digitalWrite(salida[i],sec2[i]);
}
delay (t2*1000);
for(int i=0;i<4;i++)
{
  digitalWrite(salida[i],sec3[i]);
}
delay (t3*1000);
}

"Fritzing"                                       
FOTOS: 
                 
        
OBSERVACIONES:
El alumbrado se hizo con lamparitas incandescentes de 4,5V que se alimentan con una fuente de alimentación externa conectada a las salidas del módulo de relés. Las entradas del módulo de relés se pueden conectar directamente a las salidas digitales 0,1,2 y 3 y a +5V y GND de la placa Arduino.
Los motores se alimentaron mediante una fuente de alimentación externa y se conectaron a la placa Arduino mediante un transistor actuando como interruptor controlado por las salidas PWM 9, 10 y 11 de Arduino, permitiendo regular la velocidad de los motores mediante la señal de entrada de los potenciómetros.
Las corrientes de los motores pueden llegar a los 2 o 3 amperios por lo que fue necesaria una fuente de 5A.
AUTOR: Mario Baselga Carreras.  IES “Ciudad Jardín”. Badajoz

lunes, 8 de diciembre de 2014

Sensor HC-SR04

El Sensor de ultrasonidos HC-SR04

Este sensor funciona como un radar, emite una señal a una frecuencia muy alta y cronometra el tiempo que ese sonido tarda en volver al sensor después de chocar con algún obstáculo. Como la velocidad del sonido se propaga a 343 m/seg o 0,0343 cm/microseg aproximadamente (ya que trabajaremos con centímetros y microsegundos), podemos calcular el espacio que hay entre el sensor y el objeto que ha encontrado aplicando la fórmula d=v•t y lo dividimos entre 2 porque el sonido sale, rebota y vuelve.
Este sensor en concreto tiene un rango de distancias sensible entre 2cm y 3m con una precisión de 3mm.
El sensor consta de 4 pines: "VCC" se conecta a la salida de 5V de la placa, "Trig" conectado al pin digital de la placa encargado de enviar el pulso ultrasónico, "Echo" al pin de entrada digital que recibirá el eco de dicho pulso y "GND" que conectaremos a la placa de Arduino.

jueves, 27 de noviembre de 2014

MÓDULO CON SENSOR DE CORRIENTE ACS712     

Nuestro próximo trabajo consiste en instalar un sensor de intensidad por cada uno de los circuitos de nuestra instalación, con el objetivo de poder verificar el consumo y poder actuar sobre el circuito en función de la carga que tenga
Descripción:

Este módulo basado en el circuito integrado ACS712 permite medir la cantidad de corriente que pasa a través de un circuito de corriente alterna (AC) o corriente continua (DC). El método de medida es a través de un sensor de efecto hall que entrega un voltaje de salida proporcional a la corriente que hay en el circuito. El trayecto para la medida de corriente es por el interior del circuito integrado.
Características:
-Sensor lineal de efecto hall.
-Alta precisión de medida debido a la cercanía del sensor de efecto hall al elemento de paso.
-Baja resistencia del elemento de paso para una baja disipación de potencia (1.2 mΩ típico)
-Capacidad de sobrevivir a picos de corriente de hasta 5 veces la corriente nominal.
-Disponible en 2 rangos de medición: 5 y 30 amperios.
-Modelo: ACS712, basado en el chip fabricado por Allegro MicroSystems.
-Voltaje de alimentación para el chip ACS712: 5.0 volts. Ic= 10 ma.
-Incluye led indicador del voltaje de alimentación (D1)
-Aislamiento entre el sensor de corriente y la salida: 2.1 KVrms 
-La salida de voltaje es proporcional a la corriente a medir, AC ó DC.
-Error máximo de linealidad a la salida 1.5% @ 25 C.
-Sensitividad: 66 mv/A para módulo de 30 amp y 185 mv/A para módulo de 5 amp.



jueves, 30 de octubre de 2014

Desde el IES Santa Eulalia os damos la bienvenida al proyecto y os deseamos que aprendais todo lo que podais de esta nueva experiencia.
Estos son los alumnos que arrancan con nosotros en el proyecto:

IES Nombre Curso
Ciudad Jardín Delgado Rubio, Pedro Félix 1º EEC
Ciudad Jardín Guerrero González, Carlos Eduardo 1º EEC
Ciudad Jardín Marcos Escudero, Juan Alberto 1º IEA
Ciudad Jardín Suárez Ayuso, Carlos 1º IEA
Ciudad Jardín Cardona Pineda, Juan Esteban 1º SEA
Ciudad Jardín Rodríguez Durán, Jose Antonio 1º SEA
Ciudad Jardín Carrizo Moro, Borja 2º SEA
Ciudad Jardín Fariñas Coria, Eduardo 2º SEA
Extremadura Sánchez Álvarez, Daniel 1º IEA
Extremadura Rodríguez Ferrero, Daniel 2º IEA
Extremadura Corzo, Lucas 2º IEA
Extremadura Gijón Iglesias, Sergio 2º SEA
Extremadura Delgado García, Jorge 2º SEA
Extremadura García Accurso, Francisco José 2º SEA
Extremadura José Mª Moreno Bermúdez 2º SEA
Extremadura Reyes Nieto, Ángel Enrique 2º SEA
Santa Eulalia Becerra Buet, Bruno 4º DIV ESO
Santa Eulalia Cabezas Montero, Alberto Antonio 4º DIV ESO
Santa Eulalia Castro De Torres, Javier 4º DIV ESO
Santa Eulalia Castro Serrano, Alexandro 4º DIV ESO
Santa Eulalia Díaz García, Paloma 4º DIV ESO
Santa Eulalia Montero Caballero, Pablo 4º DIV ESO
Santa Eulalia Ruiz Caballero, Patricia 4º DIV ESO
Santa Eulalia Sánchez Serrano, Christian 4º DIV ESO
Santa Eulalia Segovia Guerra, Alexánder Paúl 4º DIV ESO

miércoles, 29 de octubre de 2014

Comenzamos este proyecto con muchas ganas, ilusión y grandes objetivos, aprovecho este momento para felicitar y dar la bienvenida a todos los alumnos que vais a participar y espero que al final hayamos podido compartir grandes experiencias.
Un saludo a todos.