Innholdsfortegnelse:
- Trinn 1: Terningfunksjoner
- Trinn 2: Funksjonen for automatisk avslåing
- Trinn 3: Prototypen
- Trinn 4: Den tilpassede versjonen
- Trinn 5: Lodding
- Trinn 6: Klipp ut hullene som trengs i esken
- Trinn 7: Frontpanelet
- Trinn 8: Skjære hull i panelet
- Trinn 9: Prosjektets slutt
- Trinn 10: Rist og rull
Video: Arduino Oled Dice: 10 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:25
Denne instruksen handler om hvordan du kan bygge en veldig fin elektronisk terning ved hjelp av en oled -skjerm og en Arduino uno eller lignende. Helt i begynnelsen av dette prosjektet bestemte jeg meg for at etter at prototypen var ferdig ville jeg bygge en skreddersydd versjon, så i denne ugjennomtrengelige er det beskrivelser av hvordan du bygger prototypeversjonen og nyttige tips hvis du vil bygge din egen tilpassede versjon.
Videoen viser den endelige skreddersydde terningversjonen og funksjonene.
Trinn 1: Terningfunksjoner
Terningene har en valgbryter for å velge mellom 1 eller 2 terninger. Den har også et piezo -element for å generere lyd når terningene går gjennom tilfeldige tall og når den stopper. Så lenge rullebryteren holdes inne, løper terningene og viser tilfeldige tall på displayet. Når knappen slippes begynner den å bremse et tilfeldig antall ganger til den endelig stopper og viser resultatene. Dette er for å simulere oppførselen til en ekte terningkast.
Terningen har en automatisk avstengningskrets for å spare batterier.
Hvis du ikke bruker terningen i 60 sekunder, slår strømmen seg automatisk av.
I programvaren er det en funksjon for å slå lyden på eller av ved å holde valgbryteren nede i mer enn ett sekund.
Trinn 2: Funksjonen for automatisk avslåing
Terningen har en funksjon for å slå av seg selv når den ikke brukes til å spare batterier, se skjemaene for kretsen for automatisk avslåing.
Slik fungerer det:
Kretsen består av en P FET -transistor som fungerer som en bryter. Porten på transistoren styres av en standard kortvarig trykknapp (S1). Når bryteren trykkes, faller spenningen på porten og strømmen begynner å strømme gjennom transistoren. På porten er det en annen transistor parallelt med bryteren til bakken. Transistoren holder spenningen lav på FET -porten så lenge spenningen på basen er høy. Basisspenningen påføres fra mikrokontrolleren, og en av de første tingene skissen gjør når kontrolleren får strøm er å sette den digitale pinnen 8 til Høy og ved at programvaren låser kretsen. 7805 spenningsregulator stabiliserer spenningen til 5V og de to dioder forhindrer 9 volt fra batteriet til å nå mikrokontrolleren. Den samme bryteren brukes også til å kontrollere den digitale inngangen på kontrolleren, (pin 7).
I skissen måler vi tiden som har gått siden knappen ble trykket og sammenligner den med den bestemte ON -tiden.
Før strømmen går av begynner terningene/ terningene å blinke og et varselsignal sendes ut fra piezoen, slik at brukeren rekker å trykke på bryteren igjen for å tilbakestille timeren.
Like før strømmen går av, lagrer mikrokontrolleren det siste nummeret i EEPROM -minnet sammen med det valgte antallet terninger/terninger og lydtilstanden. Disse verdiene tilbakekalles ved neste terningstart.
Trinn 3: Prototypen
Nå er det på tide å begynne å bygge.
Du trenger:
- 1 loddefritt brødbrett
- 1 Arduino Uno
- 1 OLED -skjerm 128x64 i2c
- 2 kondensatorer 10uF
- 1 kondensator 100nF
- 2 motstander 10Kohm
- 2 Motstand 100Kohm
- 2 dioder 1n4148
- 1 Transistor NPN BC547b
- 1 MosFET IRF9640
- 1 Spenningsregulator L7805
- 2 mometary Switch
- 1 Piezo
- Jumper Wire
- 9 V batteri
Det er det.
Følg fritzingbildet ovenfor nøye
Vær ekstra oppmerksom på dioden bak spenningsregulatoren på bildet (vanskelig å se), D1 i skjematisk. Anodesiden av dioden bør kobles til kollektoren til BC547 -transitoren.
Piezo er koblet til pin 6, Roll -knapp til pin 7, Select -knapp til pin 10 og Power_ON -kontrollen til pin 8.
Ikke glem å drive Arduino Uno gjennom 5V -pinnen og jordpinnen på Arduino -brettet og ikke gjennom DC -jakken på siden.
Skissen bruker U8g2lib.h for displayet, du finner den her, https://github.com/olikraus/u8g2/, last ned og installer før du kompilerer koden.
Hvordan installere biblioteker? Https: //www.arduino.cc/en/Guide/Libraries
Kopier koden og lim den inn i Arduino IDE og last opp skissen.
Ikke glem å fjerne USB -kabelen fra Arduino når du er ferdig, ellers fungerer ikke automatisk avslåingsfunksjon fordi USB/datamaskinen driver kontrolleren.
Trinn 4: Den tilpassede versjonen
Resten av denne instruksen handler om tips og trix, hvis du vil konvertere den til en mer nyttig og tilpasset versjon.
For å tegne den komplette skjematikken for den tilpassede versjonen brukte jeg gratis skjematisk og PCB -programvare EASYEDA Du finner den her
Når du bestiller komponentene må du være sikker på at mikrokontrolleren har Arduino bootloader på brikken, hvis ikke må du først forberede brikken. Det er mye opplæring på nettet om hvordan du gjør det.
Jeg la til ekstra komponenter som ikke brukes i dette prosjektet, men som er der for fremtidige prosjekter. U4, U5, R4, S2.
PGM Header i skjemaene brukes til å programmere brikken. Hvis du vil programmere brikken med PGM -porten, trenger du en USB -til -serie -adapter.
USB til serielle UART -kort
Du kan selvfølgelig laste opp skissen til kontrolleren ved hjelp av Arduino -kortet og deretter flytte brikken til PCB i stedet.
EASYEDA gir også en funksjon for å lage PCB for deg.
Før jeg begynte å konvertere skjemaet til PCB -oppsettet, valgte jeg en boks som har riktig størrelse og plass til et 9 volt batteri som kan endres utenfra.
Grunnen til det var at jeg trengte dimensjonene og hvor jeg skulle plassere hullet på PCB for skruene før jeg begynte å gjøre oppsettet, så den siste PCB -en vil passe perfekt inn i esken.
Jeg måler den interne dimensjonen av esken veldig nøye og konverterer deretter designet til det egendefinerte størrelsen ved hjelp av den samme programvaren, og klikker deretter på fabrikasjonsknappen og la inn en bestilling.
Trinn 5: Lodding
Fordi jeg må bestille mer enn én PCB for å få en rimelig pris, designer jeg den for å være allsidig, slik at jeg kan bruke det samme brettet og esken til fremtidige prosjekter. Jeg la til ekstra pins for analoge og digitale porter sammen med ekstra knapper. I dette prosjektet bruker jeg S1 til å slå på kretsen og kaste terningene, og S3 som Select. Når du mottok kretskortet, er det på tide å lodde alle komponentene på rett sted. På min PCB er skjermen og knappene montert på baksiden for å krympe størrelsen og være tilgjengelig fra utsiden.
Da jeg bygde terningene mine innså jeg at det ville være fint hvis du bare kunne riste boksen for å slå den på og kaste terningene. Hvis du vil ha den funksjonen, må du gjøre en liten modifikasjon av kretsen.
Modifikasjon:
Endret rullebryteren (S1) til en vippebryter -sensor og legg til en 100uF kondensator parallelt med bryteren for å holde nivået på FET -porten lav nok til at mikrokontrolleren får tid til å starte og sette den digitale ut -porten HØY og lås "strøm på" kretsen.
Du må montere tilt -sensoren på forlengelsestappene, slik at du kan bøye den og justere vinkelen slik at bryteren er av når esken ligger på bordet.
Tiltsensor
Trinn 6: Klipp ut hullene som trengs i esken
Når du er ferdig med kretskortet, er det på tide å bore hullene i esken. For å kutte det firkantede hullet for displayet brukte jeg en mikrofreser, men du kan selvfølgelig bruke en liten pilkesag eller lignende.
Trinn 7: Frontpanelet
Da trenger du et fint frontpanel. Jeg tegnet panelet i "smart-draw-programvare", men du kan bruke nesten hvilken som helst tegneprogramvare du liker.
Når du er ferdig med tegningen, skriver du den ut på en standard fargelaserskriver eller lignende, men på litt tykkere papir enn normalt. Ta et plastark som har lim på begge sider. Fjern beskyttelsesarket på den ene siden og lim forsiktig inn panelet. Du finner denne plastfilmen i de fleste papirbutikker.
Trinn 8: Skjære hull i panelet
Skjær hullene i panelet med en skarp papirkniv. Bruk et hull for de runde knapphullene. Nå ser panelet ut som et vanlig klistremerke, men før du limer det på esken må du spraye det med et beskyttende lakklag. Når panelet har tørket, lim det forsiktig på esken.
Trinn 9: Prosjektets slutt
Da jeg nådde slutten av dette prosjektet, oppdager jeg dessverre at terningen noen ganger fryser når jeg rister den og må startes på nytt.
Jeg har aldri hatt dette problemet under prototyping, så jeg var litt forvirret, men jeg fant ut at dette skyldtes støy som projiseres på SDA, SCL -pins på skjermen.
Løsningen var å legge til ekstra motstander 1k på hver pin til 5V som pull-up, se bildet. Etter det fungerer terningene perfekt som forventet.
Trinn 10: Rist og rull
Ha det gøy.
Anbefalt:
Rainbow Dice: 6 trinn (med bilder)
Rainbow Dice: Dette lager en terningkasse med 5 terninger laget av smd -lysdioder i 5 farger. Programvaren som driver den, gir mulighet for forskjellige spillmoduser med flere terninger involvert. En hovedbryter tillater spillvalg og terningkast. Individuelle brytere ved siden av eac
Mason Jar Dice Roller: 5 trinn (med bilder)
Mason Jar Dice Roller: Her er et flott helgprosjekt å ta på seg, hvis du planlegger å spille noen brett-/terningrelaterte spill. For å bygge prosjektet trenger du en kontinuerlig rotasjonsservo, en arkadeknapp og et arduino nano- eller ESP8266 -kort, i tillegg trenger du en 3D -p
Moro med OLED -skjerm og Arduino: 12 trinn (med bilder)
Moro med OLED -skjerm og Arduino: Jeg er ganske sikker på at du definitivt har hørt om OLED -skjermteknologi. Det er relativt nytt og tilbyr en bedre kvalitet enn gammel LCD -teknologi. I denne opplæringen ønsker vi å gjennomgå trinnene som kreves for å vise data på en av de vanligste enkeltkomponentene
Soft Toy Bluetooth Dice og utvikle Android -spill med MIT App Inventor: 22 trinn (med bilder)
Soft Toy Bluetooth Dice og utvikle Android -spill med MIT App Inventor: Å spille terningspill har forskjellige metoder 1) Tradisjonelt spill med terninger av tre eller messing. spill terningen fysisk og flytt mynten i mobilen eller PCen
Hvordan kontrollere I2C Oled -skjerm med Arduino: 9 trinn (med bilder)
Hvordan kontrollere I2C Oled -skjerm med Arduino: Dette er en veldig enkel veiledning for hvordan du kontrollerer I2C Oled -skjerm med ArduinoHvis du liker denne instruksjonsboken, vennligst abonner på min kanal https://www.youtube.com/ZenoModiff