Sisukord:

Jalgratta simulaator reaalajas kiiruse reguleerimisega: 5 sammu
Jalgratta simulaator reaalajas kiiruse reguleerimisega: 5 sammu

Video: Jalgratta simulaator reaalajas kiiruse reguleerimisega: 5 sammu

Video: Jalgratta simulaator reaalajas kiiruse reguleerimisega: 5 sammu
Video: Riigikogu 18.05.2022 2024, November
Anonim
Jalgratta simulaator reaalajas kiiruse reguleerimisega
Jalgratta simulaator reaalajas kiiruse reguleerimisega

See projekt kasutab magnetilist pilliroo lülitit, et luua spidomeeter ja juhtida YouTube'is või mujal meedias esimese inimese jalgrattavideote videokiirust. Arduino arvutab mph ja seejärel kasutab seda teavet arvuti nupuvajutuse simuleerimiseks. See nupuvajutus koos Google Chrome'i laiendusega kiirendab või aeglustab videot kiiruse muutuse põhjal. Sellel on põhiline riistvara, mida Arduino algajad saavad hõlpsasti iseseisvalt luua.

Spidomeetri kood põhineb sellel projektil:

Riistvara loend:

1. Arduino Leonardo

2. Micro USB -kaabel (peab olema võimeline failiedastuseks ja <3ft)

3. Magnetiline pilliroo lüliti

4. 10k oomi takisti

5. 22 gabariidijuhe (<4ft)

6. Jootekolb

7. Jootma

8. Elektriline lint

9. Tõmblukud

10. Statsionaarne jalgrattatugi

11. Jalgratas

Samm: laadige arvutisse alla asjakohane tarkvara

1. Arduino IDE

2. Video kiiruse kontroller (veebibrauseri laiend)

a. Google Chrome

b. Firefox

Samm: riistvara

Riistvara
Riistvara
Riistvara
Riistvara
Riistvara
Riistvara

Kõik ühendused tuleks kokku jootma ja teibiga üle kleepida. Arduino saab jalgrattale paigaldada, kasutades Arduinoga kaasas olevat plastkorpust (lingitud ülaltoodud osade loendis). See on oluline, sest kui jalgratta metall puutub otseselt kokku tihvtidega, võib see tekitada soovimatuid ühendusi. Korpusel on ka augud, mis muudavad korpuse rattaga lukuga sidumise lihtsaks. 22 -meetrine traat tuleks mähkida jalgratta raami külge ja kinnitada teibi või tõmblukuga. Vältige traadi mähkimist kohtadesse, kus see võib liikuvate mehhanismide külge kinni jääda.

Samm: asetage jalgratas statsionaarsele jalgrattaalusele

Kinnitage jalgratas statsionaarsesse jalgrattahoidikusse ja veenduge, et see oleks arvutile piisavalt lähedal, et mikro-USB-juhe teie arvutisse jõuaks. Veenduge ka, et vaatamiskaugus oleks teie jaoks sobiv, et saaksite ekraani mugavalt näha. Siit leiate õpetuse, kuidas jalgratas kindlalt alusele paigutada.

Samm: laadige Arduino kood üles ja testige seda

Arduino koodi üleslaadimine ja testimine
Arduino koodi üleslaadimine ja testimine

Kui olete Arduino IDE uus kasutaja, leiate tutvustuslehe siit. Oluline on märkida, et Leonardo nõuab üleslaadimiseks mikro-USC-kaablit, millel on failiedastusvõimalused. Paljusid mikro-USB-kaableid kasutatakse ainult laadimiseks ja need ei tööta. Kui arvuti on Arduino Leonardo ära tundnud, kopeerige ja kleepige ning laadige üles järgmine kood:

// See kood leiab jalgratta kiiruse ja teisendab selle arvuti klaviatuuri vajutamiseks

// arvutused

// rehvi raadius ~ 13,5 tolli // ümbermõõt = pi*2*r = ~ 85 tolli // maksimaalne kiirus 35 mph = ~ 616 tolli sekundis // max rps = ~ 7,25

#kaasake

#define pilliroog A0 // tihvt ühendatud lugemislülitiga

// salvestusmuutujad

int reedVal; pikk taimer; // aeg ühe täispöörde vahel (ms) float mph; ujuki raadius = 13,5; // rehvi raadius (tollides) ujuki ümbermõõt; ujuk vprevious; ujukkiirus;

int maxReedCounter = 100; // min ühe pöörlemise aeg (ms) (tagasilöögi jaoks)

int reedCounter;

tühine seadistus () {

reedCounter = maxReedCounter; ümbermõõt = 2*3,14*raadius; pinMode (pilliroog, INPUT); Klaviatuur.begin (); // TIMER SETUP- taimeri katkestus võimaldab pilliroo lüliti täpseid ajastatud mõõtmisi // lisateavet arduino taimerite konfigureerimise kohta vt https://arduino.cc/playground/Code/Timer1 cli (); // katkestuste peatamine

// seada taimer1 katkestus sagedusele 1 kHz

TCCR1A = 0; // määrake kogu TCCR1A register väärtuseks 0 TCCR1B = 0; // sama TCCR1B puhul TCNT1 = 0; // seadistage taimerite arv 1 kHz sammuga OCR1A = 1999; // = (1/1000)/((1/(16*10^6))*8) - 1 // lülitage sisse CTC -režiim TCCR1B | = (1 < <WGM12); // Määra CS11 bit 8 eelskaala TCCR1B | = (1 << CS11); // lubage taimer võrdle katkestust TIMSK1 | = (1 << OCIE1A); sei (); // katkestuste lubamine // LÕPPTAIMERI SEADISTAMINE Serial.begin (9600); }

ISR (TIMER1_COMPA_vect) {// Katkestamine sagedusel 1 kHz, et mõõta pilliroo lülitit

reedVal = digitalRead (reed); // saada val väärtuseks A0, kui (reedVal) {// kui pilliroo lüliti on suletud, kui (reedCounter == 0) {// min impulsside vaheline aeg on möödunud vprevious = mph; viivitus (500); mph = (56,8*ujuk (ümbermõõt))/ujuk (taimer); // arvuta miili tunnis taimer = 0; // lähtesta taimer reedCounter = maxReedCounter; // lähtesta reedCounter} else {if (reedCounter> 0) {// ära lase reedCounteril minna negatiivseks reedCounter -= 1; // deced reedCounter}}} else {// kui pilliroo lüliti on avatud, kui (reedCounter> 0) {// ära lase reedCounteril negatiivset reedCounter -= 1;/ /decment reedCounter}} if (taimer> 2000) {mph = 0; // kui ühtegi pilliroo lüliti uut impulssi ei ole, määrake mph väärtusele 0 vprevious = 0; } else {taimer += 1; // juurdekasvu taimer}}

void controlComp () {

if (vprevious mph) // Video aeglustamine {Keyboard.press ('s'); Keyboard.releaseAll (); viivitus (750); } if (vprevious == mph) // ei tee midagi {; }} void loop () {// prindi mph kaks korda sekundis Serial.print ("VPrevious:"); Serial.print ("\ t"); Serial.println (vprevious);

Serial.print ("MPH:");

Serial.print ("\ t"); Seeria.println (mph); controlComp (); }

Kui kood on edukalt üles laaditud, avage jadamonitor. Kui tagaratas ei liigu, peaksid “MPH” ja “VPrevious” näit olema 0,00. Pöörake ratast nii, et see kiireneb mõne pöörde võrra ja aeglustub. Monitor peaks lugema kiirust ja tüüpi d kiirenduse jaoks ja s aeglustuse jaoks. Kui ratta pööramisel väärtusi ei kuvata, ei pruugi pilliroo lüliti magnetit tuvastada. Veenduge, et magnet on piisavalt tugev, kuulates, kui magnet lülitist möödub.

5. toiming: seadistage YouTube'i kontroller

Seadistage YouTube'i kontroller
Seadistage YouTube'i kontroller

Viimane samm on tuua üles YouTube'i videod, mida soovite jalgrattaga jälgimiseks kasutada. Idee on luua esimese isiku videoid, millesse saate täielikult sukelduda ja jalgrattasõidu ajal maastikku nautida. Olen täitnud YouTube'i esitusloendi, mis sisaldab erinevaid videovõimalusi. Need ulatuvad paljudest kanalitest, mis laadivad üles esimese isiku kriteeriumitele vastavaid videoid. Need on ka videod, nagu pilvedest läbi lendamine ja rongireisid murdmaasõitudeks mitmesuguste esimese inimese seikluste jaoks.

Soovitan: