Este laboratorio consiste el controlar el tiempo de encendido y apagado de 8 LEDs, via una interfaz grafica en Processing/ControlP5. que a su vez el encendido se desplaza de izquierda a derecha y viceversa, usando arduino.
MATERIALES:
Arduino
8 LEDs
8 resistencias
MONTAJE PASO A PASO:
- montamos los LEDs en la protoboard y las respectivas resistencias
- DIAGRAMAS ( FRITZING)
- En protoboard
- En pcb
- CÓDIGO FUENTE EN ARDUINO:
1: /********** Proyecto **********
2: * Laboratorio 3:
3: * Autor: FANOR STIWAR ZAPATA
4: **DESCRICION: controlar 8 LEDs desde controlP5 con una
5: interfaz grafica
6:
7: */
8:
9: // Conectamos el LED a un pin PWM //
10: int led = 9;
11:
12: int valor = 0;
13:
14: // Si solo se ejecutara una vez el Arduino //
15: void setup() {
16:
17: // Definimos la comunicacion serial //
18: Serial.begin(9600);
19:
20: // ponemos el pin de salida (ya elegido anteriormente)
21: pinMode(led, OUTPUT);
22: }
23:
24: // Ciclo de ejecucion //
25: void loop() {
26:
27: if (Serial.available() > 0) {
28:
29: // Leer el valor de el serial //
30: valor = Serial.read();
31:
32: // Cambiar la intensidad de iluminacion del LED //
33: analogWrite(led, valor);
34: }
35: }
CÓDIGO FUENTE EN PROCESSING:
/********** Proyecto **********
2: * Laboratorio 3:
3: * Autor: FANOR STIWAR ZAPATA
4: **DESCRICION: controlar 8 LEDs desde controlP5 con una
5: interfaz grafica
6:
7: // Importamos las librerías de ControlP5 y Serial //
8: import controlP5.*;
9: import processing.serial.*;
10:
11: // Declaramos las variables para ControlP5, el Slider y el puerto Serial //
12: ControlP5 cp5;
13: Slider slider;
14: Serial serial;
15:
16: // para ejecutarse al iniciar el Sketch //
17: void setup() {
18:
19: // Definimos las dimensiones de la Ventana //
20: size(600, 400);
21:
22: // Creamos el objeto de ControlP5 //
23: cp5 = new ControlP5(this);
24:
25: // Creamos el objeto Slider //
26: slider = cp5.addSlider("valor", 0, 255, 128, 40, 40, 300, 40);
27:
28: // Creamos el objeto del puerto Serial//
29: serial = new Serial(this, Serial.list()[5], 9600);
30: }
31:
32: // Se ejecuta N frames por segundo //
33: void draw() {
34:
35: }
36:
37: // Llevamos el control de los eventos, aqui se procesan //
38: void controlEvent(ControlEvent evento) {
39:
40: // Damos nombre y valor al evento //
41: String nombre = evento.getController().getName();
42: int valor = int(evento.getController().getValue());
43:
44: // Envíamos el valor al Arduino a través del Serial //
45: serial.write(valor);
46:
47: // sacamos la consola //
48: println(nombre + ":" + valor);
49: }
No hay comentarios:
Publicar un comentario