Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02
Pokażę Ci, jak zbudować prędkościomierz rowerowy. Pokazuje Twoją prędkość, średnią prędkość, temperaturę, czas podróży i całkowitą odległość. Możesz to zmienić za pomocą przycisku. Dodatkowo prędkość pokazywana jest na obrotomierzu. Zbudowałem go, bo lubię budować nowe rzeczy, nie znalazłem czegoś takiego w internecie, więc chcę pokazać, jak zbudować dobry prędkościomierz, ponieważ ten na moim rowerze nie jest tak fajny, jak chcę:). Więc zacznijmy.
Krok 1: Części:
To jest lista części, których będziesz potrzebować. Kosztowały mnie około 40 dolarów:
- Arduino
- Rower z kontaktronem
- Wyświetlacz LCD 16x2
- Serwo
- Deska do krojenia chleba
- Termometr DS18B20
- Rezystor 1,2kΩ, 4,7kΩ
- Przełącznik
- Przycisk
- Potencjometr 10 kΩ
- Bateria 9V
- Kable
- Skrzynka
- Narzędzia (wiertło, lutownica, nóż, taśma)
Krok 2: Połączenie
Dodałem zdjęcie z Fritzing i słowny opis jak to połączyć. Na zdjęciu wszystkie czerwone przewody są podłączone do 5V, wszystkie niebieskie kable są podłączone do GND.
Wyświetlacz LCD:
VSS GND Arduino
VDP 5V Arduino
Potencjometr wyjściowy VO (potencjometr VCC -> 5V Arduino, potencjometr GND -> Arduino GND).
pin RS 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
Arduino 5V
K GND Arduino
Serwo:
VCC 5V Arduino
masa GND Arduino
Pin danych 6 Arduino
Termometr:
VCC 5V Arduino
masa GND Arduino
Pin danych 1 Arduino
dane i zasilanie są połączone za pomocą rezystora 4,7 kΩ
Czujnik na kole:
jeden koniec -> 5V Arduino
drugi koniec -> Arduino A0 i rezystor 1,2 kΩ
Drugi koniec rezystora do masy w Arduino
Przycisk:
jeden koniec 5V Arduino
drugi koniec Arduino A1
Krok 3: Prześlij kod:
Poniżej dodałem kod w komentarzach jest wyjaśnienie.
linki do bibliotek pobierania:
www.pjrc.com/teensy/arduino_libraries/OneWire.zip
github.com/milesburton/Arduino-Temperature-Control-Library
Jeśli masz inną średnicę koła, musisz to zmienić. Możesz to obliczyć za pomocą tego wzoru:
obwód = π*d*2, 54 (d=średnica twojego koła, pomnożyłem to przez 2,54, aby otrzymać wynik w metrach).
/*
################################################## Copyright by Nikodem Bartnik czerwiec 2014 ########################################## ###### */ //biblioteki #include #include #include #include #define ONE_WIRE_BUS 1 OneWire oneWire(ONE_WIRE_BUS); DallasCzujniki temperatury(&oneWire); //Styki wyświetlacza LCD LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //nazwa serwa Servo myservo; //definicja zmiennych od dawna, czasu podróży, czasu, impulsów; prędkościomierz pływakowy, odległość, prędkość; serwo wewnętrzne; int ekran=1; //Jeśli masz inny obwód koła, musisz go zmienić float circuit=2.0; podwójna temperatura; void setup() { lcd.begin(16, 2);
pinMode(A0, WEJŚCIE); pinMode(A1, WEJŚCIE); //definicja serwa i ustawienie obrotomierza na 0 myservo.attach(6); myservo.write(180); lcd.print("Obrotomierz rowerowy"); opóźnienie (1000); lcd.setCursor(5, 1); lcd.print("V 1.0"); opóźnienie (4000); lcd.clear(); opóźnienie (500); lcd.setCursor(0, 0); lcd.print("Odległość:"); } void loop() { //jeśli kręci się koło if(analogRead(A0)>=300){ //liczba obrotów++ impulsy++; //licz czas tur time=(millis()-previous); //liczenie prędkościomierza=(obieg / czas)*3600,0; poprzednia=mili(); Tachometr(); opóźnienie (100); } LCD(); } //wyświetlanie prędkości na obrotomierzu void Tachometer(){ //mapa prędkości 0-180 do serwomechanizmu speedometer=int(speedometer); serwo = mapa(prędkościomierz, 0, 72, 180, 0); //ustaw serwo myservo.write(serwo); } void Lcd(){ //po kliknięciu przycisku if(analogRead(A1)>=1010){ lcd.clear(); ekran++; jeśli(ekran==5){ekran=1; } } if(screen==1){ //wyświetla prędkość lcd.setCursor(0, 1); lcd.print("Prędkość:"); lcd.setCursor(7, 1); lcd.print(prędkościomierz); lcd.print("km/h"); } if(screen==2){ //wyświetlanie temperatury temperatura=czujniki.getTempCByIndex(0); sensory.żądanieTemperatury(); lcd.setCursor(0, 1); lcd.print("Temp:"); lcd.setCursor(7, 1); lcd.print(temperatura); lcd.print("C"); } if(screen==3){ //wyświetla średnią prędkość aspeed=dist/(millis()/1000.0)*3600.0; lcd.setCursor(0, 1); lcd.print("A.prędkość:"); lcd.setCursor(8, 1); lcd.print(szybkość); lcd.print("km/h"); } if(screen== 4){ //wyświetla czas podróży triptime=millis()/60000; lcd.setCursor(0, 1); lcd.print("Czas:"); lcd.setCursor(7, 1); lcd.print(czas podróży); } lcd.setCursor(0, 0); lcd.print("Odległość:"); //obliczenie odległości dyst=impulsy*obwód/1000.00; //wyświetla odległość lcd.setCursor(6, 0); lcd.print(dist); lcd.print("km"); }
Krok 4: Pakowanie
Jako okładkę użyłem plastikowego pudełka, które kupiłem za $1. Wycinam otwory nożem i wiertarką. Serwo i wyświetlacz LCD przykleiłem taśmą, końcówkę zrobiłem z kartonu i pomalowałem farbą. Zrobiłem tarczę w Corel Draw X5 i wydrukowałem ją, dodałem obraz-p.webp
Krok 5: Uruchom to
Teraz jest gotowy. Wszystko, co musisz zrobić, to włączyć i jechać. Baw się swoim prędkościomierzem. Jeśli podoba Ci się ten projekt, zagłosuj na mnie.
Zalecana:
Obrotomierz koła chomika: 11 kroków (ze zdjęciami)
Obrotomierz chomika: Około trzy lata temu siostrzeńcy dostali swojego pierwszego zwierzaka, chomika o imieniu Nugget. Ciekawość rutyny ćwiczeń Nugget zapoczątkowała projekt, który już dawno trwał Nugget (RIP). Ta instrukcja przedstawia funkcjonalny tachograf optyczny koła do ćwiczeń
Zbuduj prosty kierunkowskaz rowerowy: 11 kroków (ze zdjęciami)
Zbuduj prosty kierunkowskaz rowerowy: Wraz z nadejściem jesieni czasami trudno jest zdać sobie sprawę, że dni stały się krótsze, chociaż temperatura może być taka sama. Zdarzyło się to każdemu – wybierasz się na popołudniową wycieczkę rowerową, ale zanim wrócisz do połowy, jest ciemno, a Ty
Kask rowerowy LED: 6 kroków (ze zdjęciami)
Kask rowerowy LED: Oto jak dodać diody LED bezpieczeństwa do kasku rowerowego za pomocą farby przewodzącej. Zawsze traciłem te światła, które przyczepiasz do roweru, a nie są ani tanie, ani dobrej jakości. Materiały:farba przewodząca żywica epoksydowa przewodząca5-minutowa żywica epoksydowa (gorący klej do
Minimalistyczny wskaźnik rowerowy, dotykowy!: 10 kroków (ze zdjęciami)
Minimalistyczny wskaźnik rowerowy z obsługą dotykową!: Cześć! To jest mój pierwszy Instruktaż. Zawsze chciałem robić rzeczy od podstaw tylko po to, aby zobaczyć, jak to działa i kto nie lubi rzeczy DIY (Zrób to sam), kiedy można coś zmodyfikować zgodnie z własnymi potrzebami, prawda? Równie ciekawa jak majsterkowicz
Kask rowerowy z klimatyzacją (wykonany z komputerów z recyklingu): 5 kroków (ze zdjęciami)
Kask rowerowy z klimatyzacją (wykonany z komputerów z recyklingu): Ten kask z wentylatorami nad otworami zasysa powietrze z głowy i możesz poczuć, jak napływa na twarz i po bokach głowy! Bardzo dobry na jazdę na rowerze w słoneczne dni, kiedy jest bardzo gorąco. Diody LED pomagają również podczas jazdy na rowerze w nocy! Wszystkie części