ARDUINO: PWM CON TRANSISTOR



En esta práctica se verá el control del PWM con el uso del transistor y el foco de 12V.

Materiales:

  • 1x Arduino
  • 1x Foco de 12V de CC
  • 1x TIP122
  • 1x Resistor de 4.7K
  • Fuente de 12V
  • 1x Potenciómetro de 10K
  • 1x Protoboard
  • Jumpers

Esquema de montaje

El software de fritzing no tiene disponible un foco así que vamos a representar el foco por medio de un LED, tener en consideración que un foco no tiene polaridad. 

Código

El código es exactamente igual al de control de PWM con un led y la explicación es la misma, en este caso lo que cambia es la electrónica, como ven usamos nuevamente el transistor para controlar voltajes y corrientes altos, en este caso 12 volts.

Enviamos los pulsos del PWM por el pin 3, esto llega a la base del transistor y dependiendo del pulso del PWM excitará más o menos la base del transistor y eso hará que brille más o menos el foco de 12 voltios, esto es muy interesante porque “cambiamos” la referencia de voltajes, en este caso recordemos que el PWM es de 8 bits así que como máximo tendremos un valor de 255 que en la primera práctica eran 5 volts, pero en esta nueva práctica la referencia cambia, esto implica que 255 son 12 voltios gracias a nuestro transistor, y no solo podemos controlar leds, podemos controlar también sirenas, buzzer, etc.

#define FOCO 3
#define POT A0

void setup() {

  Serial.begin(9600);
  pinMode(POT,INPUT);
  pinMode(FOCO,OUTPUT);

}

void loop() {

  int valor = analogRead(POT);

  int mapeo = map(valor,0,1023,0,255);
  
  Serial.print("Valor POT: ");
  Serial.print(valor);
  Serial.print(" | Valor PWM: ");
  Serial.println(mapeo);
  
  analogWrite(FOCO,mapeo);
  delay(100);

}







ArduinoErick Méndeztransistor, pwm