Inhoudsopgave:

Hoe LED's te bedienen met Processing en Arduino: 5 stappen
Hoe LED's te bedienen met Processing en Arduino: 5 stappen

Video: Hoe LED's te bedienen met Processing en Arduino: 5 stappen

Video: Hoe LED's te bedienen met Processing en Arduino: 5 stappen
Video: Hoe RGB LED met Arduino-code te gebruiken, bereken de weerstandswaarde 2024, Juli-
Anonim
Hoe LED's te bedienen met Processing en Arduino
Hoe LED's te bedienen met Processing en Arduino

Laatst werd ik geconfronteerd met een interessant probleem, ik moest een reeks lichten bedienen vanuit een interactie op een computerscherm en het moest zo goedkoop mogelijk zijn. Ik dacht meteen aan een Arduino. Het had alles wat ik nodig had, meer dan genoeg I/O, een geïntegreerde USB en het kost maar $30. Om met de Arduino te communiceren besloot ik Processing te gebruiken. De twee werken heel goed samen vanwege Arduino's hechte familierelatie met Processing.

Stap 1: De materialen

De materialen
De materialen

Het is tijd om alle benodigde stukjes en beetjes te verzamelen om dit mogelijk te maken: De Software: Processing - kan worden gevonden op www.processing.orgArduino - Kan worden gevonden op www.arduino.cc De Hardware: Arduino USB-kaart (ik gebruikte de Diecimila, want dat was wat ik had)8x LED's naar keuze8x 330ohm weerstandenBreak away headersenkelzijdige koperen bekledingIjzerchloridetiny boorbitUSB-kabel

Stap 2: De code

De code
De code

Dit was het moeilijkste voor mij. Ik ben altijd een hardwaretype geweest in plaats van een softwaretype, dus wendde ik me tot internet. de eerste plaats waar ik keek was de referentiesectie van zowel Processing.org als Arduino.cc, er is veel tijd en aandacht besteed aan de ontwikkeling van deze sites en ik juich de inspanning toe, het was het waard! Alle basisinformatie die ik nodig had, was aanwezig, maar ik vond het heel moeilijk om het allemaal werkend te krijgen. Dus ik wendde me tot deze tutorial om me recht te zetten. Francesco heeft een geweldige tutorial samengesteld over het verwerken van seriële communicatie en de Arduino. Toen ik alles eenmaal aan het werk had, was het eigenlijk heel eenvoudig. In principe wordt de verwerkingscode als volgt ingesteld: import processing.serial.*;Serial myPort;void setup(){ println(Serial.list()); myPort = new Serial(this, Serial.list()[*X*], 9600); mijnPort.buffer(1); size(400, 400);void draw(){ // some code goes here} Zorg er bij het instellen van je code voor dat je Arduino is aangesloten op je seriële poort. Dit is belangrijk omdat de code probeert te verwijzen naar de specifieke Arduino die je gebruikt. Voer uw code uit en kijk naar de lijst die onder aan uw verwerkingsvenster wordt weergegeven en verander vervolgens de variabele in uw code die ik heb aangegeven door de *X* in het nummer van de poort waarmee uw arduino is verbonden. De mijne was de derde op de lijst, dus ik plaatste 2 in plaats van *X*. Houd er rekening mee dat de lijst wordt weergegeven als array-items, dit betekent dat de eerste positie wordt aangegeven als 0 en niet 1. De Arduino-code is nog eenvoudiger in te stellen:void setup(){ Serial.begin(9600);}Ik heb gepost de voltooide codes die u kunt nemen en wijzigen en waarmee u kunt spelen. De Arduino wordt opgeslagen als pdxMap.pde en de verwerkingscode wordt opgeslagen als serialLEDTest.pde

Stap 3: Maak de printplaat

Maak de printplaat
Maak de printplaat
Maak de printplaat
Maak de printplaat

Ik heb de printplaat gemaakt met CADsoft Eagle. Omdat ik wist dat ik een arduino gebruikte, wilde ik een protoshield maken die op de oneven afstand op de USB-kaarten zou passen, dus terug naar het internet om het juiste Eagle-onderdeel te vinden. Ik heb uiteindelijk de Protoshield-lay-out gebruikt die is ontworpen door Lady Ada. Als je niet bekend bent met haar werk, moet je haar eens bekijken. Haar projecten en bijdragen aan de wereld van fysiek computergebruik zijn uitstekend en het meeste van haar werk is open source, waardoor mensen zoals ik de kans krijgen om hun eigen projecten naar een hoger niveau te tillen. Nadat ik de protoshield-lay-out had gevonden, opende ik het en wijzigde het in Adelaar voor wat je hieronder ziet. De tweede afbeelding is een close-up van de PDF die het uiteindelijke bord zal maken. Er zijn veel geweldige instructables over het etsen van je eigen printplaat, dus ik zal hier niet alle details bespreken. De methode die ik graag gebruik, wordt prachtig beschreven in de instructable van TechShopJim. Stap één: druk de PDF (hieronder te vinden) af op tijdschriftpapier, hoogglans fotopapier of papier dat is ontworpen voor PCB's. Afdrukken met een laserprinter. niet schalen, het is opgemaakt op een 8 1/2 bij 11 stuk papier en het zou prima moeten worden afgedrukt zonder aanpassingen Stap twee: Knip het ontwerp uit en laat een klein randje rond het ontwerp. Stap drie: Knip een stuk van je koperen bekleding dat iets groter is dan het ontwerp. het bord kan worden gesneden door een lintzaag, een ijzerzaag. Maar meestal gebruik ik een stanleymes of Xacto-mes door het steeds opnieuw in te snijden en het dan langs de breuklijn te breken en de rand schoon te maken met schuurpapier. Stap vier: maak de koperen bekleding schoon met een SOS-schrobpad of staalwol totdat het glanst, spoel het af en zorg ervoor dat u het oppervlak niet met uw handen aanraakt. Eventueel vet erop zorgt ervoor dat de toner niet aan het koper blijft kleven. Stap vijf: plaats de met koper beklede plaat op een plat oppervlak met het koper naar boven gericht, leg het uitgesneden ontwerp met de tonerzijde naar beneden op het koper en plak het op zijn plaats, leg een papieren handdoek over het geheel en strijk het op de hoogste stand van je strijkijzer. GEEN STOOM! Plaats het strijkijzer er direct bovenop, laat het bord een beetje opwarmen voordat je het strijkijzer verplaatst en pak dan de rand van het strijkijzer en polijst het hele ding om de toner aan het koper te laten kleven. het zou in totaal ongeveer 3 minuten moeten duren. Verwijder het strijkijzer en de papieren handdoek. Stap zes: Week het bord in water om het papier eraf te halen. Wees niet te ruw bij het verwijderen van het papier, de toner is erg kwetsbaar en kan er gemakkelijk afschrapen. (Als het, om wat voor reden dan ook, niet werkt, neem dan gewoon het SOS-kussentje of de staalwol weer naar het bord en verwijder eventuele resterende toner.) Stap zes: Ets!**UPDATE**Je kunt de PDF hier downloaden. Als je geïnteresseerd bent in de Eagle-bestanden, dit is het.brd-bestand en het.sch-bestand

Stap 4: Boor de gaten en vul het bord

Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord
Boor de gaten en vul het bord

Nu je een printplaat hebt, is het tijd om de gaten te boren met je kleine boortje en op de componenten te solderen. Je zult merken dat ik het bord heb gemaakt met het spoor aan de bovenkant in plaats van aan de onderkant van het bord. Ik deed dat omdat het het gemakkelijker maakt om de headers op het bord te solderen en het plat tegen de Arduino te laten zitten. Ik begon met de weerstanden bij het vullen van het bord. Buig de draden zo dicht mogelijk bij de weerstand en plaats ze in het bord en soldeer en klem de overtollige draden vast. Vervolgens kunt u de headers of de LED's installeren. De LED's moeten trots op het bord worden gemonteerd om ze op hun plaats te solderen, dus ik zou willen voorstellen om ze als laatste te doen, maar aangezien het aantal componenten zo laag is, maakt het niet echt uit welke onderdelen eerst worden geïnstalleerd.

Stap 5: Laad je schets

Laad je schets
Laad je schets
Laad je schets
Laad je schets

Laad de pdxMap.pde-schets op je arduino en sluit de protoshield aan op het bord. Zorg ervoor dat u uw arduino op dezelfde seriële poort aansluit als waarop u uw verwerkingsschets hebt gewijzigd om weer te geven. Open vervolgens de verwerkingsschets en klik op de afspeelknop. Er verschijnt een venster waarin uw programma wordt uitgevoerd. Door in elk van de rode rechthoeken te klikken, zal de overeenkomstige LED op de Arduino ongeveer een seconde oplichten. Voel je vrij om vragen of opmerkingen te plaatsen en je wijzigingen en projecten te posten, ik zou ze graag zien!

Aanbevolen: