Diseñar un buen tacómetro

Hola:

Hace tiempo hice un esquema sobre controlar un motor universal de una lavadora. El esquema es este.

Regulador de velocidad y cambio de giro de un motor monofásico de lavadora:

Ver zoom.

Encontré un esquema sobre controlar el tacómetro el motor de lavadora, lo que no se si es el más adecuado.

Leer tacómetro:

Ver enlace.

Eso si, busco la mejor electrónica para Arduino y lector de tacómetro, así tengo la mejor lectura para controlar el motor.

Estoy en clases de electricidad, me tocó ahora mismo la parte de motores, estuvimos con motores trifásico pero este, el que quiero, es de una lavadora y es opcional para que los demás lo vean, no obligatorio para aprobar el módulo.

Solo he hecho girar el motor con un simulador eléctrico, con contactores KM1, contactores térmicos con cambio de giro o sentido.

Una prueba de un motor que me dieron, con un bobinado un poco especial que ya indicaré aquí, es bueno saberlo. Voy a dibujarlo, no es de un motor convencional de solo un bobinao del estator y otro del rotor.

Ver vídeo.

Supera los 30 VAC. Les dejo claro que el tacómetro genera corriente alterna.

Necesito buenos ejemplos de como programarlo en Arduino UNO, para que aparezca en el display los RPM.

Saludos.

Estas usando un generador solidario con el motor de la lavadora y con el quieres medir las rpm?
Para mi no es lo mas adecuado. Yo pondria una rueda dentada y un sensor hall o magnético y contaria dientes. Eso sería robusto para el ambiente en el que esta y las vibraciones.

Buenas:

El minigenerador llamado tacómetro es para medir los RPM de dicho motor, siempre lo usan los motores de lavadoras y este es su modelo si es analógico.

No te preocupes, si se puede medir co Arduino gracias al cruce por cero. Sólo necesito ver ejemplos de un programa que me cuente los RPM y lo muestre en el display. Despué sharé otras cosas como, por ejemplo, si la correa del tambor de la lavadora se rompe, el motor gira más rápido, gracias al tacómetro, notará que girará más rápido sus rpm porque el motor trabaja en vacío, se detendrá adrede con ARduino y mostrando mensjae de error.

Saludos.

Como me voy a preocupar... por supuesto que lo se. Si ya lo tienes usalo claro. Pense que tenias que agregarlo. Pero que quieres no conozco todas los elementos de todas las maquinas.

Entendido:

Quiero ver muchos esquemas eléctricos sobre lector de tacómetro de lavadora. Elegir el más adecuado.

Aquí hay un ejemplo muy sencillo o muy similar de lo que quiero.

Tacómetro.

Código Arduino:

#include <LiquidCrystal.h>
int val;
long last = 0;
int stat = HIGH;
int stat2;
int contar = 0;

int sens = 1000; // this value indicates the limit reading between dark and light,
// it has to be tested as it may change acording on the
// distance the leds are placed.
int nPalas = 1; // the number of blades of the propeller

int milisegundos = 500; // the time it takes each reading
LiquidCrystal lcd(9, 8, 7, 6, 5, 4); // RS, E, D4, D5, D6, D7
void setup()
{
  //Serial.begin(9600);
  lcd.begin(16, 2);
  lcd.clear();

  pinMode(13, OUTPUT);
}

void loop()
{
  val = analogRead(0);
  if (val < sens)
    stat = HIGH;
  else
    stat = LOW;
  digitalWrite(13, stat); //as iR light is invisible for us, the led on pin 13
  //indicate the state of the circuit.

  if (stat2 != stat) { //counts when the state change, thats from (dark to light) or
    //from (light to dark), remmember that IR light is invisible for us.
    contar++;
    stat2 = stat;
  }
  if (millis() - last >= milisegundos) {
    int rps = ((double)contar / nPalas) / 2.0 * 1000.0 / milisegundos;
    int rpm = ((double)contar / nPalas) / 2.0 * 60000.0 / (milisegundos);
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("RPM = ");
    lcd.print(rpm);

    /*Serial.print("Contar - ");
      Serial.println((contar/2.0));
      Serial.print("RPS = ");
      Serial.println(rps);
      Serial.print("RPM = ");Serial.println(rpm);
      Serial.print(" VAL ");Serial.println(val);*/
    contar = 0;
    last = millis();
  }
}

Ver vídeo.

El motor de una lavadora, al menos la mía, si se rompe la correa del motor que mueve el tambor de la ropa, gira más rápido de lo normal, como tiene más RPM de la cuenta, Arduino lo detecta y se detiene el motor principal, saca el agua con el motor de bomba y muestra en el LCD el mensaje de error.

El que sepa o encuentre un buen lector esquema eléctrico del tacómetro con optoacoplador, mejor que mejor. Lo indican aquí. Solo me falta el santo tacómetro, que pueda ser leído y que muestre en pantalla sus RPM.

Para dejarlo más claro.

Estoy buscando varios esquemas eléctricos para conectar una lectura de un tacómetro que Arduino pueda leer.

Pues busca.
Se trata de un generador de AC, que cambia obviamente tensión y frecuencia porque giras mas o menos rápido.
Asi que no hay muchos esquemas para monitorear su frecuencia mas que el cruce por cero o algo que transforme frecuencia en tensión pero eso será menos preciso.

Ese tacometro debe dar unos 30Vac cuidado con la entrada de Arduino.

Kike_GL:
Ese tacometro debe dar unos 30Vac cuidado con la entrada de Arduino.

Exacto. Karma +1, ya tienes 2.

He estado buscando, el mejor que me convence es este.

Deberemos ajustar el valor de estas resistencias a le tensión que estemos empleando. Vimos como calcular este valor en la entrada Conectar un LED con Arduino. Por ejemplo, para una tensión de 230VAC podemos usar una resistencia de entre 22K-47K.

Por otro lado, conectamos el secundario a una entrada digital cualquiera de Arduino. Si empleamos la resistencia interna de Pull-Up, no necesitaremos ningún componente adicional para conectar el secundario a Arduino.

Referente a lo de arriba, son de 230 VAC, en mi caso un motor de 35 VAC, pero tengo otro motor de 98 VAC, así que, quiero saber los cálculos, para poner las resistencias adecuadas.

Ahora me toca también investigar mucho esta instrucción.
attachInterrupt

Fuente:

Datasheet:
https://www.vishay.com/docs/83608/h11aa1.pdf

Casi hago este otro esquema, pero no me convencía, buscaba algo más sencillo, por fin lo encontré.

Saludos.