Obsah:

DIY Bike Tachometer: 5 krokov (s obrázkami)
DIY Bike Tachometer: 5 krokov (s obrázkami)

Video: DIY Bike Tachometer: 5 krokov (s obrázkami)

Video: DIY Bike Tachometer: 5 krokov (s obrázkami)
Video: ЗАКРИЧАЛ – ПОТЕРЯЛ ₽200.000 / ТРЭШКЭШ: Тишина 2024, November
Anonim
Image
Image
DIY Bike Tachometer
DIY Bike Tachometer

Ukážem vám, ako postaviť rýchlomer na bicykli. Zobrazuje vašu rýchlosť, priemernú rýchlosť, teplotu, čas cesty a celkovú vzdialenosť. Môžete to zmeniť pomocou tlačidla. Rýchlosť je navyše zobrazená na tachometri. Postavil som ho, pretože rád staviam nové veci, nič také som na internete nenašiel, takže vám chcem ukázať, ako sa dá postaviť dobrý rýchlomer, pretože ten na mojom bicykli nie je taký cool, ako by som chcel:). Začnime teda.

Krok 1: Časti:

Diely
Diely

Toto je zoznam dielov, ktoré budete potrebovať. Stáli ma asi 40 dolárov:

  • Arduino
  • Bicykel s jazýčkovým spínačom
  • LCD displej 16x2
  • Servo
  • Breadboard
  • Teplomer DS18B20
  • Rezistor 1,2 k Ω, 4,7 k Ω
  • Prepnúť
  • Tlačidlo
  • Potenciometer 10 kΩ
  • 9V batéria
  • Káble
  • Box
  • Nástroje (vŕtačka, spájkovanie, nôž, páska)

Krok 2: Pripojenie

Pripojenie
Pripojenie
Pripojenie
Pripojenie
Pripojenie
Pripojenie
Pripojenie
Pripojenie

Pridal som obrázok z Fritzingu a slovný popis, ako ho prepojiť. Na obrázku sú všetky červené vodiče pripojené k 5V, všetky modré káble sú pripojené k GND.

Displej LCD:

VSS GND Arduino

VDP 5V Arduino

Výstupný potenciometer VO (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

masový GND Arduino

Dátový pin 6 Arduino

Teplomer:

VCC 5V Arduino

masový GND Arduino

Dátový pin 1 Arduino

dáta a výkon sú pripojené cez odpor 4,7 kΩ

Senzor na kolese:

jeden koniec -> 5V Arduino

druhý koniec -> A0 Arduino a rezistor 1, 2 kΩ

Druhý koniec odporu k zemi v Arduine

Tlačidlo:

jeden koniec 5V Arduino

druhý koniec A1 Arduino

Krok 3: Nahrajte kód:

Ďalej som kód pridal do komentárov, kde je vysvetlenie.

odkazy na sťahovacie knižnice:

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

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

Ak máte iný priemer kolesa, musíte ho zmeniť. Môžete to vypočítať podľa tohto vzorca:

obvod = π*d*2, 54 (d = priemer vášho kolesa, vynásobil som ho 2,54, aby som získal výsledok v metroch).

/*

################################################### ####### Autorské právo od Nikodem Bartnik, jún 2014 ################################################################### ###### */// knižnice #include #include #include #include #define ONE_WIRE_BUS 1 OneWire oneWire (ONE_WIRE_BUS); Senzory teploty Dallas (& oneWire); // piny LCD displeja LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // názov serva Servo myservo; // definícia premenných dlho predtým, triptime, čas, impulzy; plavákový rýchlomer, vzdialenosť, rýchlosť; int servo; int obrazovka = 1; // Ak máte iný obvod kolesa, musíte ho vymeniť za plavákový obvod = 2,0; dvojnásobná teplota; neplatné nastavenie () {lcd.begin (16, 2);

pinMode (A0, INPUT); pinMode (A1, VSTUP); // definícia serva a nastavenie tachometra na 0 myservo.attach (6); myservo.write (180); lcd.print („tachometer na bicykloch“); oneskorenie (1000); lcd.setCursor (5, 1); lcd.print ("V 1,0"); oneskorenie (4000); lcd.clear (); oneskorenie (500); lcd.setCursor (0, 0); lcd.print ("Dist:"); } prázdna slučka () {// ak sa koleso otáča, ak (analogRead (A0)> = 300) {// počet otáčok ++ impulzov ++; // počítanie času otočenia času = (milis ()-predchádzajúci); // počítanie rýchlomera rýchlosti = (okruh /čas)*3600,0; predchádzajúci = millis (); Otáčkomer (); oneskorenie (100); } LCD (); } // zobrazenie rýchlosti na tachometri neplatné tachometer () {// mapovanie rýchlosti 0-180 na servo rýchlomer = int (rýchlomer); servo = mapa (rýchlomer, 0, 72, 180, 0); // nastavenie servo myservo.write (servo); } neplatné Lcd () {// po kliknutí na tlačidlo if (analogRead (A1)> = 1010) {lcd.clear (); obrazovka ++; if (obrazovka == 5) {obrazovka = 1; }} if (obrazovka == 1) {// zobrazuje rýchlosť lcd.setCursor (0, 1); lcd.print ("Rýchlosť:"); lcd.setCursor (7, 1); lcd.print (rýchlomer); lcd.print ("km/h"); } if (obrazovka == 2) {// zobrazuje teplotu teploty = senzory.getTempCByIndex (0); senzory.requestTeploty (); lcd.setCursor (0, 1); lcd.print ("Teplota:"); lcd.setCursor (7, 1); lcd.print (teplota); lcd.print ("C"); } if (obrazovka == 3) {// zobrazuje priemernú rýchlosť 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 (obrazovka == 4) {// zobrazuje čas vypnutia triptime = millis ()/60000; lcd.setCursor (0, 1); lcd.print ("Čas:"); lcd.setCursor (7, 1); lcd.print (triptime); } lcd.setCursor (0, 0); lcd.print ("Dist:"); // výpočet vzdialenosti dist = impulzy*obvod/1000,00; // zobrazuje vzdialenosť lcd.setCursor (6, 0); lcd.print (dist); lcd.print ("km"); }

Krok 4: Balenie

Balenie
Balenie
Balenie
Balenie
Balenie
Balenie

Ako kryt som použil plastovú škatuľu, ktorú som kúpil za 1 dolár. Vyrezal som otvory pomocou noža a vŕtačky. Servo a LCD displej som prilepil páskou, špičku som vyrobil z kartónu a natrel farbou. Urobil som štít v programe Corel Draw X5 a vytlačil som ho, pridal som obrázok-p.webp

Krok 5: Spustite to

Spustite ho!
Spustite ho!
Spustite ho!
Spustite ho!
Spustite ho!
Spustite ho!
Spustite ho!
Spustite ho!

Teraz je pripravený. Všetko, čo musíte urobiť, je zapnúť a jazdiť. Bavte sa s rýchlomerom. Ak sa vám tento projekt páči, hlasujte za mňa.

Odporúča: