Sadržaj:
Video: PCBWay Arduino biciklistički brojač kilometara: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
U mnogim vozilima postoje uređaji koji izračunavaju prijeđenu udaljenost i bitni su za prezentiranje informacija vozaču.
Tako je putem ovih informacija moguće nadzirati prijeđenu udaljenost između dviju točaka, na primjer, putem brojača kilometara.
Pribor
01 x PCBWay prilagođena PCB
01 x Arduino UNO - UTSOURCE
01 x LCD 16x2 zaslon - UTSOURCE
01 x Oglasna ploča - UTSOURCE
01 x Žičani kratkospojnici - UTSOURCE
Rotacijski potenciometar 01 x 10kR - UTSOURCE
01 x UTSOURCE Reed Switch - UTSOURCE
Stoga ćemo vas kroz ovaj članak naučiti kako sastaviti uređaj za izračunavanje udaljenosti pomoću osjetnika sklopke za trsku.
Korak 1: Projekt
Sljedeći projekt nastao je za izračunavanje prijeđene udaljenosti biciklom u teretani. Osim toga, naučit ćete kako stvoriti programiranje za projekt.
Ovaj projekt ima tri funkcionalnosti:
- Izračunajte prijeđenu udaljenost biciklom;
- Konfiguracija radijusa pokretanja uređaja;
- Prilagodljiv svakom biciklu.
Za pristup tim funkcijama korisnik će koristiti tri tipke sustava. Svaki gumb ima svoju funkcionalnost. U sustavu imamo sljedeće gumbe:
Gumb za povećanje: Koristit će se za unos opcije za konfiguriranje radijusa kotača i povećanje vrijednosti radijusa;
Gumb za smanjenje: Koristit će se za smanjenje opcije za konfiguriranje radijusa kotača;
Gumb Enter: Koristit će se za umetanje vrijednosti radijusa u sustav.
Osim toga, imamo senzor sklopke za trstiku. On je odgovoran za otkrivanje kada se kotači potpuno okreću. Da bi se to otkrilo, potrebno je postaviti magnet na kotače.
Reed prekidač prikazan je na gornjoj slici.
Korak 2:
Tako će svaki put kad se magnet približi senzoru aktivirati senzor Reed Switch. Proces funkcionira kroz sljedeću jednadžbu:
Putovana udaljenost = 2 * π * radijus * Broj zavoja
Pomoću ove jednadžbe saznat ćemo koliku je udaljenost prešao bicikl.
U jednadžbu korisnik unosi radijus, a broj okretaja izračunava se kroz broj okretaja kotača.
A za otkrivanje zavoja kotača potrebno je ugraditi magnet u kotač bicikla i postaviti senzor sklopke za trkače blizu kotača.
Kako bismo olakšali proces, stvaramo tiskanu ploču za povezivanje osjetnika sklopke za trstiku i tri gumba. Tiskana ploča predstavljena je dolje na donjoj slici.
3. korak:
Kao što je prikazano na PCB -u moguće je vidjeti Arduino Nano. On je odgovoran za kontrolu svih sustava. Osim toga, imamo 5 JST konektora.
Priključci C1 do C4 koriste se za povezivanje tri gumba i osjetnika sklopke za trstiku. Sada se C5 konektor koristi za povezivanje LCD 16x2 I2C.
Stoga, putem ovog sustava, možete instalirati projekt na svoj bicikl i dobiti vrijednost prijeđene udaljenosti.
Za to možete upotrijebiti dolje prikazani kôd.
#include #include
/*
Pinos de conex? O dos bot? Es e senzorski prekidač 8 - senzorski reed prekidač 9 - Decremento 12 - Incremento 11 - Enter */
#definirajte MEMORIJU 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;
LCD tekući kristal (rs, en, d4, d5, d6, d7);
bool senzor = 0, estado_anterior = 0, Incremento = 0, Decremento = 0;
bool IncrementoAnterior = 0, DecrementoAnterior = 0, BotaoEnter = 0, EstadoAnteriorIncremento = 0;
bajt cont = 0;
bezznačni dugi int VoltaCompleta = 0;
unsigned long int tempo_atual = 0, ultimo_tempo = 0;
plovak DistKm = 0;
bez potpisa int raio = 0; plovak 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.čitaj (MEMORIJA)! = 73) {ConfiguraRaio (); EEPROM.pisati (MEMORIJA, 73); }
lcd.setCursor (3, 0);
lcd.print ("Distancia"); lcd.setCursor (6, 1); lcd.print (Distancia);
lcd.setCursor (14, 1);
lcd.print ("km");
raio = EEPROM.čitano (PosRaio);
}
void loop ()
{
// Regiao de codigo para realizar a leitura dos botoes e sensor do dispositivo
senzor = digitalno čitanje (ReedSwitch); Decremento = digitalno čitanje (BotaoDecremento); Incremento = digitalno čitanje (BotaoIncremento);
// Regiao de codigo para acumular a distancia percorrida
if (senzor == 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;
}
ako (senzor == 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 ()
{
bajt RaioRoda = 0;
// Imprimir mensagem para digitar o raio em cm
lcd.setCursor (0, 0); lcd.print ("Inserir Raio (cm)");
čini
{
lcd.setCursor (6, 1);
Incremento = digitalno čitanje (BotaoIncremento);
Decremento = digitalno čitanje (BotaoDecremento); BotaoEnter = digitalno čitanje (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);
} while (BotaoEnter == 0);
lcd.clear ();
EEPROM.write (PosRaio, RaioRoda);
povratak; }
Iz ovog koda moguće će izračunati vašu udaljenost od vašeg Arduina.
Korak 4: Zaključak
Stoga, ako želite vlastiti PCB, možete ga dobiti putem ove veze na web stranici PCBWay.com. U tu svrhu možete pristupiti web stranici, stvoriti svoj račun i nabaviti vlastite PCB -ove.
Silícios Lab zahvaljuje UTSOURCE -u što nudi elektroničke komponente za stvaranje ovog projekta.
Preporučeni:
Stvaranje Arduino brojača kilometara - I dio: 4 koraka
Stvaranje Arduino brojača kilometara - Dio I: Biciklisti i korisnici bicikala za vježbanje prilično su uobičajeni da trebaju mjeriti svoju brzinu i prijeđenu udaljenost. Za to nam je potreban uređaj poznat kao brojač kilometara. Mjerač kilometara je odgovoran za mjerenje ovih varijabli i prijenos ovih informacija
Otvoreni (biciklistički) simulator ocjene - OpenGradeSIM: 6 koraka
Otvoreni (biciklistički) razred simulatora - OpenGradeSIM: Uvod Određena poznata američka fitnes kompanija (Wahoo) nedavno je iznijela sjajno pomagalo za vježbanje u zatvorenom koje podiže i spušta prednji dio bicikla na turbo trenažeru prema simuliranom nagibu brda korisnik jaše (th
Arduino biciklistički brzinomjer pomoću GPS -a: 8 koraka
Arduino biciklistički brzinomjer pomoću GPS -a: U ovom ćemo vodiču koristiti Arduino i Visuino za prikaz trenutne brzine bicikla s GPS -a na zaslonu ST7735. Pogledajte demonstracijski video
RGB LED biciklistički krug u boji: 4 koraka
RGB LED biciklistički krug u boji: Kako ponovno namjestiti RGB LED biciklističko kolo u boji iz Glade LightShow osvježivača zraka. Bio sam u procesu stvaranja biciklističkog kruga crvene, zelene i plave boje temeljenog na PIC mikrokontroleru kada sam uočio Gladu LightShow osvježivač zraka
Benthekahnovi biciklistički hakovi!: 4 koraka
Benthekahn's Bike Hacks !: Zdravo, i dobrodošli u moje biciklističke hakove Instructable. Pokazat ću vam nekoliko jednostavnih hakova koje možete jednostavno i jeftino učiniti svom biciklu kako biste ga učinili boljim