Innholdsfortegnelse:
Video: PCBWay Arduino sykkelteller: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:20
I mange kjøretøyer er det enheter som beregner tilbakelagt distanse og er avgjørende for å presentere informasjon for sjåføren.
Dermed er det gjennom denne informasjonen mulig å overvåke avstanden mellom to punkter, for eksempel gjennom kjøretøyets kilometerteller.
Rekvisita
01 x PCBWay Custom PCB
01 x Arduino UNO - UTSOURCE
01 x LCD 16x2 Display - UTSOURCE
01 x Brødbrett - UTSOURCE
01 x Wire Jumpers - UTSOURCE
01 x 10kR Rotary Potentiometer - UTSOURCE
01 x UTSOURCE Reed Switch - UTSOURCE
Derfor vil vi gjennom denne artikkelen lære deg hvordan du monterer avstandsberegningsenheten ved hjelp av sivbryter -sensoren.
Trinn 1: Prosjektet
Følgende prosjekt ble opprettet for å beregne tilbakelagt distanse med sykkelen på treningsstudioet. I tillegg lærer du hvordan du lager programmering for prosjektet.
Dette prosjektet har tre funksjoner:
- Beregn distansen som er reist på sykkel;
- Enhetens oppstart radiuskonfigurasjon;
- Kan tilpasses enhver sykkel.
For å få tilgang til disse funksjonene, bruker brukeren de tre knappene på systemet. Hver knapp har din funksjonalitet. I systemet har vi følgende knapper:
Inkrementsknapp: Den brukes til å angi alternativet for å konfigurere radien til hjulene og øke radiusverdien;
Reduksjonsknapp: Den vil bli brukt til å redusere alternativet for å konfigurere radien til hjulene;
Enter -knapp: Den brukes til å sette inn verdien av radius i systemet.
I tillegg har vi Reed Switch Sensor. Det er ansvarlig for å oppdage når hjulene gjør en hel sving. For å oppdage dette må den installere en magnet på hjulene.
Reed Switch er presentert i figuren ovenfor.
Steg 2:
Hver gang magneten nærmer seg sensoren, vil den således aktivere Reed Switch -sensoren. Prosessen fungerer gjennom følgende ligning:
Reist avstand = 2 * π * radius * TurnNumber
Gjennom denne ligningen vet vi hva som er den tilbakelagte distansen sykkelen utfører.
I ligningen settes radius av brukeren, og svingnummer beregnes gjennom antall omdreininger på hjulet.
Og for å oppdage svingene på hjulet er det nødvendig for å installere en magnet i sykkelhjulet og for å installere Reed Switch Sensor nær hjulet.
For å gjøre prosessen enklere, lager vi et kretskort for å koble Reed Switch Sensor og de tre knappene. Kretskortet er presentert nedenfor i figuren nedenfor.
Trinn 3:
Som det er vist i PCB er det mulig å se Arduino Nano. Det er ansvarlig for å kontrollere alle systemer. I tillegg har vi 5 JST -kontakter.
C1 til C4 -kontaktene brukes til å koble de tre knappene og Reed Switch Sensor. Nå brukes C5 -kontakten til å koble LCD 16x2 I2C.
Derfor kan du gjennom dette systemet installere prosjektet i sykkelen din og få verdien for tilbakelagt distanse.
For dette kan du bruke koden som presenteres nedenfor.
#include #include
/*
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;
usignert lang int VoltaCompleta = 0;
usignert lang int tempo_atual = 0, ultimo_tempo = 0;
flyte DistKm = 0;
usignert int raio = 0; flyte Distancia = 0;
ugyldig oppsett ()
{Serial.begin (9600); pinMode (8, INNGANG); pinMode (9, INNGANG); pinMode (10, INNGANG); pinMode (12, INNGANG);
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);
}
hulrom ()
{
// Regiao de codigo para realizar a leitura dos botoes and sensor do dispositivo
sensor = digitalRead (ReedSwitch); Decremento = digitalRead (BotaoDecremento); Inkremento = 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;
}
hvis (sensor == 1 && estado_anterior == 0)
{estado_anterior = 1; }
// Regiao de Codigo para Configurar o Raio
hvis (Incremento == 1 && EstadoAnteriorIncremento == 0) {EstadoAnteriorIncremento = 1; }
hvis (Incremento == 0 && EstadoAnteriorIncremento == 1)
{EstadoAnteriorIncremento = 0; lcd.clear (); ConfiguraRaio (); }}
ugyldig ConfiguraRaio ()
{
byte RaioRoda = 0;
// Imprimir mensagem para digitar o raio em cm
lcd.setCursor (0, 0); lcd.print ("Inserir Raio (cm)");
gjøre
{
lcd.setCursor (6, 1);
Inkremento = digitalRead (BotaoIncremento);
Decremento = digitalRead (BotaoDecremento); BotaoEnter = digitalRead (BotaoEnterOk);
hvis (Incremento == 1 && IncrementoAnterior == 0)
{RaioRoda = RaioRoda + 1; IncrementoAnterior = 1; }
hvis (Incremento == 0 && IncrementoAnterior == 1)
{IncrementoAnterior = 0; }
hvis (Decremento == 1 && DecrementoAnterior == 0)
{RaioRoda = RaioRoda - 1; DecrementoAnterior = 1; }
hvis (Decremento == 0 && DecrementoAnterior == 1)
{DecrementoAnterior = 0; }
lcd.setCursor (6, 1);
lcd.print (RaioRoda);
} mens (BotaoEnter == 0);
lcd.clear ();
EEPROM.write (PosRaio, RaioRoda);
komme tilbake; }
Fra denne koden vil den muligens beregne avstanden din med din Arduino.
Trinn 4: Konklusjon
Derfor, hvis du vil ha din egen PCB, kan du få tak i denne lenken på PCBWay.com -nettstedet. For dette kan du få tilgang til nettstedet, opprette kontoen din og skaffe dine egne PCB -er.
Silícios Lab takker UTSOURCE for å tilby de elektroniske komponentene for å lage dette prosjektet.
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
DIY Police LED With PCBWAY: 6 trinn (med bilder)
DIY Police LED With PCBWAY: HiDelta hack i dag vil vise hvordan du monterer en politiblinker ved hjelp av enkle elektroniske komponenter basert på et kretskort. Først kan du se videoinstruksjonsskjema og brettmal du kan laste ned her. La oss gå
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw
DIY Arduino robotarm, trinn for trinn: 9 trinn
DIY Arduino robotarm, trinn for trinn: Denne opplæringen lærer deg hvordan du bygger en robotarm selv