Construcción de la placa de circuito

En este post se mostró el diseño de la placa de circuitos para controlar el LED RGB con el Arduino. Iniciamos el proceso de construcción, para el cual se requirió preparar el entorno de trabajo:

  • Placa perforada para prototipos.
  • Cautín, de 45Watts.
  • Estaño para soldar.
  • Tercera mano.
  • Desoldador.
  • Pinzas varias.
  • Herramienta pelacables.
  • Cable de red pelado.
  • Componentes electrónicos.
  • Pines, precortados en la cantidad deseada.
  • Marcador.
  • Mucha, pero mucha, paciencia.

Iniciamos el proceso siguiendo el diseño, aunque fue reinterpretado en el momento dado el tamaño de las resistencias (de 2 y 1.5Watts).

El primer caso es colocar los componentes, cortar y doblar las patillas:

Una vez fijadas, se sueldan los puntos de apoyo:

Este es el resultado final de soldadura, ya con los cables:

Este es el resultado final del trabajo, con las cables de la LED ya instalados, el soporte y las marcas indicativas:

Pueden observar el funcionamiento de la misma en el siguiente vídeo de prueba:

El código cargado en el Arduino para esta demostración es el siguiente:

/**
* Flame Of Knowledge - LED driver
*
* @license Code: GNU/GPL http://www.gnu.org/licenses/gpl.html
* @author Havok - Carlos Jenkins Pérez
* @copyright Carlos Jenkins, 2010
* @link http://www.cjenkins.net/
*
*/

// Hardware channels
const byte redPin = 11;
const byte greenPin = 10;
const byte bluePin = 9;

const byte debugPin = 13; //DEBUG

// Channels color values
byte red = 0;
byte green = 0;
byte blue = 0;

void setup() {

// Initialize the led channels as outputs
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);

// DEBUG
pinMode(debugPin, OUTPUT);
}

void loop() {

const unsigned int wait = 4000;

//"Red" (255, 0, 0 )
fadeTo(255, 0, 0, wait);

//"Yellow" (255, 255, 0 )
fadeTo(255, 255, 0, wait);

//"Green" (0, 255, 0 )
fadeTo(0, 255, 0, wait);

//"Cyan" (0, 255, 255)
fadeTo(0, 255, 255, wait);

//"Blue" (0, 0, 255)
fadeTo(0, 0, 255, wait);

//"Magenta" (255, 0, 255)
fadeTo(255, 0, 255, wait);

//"White" (255, 255, 255)
fadeTo(255, 255, 255, wait);

//"Black" (0, 0, 0)
fadeTo(0, 0, 0, wait);

}

void fadeTo(byte desiredRed, byte desiredGreen, byte desiredBlue, unsigned int desiredTime) {

// Calculate the required loops
byte steps =
max(1, // Check if cero to avoid division by cero
max(
max(
abs(red - desiredRed), abs(green - desiredGreen)
), abs(blue - desiredBlue)
)
);

// Calculate delay
int milliseconds = desiredTime / steps;

// Fade all channels at the same time
for(int i = 0; i <= steps; i++) {

// Check the red channel
if(red != desiredRed) {
if(red < desiredRed) {
red++;
} else {
red--;
}
analogWrite(redPin, red);
}

// Check the green channel
if(green != desiredGreen) {
if(green < desiredGreen) {
green++;
} else {
green--;
}
analogWrite(greenPin, green);
}

// Check the blue channel
if(blue != desiredBlue) {
if(blue < desiredBlue) {
blue++;
} else {
blue--;
}
analogWrite(bluePin, blue);
}

// Delay this loop
delay(milliseconds);

}

return;

}

// DEBUG
void flag() {
digitalWrite(debugPin, HIGH); // Sets the LED on
delay(250); // Waits for a 250 millis
digitalWrite(debugPin, LOW); // Sets the LED off
delay(250); // Waits for a 250 millis
}

Acerca de cjenkins
Mi nombre es Carlos Jenkins, soy graduado de Ingeniería en Computación Instituto Tecnológico de Costa Rica. Trabajé en proyectos de investigación en el Centro de Investigación en Computación de la misma institución y trabajo para una empresa de Investigación y Desarrollo de Software. Tengo 27 años y soy usuario de Linux desde hace 10. Me apasiona el software, hardware y diseño gráfico en general.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: