Compluino Modular

COMP-MODU

Compluino Modular

Completo kit de trabajo con Compluino / Arduino

Incluye una amplia variedad de sensores y actuadores

Ideal para trabajar programación y proyectos STEAM en entornos educativos

Estado: NUEVOEN STOCK  (35) Entrega 24/48 h
74,99
21.00% IVA incluido
unidades

Añadir a cesta

Peso: 700 gramos

Descripción

Compluino Modular es un nuevo conjunto de sensores y actuadores que se conectan directamente con un único cable de tres pines con la placa Compluino UNO.
Compluino Modular simplifica los procesos de prototipado electrónico permitiendo que el alumno se pueda centrar más en la resolución de problemas relacionados con la algoritmia y la programación.
Se basa en la placa controladora Compluino UNO. Compluino es la versión mejorada de la placa Arduino UNO original, realizada por Complubot. Compluino dispone de un conjunto adicional de pines de entrada salida que facilitan el conexionado de módulos sensores y actuadores, algo fundamental para realizar proyectos de forma sencilla y estable.

Contenido del kit

Este kit incluye los siguientes materiales:

  • 1 - Placa Compluino UNO.
  • 1 - Cable USB A – B.
  • 1 - Chasis de madera + Tornillería + Separadores M3.
  • 1 - Destornillador PH1.
  • 2 - Módulo led rojo con conector Molex.
  • 2 - Módulo led verde con conector Molex.
  • 1 - Módulo led amarillo con conector Molex.
  • 1 - Módulo led blanco con conector Molex.
  • 2 - Módulo pulsador con conector Molex.
  • 1 - Módulo LDR con conector Molex.
  • 1 - Módulo potenciómetro con conector Molex.
  • 1 - Módulo zumbador con conector Molex.
  • 1 - Módulo TMP 36 con conector Molex.
  • 1 - Módulo RGB Neopixel con protección y conector Molex.
  • 1 - Módulo HC-SR04, en configuración “un hilo” y conector Molex.
  • 7 - Cables de conexión Molex-Header trenzados.

Montaje del chasis

Ejemplos y actividades

Ejemplo 1: Parpadeo de dos ledes rojos cada 2000 milisegundos

// Ejemplo 1: parpadeo de dos ledes rojos.

#define LEDA 7

#define LEDB 4

void setup()

{

 pinMode(LEDA, OUTPUT); // Definir el pin 7 como salida.

 pinMode(LEDB, OUTPUT); // Definir el pin 4 como salida.

}

void loop()

{

 digitalWrite (LEDA, HIGH); // Encender el led A

 digitalWrite (LEDB, HIGH); // Encender el led B

 delay (2000); // Esperar dos segundos

 digitalWrite (LEDA, LOW); // Apagar el led A

 digitalWrite (LEDB, LOW); // Apagar el led B

 delay (2000); // Esperar dos segundos

}

 

Ejemplo 2: iluminación secuencial de cinco ledes

// Ejemplo 2: iluminación secuencial de cinco ledes.

#define LEDA 11

#define LEDB 9

#define LEDC 7

#define LEDD 5

#define LEDE 3

#define TIEMPO 125

void setup()

{

 pinMode(LEDA, OUTPUT); // Definir el pin 11 como salida

 pinMode(LEDB, OUTPUT); // Definir el pin 9 como salida

 pinMode(LEDC, OUTPUT); // Definir el pin 7 como salida

 pinMode(LEDD, OUTPUT); // Definir el pin 5 como salida

 pinMode(LEDE, OUTPUT); // Definir el pin 3 como salida

}

void loop()

{

 digitalWrite (LEDA, HIGH); // Encender el led A

 delay (TIEMPO); // Esperar 0.125 segundos

 digitalWrite (LEDA, LOW); // Apagar el led A

 digitalWrite (LEDB, HIGH); // Encender el led B

 delay (TIEMPO); // Esperar 0.125 segundos

 digitalWrite (LEDB, LOW); // Apagar el led B

 digitalWrite (LEDC, HIGH); // Encender el led C

 delay (TIEMPO); // Esperar 0.125 segundos

 digitalWrite (LEDC, LOW); // Apagar el led C

 digitalWrite (LEDD, HIGH); // Encender el led D

 delay (TIEMPO); // Esperar 0.125 segundos

 digitalWrite (LEDD, LOW); // Apagar el led D

 digitalWrite (LEDE, HIGH); // Encender el led E

 delay (TIEMPO); // Esperar 0.125 segundos

 digitalWrite (LEDE, LOW); // Apagar el led E

}

Ejemplo 3: Encender o apagar un led dependiendo del estado de un pulsador

// Ejemplo 3: encender o apagar un led dependiendo del estado de un pulsador.

#define LED 4

#define PULSADOR 7

void setup()

{

 pinMode(LED, OUTPUT); // Definir el pin 4 como salida

 pinMode(PULSADOR, INPUT); // Definir el pin 7 como entrada

}

void loop()

{

 if (digitalRead(PULSADOR)==HIGH) //Comparar el estado que se lee en el pin del pulsador

 {

   digitalWrite(LED,HIGH); // Si se cumple la condición enciende el led

 }

 else

 {

   digitalWrite(LED,LOW); // Si no se cumple la condición apaga el led

 }

}

Ejemplo 4: Semáforo para peatones y vehículos con pulsador

// Ejemplo 4: Semáforo peatones y vehículos con pulsador

#define C_ROJO 13

#define C_AMBAR 5

#define C_VERDE 9

#define P_ROJO 11

#define P_VERDE 7

#define PULSADOR 3

void setup()

{

 pinMode(C_ROJO, OUTPUT); // Definir el pin 13 como salida

 pinMode(C_AMBAR, OUTPUT); // Definir el pin 5 como salida

 pinMode(C_VERDE, OUTPUT); // Definir el pin 9 como salida

 pinMode(P_ROJO, OUTPUT); // Definir el pin 11 como salida

 pinMode(P_VERDE, OUTPUT); // Definir el pin 7 como salida

 pinMode(PULSADOR, INPUT); // Definir el pin 3 como entrada

}

void loop()

{

 digitalWrite(P_ROJO, HIGH); // Vehículos circulan y los peatones esperan en rojo hasta que se pulse

 digitalWrite(C_VERDE, HIGH);

 while (digitalRead(PULSADOR) == LOW);

 delay(1000);

 digitalWrite (C_VERDE, LOW); //Vehículos en ámbar

 digitalWrite(C_AMBAR, HIGH);

 delay(1000);

 digitalWrite (C_AMBAR, LOW); //Vehículos en rojo

 digitalWrite(C_ROJO, HIGH);

 delay(500);

 digitalWrite (P_VERDE, HIGH); //Peatones en verde mientras los vehículos esperan en rojo

 delay(2000);

 for (int x = 0; x < 5; x++) //Parpadea el semáforo verde de los peatones cinco veces

 {

   digitalWrite(P_VERDE, HIGH);

   delay(250);

   digitalWrite(P_VERDE, LOW);

   delay(250);

 }

 digitalWrite(P_ROJO, HIGH); //Ambos semáforos en rojo para no atropellar a los peatones lentos

 delay(500);

}

Ejemplo 5: Encender el led verde o el rojo dependiendo de si el valor del potenciómetro es menor o mayor de 512

// Ejemplo 5: encender el led verde o el rojo dependiendo de si el valor del potenciómetro es menor o mayor de 512

#define POT A5

#define LEDA 7

#define LEDB 4

int lectura_pot = 0;

void setup()

{

 pinMode(LEDA, OUTPUT); // Definir el pin 7 como salida

 pinMode(LEDB, OUTPUT); // Definir el pin 4 como salida

}

void loop()

{

 lectura_pot = analogRead(POT); //Guardar el valor leido en el pin A5 en una variable

 if (lectura_pot >= 512) // Comparar la lectura del potenciómetro con un valor de corte

 {

   digitalWrite(LEDA, HIGH);

   digitalWrite(LEDB, LOW);

 }

 else

 {

   digitalWrite(LEDB, HIGH);

   digitalWrite(LEDA, LOW);

 }

}

Ejemplo 6: controlar el brillo de un led con la LDR

// Ejemplo 6: controlar el brillo de un led con la LDR.

#define LDR A5

#define LED 6

int lectura_ldr = 0;

int brillo = 0;

void setup()

{

 pinMode(LED, OUTPUT);

}

void loop()

{

 lectura_ldr = analogRead(LDR); //Guardar el valor leido en el pin A5 en una variable

 brillo = map(lectura_ldr, 0, 1023, 0, 255); //Convertir el valor a un rango de 0 a 255

 analogWrite(LED, brillo);

}

Ejemplo 7: dos pulsadores activan tonos diferentes en el zumbador

// Ejemplo 7: dos pulsadores activan tonos diferentes en el zumbador

#define PULSADORB 7

#define PULSADORC 4

#define ZUMBADOR 11

void setup()

{

 pinMode(PULSADORB, INPUT);

 pinMode(PULSADORC, INPUT);

 pinMode(ZUMBADOR, OUTPUT);

 tone(ZUMBADOR, 293); //Nota RE

 delay(200);

 tone(ZUMBADOR, 440); //Nota LA

 delay(200);

 noTone(ZUMBADOR);

}

void loop()

{

 if (digitalRead(PULSADORB) == HIGH)

 {

   tone(ZUMBADOR, 659); //Nota MI

 }

 else

 {

   if (digitalRead(PULSADORC) == HIGH)

   {

     tone(ZUMBADOR, 392); //Nota SOL

   }

   else

   {

     noTone(ZUMBADOR);

   }

 }

}

Ejemplo 8: medir la temperatura y mostrarla en el monitor serie

// Ejemplo 8: medir temperatura y mostrarla en el monitor serie

#define TEMP A5

float temperatura = 0, medida_sensor = 0, voltaje = 0;

void setup()

{

 Serial.begin(9600);

}

void loop()

{

 medida_sensor = analogRead(TEMP); //Actualizamos el valor del sensor de temperatura

 voltaje = medida_sensor * 5 / 1024; //convierte cuentas a voltios

 temperatura = (voltaje * 100) - 50; //convierte de voltios a grados Cº

 Serial.print("La temperatura actual es: ");

 Serial.print(temperatura);

 Serial.println(" grados");

 delay(500);

}

Ejemplo 9:  secuencia de ocho colores con el led RGB y la librería Neopixel

// Ejemplo 9: 8 colores con el led RGB y la librería de Neopixel

#include <Adafruit_NeoPixel.h>

#define PIN_RGB 6 //Pin del rgb

Adafruit_NeoPixel rgb(1, PIN_RGB, NEO_GRB + NEO_KHZ400); //Configura 1 pixel RGB

void setup()

{

 rgb.begin();

}

void loop()

{

 rgb.setPixelColor(0, rgb.Color(255, 0, 0)); //Muestra el color rojo

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(0, 255, 0)); //Muestra el color verde

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(0, 0, 255)); //Muestra el color azul

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(255, 255, 0)); //Muestra el color amarillo

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(255, 0, 255)); //Muestra el color magenta

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(0, 255, 255)); //Muestra el color cian

 rgb.show();

 delay(2000);

 

 rgb.setPixelColor(0, rgb.Color(255, 255, 255)); //Muestra el color blanco

 rgb.show();

 delay(2000);

 rgb.clear(); //Apaga el RGB

 rgb.show();

 delay(2000);

}

Ejemplo 10: medir distancia con el sensor ultrasónico y utilizarlas para modificar el sonido del zombador

// Ejemplo 10: medir distancia con el HC SR04 y variar la frecuencia de pitido de un zumbador

#define PIN_US 7    //Pin del ultrasonido

#define ZUMBADOR 4  //Pin del zumbador

float tiempo;    //Variable para guardar el tiempo

float distancia; //Variable para guardar la distancia

void setup()

{

 pinMode(ZUMBADOR,OUTPUT); //Configuramos el zumbador como salida

}

void loop()

{

 pinMode(PIN_US,OUTPUT);  //Configuramos el pin como salida

 digitalWrite(PIN_US,LOW);

 delayMicroseconds(5);

 digitalWrite(PIN_US,HIGH); //Emitimos un echo por el ultrasonidos

 delayMicroseconds(10);

 digitalWrite(PIN_US,LOW);

 //Medimos el tiempo que tarda el sonido en ir y volver

 pinMode(PIN_US,INPUT); //Cambiamos el pin a entrada

 tiempo = pulseIn(PIN_US,HIGH);

 //Calculamos la distancia en cm

 distancia = tiempo/58;

 //Cambiamos la frecuencia del pitido en funcion de la distancia

 tone(ZUMBADOR,440);

 delay(map(distancia,0,255,50,1000)); //La espera va desde los 50 ms a 1s

 noTone(ZUMBADOR);

 delay(map(distancia,0,255,50,1000));

}

También podría interesarle