Kazalo:

Kolesarski tahometer DIY: 5 korakov (s slikami)
Kolesarski tahometer DIY: 5 korakov (s slikami)

Video: Kolesarski tahometer DIY: 5 korakov (s slikami)

Video: Kolesarski tahometer DIY: 5 korakov (s slikami)
Video: Как проверить генератор. За 3 минуты, БЕЗ ПРИБОРОВ и умений. 2024, December
Anonim
Image
Image
Kolesarski tahometer DIY
Kolesarski tahometer DIY

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 rad ustvarjam nove stvari, na internetu nisem našel nič takega, zato vam želim pokazati, kako zgraditi dober merilnik hitrosti, saj tisti na mojem kolesu ni tako kul, kot si želim:). Pa začnimo.

1. korak: Deli:

Deli
Deli

To je seznam delov, ki jih boste potrebovali. Stali so me približno 40 dolarjev:

  • Arduino
  • Kolo s trstičnim stikalom
  • LCD zaslon 16x2
  • Servo
  • Ogledna plošča
  • Termometer DS18B20
  • Upor 1.2k Ω, 4.7k Ω
  • Preklopite
  • Gumb
  • Potenciometer 10 kΩ
  • 9V baterija
  • Kabli
  • Škatla
  • Orodja (vrtanje, spajkanje, nož, trak)

2. korak: Povezava

Povezava
Povezava
Povezava
Povezava
Povezava
Povezava
Povezava
Povezava

Dodal sem sliko iz Fritzinga in ustni opis, kako jo povezati. Na sliki so vse rdeče žice priključene na 5V, vsi modri kabli pa na GND.

LCD zaslon:

VSS GND Arduino

VDP 5V Arduino

VO izhodni potenciometer (potenciometer VCC -> 5V Arduino, potenciometer GND -> Arduino GND).

RS pin 12 Arduino

RW GND Arduino

E pin 11 Arduino

D4 pin 5 Arduino

D5 pin 4 Arduino

D6 pin 3 Arduino

D7 pin 2 Arduino

5V Arduino

K GND Arduino

Servo:

VCC 5V Arduino

masa GND Arduino

Podatkovni pin 6 Arduino

Termometer:

VCC 5V Arduino

masa GND Arduino

Podatkovni pin 1 Arduino

podatki in napajanje so povezani prek upora 4,7 kΩ

Senzor na kolesu:

en konec -> 5V Arduino

drugi konec -> A0 Arduino in upor 1, 2 kΩ

Drugi konec upora na ozemljitvi v Arduinu

Gumb:

en konec 5V Arduino

drugi konec A1 Arduino

3. korak: Naložite kodo:

Spodaj sem v komentarje dodal kodo, je razlaga.

povezave do knjižnic za prenos:

www.pjrc.com/teensy/arduino_libraries/OneWire.zip

github.com/milesburton/Arduino-Temperature-Control-Library

Če imate drugačen premer kolesa, ga morate spremeniti. Izračunate ga lahko po tej formuli:

vezje = π*d*2, 54 (d = premer vašega kolesa, pomnožil sem ga z 2,54, da dobim rezultat v metrih).

/*

################################################# Avtorske pravice Nikodem Bartnik junij 2014 ######################################### ###### */// knjižnice #include #include #include #include #define ONE_WIRE_BUS 1 OneWire oneWire (ONE_WIRE_BUS); Senzorji temperature Dallas (& oneWire); // zatiči LCD zaslona LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // ime servo Servo myservo; // opredelitev spremenljivk dolgih predhodnih, trojnih, časovnih, impulznih; plavajoči merilnik hitrosti, dist, aspeed; int servo; int screen = 1; // Če imate drugo vezje kolesa, ga morate spremeniti v plavajočem krogu = 2,0; dvojna temperatura; void setup () {lcd.begin (16, 2);

pinMode (A0, INPUT); pinMode (A1, INPUT); // servo definicija in nastavitev tahometra na 0 myservo.attach (6); myservo.write (180); lcd.print ("Kolesarski tahometer"); zamuda (1000); lcd.setCursor (5, 1); lcd.print ("V 1.0"); zamuda (4000); lcd.clear (); zamuda (500); lcd.setCursor (0, 0); lcd.print ("Dist:"); } void loop () {// če se kolo vrti if (analogRead (A0)> = 300) {// število zavojev ++ impulzi ++; // štejemo čas obračanja = (millis ()-prejšnji); // štetje merilnika hitrosti = (vezje /čas)*3600,0; prejšnji = millis (); Merilnik vrtljajev (); zamuda (100); } Lcd (); } // hitrost prikaza na tahometru void Tachometer () {// preslikava hitrost 0-180 na servo merilnik hitrosti = int (merilnik hitrosti); servo = zemljevid (merilnik hitrosti, 0, 72, 180, 0); // nastavitev servo myservo.write (servo); } void Lcd () {// ko kliknete gumb if (analogRead (A1)> = 1010) {lcd.clear (); zaslon ++; if (zaslon == 5) {zaslon = 1; }} if (screen == 1) {// prikaže hitrost lcd.setCursor (0, 1); lcd.print ("Hitrost:"); lcd.setCursor (7, 1); lcd.print (merilnik hitrosti); lcd.print ("km/h"); } if (screen == 2) {// prikazuje temperaturo temperature = sensors.getTempCByIndex (0); sensors.requestTemperatures (); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.setCursor (7, 1); lcd.tisk (temperatura); lcd.print ("C"); } if (screen == 3) {// prikazuje povprečno hitrost aspeed = dist/(millis ()/1000.0)*3600.0; lcd.setCursor (0, 1); lcd.print ("A.speed:"); lcd.setCursor (8, 1); lcd.print (aspeed); lcd.print ("km/h"); } if (screen == 4) {// prikaže čas potovanja tripptime = millis ()/60000; lcd.setCursor (0, 1); lcd.print ("Čas:"); lcd.setCursor (7, 1); lcd.print (triptime); } lcd.setCursor (0, 0); lcd.print ("Dist:"); // izračun razdalje dist = impulzi*vezje/1000,00; // zakasne razdalja lcd.setCursor (6, 0); lcd.print (dist); lcd.print ("km"); }

4. korak: Pakirajte

Pakiranje
Pakiranje
Pakiranje
Pakiranje
Pakiranje
Pakiranje

Kot prevleko sem uporabil plastično škatlo, ki sem jo kupil za 1 USD. Izrezal sem luknje z nožem in svedrom. Servo in LCD zaslon sem zlepil s trakom, konico sem naredil s kartonom in ga pobarval z barvo. V Corel Draw X5 sem naredil ščit in ga natisnil, dodal sliko-p.webp

5. korak: Zaženite

Run It!
Run It!
Run It!
Run It!
Run It!
Run It!
Run It!
Run It!

Zdaj je pripravljeno. Vse kar morate storiti je, da ga vklopite in vozite. Zabavajte se s svojim merilnikom hitrosti. Če vam je ta projekt všeč, glasujte zame.

Priporočena: