Kazalo:
Video: Kolesarski števec kilometrov PCBWay Arduino: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:02
V mnogih vozilih obstajajo naprave, ki izračunajo prevoženo razdaljo in so bistvene za predstavitev informacij vozniku.
Tako je s temi informacijami mogoče spremljati prevoženo razdaljo med dvema točkama, na primer s števcem kilometrov v vozilu.
Zaloge
01 x PCBWay PCB po meri
01 x Arduino UNO - UTSOURCE
01 x LCD zaslon 16x2 - UTSOURCE
01 x Okvir - UTSOURCE
01 x Žični skakalci - UTSOURCE
Rotacijski potenciometer 01 x 10kR - UTSOURCE
01 x Reed stikalo UTSOURCE - UTSOURCE
Zato vas bomo v tem članku naučili, kako sestaviti napravo za izračun razdalje s senzorjem trstičnega stikala.
1. korak: Projekt
Naslednji projekt je bil ustvarjen za izračun prevožene razdalje s kolesom telovadnice. Poleg tega se boste naučili, kako ustvariti programiranje za projekt.
Ta projekt ima tri funkcije:
- Izračunajte prevoženo razdaljo s kolesom;
- Konfiguracija polmera zagona naprave;
- Prilagodljivo vsakemu kolesu.
Za dostop do teh funkcij bo uporabnik uporabil tri gumbe sistema. Vsak gumb ima svojo funkcionalnost. V sistemu imamo naslednje gumbe:
Gumb za povečanje: Uporabil se bo za vnos možnosti za konfiguracijo polmera koles in povečanje vrednosti polmera;
Gumb za zmanjšanje: Uporabil se bo za zmanjšanje možnosti nastavitve polmera koles;
Gumb Enter: Uporablja se za vnos vrednosti polmera v sistem.
Poleg tega imamo senzor trstičnega stikala. Odgovoren je za zaznavanje popolnega obrata koles. Če želite to zaznati, morate na kolesa namestiti magnet.
Reed stikalo je predstavljeno na zgornji sliki.
2. korak:
Tako bo vsakič, ko se magnet približa senzorju, sprožil senzor Reed Switch. Postopek deluje po naslednji enačbi:
Prevožena razdalja = 2 * π * polmer * TurnNumber
Skozi to enačbo bomo vedeli, koliko prevožene razdalje opravi kolo.
V enačbi uporabnik vstavi polmer, število obratov pa izračuna s številom zavojev kolesa.
Za odkrivanje zavojev kolesa je potrebno v kolo vgraditi magnet in senzor trstičnega stikala v bližini kolesa.
Za lažji postopek ustvarimo tiskano vezje za povezavo senzorja stikala Reed in treh gumbov. Tiskano vezje je predstavljeno spodaj na spodnji sliki.
3. korak:
Kot je prikazano na tiskanem vezju, je mogoče videti Arduino Nano. Odgovoren je za nadzor vseh sistemov. Poleg tega imamo 5 priključkov JST.
Priključki C1 do C4 se uporabljajo za povezavo treh gumbov in senzorja stikala Reed. Zdaj se priključek C5 uporablja za priključitev LCD 16x2 I2C.
Zato lahko s tem sistemom namestite projekt v svoje kolo in pridobite vrednost prevožene razdalje.
Za to lahko uporabite spodnjo kodo.
#include #include
/*
Pinos de conex? O dos bot? Es e senzorsko stikalo 8 - senzorsko trstično stikalo 9 - dekremento 12 - povečanje 11 - vnesite */
#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;
LCD tekoči kristal (rs, en, d4, d5, d6, d7);
bool senzor = 0, estado_anterior = 0, povečanje = 0, dekremento = 0;
bool IncrementoAnterior = 0, DecrementoAnterior = 0, BotaoEnter = 0, EstadoAnteriorIncremento = 0;
bajt cont = 0;
brez podpisa dolga int VoltaCompleta = 0;
brez podpisa dolg int tempo_atual = 0, ultimo_tempo = 0;
plovec DistKm = 0;
brez podpisa int raio = 0; plavajoča Distancia = 0;
void setup ()
{Serial.begin (9600); pinMode (8, VHOD); pinMode (9, VHOD); pinMode (10, INPUT); pinMode (12, VHOD);
lcd.begin (16, 2);
// Regiao de codigo para configurar o raio da roda do veiculo
if (EEPROM.preberi (MEMORIJA)! = 73) {ConfiguraRaio (); EEPROM.write (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.preberite (PosRaio);
}
void loop ()
{
// Regiao de codigo para realizar a leitura dos botoes e sensor do dispositivo
senzor = digitalno branje (ReedSwitch); Decremento = digitalno branje (BotaoDecremento); Incremento = digitalno branje (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;
}
če (senzor == 1 && estado_anterior == 0)
{estado_anterior = 1; }
// Regiao de Codigo para Configurar o Raio
if (Incremento == 1 && EstadoAnteriorIncremento == 0) {EstadoAnteriorIncremento = 1; }
če (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)");
naredi
{
lcd.setCursor (6, 1);
Incremento = digitalno branje (BotaoIncremento);
Decremento = digitalno branje (BotaoDecremento); BotaoEnter = digitalno branje (BotaoEnterOk);
če (Incremento == 1 && IncrementoAnterior == 0)
{RaioRoda = RaioRoda + 1; IncrementoAnterior = 1; }
če (Incremento == 0 && IncrementoAnterior == 1)
{IncrementoAnterior = 0; }
če (Decremento == 1 && DecrementoAnterior == 0)
{RaioRoda = RaioRoda - 1; DecrementoAnterior = 1; }
če (Decremento == 0 && DecrementoAnterior == 1)
{DecrementoAnterior = 0; }
lcd.setCursor (6, 1);
lcd.print (RaioRoda);
} while (BotaoEnter == 0);
lcd.clear ();
EEPROM.write (PosRaio, RaioRoda);
vrnitev; }
Iz te kode bo morda izračunal vašo razdaljo do vašega Arduina.
4. korak: Zaključek
Če torej želite lastno tiskano vezje, jo lahko dobite prek te povezave na spletnem mestu PCBWay.com. V ta namen lahko dostopate do spletnega mesta, ustvarite svoj račun in pridobite lastne tiskane vezje.
Laboratorij Silícios se zahvaljuje podjetju UTSOURCE, ki ponuja elektronske komponente za ustvarjanje tega projekta.
Priporočena:
Kolesarski tahometer DIY: 5 korakov (s slikami)
DIY Bike Tachometer: Pokazal vam bom, kako sestaviti kolesarski merilnik hitrosti. Prikazuje vašo hitrost, povprečno hitrost, temperaturo, čas potovanja in skupno razdaljo. Spremenite ga lahko z gumbom. Poleg tega je hitrost prikazana na tahometru. Zgradil sem ga, ker sem
Ustvarjanje Arduino števca kilometrov - I. del: 4 koraki
Ustvarjanje števca kilometrov Arduino - I. del: Kolesarji in uporabniki sobnih koles morajo pogosto meriti svojo hitrost in prevoženo razdaljo. Za to potrebujemo napravo, imenovano števec prevoženih kilometrov, ki je odgovorna za merjenje teh spremenljivk in prenos teh informacij
Arduino kolesarski merilnik hitrosti z uporabo GPS: 8 korakov
Arduino kolesarski merilnik hitrosti z uporabo GPS: V tej vadnici bomo uporabili Arduino in Visuino za prikaz trenutne hitrosti koles iz GPS na zaslonu ST7735. Oglejte si predstavitveni video
Kolesarski merilnik hitrosti: 3 koraki
Kolesarski merilnik hitrosti: Pozdravljeni prijatelji … V tem navodilu bom razložil, kako narediti kolesarski merilnik hitrosti, pravzaprav imam staro vadbeno kolo, katerega mehanski merilnik hitrosti je bil že davno pokvarjen, zato sem se odločil, da ga zamenjam z elektronski, ampak
Kolesarski zvočniki: 3 koraki
Kolesarski zvočniki: po nekaj smrtnih izkušnjah, ko sem nosil slušalke in se izogibal tovornjakom, sem na svoje staro kolo prilepil nekaj starih zvočnikov … na žalost sem šele odkril 'navodila' in nimam nobenih nakopičenih fotografij, vendar je izdelava osnovna in enostavna dovolj, da