Innholdsfortegnelse:
- Trinn 1: Materialer
- Trinn 2: Forbered rommet ditt
- Trinn 3: Krets
- Trinn 4: Bygg knapper
- Trinn 5: Installer knapper for sving
- Trinn 6: Fest Arduino til sykkelen
- Trinn 7: Installer Reed Switch og Magnet
- Trinn 8: Test Reed Switch
- Trinn 9: Programmer Arduino
- Trinn 10: Fullfør oppsettet
- Trinn 11: Kjør gjennom vegger
- Trinn 12: Feilsøking
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
Riding Through Walls: Google Street View Stationary Bike Interface lar deg sykle gjennom Google Street-View fra din stue. Ved å bruke enkel elektronikk, en Arduino, en stasjonær sykkel, en datamaskin og projektor eller TV kan du utforske verden uten å forlate hjemmet. Se https://ridingthroughwalls.megansmith.ca/ for mer informasjon.
Trinn 1: Materialer
Deleliste
- Dørsensor/sivbryter (Adafruit ID375, Sparkfun COM-13247, Digikey COM-13247)
- 1 eller 2 magneter (Adafruit ID9, Sparkfun COM-08890)
- 2 trykknapper (Adafruit ID471, Adafruit ID1505, Sparkfun COM-09337, Sparkfun COM-11967, Sparkfun COM-11994, Digikey COM-09337)
- Ledning 7,62 m (25 fot) (Adafruit ID290/ID2984, Sparkfun COM-08022/COM-08026, Digikey PRT-08022/PRT-08026)
- Valgfrie hurtigkoblinger (Adafruit ID1152, Digikey WM13557-ND eller Digikey A108294CT-ND for mindre kontakter)
- 2 rørklemmer
- Glidelås eller borrelås
- Varmekrymping (Adafruit ID344)
-
Arduino Leonardo, Due, Micro eller Zero (kreves for Human Interface Device -funksjonalitet)
Avanserte løsninger for å aktivere HID for Arduino Uno eller Mega finner du her eller her
Materialer for montering
- Avbitertang
- Nåltang
-
Loddejern (valgfritt)
- Flux Core Lodde (valgfritt)
- Elektrisk tape (valgfritt)
- Varmepistol eller lighter
Nødvendig utstyr for bruk Stasjonær sykkel
- Datamaskin med USB og skjermutgang
- Projektor eller skjerm
Trinn 2: Forbered rommet ditt
Dette prosjektet er ment å tillate deg å utforske verden på sykkel fra din stue. For best resultat, bruk med en projektor som dekker hele veggen med det projiserte bildet. TVer og skjermer fungerer også, men jo større bildet er, desto bedre blir fordypningen. Plasser den stasjonære sykkelen i rimelig avstand fra bildet, så nært som sentrert som mulig.
Med en ide om hvor du vil plassere alle komponentene dine, kan du nå kjøre ledningene fra knappene og sivbryteren til Arduino for å få et estimat av hvor lange ledningene dine faktisk må være.
Trinn 3: Krets
Riding Through Walls Google Street View Bike bruker en relativt enkel krets som består av to trykknapper og en sivbryter koblet fra Arduino -inngangene til bakken. De interne pullup -motstandene brukes for å unngå behovet for å bygge kretsen med eksterne motstander. Kretsen som er vist er testet med Arduino Leonardo og skal fungere for enhver Arduino.
- Magnetisk sivbryter festet fra pinne 2 til bakken
- Høyre trykknapp festet fra pinne 3 til bakken
- Venstre trykknapp festet fra pinne 4 til bakken
- Interne pullup -motstander som brukes til alle tre pinnene
MERK: Ettersom kretsen er avhengig av Arduino's interne motstander, vær ekstra forsiktig, ettersom tilkoblingen til OUTPUT HIGH kan kortslutte 5V til bakken og skade Arduino permanent.
Trinn 4: Bygg knapper
Kjør to ledningslengder fra Arduino til hver av knappene på styret. Klipp ledningen i lengden og krympe hurtigkoblingene til enden som festes til knappen. Hvis du foretrekker at ledningen kan loddes til knappene i stedet.
Trinn 5: Installer knapper for sving
Avhengig av størrelsen og formen på styret er det flere måter å feste trykknappene på. Du vil ha dem lett tilgjengelige og nær hendene dine.
Midlertidig eller fleksibel løsning: Bruk tape eller borrelås
- Bruk borrelåsstrimler eller en sterk, men fleksibel tape, for eksempel elektrisk tape, hockeytape eller gaffertape.
- Hold knappen på plass vinkelrett på styret.
- Fest borrelåsen/båndet rundt både knappen og styret, og lag et X-formet mønster for å hindre at knappen roterer.
Permanent løsning: Bruk standard håndtak
Bor et hull med samme diameter som knappen og tre ledningene slik at knappen kan settes inn i styret på en behagelig avstand for at tommelen kan betjene dem mens du holder styret
Trinn 6: Fest Arduino til sykkelen
For å feste Arduino Leonardo til sykkelen, bruk plastfeste som følger med Arudino.
- Kjør en borrelåsstrimmel gjennom det vertikale risten på festet.
- Fest borrelåsen rundt sykkelen der du vil feste den.
- Sett Arduino inn i holderen ved å trykke den på plass.
Hvis du ikke har plastfeste som følger med Arduino, er det andre måter å lage etui og steder for å lagre systemet trygt.
Håndtak/salveske
Du kan ganske enkelt plassere Arduino i et håndtak eller en salveske for å holde den trygg og beskyttet. Vesken er designet for å enkelt festes til de fleste sykler
Kurv
Hvis sykkelen din har en kurv, kan du plassere Arduino i kurven og dekke til med en beskyttende overflate, for eksempel et plastark eller et trebrett.
Gjenbrukbar plastbeholder
Du kan også bruke en gjenbrukbar plastbeholder. En liten Ziploc- eller Tupperware -beholder bør også gjøre susen. Bare kutt eller bor hull i bunnen av beholderen for å kjøre glidelåser gjennom, og ett hull for å føre ledningene gjennom. Glidelås fest beholderen til sykkelen og legg lokket på når Arduino er installert.
3D -trykt etui
Det er en rekke 3D -trykte saker som du kan laste ned og skrive ut fra nettsteder som Thingiverse, inkludert denne for Arduino Uno og Leonardo. Det kan være lurt å endre saken før utskrift slik at den passer til monteringsløsningen, for eksempel lage hull for å føre glidelåser gjennom saken. Bare 3D -utskrift av etuiet, montering og glidelås eller tape det på sykkelen.
Trinn 7: Installer Reed Switch og Magnet
Først må sivbryteren og tilhørende magnet installeres på hjulet og rammen. Avhengig av hvilken type drivsystem din stasjonære sykkel bruker, må du ta en litt annen tilnærming, men i hvert tilfelle går magneten på den bevegelige delen og sivbryteren går på rammen. De skal monteres på et sted der de ikke vil forstyrre andre deler som bremser eller drivverkskomponenter. Hvis ledningene festet til sivbryteren ikke er lange nok, må du lodde mer ledning for å forlenge dem.
Alternativ 1 - Sykkelhjul med dekk
Hvis du bruker en vanlig sykkel på en sykkeltrener, eller en av mange eldre stasjonære sykler som bruker et standard sykkelhjul og dekk, er disse trinnene noe for deg.
- Prøv å plassere magneten direkte på hjulet. Hvis hjulet er av stål, holder magneten seg på plass.
- Hvis magneten ikke holder seg på plass, kan den festes til hjulet ved hjelp av dobbeltsidig monteringstape, varmt lim eller superlim.
-
Alternativt kan en andre magnet plasseres inne i felgen for å holde magneten mot hjulet. Følg disse trinnene for å oppnå dette:
- Fjern hjulet fra sykkelen, da dette vil gjøre følgende trinn lettere.
- Tøm dekket ved å fjerne støvhetten og trykke ventilen inn med en skrutrekker, penn eller annet lite verktøy.
- Trekk dekket tilbake fra felgen der du vil installere magneten.
- Plasser en magnet inne i felgen, forskjøvet mot den ene siden av hjulet. Plasser den andre magneten på utsiden av felgen på samme sted. Magnetene skal holde hverandre på plass.
- Oppblås opp dekket med en sykkelpumpe eller luftkompressor, pass på at du ikke overskrider det anbefalte trykket på siden av dekket.
- Sett hjulet på igjen på sykkelen.
- Installer Reed-bryteren på rammen innen 12 mm (0,5 ") fra magneten mens du holder den fri for bevegelige deler. Sørg for at den større siden av sivbryteren vender mot magneten. Bruk glidelåser, borrelåsstrimler, tape eller varmt lim for å feste det på plass.
Alternativ 2 - Treningssykkel med svinghjul
De fleste moderne treningssykler bruker et kompakt svinghjul av noe slag i stedet for hjulet. I dette tilfellet må du bruke tosidig monteringstape eller lim, da det ikke er mulig å feste magneten med en andre magnet.
- Finn et monteringssted for magneten som ikke vil forstyrre brems, ramme eller drivverkskomponenter.
- Fest magneten til svinghjulet ved hjelp av dobbeltsidig tape, varmt lim eller superlim.
- Installer Reed Switch på rammen innen 12 mm (0,5 ") fra magneten, mens du holder den fri for bevegelige deler. Bruk glidelåser, borrelåsstrimler, tape eller varmt lim for å feste den på plass.
Alternativ 3 - Treningssykkel med vifte
Noen stasjonære sykler bruker en vifte for motstand, i dette tilfellet kan du feste magneten til enden av et vifteblad.
- Fjern viftehuset fra sykkelen.
- Fest magneten på viftebladet med en andre magnet på den andre siden av viftebladet, dobbeltsidig tape eller varmt lim.
- Monter så nær viftehuset som mulig.
- Installer viftehuset på nytt. Hvis du bruker en stasjonær sykkel med vifte, kan du sannsynligvis plassere sivbryteren direkte på viftehuset.
- Installer Reed-bryteren på rammen eller huset innenfor 12 mm (0,5 ") fra magneten mens du holder den fri for bevegelige deler. Bruk glidelåser, borrelåsstrimler, tape eller varmt lim for å feste den på plass.
Alternativ 4 - veivfeste
Hvis ingen av de tidligere metodene vil fungere for deg, eller hvis du er bekymret for å demontere sykkelen din, vil denne metoden fungere som en siste utvei. Vær oppmerksom på at hastigheten din blir fast uansett hvilket gir eller motstand du bruker.
- Monter magneten på innsiden av sveivarmen ved hjelp av dobbeltsidig tape eller varmt lim. Sørg for å unngå å installere på pedalens sving eller for nær veivakselen.
- Installer Reed-bryteren på rammen innen 12 mm (0,5 ") fra magneten mens du holder den fri for bevegelige deler. Bruk glidelåser, borrelåsstrimler, tape eller varmt lim for å feste den på plass.
Trinn 8: Test Reed Switch
- Sørg for å kontrollere at ingenting treffer noen av delene, og at de ikke forstyrrer normal bruk av sykkelen!
- Når magneten og sivbryteren er installert, kan du verifisere driften ved hjelp av en kretstester eller et multimeter. Bryteren skal normalt være åpen og stenge kort når magneten passerer sivbryteren.
- Hvis du bruker et multimeter, bør motstanden mellom bryterne være "uendelig" bortsett fra når magneten er i nærheten av sivbryteren, i så fall bør den være så nær 0 som mulig.
Trinn 9: Programmer Arduino
Før du kobler Arduino til systemet, er det viktig å installere RTW-sykkelkoden. Dette vil sikre at gammel kode ikke kjører og føre til kortslutning fra 5V til bakken når du kobler den til.
- Last ned eller kopier koden nedenfor. Alternativt kan du finne den på GitHub på
- Åpne i Arduino IDE eller lignende og koble Arduino via USB.
-
Endre #define CRANK_RATIO til riktig nummer for oppsettet ditt:
- På de fleste oppsett vil du simulere en landeveissykkel med et 700c dekk. Sett CRANK_RATIO til 5
-
Hvis du vil beregne CRANK_RATIO basert på hjulstørrelsen, bruk følgende ligning (der d er diameteren:
- Bruke en diameter i millimeter: CRANK_RATIO = 11000 / (π*d)
- Bruke en diameter i tommer: CRANK_RATIO = 433 / (π*d)
- Rund til nærmeste hele tall.
- Kompiler og last opp koden til Arduino.
RTW_v01p.ino
/* Treningssykkelgrensesnitt til Google Maps Street View Basert på tastatur. Melding Eksempelprogram. Sender en tekststreng når du trykker på en knapp. Tilpasset for å inkludere mer manipulasjon for 'Riding Trough Walls': en X-Canada sykkeltur gjennom Google Streetview, utført av Megan Smith. Kretsen: * Magnetisk sivbryter festet fra pinne 2 til bakken * Høyre trykknapp festet fra pinne 3 til bakken * Venstre trykknapp festet fra pinne 4 til bakken * Interne pullup -motstander brukt for alle tre pinnene opprettet 24. okt 2011 modifisert 27. mars 2012 av Tom Igoe modifisert 24. juni 2012 av Jeff Adkins endret 13. mai 2015 av Megan Smith endret 15. oktober 2015 av John Campbell Denne eksempelkoden er i det offentlige.
www.arduino.cc/en/Tutorial/KeyboardButton
*/
// initialisering av konstanter #definere NUMBER_OF_BUTTONS 3 #define BUTTON_FORWARD 2 #define BUTTON_LEFT 4 #define BUTTON_RIGHT 3
// antall pedaler som påkaller en enkelt "pil opp"
#define CRANK_RATIO 5
#define KEYPRESS_DELAY_ON 100
#define KEYPRESS_DELAY_OFF 100
int buttonPin [NUMBER_OF_BUTTONS] = {BUTTON_FORWARD, BUTTON_LEFT, BUTTON_RIGHT}; // inngangspinne for trykknapp
int previousButtonState [NUMBER_OF_BUTTONS] = {HØY, HØY, HØY}; // for å kontrollere tilstanden til en pushButton int -teller = 0; // knapptrykk teller int debounceFlag1 [NUMBER_OF_BUTTONS] = {0, 0, 0}; // debounce flag int debounceFlag2 [NUMBER_OF_BUTTONS] = {0, 0, 0}; // debounce -flagg // Debounce -flaggene er to separate magnetfeltinnganger tatt etter hverandre. // hvis de stemmer overens, antas det at bryteren faktisk har utløst.
ugyldig oppsett () {
// gjør pushButton -pin til en inngang: for (int i = 0; i <number_of_buttons; i ++) {= "" = "" pinmode (buttonpin , = "" input_pullup); = ""} = "" initialize = "" control = "" over = "" the = "" keyboard: = "" keyboard.begin (); = ""}
// Hovedløyfe
void loop () {int buttonState [NUMBER_OF_BUTTONS] = {HIGH, HIGH, HIGH}; for (int i = 0; i = CRANK_RATIO) {teller = 0; Tastatur. Trykk (218); forsinkelse (KEYPRESS_DELAY_ON); Keyboard.releaseAll (); forsinkelse (KEYPRESS_DELAY_OFF); }} debounceFlag1 = 0; debounceFlag2 = 0; } gå i stykker; case BUTTON_LEFT: if (buttonState == LOW) {Keyboard.press (216); } annet {Keyboard.release (216); } gå i stykker; case BUTTON_RIGHT: if (buttonState == LOW) {Keyboard.press (215); } annet {Keyboard.release (215); } gå i stykker; standard: pause; } // lagre gjeldende knappestatus for sammenligning neste gang: previousButtonState = buttonState ; }} /* if ((buttonState ! = previousButtonState ) && (buttonState == LOW)) {debounceFlag1 = buttonState ; forsinkelse (2); debounceFlag2 = digitalRead (buttonPin ); if (debounceFlag1 == debounceFlag2 ) {counter ++; hvis (teller> = CRANK_RATIO) {teller = 0; Tastatur. Trykk (218); forsinkelse (KEYPRESS_DELAY_ON); Tastatur. Utgivelse (218); }} debounceFlag1 = 0; debounceFlag2 = 0;
*/
Trinn 10: Fullfør oppsettet
Kjør USB -kabelen fra den bærbare datamaskinen til sykkelen og opp rammen til Arduino. Tape kabelen til gulvet med gaffer eller tape etter behov, og glidelås eller tape den til sykkelrammen. Når ledningen er fullført, kobler du USB -kontakten til datamaskinen. Hvis den ikke allerede er tilkoblet, kjører du HDMI eller lignende skjermkabel fra datamaskinen til projektoren eller TV -en.
Trinn 11: Kjør gjennom vegger
Nå som elektronikken er installert og utstyret er satt opp, er du klar for den første turen!
- Åpne Google Maps på datamaskinen din, og naviger dit du vil ta en tur!
-
Velg et sted for å starte enten med:
- Dra Street View "Pegman" nederst til høyre på skjermen til en markert vei.
- Klikk på veien, og klikk deretter på bildet som vises nederst på skjermen.
- Klikk på "Skjul bilder" nederst til høyre på skjermen.
-
Slik lager du Street View i fullskjerm:
- På PC: Trykk F11
- På Mac: Trykk ctrl+cmd+f eller klikk på den grønne fullskjermsknappen øverst til venstre i vinduet.
- Du kan gå ut av fullskjermsmodus ved å trykke på de samme tastene.
- Klikk på skjermen og roter visningen på linje med veien.
- Hopp på sykkelen din og begynn å tråkke!
- For å snu, trykk på venstre eller høyre knapp som er montert på styret.
Trinn 12: Feilsøking
-
Sykkelen sitter fast eller beveger seg ikke fremover
- Prøv å svinge til venstre eller høyre for å se om du kan fortsette på den måten
- Vinduet kan ha mistet fokus, i så fall må du bare gå til datamaskinen og klikke en gang i midten av Street View -vinduet.
- Noen ganger er det hull i Street View som hindrer deg i å fortsette. I dette tilfellet må du gå til datamaskinen og flytte til et nytt sted for å fortsette.
- Kontroller at USB er tilkoblet og Arduino er slått på (grønt lys skal være på).
- Kontroller at ledningene til sivbryteren er riktig tilkoblet og ikke er avskåret.
- Kontroller at magneten fortsatt er på plass på hjulet og at gapet mellom sivbryteren ikke har blitt for stort.
- Prøv å koble kontaktene på reed -bryteren for å teste for en defekt bryter.
-
Venstre og høyre knapp roterer ikke visningen
- Prøv å tråkke, hvis utsikten ikke utvikler seg, følg trinnene for feilsøking av en sykkel som sitter fast ovenfor.
- Hvis sykkelen beveger seg fremover, men venstre og høyre bryter ikke roterer utsikten, er det sannsynligvis et problem med bryterne eller tilkoblingen.
- Kontroller at ledningsknappene er riktig tilkoblet og ikke er kuttet.
- Prøv å kortslutte kontaktene på knappen for å teste for en defekt knapp
-
Hjul eller pedaler setter seg fast
- Kontroller klaring på sivbryteren for å sikre at den ikke kommer i kontakt med bevegelige deler
- Kontroller kabelføring for å sikre at ledninger ikke er sammenflettet
Anbefalt:
Stationary Radar (LIDAR) Array med Arduino: 10 trinn (med bilder)
Stationary Radar (LIDAR) Array With Arduino: Da jeg skulle bygge en tofotet robot, tenkte jeg alltid på å ha en slags kul gadget som kan spore motstanderen min og gjøre angrepstrekk med den. Bunker med radar/lidar -prosjekter eksisterer allerede her. Imidlertid er det noen begrensninger for mitt formål
DIY Sesam Street Alarm Clock (med brannalarm!): 6 trinn (med bilder)
DIY Sesam Street Alarm Clock (med brannalarm!): Hei alle sammen! Dette prosjektet er mitt første. Siden fetterne min første bursdag kom, ville jeg lage en spesiell gave til henne. Jeg hørte fra onkel og tante at hun var i Sesam Street, så jeg bestemte meg med søsknene mine for å lage en vekkerklokke
Tfcd 3D Motion Tracking Through Capacitive Sensing og LED Output: 6 trinn (med bilder)
Tfcd 3D Motion Tracking Through Capacitive Sensing og LED Output: I denne instruksjonen forklares hvordan bevegelsen av en hånd kan spores i et 3D -rom ved å bruke prinsippet om kapasitiv sensing. Ved å endre avstanden mellom en ladet aluminiumsfolie og hånden din, vil kapasiteten til kondensatoren variere
Full Wave Rectifier Circuit Through Bridge Rectification: 5 trinn (med bilder)
Full Wave Rectifier Circuit Through Bridge Rectification: Rectification er prosessen med å konvertere en vekselstrøm til likestrøm
Instructables View Counter + ESP8266 Guide: 6 trinn (med bilder)
Instructables View Counter + ESP8266 Guide: Abonnentteller for Youtube og Facebook er ganske vanlige, men hvorfor ikke lage noe lignende for Instructables? Det er akkurat det vi skal gjøre: i denne instruksjonsboken lager vi en Instructables -visningsteller! visninger må være captu