10 Arduino-projekter for begyndere, som alle kan laveBlogindlægcircuito.io teamApril 23, 2017
Bygning af Arduino-projekter kan give dig en stor følelse af tilfredshed, men mange gange er begyndere ikke sikre på, hvor de skal begynde. Der er mange ting at tage hensyn til, når man starter et projekt, og hvis du ikke har nogen Maker-erfaring, kan det være ret forvirrende. Derfor har vi samlet 10 Arduino-projekter for begyndere, som alle kan lave!
For at komme i gang er det bedst, hvis du har et Arduino-startsæt, der indeholder: Du kan også bruge et Arduino-startsæt: En Arduino, jumperkabler, modstande, et breadboard, en LED og knapper. Nogle af projekterne kræver yderligere dele, og har links til, hvor du kan købe dem.
I alle de projekter, du vil se nedenfor, har vi brugt circuito.io til BoM (bill of materials), trinvis ledningsvejledning og kodeeksempler, men du kan naturligvis ændre det oprindelige design, tilføje eller fjerne komponenter og lave din egen version af projektet.
Thermometer med et twist
Til dit første projekt har vi besluttet at vise dig, hvordan du laver et termometer. Dette er et ret simpelt byggeri, og det er en af de ting, der bare er gode at have i huset. Også til dette projekt har vi ikke 3d printet nogen dele, og brugt et minimum af dele, så det er virkelig nemt og selvforklarende.
De komponenter du skal bruge til dette projekt er: Arduino Uno, DS18B20 – One Wire Digital Temperature Sensor og 7-Segment Serial Display.
Når du har alle komponenterne, kan du begynde at koble dem sammen. Dette projekt har kun én indgang – temperatursensor, og én udgang – 7-segment display, så ledningsføringen er ikke så vanskelig. Når du klikker på dette link og du vil blive omdirigeret til vores app, hvor komponenterne til projektet allerede er udvalgt for dig.
Lad os tage et kig på de forskellige komponenter lidt mere detaljeret:
- Temperatursensoren har 3 pins – VCC, GND, som giver strøm til sensoren, og DQ, som er data pin. Hver komponent, du bruger, har et datablad – det er her, du kan læse om komponenten og lære, hvilke funktioner den har, og hvordan den fungerer.
- Det 7-segmentet serielle display kan vise 4 cifre ad gangen. Hvert ciffer kan styres separat. Det kan vise tal, bogstaver og nogle specialtegn. 7-segmentdisplayet er lidt mere kompliceret at tilslutte. Som du kan se, har den 10 pin-outs. Du har ikke nødvendigvis brug for at bruge dem alle, og du kan læse mere i databladet. Du har måske bemærket, at i modsætning til temperatursensoren har 7-segmentdisplayet huller og ikke stifter. Derfor skal du lodde mandlige header-stifter. Lodning kan lyde skræmmende, men det er faktisk ikke så skræmmende. Der er gode online tutorials du kan bruge, her er en god en fra Sparkfun.
Næste ting vi skal kigge på er breadboardet. I ledningsdiagrammet på circuito.io kan du se, at vi bruger et breadboard. Breadboards er et grundlæggende prototypeværktøj, der giver dig mulighed for at teste forskellige ledninger uden at du behøver at lodde delene sammen. Det sparer en masse tid og materiale. Når du har det endelige design, kan du lave et printkort eller bruge et perforeret prototypingboard, som det du ser på billedet ovenfor. Vi vil dække mere om dette emne i et af vores fremtidige indlæg om forskellige breadboards og prototyping boards. Til dette projekt kan du holde dig til breadboardet, hvis du ønsker det. Wow, vi har allerede dækket så mange oplysninger! Det kan virke som en masse, og det er det også, men det er derfor, vi tager dig med ind i denne verden trin for trin, så giv ikke op, hvis du ikke forstår alting helt endnu. Det er en del af det sjove – at lære, mens du laver ting!
Når ledningsføringen er færdig, kan vi tage et kig på koden. Koden er dybest set et sæt regler og instruktioner, der fortæller dine sensorer og aktuatorer, hvad de skal gøre. Hvis du vil forstå lidt mere om det, kan du gå over til vores blogindlæg om Arduino-kode. Du kan se denne serie på 3 videoer om programmering til Arduino af ILTMS.
For at vende tilbage til vores projekt vil vi her blot forklare den grundlæggende logik bag koden – de data, der læses fra DS18B20-temperatursensoren, præsenteres på det serielle 7-segment display ved hjælp af funktionerne sevenSegment.write og ds18b20.readTempC(). Den specifikke kode til dette projekt findes på vores Hackster-projekt-hub i kodeafsnittet nederst.
Du skal downloade denne kode og indsætte den i firmware-fanen i din oprindelige kode, som forklaret i vejledningen på Hackster.
For at samle alle dele af dette projekt brugte vi et særligt materiale, som vi virkelig godt kan lide. Det hedder Sugru, og det er denne farverige og superstærke epoxy, som du kan forme til den form, du ønsker, og lade tørre. Når materialet er tørt, er det superstærkt, men alligevel fleksibelt, så det har en god fornemmelse, og det er farverigt og sjovt. Det var da ikke så slemt, vel?
Hvor hurtigt kan du drikke?
Vi lavede dette projekt til Sankt Patrick’s Day, da vi besluttede at teste vores teamets evne til at drikke. Det var en dag til at huske (eller måske ikke). Tilsyneladende var det, som vi troede var en god score, vi senere lærte var meget langsomt i forhold til folks reaktioner. Nå ja, der er altid næste år, ikke sandt?
Back to the build – de komponenter, vi brugte i dette projekt, er Arduino Uno, FSR (Force Sensing Resistor), Pushbutton, Piezo Speaker og 7-Segment display. Vi brugte det samme Serial 7-segment display som det, der blev brugt i termometeret, men denne gang viser det i stedet for at vise temperaturen den tid, der er gået, siden pint’en forlod underlaget. Vi kan forstå heraf, at 7-segmentet kun er et displayelement, og at den egentlige beregning foregår i koden og behandles gennem Arduino.
En anden komponent i dette build er den kraftsensor, der registrerer vægten af pint’en på underkoppen. Når den fjernes, registrerer sensoren ændringen i vægten og starter tiden, som vises på 7-segmentet. Tælleren stopper, når den registrerer vægten af pint’en tilbage på underlaget. Denne handling udløser en anden komponent – piezohøjttaleren – til at spille en melodi. Trykknappen nulstiller tiden. Dette er alle de komponenter, der indgår i dette projekt.
Hvis du har gennemført det første projekt, er processen her stort set den samme: Vi har lavet et særligt link til dette projekt, så alle komponenterne allerede er valgt på forhånd. Efter at have fulgt ledningsvejledningen, og efter at du har testet koden, kan du færdiggøre projektet og lære mere om det i dette indlæg.
Monitorer luftforurening
Dette næste projekt vil vi præsentere dig for en ny sensor. Den hedder MQ7, og den indsamler data om CO-koncentrationer i luften. Denne sensor er meget følsom og har en hurtig responshastighed. Du kan læse om, hvordan den fungerer på Sparkfun. MQ7 giver et analogt output, derfor tilslutter vi den til Arduino’ens analoge pin. MQ7 kræver ligesom andre gassensorer et breakout board, som i princippet er en adapter, der gør det muligt at tilslutte gassensorernes odly-spaced pins til breadboardet.
Så nu hvor vi ved lidt mere om gassensorer og hvordan de virker, kan vi gå videre til at diskutere koden til dette projekt. Nu hvor du allerede har to projekter bag dig, håber vi, at koden ikke ser så skræmmende ud længere, og vi kan gå videre til at diskutere, hvad koden rent faktisk indeholder. I dette projekt skal vi altså møde map-funktionen. Dette er en meget nyttig og meget brugt funktion i forskellige Arduino-projekter. Som navnet antyder, omdanner denne funktion tal fra et område til et andet. I dette tilfælde fra MQ7-sensorens rækkevidde til RGB-LED’ens rækkevidde, som er 0-255. Så som du måske allerede har gættet (eller set i videoen) vil LED’ernes farve skifte fra rød til grøn alt efter CO-koncentrationsniveauet i luften. Alle detaljer om, hvordan man bygger dette projekt, og flere detaljer om det kan findes på projektets indlæg på vores blog.
Thirsty Flamingo
Den tørstige flamingo er et andet godt Arduino-projekt til at starte din laverrejse med. I dette projekt vil vi bruge en jordfugtighedssensor til at overvåge vores planters miljø. Jordfugtighedssensoren er en anden analog sensor, ligesom MQ7-sensoren. De store pads fungerer som sonder for sensoren, og den opfører sig faktisk som en variabel modstand. Derfor gælder det, at jo mere vand der er i jorden, jo bedre ledningsevne er der mellem de to puder. Dette resulterer i en lavere modstand, hvilket betyder en højere SIG out. Så faktisk, når der er mere vand, er der højere udgangssignaler, som så sendes gennem den analoge pin til Arduino’en. Piezohøjttaleren vi har brugt her, som du allerede har mødt i Chug Meter, er programmeret til at bippe, når der er høje målinger fra jordfugtighedssensoren.
Vi har brugt et par elektronikbegreber i denne forklaring, såsom: modstand, modstand og ledningsevne. Hvis disse ord lyder som sludder for dig på dette tidspunkt, er det helt normalt. Vi vil også diskutere nogle grundlæggende termer i et af vores fremtidige indlæg, men i mellemtiden kan du starte ved at tage dette elektronikkursus på Instructables. Den er meget informativ, og den har gode forklaringer og eksempler. Start langsomt, lær de grundlæggende termer, prøv ikke at sluge det hele på én gang. Det er ligesom at lære et nyt sprog, det tager tid og øvelse.
Gå tilbage til vores venlige lyserøde flamingo, efter at vi har diskuteret, hvordan jordfugtighedssensoren fungerer, og hvorfor piezohøjttaleren bipper, når den gør det, har vi et par ting mere at se på i dette projekt. Hovedsageligt det kabinet, som vi har bygget til den. Dette er det første projekt, som vi skal diskutere 3D-printning. Selv om det ikke er nødvendigt i dette projekt at lave kabinettet til projektet, giver det det et flot og unikt udseende, og i dette tilfælde beskytter det også elektronikken mod at blive våd (du har trods alt planer om at vande dine planter på et tidspunkt, ikke?).
Design i 3D kræver en vis erfaring og også en god portion kreativitet. Ligesom med elektronik kan du lave 3D-print af andres gratis designs uden dybt at forstå alt, hvad der er at vide om 3D-design. Du vil dog sandsynligvis gerne samle nogle oplysninger op undervejs og begynde at skabe dine egne designs på et tidspunkt, eller i det mindste tilpasse andres designs, så de passer til dine behov og ønsker. Et godt sted at begynde at lære om 3D-design er igen gennem Instructables’ klasser.
I hvert fald har vi til den tørstige flamingo lavet dette seje cover, der holder alle elektronikdelene rigtig godt fast, og du har kun “benene”, som faktisk er puderne til jordfugtighedssensoren, der stikker ud. Du kan finde flere oplysninger om, hvordan vi byggede dette projekt, koden og 3d-filerne i det angivne blogindlæg.
Recycled Robotic Arm
Robotarme er et ret populært projekt i maker-verdenen. Der findes forskellige kits til at bygge robotarme, og der findes mange tutorials, der viser, hvordan man bygger dem. Disse designs omfatter normalt CNC-laserskæring eller 3D-designs. Vi besluttede, at vi ville lave en robotarm af de materialer, som vi havde til rådighed i vores værksted, fordi en del af det at være maker også handler om at lære at arbejde med de materialer, man har, og reducere omkostningerne ved ens projekt. De materialer, vi brugte, var små stykker træ, plastikflasker, som vi lavede tynde stropper af og brugte som en slags krympebånd, og noget snor. Selve byggeriet var meget sjovt, og det var interessant at udforske brugen af disse restmaterialer, og hvordan vi kan udnytte dem. Vi forklarer mere om byggeprocessen i dette blogindlæg.
I elektronikafdelingen er det på tide, at vi introducerer jer til servomotorer. Servomotorer har integrerede tandhjul og en aksel, der kan styres inden for et område på 180 grader, og de er også meget populære i maker-verdenen. De bruges til alle typer af forskellige projekter. Vi har dedikeret et andet indlæg til Arduino-motorer generelt, og der er også en dedikeret del om servomotorer, så du er velkommen til at gå den igennem. I robotarmprojektet brugte vi 3 generiske metalgear-servoer: en bevæger armen til højre og venstre, en bevæger armen op og ned og en styrer griberen.
For at styre servoerne brugte vi et 2-akset joystick, ligesom det, du har på din Playstation-fjernbetjening. Dette joystick er faktisk to potentiometre og en trykknap. Vi kortlagde joystickværdierne (husker du map-funktionen?), så joystickets x-akse bevæger en af servoerne fra højre til venstre (0-180 grader). Joystickets y-akse bevæger en anden servo op og ned (0-180 grader).
Griberservoen har to positioner:
- 180 grader – betyder, at griberen er lukket
- 0 grader – betyder, at griberen er åben
Joystick-trykknappen skifter mellem disse foruddefinerede positioner.
Det virkelig fede ved dette projekt er, at du kan bygge det af forskellige materialer og virkelig lære de komponenter, du arbejder med, at kende, og hvordan de fungerer i forskellige miljøer. Du kan lære om drejningsmomentet på de servoer, du bruger, og hvor meget vægt de kan bære, deres funktionsområde og meget mere. Dette er et fantastisk eksperimenteringsprojekt, hvis du har lidt fritid og lyst til at lære. Og så er det også ret billigt.
Den flyvende søkøer
Bevægelsesdetektorer – vi møder og bruger dem hver dag. I vores bil, i hjemmet, i supermarkedet, på kontoret eller når vi går ind i butikker. I dette næste projekt bruger vi en PIR-bevægelsesdetektor, som kan registrere bevægelser af mennesker og andre levende væsener fra seks meters afstand. Den måde PIR-sensoren fungerer på er, at den registrerer niveauer af infrarød stråling. Du kan læse om, hvordan dette præcist gøres i denne fantastiske vejledning fra Adafruit. Du kan justere PIR-sensorens følsomhed og også indstille en forsinkelse mellem aflæsningerne.
Som i alle de andre projekter på dette indlæg bruger vi et Arduino-kort og i dette tilfælde en Arduino Pro-micro 5v. Som du kan se på billedet nedenfor, har vi erstattet breadboardet med et perforeret prototypingboard, ligesom vi gjorde i termometerprojektet. Igen er dette ikke et must, hvis du kun er i gang, men senere hen er disse små prototyping boards en god løsning til mere permanente projekter, da de er billige og pålidelige.
I dette projekt møder vi også servomotoren igen, men denne gang har vi kun én motor i projektet, da den kun bevæger sig i én akse.
Vi afslutter dette ret simple projekt med et flot kabinet, der holder PIR-sensorens “øje” eksponeret, så den kan “se” hvem der kommer, men det er elegant sat sammen i et flot 3D-printet kabinet, der lader alle ledninger og elektronikken være væk fra øjet, og efterlader dig med et flot udseende manetøj, som du kan sætte i indgangen til dit værksted eller garage. Måske holder den endda skadedyr væk som en skræmt krage, hvem ved? Den tilpassede kode og 3D-designs er på vores projekthub på Hackster.io.
34Five Arduino Pet
Vi indrømmer, at dette er et mærkeligt og finurligt projekt, men det har fået mange sjove reaktioner. Og hvad er der galt med at have det lidt sjovt? Plus det er også en god undskyldning for at udsætte dig for en anden sensor – accelerometeret. Som du sikkert har gættet, måler den acceleration i 3 forskellige akser. Du kan se de nøjagtige beregninger og funktioner for denne komponent på Digikey’s Quickstart-guide. Men det grundlæggende i den er, at den reagerer på ændringer i orientering. Udover accelerometeret brugte vi igen piezohøjttaleren til at spille denne funky melodi i overensstemmelse med orienteringsændringerne. Så det er et kæledyr, men også et lidt Darth-Vadery bærbart musikinstrument.
Som med alle vores projekter kan du finde alle de komponenter, som vi har brugt i vores app, og hvis du klikker på dette link, vil du se alle komponenterne forhåndsvalgt for dig, som ved magi!
Mere detaljer, kode og 3D-designs findes på vores Hackster-projekt-hub.
Drone Air Gate
Droner er blevet ekstremt populære på det seneste, og du kan tage din leg med dronen til et nyt niveau ved hjælp af denne interaktive luftgate. Til dette projekt skal du bruge HC-SRO4 ultralydssensor, 9v batteri, Sparkfun Arduino Pro Mini controller og RGB Diffused Common Anode.
Dronestolperne er gode til at øve din flyveteknik. Ultralydssensoren registrerer, at dronen kommer tættere på, og ændrer lyset fra rødt til grønt. Lav så mange luftporte, som du vil, og byg en forhindringsbane gennem dem, så du kan køre om kap med dine venner. Det er virkelig sjovt, tro os. Som altid har du den fulde vejledning på vores community-hub på Hackster.io.
En ubrugelig Arduino-gavekasse
Hvis du er nået så langt, fortjener du en Giftduino!
Det er også en stor del af maker-Arduino-verdenen at have det sjovt, og der er ikke noget galt med at lave projekter, der ikke har et formål.
Den interessante komponent, du får lov til at arbejde med her, er A1302 Hall-sensoren. Denne sensor fungerer efter principperne i Hall-effekten, hvilket betyder, at den reagerer på forskelle i magnetfelter. For at aktivere hallsensoren i dette projekt placerede vi derfor en magnet på æskens låg for at aktivere den. Når æsken åbnes, begynder piezohøjttaleren at spille en melodi, og på skærmen vises en gaveæske (eller hvad du ellers har lyst til). I dette projekt kan du se, at vi ikke har brugt et breadboard, men derimod et Arduino-prototypeskjold. I mellemtiden kan du følge vejledningen og lave din helt egen Giftduino.
Coffee Capsule Color Detector
Vi har valgt at afslutte vores første blogindlæg(!) med vores mest populære projekt. Kærligheden til kaffe er universel, og en Nespresso-kapseldetektor kan være en fantastisk gadget, der kan hjælpe dig med at vælge en kapsel.
Mekanismen bag projektets funktion er, at RGB-lyssensoren aflæser lysstyrkeniveauerne i den røde, grønne og blå farvekanal og sender dem til Arduino, som vil genkende din kapsel ud fra de foruddefinerede værdier i koden. De nødvendige komponenter omfatter en RGB-lyssensor, Arduino pro mini, vægadapter, strømforsyning og et serielt aktiveret LCD-display. Følg vejledningen i vores tutorial for at sammensætte dit kredsløb og downloade prøvekoden. Download derefter projektkoden fra Github, og 3D-print emballagen. Saml dem sammen, og voila, du har en kaffekapselfarvedetektor.
Så nu, hvor du har lidt flere oplysninger om, hvordan hele denne Arduino-ting fungerer, er det tid til at komme i gang! Brug et øjeblik på at forberede dit arbejdsmiljø og sikre dig, at du har alt det, du har brug for, før du sætter dig ned for at arbejde. De første par projekter kan være udfordrende, men det åbner op for en verden af kreative muligheder! Det er fantastisk!