Sadržaj:

Brzina okretanja bicikla: 5 koraka (sa slikama)
Brzina okretanja bicikla: 5 koraka (sa slikama)

Video: Brzina okretanja bicikla: 5 koraka (sa slikama)

Video: Brzina okretanja bicikla: 5 koraka (sa slikama)
Video: Miletov cuveni pad sa bicikla. :D 2024, Novembar
Anonim
Image
Image
DIY biciklistički tahometar
DIY biciklistički tahometar

Pokazat ću vam kako izgraditi brzinomjer za bicikl. Prikazuje vašu brzinu, prosječnu brzinu, temperaturu, vrijeme putovanja i ukupnu udaljenost. Možete ga promijeniti pomoću dugmeta. Dodatno, brzina je prikazana na tahometru. Napravio sam ga jer volim graditi nove stvari, nisam našao ništa slično na internetu pa vam želim pokazati kako napraviti dobar brzinomjer jer onaj na mom biciklu nije tako kul koliko želim:). Pa počnimo.

Korak 1: Dijelovi:

Dijelovi
Dijelovi

Ovo je popis dijelova koji će vam trebati. Koštali su me oko 40 dolara:

  • Arduino
  • Bicikl sa trstičnim prekidačem
  • LCD ekran 16x2
  • Servo
  • Breadboard
  • Termometar DS18B20
  • Otpornik 1.2k Ω, 4.7k Ω
  • Switch
  • Dugme
  • Potenciometar 10 kΩ
  • 9V baterija
  • Cables
  • Box
  • Alati (bušilica, lemljenje, nož, traka)

Korak 2: Povezivanje

Veza
Veza
Veza
Veza
Veza
Veza
Veza
Veza

Dodao sam sliku iz Fritzinga i usmeni opis kako to povezati. Na slici su sve crvene žice spojene na 5V, svi plavi kabeli su spojeni na GND.

LCD ekran:

VSS GND Arduino

VDP 5V Arduino

VO izlazni potenciometar (potenciometar VCC -> 5V Arduino, potenciometar 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

Termometar:

VCC 5V Arduino

masa GND Arduino

Podatkovni pin 1 Arduino

Podaci i napajanje povezani su putem otpornika od 4,7 kΩ

Senzor na kotaču:

jedan kraj -> 5V Arduino

drugi kraj -> A0 Arduino i otpornik 1, 2 kΩ

Drugi kraj otpornika uzemljen je u Arduinu

Dugme:

jedan kraj 5V Arduino

drugi kraj A1 Arduino

Korak 3: Otpremite kôd:

Ispod sam dodao kod u komentarima postoji objašnjenje.

veze do biblioteka za preuzimanje:

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

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

Ako imate drugačiji promjer kotača, morate ga promijeniti. Možete ga izračunati pomoću ove formule:

krug = π*d*2, 54 (d = promjer vašeg kotača, pomnožio sam ga sa 2,54 da dobijem rezultat u metrima).

/*

################################################# Autorsko pravo Nikodem Bartnik jun 2014. ########################################## ###### */// biblioteke #include #include #include #include #define ONE_WIRE_BUS 1 OneWire oneWire (ONE_WIRE_BUS); Senzori temperature u Dallasu (& oneWire); // Igle za LCD ekran LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // naziv serva Servo myservo; // definicija varijabli dugo, prethodno, vrijeme, vrijeme, impulsi; plovak brzinomjer, dist, aspeed; int servo; int screen = 1; // Ako imate drugi krug kotača, morate ga promijeniti. Float circuit = 2.0; dvostruka temperatura; void setup () {lcd.begin (16, 2);

pinMode (A0, INPUT); pinMode (A1, INPUT); // servo definicija i postavljanje tahometra na 0 myservo.attach (6); myservo.write (180); lcd.print ("Tahometar za bicikle"); kašnjenje (1000); lcd.setCursor (5, 1); lcd.print ("V 1.0"); kašnjenje (4000); lcd.clear (); kašnjenje (500); lcd.setCursor (0, 0); lcd.print ("Dist:"); } void loop () {// ako se točak okreće if (analogRead (A0)> = 300) {// broj zavoja ++ impulsi ++; // broji vrijeme okretanja = (millis ()-prethodni); // broji brzinomer = (krug /vrijeme)*3600,0; prethodni = millis (); Tahometar (); kašnjenje (100); } Lcd (); } // prikazuje brzinu na tahometru void Tahometar () {// preslikava brzinu 0-180 na servo brzinomjer = int (brzinomjer); servo = karta (brzinomjer, 0, 72, 180, 0); // postavljanje servo myservo.write (servo); } void Lcd () {// kada se pritisne dugme if (analogRead (A1)> = 1010) {lcd.clear (); screen ++; if (screen == 5) {screen = 1; }} if (screen == 1) {// prikazuje brzinu lcd.setCursor (0, 1); lcd.print ("Brzina:"); lcd.setCursor (7, 1); lcd.print (brzinomjer); lcd.print ("km/h"); } if (screen == 2) {// prikazuje temperaturu temperature = sensors.getTempCByIndex (0); sensors.requestTemperatures (); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.setCursor (7, 1); lcd.print (temperatura); lcd.print ("C"); } if (screen == 3) {// prikazuje prosječnu brzinu 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) {// prikazuje vrijeme putovanja triptime = millis ()/60000; lcd.setCursor (0, 1); lcd.print ("Vrijeme:"); lcd.setCursor (7, 1); lcd.print (triptime); } lcd.setCursor (0, 0); lcd.print ("Dist:"); // proračun udaljenosti dist = impulsi*krug/1000.00; // dislays distance lcd.setCursor (6, 0); lcd.print (dist); lcd.print ("km"); }

Korak 4: Spakujte se

Pack
Pack
Pack
Pack
Pack
Pack

Kao poklopac koristio sam plastičnu kutiju koju sam kupio za 1 USD. Izrezao sam rupe nožem i bušilicom. Servo i LCD ekran zalijepio sam trakom, vrh sam napravio kartonom i obojao bojom. Ja sam napravio štit u Corel Draw X5 i odštampao sam ga, dodao sam-p.webp

Korak 5: Pokrenite ga

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

Sada je spremno. Sve što trebate učiniti je upaliti ga i voziti. Zabavite se sa brzinomjerom. Ako vam se sviđa ovaj projekat, glasajte za mene.

Preporučuje se: