» Electrónica » Arduino »Medidor de distancia de la rueda (curvímetro) en Arduino hágalo usted mismo

Hágalo usted mismo medidor de distancia de la rueda (curvímetro) en Arduino

Hola a todos! Ahora trataré de hablar en detalle sobre cómo hacer el curvímetro más simple y asequible.

Pero primero, descubramos qué es y por qué es necesario. De hecho, su nombre nos dice su propósito. Está formado por la palabra latina curvus, que significa curvado u ondulado. Es decir, un curvímetro es un medidor de distancia entre ruedas o rodillos. Se distinguen dos tipos de curvímetros: pequeños (cartográficos), que generalmente se usan para mediciones en el mapa, y grandes (carreteras), que generalmente se usan para medir la longitud de secciones curvas de carreteras ya existentes. Se pueden usar donde sea inconveniente o imposible de medir con la ruleta estándar, por lo tanto, el proyecto promete ser interesante.

Lo primero que debe tener cuidado al construir el curvímetro es una rueda o rodillo. Debe ser lo suficientemente pequeño para que la precisión del instrumento sea alta, al mismo tiempo debe ser lo suficientemente grande como para que el valor de las lecturas no se vea muy afectado por la irregularidad de la superficie medida. En mi caso, la rueda tiene un diámetro de 14 centímetros.

Ahora necesita determinar el material y el tamaño de la estructura. Yo usé un árbol.

En las barras hice una marca e hice los cortes y agujeros necesarios.

Luego ensamblé las piezas mecanizadas con pequeños tornillos autorroscantes.
Ahora vamos a desviarnos un poco del propio curvímetro y pensar en cómo esta cosa puede incluso determinar la distancia. Todo es bastante simple. Solo necesitamos calcular el número de revoluciones de la rueda y multiplicarlo por la longitud de su circunferencia exterior, y es aún más fácil agregar un valor de longitud cada vez que la rueda hace otra revolución.

Para contar cada revolución en el caso más simple, puede usar el "contacto deslizante". Sin embargo, no recomiendo usar dicho mecanismo de referencia. Es mucho mejor usar un interruptor de láminas o un sensor Hall.

Es hora de probar una rueda. Lo sujetaré con un tornillo largo. Encontramos un lugar en el cuadro donde la llanta está lo más cerca posible y marcamos con trazos. Alrededor de esta área, debemos instalar el interruptor de láminas.

En la rueda necesita instalar un pequeño imán.Asegúrese de que su fuerza sea suficiente para cerrar los contactos del interruptor de láminas.
Ahora participaremos en "cerebros" del sistema. En mi caso, esto es una tarifa Arduino UNO Leerá el estado del interruptor de láminas y transmitirá datos a través de la conexión Bluetooth, utilizando el módulo HC-05, al teléfono. Por cierto, el interruptor de láminas está conectado a la placa como un botón normal. Creo que no debería haber ningún problema al conectar el módulo Bluetooth.

En cuanto al código en sí, es muy simple. Y traté de comentarlo para que todo fuera lo más claro posible.

int gercon = 12; // conectado el interruptor de láminas a 12 pines
doble distancia = 0; // creó una variable doble para almacenar la distancia
configuración nula () {
   Serial.begin (9600); // conectado una conexión en serie
 }
  bucle vacío () {
/ * El siguiente es el bucle if. Si el interruptor de láminas está cerrado, se realiza el siguiente cálculo de distancia. El valor 0.46472 ya es la longitud calculada de una revolución de la rueda. Para evitar datos "adicionales", agregue un retraso de 200 milisegundos y muestre las lecturas
* /
   if (digitalRead (gercon) == ALTO)
   {
 distancia = distancia + 0.46472;
 retraso (200);
 Serial.println (distancia);
}
  } 


¡Aquí está nuestro curvímetro y listo!

Hagamos un par de carreras de prueba. ¡Todo funciona muy bien!


Puedes ver un video sobre el ensamblaje de este dispositivo, tal vez encuentres algo interesante.
[media = https: //youtu.be/kx_7ztPsLws]

¡Que tengas una buena repetición del proyecto!
5
5
7

Agrega un comentario

    • sonriesonrisasxaxaokno sabesyahoonea
      jeferascarsetontosisi-siagresivosecreto
      lo sientobailardance2dance3perdónayudabebidas
      pararamigosbuenobuenosilbatodesmayarselengua
      fumaraplaudirllorardeclararburlóndon-t_mentiondescargar
      calorfuriosorisa1mdareuniónMoskingnegativo
      not_ipalomitas de maizcastigarleerasustarasustabuscar
      burlagraciasestoto_clueumnikagudode acuerdo
      malbeeeojo negroblum3ruborpresumiraburrimiento
      censuradocortesíasecreto2amenazarvictoriaYusun_bespectacled
      shokrespektjajajaPrevedbienvenidokrutoyya_za
      ya_dobryiayudantene_huliganne_othodigolpearprohibircerrar
1 comentario
Invitado Sergey
¿Por qué UNO cuando attiny13 es suficiente para los ojos ...
En cuanto al código, al menos debe agregar una verificación de que el imán ha salido del interruptor de láminas, porque en esta implementación, a cierta velocidad, y aún más si la rueda se detiene, puede lograr que se procese más de una vez o no se procese en absoluto. Para hacer esto, simplemente agregue una variable global y verifique su estado antes de calcular la longitud, algo así como:
int gercon = 12; // conectado el interruptor de láminas a 12 pines
int i = verdadero;
doble distancia = 0; // creó una variable doble para almacenar la distancia
configuración nula () {
Serial.begin (9600); // conectado una conexión en serie
}
bucle vacío () {
/ * El siguiente es el bucle if. Si el interruptor de láminas está cerrado, se realiza el siguiente cálculo de distancia. El valor 0.46472 ya es la longitud calculada de una revolución de la rueda. Para evitar datos "adicionales", agregue un retraso de 200 milisegundos y muestre las lecturas
*/
if (digitalRead (gercon) == ALTO)
{
si (i <1)
{
distancia = distancia + 0.46472;
i = 1;
// retraso (200);
Serial.println (distancia);
}
}
si (i> 0)
{
i ++;
retraso (1);
}
if (digitalRead (gercon) == BAJO)
{
if (i> 30) // evita falsos positivos debido al rebote de contacto
{
i = 0;
}
}
}

Mejor aún, coloque dos interruptores de láminas, esto le permitirá determinar la dirección de rotación (no fui allí para medir: regresé y no comencé desde el principio ni lo sacudí en su lugar hacia adelante y hacia atrás hablando con un vecino, etc.). También puede agregar imanes para cambiar la resolución.
ZY No verifiqué los cambios en el código, puede haber errores.

Le recomendamos que lea:

Pásalo por el teléfono inteligente ...