Innehållsförteckning:

PCBWay Arduino cykelmätare: 4 steg
PCBWay Arduino cykelmätare: 4 steg

Video: PCBWay Arduino cykelmätare: 4 steg

Video: PCBWay Arduino cykelmätare: 4 steg
Video: How to add more PINs to Arduino with custom PCB from @PCBWay #arduino #hardware #electronics #diy 2024, November
Anonim
PCBWay Arduino cykelmätare
PCBWay Arduino cykelmätare

I många fordon finns det enheter som beräknar avståndet och är viktiga för att presentera information för föraren.

Genom denna information är det således möjligt att övervaka avståndet mellan två punkter, till exempel genom fordonsmätaren.

Tillbehör

01 x PCBWay Custom PCB

01 x Arduino UNO - UTSOURCE

01 x LCD 16x2 Display - UTSOURCE

01 x brödbräda - UTSOURCE

01 x Wire Jumpers - UTSOURCE

01 x 10kR Rotary Potentiometer - UTSOURCE

01 x UTSOURCE Reed Switch - UTSOURCE

Därför kommer vi genom den här artikeln att lära dig hur du monterar din distansberäkningsenhet med hjälp av reed switch sensorn.

Steg 1: Projektet

Projektet
Projektet

Följande projekt skapades för att beräkna den resta sträckan med cykeln på gymmet. Dessutom lär du dig hur du skapar programmering för projektet.

Detta projekt har tre funktioner:

  • Beräkna avståndet till cykel;
  • Enhetens startradiekonfiguration;
  • Anpassningsbar till alla cyklar.

För att komma åt dessa funktioner använder användaren systemets tre knappar. Varje knapp har din funktionalitet. I systemet har vi följande knappar:

Ökningsknapp: Den kommer att användas för att ange alternativet för att konfigurera radien på hjulen och öka radievärdet;

Minskningsknapp: Den kommer att användas för att minska alternativet för att konfigurera radien för hjulen;

Enter -knapp: Den används för att infoga värdet på radien i systemet.

Dessutom har vi Reed Switch Sensor. Det är ansvarigt att upptäcka när hjulen svänger totalt. För att upptäcka detta måste den installera en magnet på hjulen.

Reed Switch presenteras i figuren ovan.

Steg 2:

Varje gång magneten närmar sig sensorn aktiverar den Reed Switch -sensorn. Processen fungerar genom följande ekvation:

Åkte avstånd = 2 * π * radie * TurnNumber

Genom den här ekvationen vet vi vad cykelens färdsträcka är.

I ekvationen sätts radien in av användaren och varvtal beräknas genom antalet varv på hjulet.

Och för att upptäcka hjulets svängar krävs för att installera en magnet i cykelhjulet och för att installera Reed Switch Sensor nära hjulet.

För att underlätta processen skapar vi ett kretskort för att ansluta Reed Switch Sensor och de tre knapparna. Kretskortet presenteras nedan i figuren nedan.

Steg 3:

Bild
Bild

Som visas i kretskortet är det möjligt att se Arduino Nano. Det är ansvarigt att kontrollera alla system. Dessutom har vi 5 JST -kontakter.

C1 tills C4 -kontakterna används för att ansluta de tre knapparna och Reed Switch -sensorn. Nu används C5 -kontakten för att ansluta LCD 16x2 I2C.

Därför kan du genom detta system installera projektet i din cykel och få värdet på rest sträcka.

För detta kan du använda koden som presenteras nedan.

#inkludera #inkludera

/*

Pinos de conex? O dos bot? Es e sensor reed switch 8 - Sensor Reed Switch 9 - Decremento 12 - Incremento 11 - Enter */

#define MEMORIA 120

#define PosRaio 125

#define ReedSwitch 8

#define BotaoEnterOk 11 #define BotaoIncremento 12 #define BotaoDecremento 9

const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7;

LiquidCrystal lcd (rs, en, d4, d5, d6, d7);

bool sensor = 0, estado_anterior = 0, Incremento = 0, Decremento = 0;

bool IncrementoAnterior = 0, DecrementoAnterior = 0, BotaoEnter = 0, EstadoAnteriorIncremento = 0;

byte kont = 0;

osignerad lång int VoltaCompleta = 0;

osignerad lång int tempo_atual = 0, ultimo_tempo = 0;

float DistKm = 0;

osignerad int raio = 0; float Distancia = 0;

void setup ()

{Serial.begin (9600); pinMode (8, INPUT); pinMode (9, INPUT); pinMode (10, INPUT); pinMode (12, INPUT);

lcd.begin (16, 2);

// Regiao de codigo para configurar o raio da roda do veiculo

if (EEPROM.read (MEMORIA)! = 73) {ConfiguraRaio (); EEPROM.write (MEMORIA, 73); }

lcd.setCursor (3, 0);

lcd.print (“Distancia”); lcd.setCursor (6, 1); lcd.print (Distancia);

lcd.setCursor (14, 1);

lcd.print (“km”);

raio = EEPROM.read (PosRaio);

}

void loop ()

{

// Regiao de codigo para realizar a leitura dos botoes and sensor do dispositivo

sensor = digitalRead (ReedSwitch); Decremento = digitalRead (BotaoDecremento); Incremento = digitalRead (BotaoIncremento);

// Regiao de codigo para acumular a distancia percorrida

if (sensor == 0 && estado_anterior == 1) {VoltaCompleta ++;

Distancia = (float) (2*3,14*raio*VoltaCompleta) /100000,0;

lcd.setCursor (0, 1);

lcd.print (““); lcd.setCursor (6, 1); lcd.print (Distancia);

lcd.setCursor (14, 1);

lcd.print (“km”);

estado_anterior = 0;

}

if (sensor == 1 && estado_anterior == 0)

{estado_anterior = 1; }

// Regiao de Codigo para Configurar o Raio

if (Incremento == 1 && EstadoAnteriorIncremento == 0) {EstadoAnteriorIncremento = 1; }

if (Incremento == 0 && EstadoAnteriorIncremento == 1)

{EstadoAnteriorIncremento = 0; lcd.clear (); ConfiguraRaio (); }}

void ConfiguraRaio ()

{

byte RaioRoda = 0;

// Imprimir mensagem para digitar o raio em cm

lcd.setCursor (0, 0); lcd.print ("Inserir Raio (cm)");

do

{

lcd.setCursor (6, 1);

Incremento = digitalRead (BotaoIncremento);

Decremento = digitalRead (BotaoDecremento); BotaoEnter = digitalRead (BotaoEnterOk);

if (Incremento == 1 && IncrementoAnterior == 0)

{RaioRoda = RaioRoda + 1; IncrementoAnterior = 1; }

if (Incremento == 0 && IncrementoAnterior == 1)

{IncrementoAnterior = 0; }

if (Decremento == 1 && DecrementoAnterior == 0)

{RaioRoda = RaioRoda - 1; DecrementoAnterior = 1; }

if (Decremento == 0 && DecrementoAnterior == 1)

{DecrementoAnterior = 0; }

lcd.setCursor (6, 1);

lcd.print (RaioRoda);

} medan (BotaoEnter == 0);

lcd.clear ();

EEPROM.write (PosRaio, RaioRoda);

lämna tillbaka; }

Från denna kod kommer det möjligen att beräkna ditt avstånd med din Arduino.

Steg 4: Slutsats

Därför, om du vill ha ditt eget kretskort, kan du skaffa via denna länk på webbplatsen PCBWay.com. För detta kan du komma åt webbplatsen, skapa ditt konto och skaffa dina egna kretskort.

Silícios Lab tackar UTSOURCE för att erbjuda de elektroniska komponenterna för att skapa detta projekt.

Rekommenderad: