Tartalomjegyzék:
- 1. lépés: Töltse le a megfelelő szoftvert a számítógépére
- 2. lépés: Hardver
- 3. lépés: Helyezze a kerékpárt az álló kerékpártartóra
- 4. lépés: Töltse fel és tesztelje az Arduino kódot
- 5. lépés: Állítsa be a YouTube -vezérlőt
Videó: Kerékpárszimulátor valós idejű sebességbeállítással: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Ez a projekt mágneses nádkapcsolóval hoz létre sebességmérőt, és szabályozza a YouTube-on vagy más médián keresztüli első személyű kerékpáros videók sebességét. Az Arduino kiszámítja a km / h -t, majd ezeket az információkat használja a számítógép gombnyomásának szimulálására. Ez a gombnyomás a Google Chrome bővítménnyel párosítva felgyorsítja vagy lelassítja a videót a sebesség változása alapján. Van egy alapvető hardveres felépítése, amelyet azok, akik kezdők az Arduino-ban, könnyen létrehozhatják saját maguk.
A sebességmérő kódja ezen a projekten alapul:
Hardver lista:
1. Arduino Leonardo
2. Micro USB kábel (képesnek kell lennie fájlátvitelre és <3ft)
3. Mágneses Reed kapcsoló
4. 10 k ohmos ellenállás
5. 22 mérőhuzal (<4ft)
6. Forrasztópáka
7. Forrasztó
8. Elektromos szalag
9. Cipzár
10. Helyhez kötött kerékpárállvány
11. Kerékpár
1. lépés: Töltse le a megfelelő szoftvert a számítógépére
1. Arduino IDE
2. Videó sebességvezérlő (webböngésző -bővítmény)
a. Google Chrome
b. Firefox
2. lépés: Hardver
Minden csatlakozást össze kell forrasztani és ragasztani kell elektromos szalaggal. Az Arduino felszerelhető a kerékpárra az Arduinohoz mellékelt műanyag tokkal (a fenti alkatrészlistában linkelve). Ez azért fontos, mert ha a kerékpár fém érintkezik a csapokkal, akkor nem kívánt kapcsolatokat hozhat létre. A tokban lyukak is vannak, amelyek megkönnyítik a tok cipzárral történő összekapcsolását a kerékpárhoz. A 22 -es drótot a kerékpár váza mentén kell becsavarni, és szalaggal vagy cipzárral rögzíteni. Ügyeljen arra, hogy ne tekerje be a huzalt minden olyan helyre, ahol a mozgó mechanizmusokba kerülhet.
3. lépés: Helyezze a kerékpárt az álló kerékpártartóra
Rögzítse a kerékpárt az álló kerékpártartóba, és győződjön meg arról, hogy elég közel van a számítógéphez ahhoz, hogy a mikro-USB-kábel elérje a számítógépet. Győződjön meg arról is, hogy a látótávolság megfelelő ahhoz, hogy kényelmesen láthassa a képernyőt. Itt talál egy oktatóanyagot a kerékpár biztonságos elhelyezéséről az állványon.
4. lépés: Töltse fel és tesztelje az Arduino kódot
Ha még nem ismeri az Arduino IDE -t, itt talál egy bevezető oldalt. Fontos megjegyezni, hogy a Leonardo mikro-USC kábelt igényel a feltöltéshez, amely rendelkezik fájlátviteli képességekkel. Sok mikro-USB kábelt csak töltésre használnak, és ezek nem fognak működni. Miután a számítógép felismerte az Arduino Leonardót, másolja be, illessze be és töltse fel a következő kódot:
// Ez a kód megkeresi a kerékpár sebességét, és átalakítja azt a számítógép billentyűzetének megnyomására
// számítások
// gumiabroncs sugara ~ 13,5 hüvelyk // kerület = pi*2*r = ~ 85 hüvelyk // maximális sebesség 35mph = ~ 616 hüvelyk/másodperc // max rps = ~ 7,25
#befoglalni
#define nád A0 // csap olvasókapcsolóhoz csatlakoztatva
// tárolási változók
int reedVal; hosszú időzítő; // egy teljes elforgatás közötti idő (ms -ban) float mph; úszó sugár = 13,5; // gumiabroncs sugara (hüvelykben) úszó kerülete; float vprevious; lebegési arány;
int maxReedCounter = 100; // perc egy forgás (ms)
int reedCounter;
void setup () {
reedCounter = maxReedCounter; kerület = 2*3,14*sugár; pinMode (nád, INPUT); Keyboard.begin (); // TIMER SETUP- az időzítő megszakítás lehetővé teszi a nádkapcsoló pontos időzített mérését // az arduino időzítők konfigurálásával kapcsolatos további információkért lásd: https://arduino.cc/playground/Code/Timer1 cli (); // stop interrupt
// timer1 interrupt beállítása 1 kHz -en
TCCR1A = 0; // állítsa a teljes TCCR1A regisztert 0 -ra TCCR1B = 0; // ugyanaz a TCCR1B esetén TCNT1 = 0; // időzítők számának beállítása 1 khz -es lépésekben OCR1A = 1999; // = (1/1000)/((1/(16*10^6))*8) - 1 // kapcsolja be a CTC módot TCCR1B | = (1 < <WGM12); // CS11 bit beállítása 8 előskálázó TCCR1B | = (1 << CS11); // időzítő összehasonlítás engedélyezése megszakítás TIMSK1 | = (1 << OCIE1A); sei (); // megszakítások engedélyezése // END TIMER SETUP Serial.begin (9600); }
ISR (TIMER1_COMPA_vect) {// Megszakítás 1 kHz frekvencián a nádkapcsoló méréséhez
reedVal = digitalRead (nád); // kapja meg az A0 értékét, ha (reedVal) {// ha a nádkapcsoló zárva van, ha (reedCounter == 0) {// az impulzusok közötti minimális idő eltelt vprevious = mph; késleltetés (500); mph = (56,8*lebegés (kerület))/úszó (időzítő); // mérföld/óra számítása időzítő = 0; // időzítő visszaállítása reedCounter = maxReedCounter; // reset reedCounter} else {if (reedCounter> 0) {// ne hagyja, hogy a reedCounter negatív reedCounter -= 1; // decred reedCounter}}} else {// ha a nádkapcsoló nyitva van, ha (reedCounter> 0) {// ne engedje, hogy a reedCounter negatív reedCounter -= 1;/ /decement reedCounter}} if (időzítő> 2000) {mph = 0; // ha nincs új impulzus a nádkapcsolóból, állítsa az mph értéket 0 vprevious = 0; } else {időzítő += 1; // növekményes időzítő}}
void controlComp () {
if (vprevious mph) // Videó sebességének lassítása {Keyboard.press ('s'); Keyboard.releaseAll (); késleltetés (750); } if (vprevious == mph) // ne csinálj semmit {; }} void loop () {// mph másodpercenként kétszer nyomtat. Serial.print ("VPrevious:"); Serial.print ("\ t"); Serial.println (vprevious);
Serial.print ("MPH:");
Serial.print ("\ t"); Soros.println (mph); controlComp (); }
A kód sikeres feltöltése után nyissa meg a soros monitort. Ha a hátsó kerék nem mozog, az „MPH” és a „VPrevious” értéke 0,00. Forgassa el a kereket, hogy néhány fordulattal felgyorsuljon, majd lelassuljon. A monitornak ki kell olvasnia a sebességet és a d -t a gyorsításhoz, és az s -t a lassításhoz. Ha a kerék elforgatásakor nem jelennek meg értékek, előfordulhat, hogy a nádkapcsoló nem érzékeli a mágnest. Győződjön meg arról, hogy a mágnes elég erős, hallgassa meg a kilépő * csörgő * zajt, amikor a mágnes áthalad a kapcsolón.
5. lépés: Állítsa be a YouTube -vezérlőt
Az utolsó lépés az, hogy előhozza azokat a YouTube -videókat, amelyeket használni szeretne kerékpárján. Az ötlet az, hogy legyenek első személyű videók, amelyekben teljesen elmerülhet, és kerékpározás közben élvezheti a tájat. Megfeleltem egy YouTube -lejátszási listának, amely számos videólehetőséget tartalmaz. Számos csatorna közül választhatnak, amelyek feltöltik az első személyi feltételeknek megfelelő videókat. Ezek olyan videók is, mint a felhőkön átrepülés és a sífutó vonatos utak az első személyű kalandok számára.
Ajánlott:
Valós idejű óra modul használata (DS3231): 5 lépés
Valós idejű óramodul (DS3231) használata: A DS3231 egy olcsó, rendkívül pontos I2C valós idejű óra (RTC), beépített hőmérséklet-kompenzált kristályoszcillátorral (TCXO) és kristállyal. A készülék akkumulátor -bemenettel rendelkezik, és pontos időmérést tart fenn, amikor a fő áramellátás
Valós idejű Rubik-kocka bekötött szemű megoldó a Raspberry Pi és az OpenCV használatával: 4 lépés
Valós idejű Rubik-kocka bekötött szemű megoldó a Raspberry Pi és az OpenCV használatával: Ez a Rubik kockaeszköz 2. verziója, bekötött szemmel történő megoldásra. Az első verziót a javascript fejlesztette ki, láthatja a RubiksCubeBlindfolded1 projektet. Az előzőtől eltérően ez a verzió az OpenCV könyvtárat használja a színek és az
Valós idejű kút vízszintmérő: 6 lépés (képekkel)
Valós idejű kútvízszint-mérő: Ezek az utasítások leírják, hogyan lehet olcsó, valós idejű vízszintmérőt készíteni ásott kutakban való használatra. A vízszintmérőt úgy tervezték, hogy egy ásott kút belsejében lógjon, naponta egyszer mérje a vízszintet, és WiFi -n vagy mobilkapcsolaton keresztül küldje el az adatokat
Valós idejű kútvíz-hőmérséklet, vezetőképesség és vízszintmérő: 6 lépés (képekkel)
Valós idejű kútvíz-hőmérséklet-, vezetőképesség- és vízszintmérő: Ezek az utasítások leírják, hogyan lehet olcsó, valós idejű vízmérőt készíteni a hőmérséklet, az elektromos vezetőképesség (EC) és a vízszint figyelésére ásott kutakban. A mérőt úgy tervezték, hogy egy ásott kút belsejében lógjon, mérje a víz hőmérsékletét, EC és
Valós idejű grafikon rajzolása Androidon az Arduino-tól a HC-05-ig: 3 lépés
Valós idejű grafikon ábrázolása Androidon Arduino-tól HC-05-ig: Üdv, itt van egy oktatóanyag arról, hogyan lehet valós idejű grafikonot ábrázolni egy mikrovezérlőről, például egy Arduino-ról az alkalmazásra. Bluetooth-modult, például a HC-05-t használ üzenetküldő eszközként az adatok továbbítására és fogadására az Ar