Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
Dette er en fidget spinner som bruker Persistence of Vision -effekten, som er en optisk illusjon der flere diskrete bilder smelter sammen til et enkelt bilde i det menneskelige sinn.
Teksten eller grafikken kan endres via Bluetooth Low Energy -lenken ved å bruke et PC -program som jeg har programmert i LabVIEW eller ved å bruke en fritt tilgjengelig smarttelefon BLE -app.
Alle filer er tilgjengelige. Skjematisk og fastvare er knyttet til denne instruksjonsboken. Gerber -filer er tilgjengelige på denne lenken siden jeg ikke kan laste opp zip -filer her: Gerbers
Trinn 1: Forskjell mellom andre POV -enheter på markedet
En av de viktigste egenskapene er at den viste grafikken ikke er avhengig av rotasjonshastighet takket være den innovative løsningen for å holde rotasjonsvinkelen. Det betyr at den viste grafikken oppfattes den samme ved både høyere og lavere rotasjonshastigheter (for eksempel når fidget -spinneren bremser når den holdes i hånden). Mer om dette i trinn 3.
Dette er også en av hovedforskjellene mellom forskjellige POV -enheter på markedet (POV -klokker, etc.) som må ha en konstant rotasjonshastighet for at bildet skal vises riktig. Det er også verdt å merke seg at alle komponentene er valgt for å ha lavest mulig energibruk i et forsøk på å forlenge batterilevetiden
Trinn 2: Teknisk beskrivelse
Den bruker forbedret Microchip PIC 16F1619 mikrokontroller som kjerne. MCU har innebygd periferutstyr for vinkelklokker som bruker en omnipolar Hall-sensor DRV5033 og en magnet for å holde oversikten over gjeldende rotasjonsvinkel.
Grafikken vises med totalt 32 lysdioder, 16 grønne og 16 røde lysdioder (nominell strøm 2mA). Diodene drives av to 16 -kanals konstantstrømskiftregistreringsdrivere TLC59282 koblet til en daisy chain. For å ha ekstern tilgang til enheten, er det en Bluetooth Low Energy -modul RN4871 som kommuniserer til mikrokontrolleren via UART -grensesnitt. Enheten kan nås fra enten en personlig datamaskin eller en smarttelefon. Enheten slås på ved hjelp av en kapasitiv berøringsknapp som er innebygd under loddemasken på kretskortet. Utgangen fra den kapasitive IC PCF8883 mates til OR -logikkporten BU4S71G2. Den andre inngangen til OR -portene er et signal fra MCU. Utgangen fra ELLER-portene er koblet til Enable-pinnen til en nedtrappingsomformer TPS62745. Ved å bruke dette oppsettet kan jeg slå enheten på/av ved å bruke bare en berøringsknapp. Kapasitiv knapp kan også brukes til å skifte mellom forskjellige driftsmåter eller for eksempel å slå på Bluetooth -radioen bare når det er nødvendig for å spare energi.
Step down converter TPS62745 konverterer 6V nominelt fra batteriene til en stabil 3.3V. Jeg har valgt denne omformeren fordi den har høy effektivitet med lette belastninger, lav hvilestrøm, opererer med en liten 4,7uH spole, den har integrert inngangsspenningsbryter som jeg bruker til å måle batteriets kapasitet med minimalt strømforbruk og utgangsspenningen er bruker- velges med fire innganger i stedet for tilbakemeldingsmotstander (reduserer styklisten). Enheten sovner automatisk etter 5 minutters inaktivitet. Det nåværende forbruket i søvn er mindre enn 7uA.
Batteriene er plassert på baksiden som vist på bildet.
Trinn 3: Hold styr på rotasjonsvinkelen
Rotasjonsvinkelen spores "av maskinvare" snarere av programvare, noe som betyr at CPUen har mye mer tid til disposisjon for å utføre andre oppgaver. Til det har jeg brukt Angular Timer perifer som er innebygd i den brukte mikrokontrolleren PIC 16F1619.
Inngang til Angular Timer er et signal fra Hall -sensor DRV5033. Hall -sensoren vil generere en puls hver gang en magnet passerer forbi den. Hall -sensoren er plassert ved den roterende delen av enheten mens magneten er plassert på en statisk del som brukeren holder enheten for. Siden jeg bare brukte en magnet som betyr at Hall -sensoren vil produsere en puls som gjentas hver 360 °. Samtidig vil Angular Timer generere 180 pulser per omdreining der hver puls representerer 2 ° rotasjon. Jeg velger 180 pulser, og ikke 360 ° for eksempel, fordi jeg fant 2 ° for å være den perfekte avstanden mellom de to kolonnene i et trykt tegn. Angular Timer håndterer all den beregningen automatisk og justeres automatisk hvis tiden mellom de to sensorpulsene endres på grunn av rotasjonshastigheten endres. Positonen til magneten og Hall -sensoren er vist på vedlagte foto.
Trinn 4: Ekstern tilgang
Jeg ønsket en måte å endre visningsteksten dynamisk og ikke bare ved å hardt kode den inn i koden. Jeg har valgt BLE fordi den bruker en veldig liten mengde energi og den brukte brikken RN4871 er bare 9x11,5 mm i dimensjon.
Via BT -lenken er det mulig å endre teksten som vises og fargen - rød eller grønn. Batterinivået kan også overvåkes for å vite når det er på tide å bytte batterier. Enheten kan styres via dataprogrammer programmert i LabVIEW grafisk programmeringsmiljø eller ved å bruke en fritt tilgjengelig smarttelefon BLE -applikasjon som har muligheten til å skrive direkte til de valgte BLE -egenskapene til en tilkoblet enhet. For å sende informasjonen fra en PC/smarttelefon til enheten brukte jeg en tjeneste med tre egenskaper, hver identifisert med et håndtak.
Trinn 5: PC -applikasjon
I øverste venstre hjørne har vi kontroller for oppstart av National Instruments BLE-serverprogrammet. Det er en kommandolinjeapplikasjon fra NI som skaper en bro mellom BLE -modulen på en datamaskin og LabVIEW. Den bruker HTTP -protokoll for å kommunisere. Grunnen til å bruke dette programmet er at LabVIEW bare har innebygd støtte for Bluetooth Classic og ikke for BLE.
Etter vellykket tilkobling vises MAC -adressen til en tilkoblet enhet til høyre, og den delen er ikke nedtonet lenger. Der kan vi sette den bevegelige grafikken og fargen eller bare sende et mønster for å slå lysdiodene på eller av når enheten ikke snurrer. Jeg har brukt den til testformål.
Trinn 6: Font
Engelsk alfabetskrifttype ble generert ved hjelp av en fritt tilgjengelig programvare "The Dot Factory", men jeg måtte gjøre noen endringer før jeg lastet den opp til mikrokontrolleren.
Årsaken til det er PCB -layout som er "ikke i orden", noe som betyr at utgangen 0 fra LED -driveren kanskje ikke er koblet til LED 0 på PCB, OUT 1 er ikke koblet til LED 1, men heller til LED15 for eksempel, og osv. Den andre grunnen er at programvaren bare har lov til å generere 2x8bit skrift, men enheten har 16 LED for hver farge, så jeg trengte en 16bit høy skrift. Så jeg trengte å lage en programvare som ville skifte noen få biter for å kompensere for PCB -layout og kombinere dem til en 16 -biters verdi. På grunn av det utviklet jeg en egen applikasjon i LabVIEW som tar skriften som er generert i "The Dot Factory" som input og transformerer den for å passe behovene til dette prosjektet. Siden de røde og grønne LED -PCB -oppsettene er forskjellige, trengte jeg å bruke to fonter. Utgangen for den grønne skriften er vist på bildet nedenfor.
Trinn 7: Programmering av Jig
På bildet kan du se programmeringsjiggen som ble brukt til å programmere enheten.
Siden jeg etter hver programmering må plukke opp enheten og snurre den for å se endringene jeg ikke ønsket å bruke standard programmeringshoder eller bare lodde programmeringstrådene. Jeg brukte Pogo -pinner som har en liten fjær inni seg, slik at de passer veldig tett til viasene på PCB. Ved å bruke dette oppsettet kan jeg programmere mikrokontrolleren veldig raskt og trenger ikke å bekymre meg for programmering av ledninger eller loddetinnet etter å ha loddet disse ledningene.
Trinn 8: Konklusjon
For å oppsummere, vil jeg påpeke at ved å bruke periferienheten Angul Timer oppnådde jeg en POV -enhet som ikke er avhengig av rotasjonshastighet, så kvaliteten på den viste grafikken holdes den samme ved både høyere og lavere hastigheter.
Ved nøye design ble det klart å implementere en lavenergiløsning som vil forlenge batteriets levetid. Når det gjelder ulempene med dette prosjektet, vil jeg påpeke at det ikke er mulig å lade brukte batterier, så det er nødvendig å bytte batteri nå og da. Navnebatterier fra den lokale butikken varte i omtrent 1 måned med daglig bruk. Bruksområder: Denne enheten kan brukes i en rekke salgsfremmende formål eller som læremiddel i for eksempel elektroteknikk eller fysikk. Det kan også brukes som et terapeutisk hjelpemiddel for å øke oppmerksomheten for de med Attention Deficit Hyperactivity Disorder (ADHD) eller rolige symptomer på angst.
Førstepremie i PCB Design Challenge
Anbefalt:
Persistence of Vision LED Staff: 11 trinn (med bilder)
Persistence of Vision LED Staff: Det er velkjent at selv etter at et lys er slukket, holder menneskelig øye " se " det for en brøkdel av sekund. Dette er kjent som Persistence of Vision, eller POV, og det lar en " male " bilder ved å flytte en stripe raskt
DIY Persistence of Vision: 6 trinn (med bilder)
DIY Persistence of Vision: I dette prosjektet vil jeg introdusere deg for perspektiv av visjon eller POV -visning med noen få forsyninger som Arduino og hallsensorer for å lage en roterende skjerm som viser alt du liker, for eksempel tekst, tid og andre spesialtegn
Generator - Fidget Spinner Powering 9W LED Pære 230 V: 3 trinn (med bilder)
Generator - Fidget Spinner Powering 9W Led Bulb 230 V: I radene nedenfor ønsker vi å vise hvordan en kraftig fidget spinner generator kan opprettes. Den vil generere 100 volt Ac i starten, og den vil kunne tenne en led -pære 230 V 9 W. Et pedagogisk prosjekt med bare noen få materialer. Finn
Fidget Spinner Generator: 3 trinn (med bilder)
Fidget Spinner Generator: FIDGET SPINNER GENERATOR I radene nedenfor viser vi hvordan du lager en enkel elektrisk generator ved hjelp av en fidget spinnerer, 3 neodymmagneter, en spole uten kjerne fra en synkron motor 230 V - inne i A4 -laminatorer og mikrobølger.Fidget spinner ele
(POV) Persistence of Vision Globe: 8 trinn (med bilder)
(POV) Persistence of Vision Globe:! Oppdater! Jeg har lagt til et Excel -program som gjør det mye enklere å tegne og kode nye bilder! En enkel visjonsklasse. SPILL VIDEODette er et prosjekt jeg har hatt i tankene en god stund og " Make It Glow " konkurransen var bare