Grupos de trabajo

Imagen de fondo del tipo de comunidad

Se trata de desarrollar en la práctica diferentes proyectos con Arduino de forma que se ponga de manifiesto las dificultades que pueden presentarse para los alumnos, se compruebe la posibilidad real de ejecutarlos en clase y los conocimientos que se adquieren al implementar los proyectos.

Blog Blog

maqueta puerto

Hola,

Este año como el año pasado hemos seleccionado para el proyecto integrado de este curso, una maqueta de un puerto de contenedores, en el que ademas del barco claro esta, se  montara una grua portaineer, dos trastainer, el parque almacen y cuatro torres de iluminacion automatizadas para su mantenimiento y actuacion, me gustaria contar con vuestra colaboracion ya que el tiempo es corto para todo este montage

saludos 

jesus 

Código parcial "Cofre sorpresa"

Hola.

Aunque el material hardware para el "Cofre sorpresa" aún no ha llegado, lo que va a imposibilitar su desarrollo a tiempo para la Feria de Ciclos, ya estamos desarrollando parte del código en Arduino. 

En principio existirán tres displays matriciales que presentarán números aleatorios a gran velocidad. Existirán tres pulsadores (subir, bajar y OK) cuya pulsación detendrá el scroll de cifras del primer display para que el usuario seleccione (mediante + y -) la cifra que desea. Al pulsar OK, el display activo será el segundo y repetirá la acción. Cuando presione OK en la última cifra, el sistema comprueba el premio abriendo la caja si es correcto.

A continuación incluimos parte del código, que incluye la asignación del código secreto aleatorio, el scroll de cifras y la selección de cifras deseadas, así como la comprobación del premio. 

A ver que os parece.

Saludos.

/*  Caja sorpresa con clave 
 *  Feria de Ciclos IES Virgen de la Esperanza
 *  J.Alberto García & Guillermo Francoso
 */
  const int pulsaSubir=2;             // asigna pines a los botones Subir, Bajar y Ok
  const int pulsaBajar=3;
  const int pulsaOk=4;
  const int tiempoVisualiza= 200;     // retraso para visualizar dígito en display
  const int tamanoClave=3;            // establece el tamaño de la clave a descubrir
  const int intentoMaximo=5;          // establece el número máximo de intentos
  
  int intentoActual= 0;             // almacena el número máximo de intentos para descubrir la clave  
  int numeroSecreto[tamanoClave];     // almacena la clave secreta aleatoria
  int numeroDisplay[tamanoClave];     // almacena el valor a mostrar en cada display
  int tiempoDisplay[tamanoClave];     // duración de visualización de cifra en cada display 
  boolean rollingDisplay[tamanoClave];// controla el movimiento de cifras en cada display
  int parpadeaPosicion[tamanoClave];  // almacena el periodo de parpadeo de cada display. 0 es sin parpadeo.
  int posicionActual=0;               // almacena el número de display controlado
                        
void setup() {   
  pinMode(pulsaSubir, INPUT);
  pinMode(pulsaBajar, INPUT);
  pinMode(pulsaOk, INPUT);
  for (int i=0;i<tamanoClave;i++){    
    rollingDisplay[i]=true;           // activa el movimiento de cifras en todos los displays
    tiempoDisplay[i]=0;               // inicializa a 0 el tiempo de visualización de cifra en display
    parpadeaPosicion[i]=0;            // inicializa SIN parpadeo a todos los displays
  }
}

void loop() {
  if (intentoActual==0) {
    generaClave();
  }
  for (int i=0;i<tamanoClave;i++){    
    if (rollingDisplay[i]){
      runCifra(i);                    // llama a actualizar cifra si el display tiene rolling activo
    }
    
  }
  
  
 
}
 // runCifra muestra números aleatorios corriendo en el display 
  void runCifra(int posicion){
    if (millis()-tiempoDisplay[posicion]>=tiempoVisualiza) {        //la cifra se mantiene durante el tiempoVisualiza    
      numeroDisplay[posicion]=random(0,10);                         //si ha pasado se crea nueva cifra aleatoria
      tiempoDisplay[posicion]=millis();                             //actualiza t inicial
      muestraDigito(posicion,numeroDisplay[posicion]);              //envia nueva cifra a display correspondiente
  }
// botonPulsado es llamado por interrupcion y responde según botón
  void botonPulsado(){                          
    rollingDisplay[posicionActual]=false;
    if (pulsaOk=LOW){
      if (posicionActual=tamanoClave-1){
        compruebaPremio();
      }
      else{
        posicionActual++;
      }
    }
    
    if (pulsaSubir=LOW){      
      numeroDisplay[posicionActual]++;
      muestraDigito(numeroDisplay[posicionActual]);
    }
    if (pulsaBajar=LOW){
      numeroDisplay[posicionActual]--;
      muestraDigito(numeroDisplay[posicionActual]);
    }
      
    }
  }
  void generaClave(){
    for (int i=0;i<tamanoClave;i++){
      numeroClave[i]=random(0,10);
    }        
  }

  void compruebaPremio(){
    intentoActual++;                            // incrementa contador de intentos
    int aciertos=0;                             // inicializa número de aciertos en este intento
    for (int i=0;i<tamanoClave;i++){            // comprueba cada cifra con la secreta
      if (numeroDisplay[i]=numeroSecreto[i]{
        aciertos++;
        parpadeaPosicion[i]=300;
      }
    }
  }

Desarrollo de Proyectos con Arduino para Feria Ciclos Formativos

Hola: Estamos desarrollando con Arduino un Proyecto para ser expuesto en la próxima Feria de Cilcos Formativos de La Línea de la Concepción. Se trata de un "cofre" que tiene un pequeño obsequio en su interior. Dispone de una cerradura que se abrirá al acertar una combinación numérica de tres cifras generada aleatoriamente, la combinación se introducirá mediante teclado y el resultado se observará en displays 7 segmentos. Para hacer el proceso de acierto más asequible, si se acierta uno de los dígitos, este quedará enclavado y visible. La filosofía del Proyecto es que este sea atractivo, por ser interactivo, frenta a otros posibles Proyectos de otras Familias Profesionales y así poder hacer una buena captación de alumnos de cara al próximo curso escolar. Ya os iremos informando. Saludos.

 

 

 

Actualización 2 trimestre

Muy buenas a todo el grupo 

Os recuerdo que estamos en el segundo trimestre y ya tenemos que aportar los avances en los trabajos de cada participante, ademas de hacer una primera evaluacion que ya nos comentara el coordinador del CEP

Proyecto control de riego automático

Hola a todos:

Como ya comenté, he pensado diseñar y montar un sistema de control de riego automático doméstico. Os indico cual sería mi situación de partida y mi idea inicial, para que valoréis si os interesa participar. También acepto sugerencias y correcciones así como la interconexión con el control de abonado que propone Juan José.

Aunque no soy experto en jardinería, he buscado información general sobre el riego y tomo estas condiciones como punto de partida:

- En invierno el riego es recomendado durante las horas centrales del día, cuando hace menos frío.

- En verano se recomienda regar al amanecer y anochecer, evitando las horas de más calor.

- Obviamente la frecuencia y duración del riego depende de la humedad de la tierra.

Por tanto, el sistema de control Arduino debería contener, al menos, un sensor de humedad y un reloj/calendario en tiempo real. Otra posibilidad sería incorporar sensores de radiación solar y de temperatura, y diseñar un algoritmo que active el riego sólo en función de los parámetros externos, sin necesidad de reloj.

La interconexión con el control de abono puede ser necesaria para coordinar ambas funciones, ya que la distribución de abono puede necesitar la ausencia de riego durante un tiempo.

Miembros Miembros

Foto de Andrés Lasry Hernández

Andrés Lasry Hernández

Foto de Jesús Carrión García

Jesús Carrión García

Foto de Juan José Callejón Acién

Juan José Callejón Acién

Foto de Guillermo Francoso Vicente

Guillermo Francoso Vicente

Foto de José Alberto García Paz

José Alberto García Paz

Foto de Luis Guevara Góngora

Luis Guevara Góngora

Foto de Aurelio Oliver López

Aurelio Oliver López

Foto de Miguel Olmedo García

Miguel Olmedo García

Foto de Francisco Javier Rodríguez Sánchez

Francisco Javier Rodríguez Sánchez

Foto de Ángel Gabriel Ruiz Andrés

Ángel Gabriel Ruiz Andrés