Innholdsfortegnelse:

En Micro: bit Retningsindikator for sykkelhjelmer: 5 trinn
En Micro: bit Retningsindikator for sykkelhjelmer: 5 trinn

Video: En Micro: bit Retningsindikator for sykkelhjelmer: 5 trinn

Video: En Micro: bit Retningsindikator for sykkelhjelmer: 5 trinn
Video: 50 САМЫХ ИННОВАЦИОННЫХ ЛИЧНЫХ ТРАНСПОРТНЫХ СРЕДСТВ 2021–2022 гг. 2024, November
Anonim
En Micro: bit Retningsindikator for sykkelhjelmer
En Micro: bit Retningsindikator for sykkelhjelmer
En Micro: bit Retningsindikator for sykkelhjelmer
En Micro: bit Retningsindikator for sykkelhjelmer
En Micro: bit Retningsindikator for sykkelhjelmer
En Micro: bit Retningsindikator for sykkelhjelmer

Oppdatert versjon 2018-mai-12

Nedenfor viser du instruksjoner for hvordan du bygger en enkel mikro: bitbasert retningsindikator for sykkelhjelmer (eller lignende). Den bruker akselerometrene som er innebygd i micro: bit som kontroller.

De medfølgende mikro -python -skriptene er optimalisert for mu, et mikro -python -editor med en spesifikk "modus" for micro: bit. I den siste versjonen kommer den med en seriell plotter, og jeg ville i utgangspunktet bare forstå hvordan jeg skulle bruke den til å vise måleverdier (hint: send data som tupler: skriv ut ((x, y, z)), ved hjelp av doble parenteser.

Fire mønstre vises på micro: bitens 5x5 LED -skjerm:

  • I hviletilstand vises et fint, randomisert mønster. For øyeblikket finner du manus for tre forskjellige mønstre, et 'ildflu', et 'regn' og et 'fallende stjerne' mønster. Ta en titt og velg den du liker best. Juster gjerne parametrene, for å gjøre dem mer eller mindre tette eller løpe raskere eller langsommere.
  • Deretter er det "sving til høyre" eller "sving til venstre" indikatorer i form av bevegelige piler. De aktiveres ved å lene hodet til venstre eller høyre ved å trykke på knappene på micro: bit. I den eksterne knappversjonen av skriptet aktiverer du ved å trykke på en av de eksterne knappene som er koblet til pinne 0 og 1.
  • Hvis du bøyer hodet bakover, eller begge knappene på micro: bit aktiveres samtidig, vises et "varsel" eller "brudd" -mønster.

Denne mønster-visende mikro: bit kan brukes som retningsindikator f.eks. for sykling, skøyter eller ski. Fest micro: bit på hjelmen og kontroller den med hodens posisjon. Eller fikser det på sykkelen din, last inn det eksterne knappeskriptet og kontroller det med to eksterne brytere festet til mikro: bit via noen kabler.

For de som jobber med MakeCode, la jeg til et blokkskript i det siste trinnet, som kan kopieres direkte til micro: bit. Det er mindre fancy, men gir den grunnleggende funksjonaliteten uten å måtte installere mu.

Vær oppmerksom på:

  • Selv om dette prosjektet kan være nyttig for din sikkerhet, må du alltid gi klare indikasjoner på hvor du vil kjøre med hender og armer.
  • Konseptet har ikke blitt testet grundig på veien og var kun ment som et programmeringseksempel. Bruk den på egen risiko.
  • Bruk grunnversjonen bare under tørre værforhold, ettersom mikrobiten og batteriet eller LiPo -pakkene er følsomme for fuktighet. Det er en beskrivelse av hvordan du bygger en innkapslet versjon lenger nedenfor.

Trinn 1: Materialer som brukes

En mikro: bit. En datamaskin med mu -editoren installert. Batteripakke eller LiPo -pakke for mikro: bit. En sykkelhjelm. Jeg brukte en som pleide å ha en LED-bakgrunnsbelysning. Et stykke 3 mm polypropylen papp, som avstandsstykke mellom mikro: bit og hjelm. Dobbeltsidig tape for å feste mikro: bit til avstandsstykke og dette til hjelmen. tape, for å fikse micro: bit og batteripakke i hjelmen.

For en innkapslet versjon: en 59 x 59 x 30 mm klar plastboks, Modulor, Berlin: 0, 70 Euro Kitronic MI: kraftkort, 5 GBP dobbeltsidig duct tape og et stykke PP -plater

For versjonen av eksterne brytere (detaljer ikke vist her): Jumperkabler og to brytere, to hvite lysdioder, en 10 kOhm motstand, et brødbrett. Krokodilleklemmer. M3 messingskruer (20 mm), M3 nylonmuttere; fire hver, for pin 0, pin 1, 3V og Ground. Plasser skruene gjennom hullene i mikro: bitens kretskort og fest med skruene. De forenkler å feste krokodilleklemmer.

Trinn 2: Sette opp enheten, installere skriptet

Sette opp enheten, installere skriptet
Sette opp enheten, installere skriptet
Sette opp enheten, installere skriptet
Sette opp enheten, installere skriptet
  • Installer mu -editoren på datamaskinen.
  • Koble micro: bit til datamaskinen.
  • Last inn ønsket skript.
  • Flash scriptet til micro: bit.
  • Når det gjelder akselerometer (hjelm) skript, må du fikse micro: biten og batteripakken til hjelmen din. tape på begge sider for å feste micro: bit til hjelmen. Fest deretter micro: bit og batteripakke med tape på hjelmen.
  • For å gjøre det værbevis, ta en titt på et senere trinn.
  • Om nødvendig kan du justere terskelverdiene x og z i henhold til dine behov.

Når det gjelder det knappedrevne manuset, og hvis du liker å bruke eksterne knapper, kobler du brødbrettets strømskinner til Gnd- og 3V-porter på micro: bit. Koble knappene til Gnd- og Pin0- og Pin1 -portene

Trinn 3: Micro Python -skriptene

Vedlagt finner du mikro -python -skriptene for mu og micro: bit.

Det er fire skript: ett som styrer skjermen ved hjelp av de innebygde og eksterne knappene, tre ved hjelp av de innebygde akselerometrene til mikro: bit. De har forskjellige tilfeldige mønstergeneratorer for hviletilstanden.

Det er et "ildflu" mønster, et "regn" mønster og et "fallende stjerne" (matrise-stil) mønster. Firefly/accelerometer -skriptet er oppført nedenfor. Det er også et skript som har alle tre mønstrene og kjører dem i en randomisert rekkefølge, med et nytt valg hver gang en indikator hadde blitt aktivert.

Akselerometerverdiene sendes til datamaskinen og kan leses via seriemonitoren til mu -editoren eller vises på serieplotteren.

Det er enkelt å endre parametere for å justere skriptene etter dine krav og preferanser.

'' 'Vinkel-/akselerometer eller innebygde knapper kontrollert versjon. 2018-mai-07 Et enkelt skript som produserer et "ildflu" -mønster i hviletilstand, venstre eller høyre bevegelige piler hvis m-biten er vridd i tilsvarende retning, eller knappene A eller B trykkes eller et bruddindikator/varselmønster hvis du trykker på begge knappene eller m-biten er bøyd bakover. Kan brukes til bakgrunnsbelysning for sykkelhjelm eller lignende. Bygg for mu micro python-redaktøren av Dr H. https://www.instructables.com/id/A-Microbit-Direction-Indicator-for-Biking-Helmets/ '' 'fra mikrobitimport * import random random.seed (3433) # skriv inn ditt lykketall de = 100 # sett visningsforsinkelsestid i ms ff1 = 100 # angir ildflueforsinkelsestid 1 i ms ff2 = 50 # angir ildflueforsinkelsestid 2 i ms fn = 3 # angir antall ildfluefrøpunkter thresh_z = 80 # terskelverdi for bakover thresh_x = 350 # terskelverdi for side # definere bilder image_l_1 = Bilde ("00900:" "09000:" "97531:" "09000:" "00900") image_l_2 = Bilde ("09000:" "90000:" "75319:" "90000:" "09000") image_l_3 = Bilde ("90000:" "00009:" "53197:" "00009:" "90000") image_l_4 = Bilde ("00009:" "00090: "" 31975: "" 00090: "" 00009 ") image_l_5 = Bilde (" 00090: "" 00900: "" 19753: "" 00900: "" 00090 ") image_r_1 = Bilde (" 00900: "" 00090: " "13579:" "00090:" "00900") image_r_2 = Bilde ("00090:" "00009:" "91357:" "00009:" "00090") image_r_3 = Bilde ("00009:" "90000:" "79135: "" 90000: "" 00009 ") image_r_4 = Bilde ("90000:" "09000:" "57913:" "09000:" "90000") image_r_5 = Bilde ("09000:" "00900:" "35791:" "00900:" "09000") image_z_1 = Bilde ("90009:" "00000:" "00900:" "00000:" "90009") image_z_2 = Bilde ("09090:" "90009:" "00000:" "90009:" "09090") # start programmet while True: print ((accelerometer.get_x (), accelerometer.get_y (), accelerometer.get_z ())) # som skal brukes med seriell skjerm eller plotter for terskelverdioptimalisering; # demp med ' #' hvis den ikke brukes hvis ((akselerometer.get_z ()> tersk_z) # hode bøyd tilbake, juster om nødvendig eller (knapp_a.is_presset () og knapp_b._presset ()): # for kontrollformål. vis (Image. DIAMOND_SMALL) sleep (de) display.show (Image. DIAMOND) sleep (de) display.show (image_z_2) sleep (de) display.show (image_z_1) sleep (de) display.clear () elif ((akselerometer.get_x () tersk_x) # retningsindikator høyre; for å aktivere bøyehodet ca 20 grader til høyre eller knapp_b.is_presset ()): display.show (image_r_1) sleep (de) display.show (image_r_2) sleep (de) display. vis (image_r_3) sleep (de) display.show (image_r_4) sleep (de) display.show (image_r_5) sleep (de) display.clear () else: # 'firefly' mønstergenerator for g i området (0, fn): # seed et gitt antall (fn) piksler x = random.randint (0, 4) # plukker en tilfeldig posisjon y = random.randint (0, 4) v = 9 # maksimal lysstyrke for frø # v = random.randint (0, 9) # valgfritt: visning av randomisert lysstyrke for frø. Sett_piksel (x, y, v) # angi ildfluehastighet (ff1) # display for ff ms # reduserer intensiteten til alle pikslene med ett trinn for j i området (0, 5): # for hver piksel av LED -matrisen for i i området (0, 5): b = display.get_pixel (i, j) # få nåværende intensitet hvis (b> 0): f = b - 1 # redusere lysstyrken med en annen: f = 0 # setter 0 som laveste tillatte verdi display. set_pixel (i, j, f) sleep (ff2)

Trinn 4: En innkapslet, værbestandig versjon

En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon
En innkapslet, værbestandig versjon

Som nevnt ovenfor er ikke grunnversjonen værbestandig. Jeg har derfor bygget en innkapslet versjon.

For å drive micro: bit her brukte jeg et Kitronic MI: strømkort. Den drives av en 3V -myntcelle og kan festes til mikrobiten med tre bolter og muttere. Den har også en innebygd strømbryter. Alternativt kan du bruke et LiPo -batteri.

Som hus bruker jeg en 59 x 59 x 30 mm klar plastboks. Et stykke 3 mm plastpapp dekket med dobbeltsidig duct tape ble brukt som distansestykke. Det kreves som baksiden av MI: strøm skyldes ikke engang nøttene og holder micro: biten på plass.

Boksen med micro: bit festes deretter til hjelmen med et annet stykke plastpapp dekket med dobbeltsidig tape.

Trinn 5: Et MakeCode -skript

For de som ikke er villige eller i stand til å installere mu, har jeg lagt til et MakeCode -blokkskript med lignende funksjoner. Langt ikke så fancy, men bra nok til å vise prinsippet.

Du kan bare kopiere filen til micro: bit og spille.

Anbefalt: