Péndulo electromagnético


          Se trata de un péndulo que mantiene su oscilación por medio de una bobina.
          El péndulo (un palillo de los chinos) tiene en su parte inferior un pequeño imán de neodimio. Cuando pasa por encima de la bobina, un sensor Hall detecta el imán y manda la información al Arduino que tras unos milisegundos dispara un impulso que activa un transistor MOSFET que alimenta la bobina que rechaza el imán en cada pase del mismo y mantiene  así la oscilación del péndulo.

          El sistema y programa es muy sencillo y se describe solo con los esquemas y fotografías.
          Como electroimán puede usarse una bobina con núcleo de hierro que tengamos o autoconstruida. Pero el mejor resultado lo he tenido con la del dibujo, de 12 voltios y 2,5Kg de fuerza de atracción. La venden en chinalandia por 2€. Aunque tiene un consumo de 250mA, en nuestro montaje el gasto es mínimo ya que se activa unos 40ms cada casi un segundo que tarda una semioscilación del péndulo.
           En la parte superior pondremos pegado el sensor Hall A1302 según esquema de conexión de la derecha.
          El circuito para alimentar el selenoide es el típico MOSFET conectado a una salida digital del Arduino. El MOSFET es de tipo adecuado para control por los 5 voltios de salidas digitales. Cualquiera que lleve la reseña L (lógico) servirá. El cable rojo va a12v, el morado a masa, el naranja a la salida del Arduino y los dos azules a la bobina. La resistencia de 68Ω de la foto no es necesaria.
int value=0;
int pin=8;
void setup() {
  Serial.begin(9600);
  pinMode(pin, OUTPUT);
  pinMode(13, OUTPUT);
  digitalWrite(pin, HIGH);
}

void loop() {
  int value = analogRead(A0);  //entrada del sensor Hall
  if (value > 550){
   delay(20);                 //evita impulso en la vertical exacta del pendulo
   digitalWrite(pin, HIGH);   //bobina activada
   digitalWrite(13, HIGH);   //LED ON de control
   delay(40);                // durante 40ms
  }
   digitalWrite(pin, LOW);  
   digitalWrite(13, LOW);        
}
          El programa Arduino es muy simple. Se lee cuando el imán, en la base del péndulo, llega a la bobina y esperamos que pase un poco con un delay(). para enviar el impulso electromagnético que lo impulsa hacia los laterales.

          Por supuesto, que dependiendo del montaje de cada uno, los valores de la variable value y los delay() pueden ir variándose para lograr un efecto óptimo.

          Ni que decir que el imán de la base del péndulo ha de ponerse en la orientación para ser rechazado por la bobina cuando tiene corriente, no atraído .
 
Menu