Inhoudsopgave:

Interactief LED periodiek systeem - Ajarnpa
Interactief LED periodiek systeem - Ajarnpa

Video: Interactief LED periodiek systeem - Ajarnpa

Video: Interactief LED periodiek systeem - Ajarnpa
Video: SONOFF L2 - RGB светодиодная лента с wi-fi и bluetooth, Ewelink, Google Home, Home Assistant 2024, Juni-
Anonim
Image
Image

Door Bees KneesVolg meer van de auteur:

Gecementeerde vleesetende kannibalistische plantenbak
Gecementeerde vleesetende kannibalistische plantenbak
3D Catan. Ontworpen, 3D geprint en geschilderd
3D Catan. Ontworpen, 3D geprint en geschilderd
3D Catan. Ontworpen, 3D geprint en geschilderd
3D Catan. Ontworpen, 3D geprint en geschilderd

Mijn vriendin en ik hebben een verzameling elementen - voorbeelden van de unieke stukjes materie waaruit alles in het universum bestaat! Voor zo'n interessante collectie besloot ik een vitrine te bouwen die de monsters in al hun glorie van wereldopbouw laat zien.

Ik weet dat niet veel mensen een elementenverzameling hebben, maar iedereen heeft wel iets om te laten zien! Het doel van deze instructable is om je voldoende inzicht te geven in het bouwproces, de elektronica en de code om je eigen aangepaste display te maken voor wat je maar wilt.

De interactiviteit van het display maakt het een geweldig leerhulpmiddel voor leraren om kenmerken van het periodiek systeem te demonstreren en hoe verschillende elementen zich tot elkaar verhouden. Het is ook gewoon heel leuk om naar te kijken in het algemeen!

Stap 1: Wat je nodig hebt

Wat je nodig hebt
Wat je nodig hebt
Wat je nodig hebt
Wat je nodig hebt

Alles gekocht bij de plaatselijke ijzerhandel, tenzij anders vermeld.

Alle elektronica gekocht bij Ali Express (links gegeven). Ali Express is een plek om goedkope elektronica te kopen die meestal van verrassend hoge kwaliteit is.

Materialen

Frame - Sleutel: (lengte x breedte x hoogte) x aantal

  • Grenen planken (2400x60x10mm) x7
  • MDF-plaat (1200x600x4,5 mm) x2"
  • Schuurpapier (korrel 120)
  • Houtlijm
  • Houtvuller
  • Witte acrylverf --- Kunstwinkel
  • Potlood
  • Decoratief lijstwerk (2400mm) x2
  • Balsahout (1000x10x2mm) x6 --- Kunstwinkel

Elektronica

  • LED's (Neopixels/ws2812b) x90 --- Ali Express Link "1m 100 IP30" geeft u 100 niet-waterdichte LED's
  • Draad (5m rollen 22 gauge of vergelijkbaar. verschillende kleuren bij voorkeur) x3 --- Ali Express Link
  • Arduino Nano --- Ali Express Link
  • Bluetooth-module (HC05) --- Ali Express Link
  • Voeding (5V 4A) --- Ali Express Link
  • Netsnoer --- Winkel voor tweedehands goederen
  • Soldeer --- Ali Express Link
  • Prototype dotboard --- Ali Express Link
  • Vrouwelijke pin headers --- Ali Express Link
  • Schroefklemmen --- Ali Express Link

Gereedschap

  • Soldeerbout
  • Multimeter --- Ali Express Link
  • Handzaag (of tafelzaag)
  • Heet lijmpistool (met lijmstiften)
  • Oefening
  • Boor (3-8mm)
  • Klemmen
  • Rolmaat
  • Draadstripper --- Ali Express Link

Stap 2: Plannen

Planning
Planning
Planning
Planning
Planning
Planning

Functies

  • Het display heeft de vorm van het periodiek systeem. Op deze manier kunnen de LED's kenmerken en trends van het periodiek systeem laten zien.
  • Elke positie in het periodiek systeem is een gesloten plank waarop het elementmonster kan rusten.
  • Ik heb WS2812B LED's gebruikt waarmee ik elke kleur afzonderlijk kan verlichten.
  • Het display heeft Bluetooth-functionaliteit en een telefoon-app om het te bedienen. Het belangrijkste dat ik met dit scherm wilde, was dat het interactief was. De telefoon-app maakt het zo leuk om mee te spelen!

Bouw

De display is gemaakt van 60x10mm grenen planken. Ik heb de mijne in lengtes van 2,4 m, maar er waren veel lengtes beschikbaar. Alle benodigde stukken om te snijden passen gemakkelijk in 7 lengtes van 2,4 m. Er was nog bijna één hele lengte over - voor het geval ik fouten zou maken!

Ik heb een "Framing plan" voor je getekend om te volgen. Gebruik dit met de "Framing lengtes en hoeveelheden" die laat zien hoeveel van elke lengte moet worden gesneden. Beide diagrammen zijn kleurgecodeerd en gelabeld met letters, zodat u weet welk stuk waar hoort. Alle stukken worden uitgesneden en vervolgens gelijmd met houtlijm.

Het laatste diagram toont de vormen voor het voorpaneel en het achterpaneel die uit MDF worden gesneden en op hun plaats worden gelijmd. Ik raad aan om het frame gewoon op de MDF te plaatsen en de vormen over te trekken met een potlood. De vormen van de panelen zijn bedoeld om u een idee te geven van hoe ze eruitzien.

Lanthaniden en actiniden

Ik heb momenteel geen monsters van lanthaniden en actiniden, dus ik heb het deel van het periodiek systeem dat ze bevat niet gemaakt. Ik zal in de toekomst echter!

Elektronica

Het plannen van de elektronica wordt later gedocumenteerd in de Instructable.

Stap 3: Het hout zagen

Het hout snijden
Het hout snijden
Het hout snijden
Het hout snijden
Het hout snijden
Het hout snijden
Het hout snijden
Het hout snijden

Volgens het plan moesten de stukken grenenhout van 60x10 mm worden gemeten en op hun specifieke lengte worden gesneden. Ik gebruikte een meetlint en potlood om aan te geven hoe lang elk stuk hout moest worden en vervolgens gebruikte ik een vierkant om een lijn over het hout te trekken. Na elke gemarkeerde lijn gebruikte ik een zaag om direct achter de lijn te zagen. Zaag niet direct op de lijn of je krijgt een stuk hout dat door de dikte van het zaagblad net iets te klein is. Ik maakte de ruwe randen van elk stuk glad met schuurpapier. Na elk stuk gesneden is het handig om het met een potlood te labelen volgens het plan om de montage een stuk eenvoudiger te maken.

Let op: nauwkeurigheid is erg belangrijk. Mijn sneden waren niet allemaal perfect, dus ik had nogal wat gaten om later met hout op te vullen. Een tafelzaag of verstekzaag met respectievelijk een aanslag of aanslagblok zou zaagsneden veel nauwkeuriger maken.

Stap 4: Het frame monteren

Het frame monteren
Het frame monteren
Het frame monteren
Het frame monteren
Het frame monteren
Het frame monteren
Het frame monteren
Het frame monteren

Ik wilde dat alle verticale secties van 60 mm werden uitgelijnd, zo gemeten, gemarkeerd en in het kwadraat, waar elk van hen op de horizontale planken moest worden gelijmd. De onderste plank "J" is bijvoorbeeld gemarkeerd op 10 mm (om ruimte te maken voor de verticale zijplank), dan tel ik 60 en markeer ik op 70, tel dan 10 voor het verticale gedeelte, dan nog een 60 en markeer op 140 enzovoort.

Om de stukken samen te voegen, heb ik houtlijm aangebracht op de oppervlakken die zouden worden samengevoegd en deze zorgvuldig op hun juiste positie geplaatst en vastgezet met klemmen. Ik heb maar een paar stukjes tegelijk gelijmd en laten drogen vanwege mijn beperkte aantal klemmen en omdat het anders moeilijk was om alles recht te houden. Ik merkte dat het hielp om alles plat op een plat oppervlak te leggen en de klemmen net genoeg vast te draaien zodat ik nog steeds met de positionering kon spelen zonder dat alle stukken omvallen. Toen de stukken op hun plaats zaten, heb ik de klemmen volledig vastgedraaid. Toen het frame volledig gemonteerd was, was het een stuk sterker dan ik had verwacht vanwege het grote aantal verschillende lijmverbindingen. Als je een sterker scherm wilt, kun je kleine schroeven gebruiken of sleuven knippen om de stukken in elkaar te passen.

Let op: Bij het aan elkaar lijmen van een structuur als deze helpt het om zoveel mogelijk klemmen te hebben. Je kunt er misschien wat lenen van vrienden of ze tweedehands goedkoop vinden.

Stap 5: Randen

grenzen
grenzen
grenzen
grenzen
grenzen
grenzen

Om het display er wat mooier uit te laten zien om aan de muur te hangen, besloot ik het in te lijsten. Ik bracht wat decoratief gietwerk mee (het soort voorgevormd hout dat fotolijsten maakt) en hout lijmde het aan de zijkanten van het scherm en zorgde ervoor dat het op zijn plaats werd geklemd terwijl de lijm aan het drogen was. Het lastige hiervan was het snijden van de hoeken van 45 graden in de lijst, zodat de hoeken mooi in elkaar pasten. Mijn methode was om een stuk A4-papier met de korte kant naar de lange kant te vouwen om een hoek van 45 graden te maken en daarmee een lijn te trekken aan de onderkant (platte kant) van de lijst. Om de lijstwerk op één lijn te krijgen, meet u de lengte van de zijkant van het scherm waarop u het lijstwerk plaatst en markeert u de binnenrand van het lijstwerk met die lengte. Zorg ervoor dat u ongeveer 30 mm begint en markeer ook het startpunt. De lijnen van 45 graden gaan dan naar buiten vanaf de twee gemarkeerde punten.

Stap 6: Backing en voorpaneel

Achterkant en voorpaneel
Achterkant en voorpaneel
Achterkant en voorpaneel
Achterkant en voorpaneel

steun

Het scherm heeft een achterkant nodig om de LED's iets te geven om te reflecteren, het scherm veiliger te maken en alle draden te verbergen die daar achteraan zitten. Om de achterkant te maken heb ik twee vellen 1200x600x4,5 mm MDF gebruikt. Ik plaatste de MDF-platen op een plat oppervlak in liggende richting naast elkaar en plaatste het displayframe erop. Ik heb het frame verplaatst totdat de naad verborgen was door een van de verticale planken van het frame. Daarna heb ik met een potlood de buitenkant van het scherm op de MDF getraceerd en met een zaag uitgesneden. Ik draaide het scherm ondersteboven en lijmde de achterkant met houtlijm op de achterkant van het scherm. Ik bedekte de achterkant met zware voorwerpen om te voorkomen dat hij tijdens het drogen optilt of beweegt.

Steungaten

De achterkant heeft gaten in elke cel nodig om de LED-draden door te laten. Ik heb een accuboormachine en een bit van 6 mm gebruikt om twee gaten in elke cel te boren. Een gat in elke bovenhoek. Met de gaten en draden in de bovenhoeken zijn ze moeilijker te zien op het display.

Voorpaneel

Ik wilde dat het scherm meer rechthoekig zou zijn, dus plaatste ik een stuk MDF van 4,5 mm onder het frame en volgde de onregelmatige vorm van 16x3 cellen op het MDF. Vervolgens heb ik een zaag gebruikt om de vorm uit te snijden en deze met houtlijm op het frame te lijmen.

Tabbladen

Ik heb kleine MDF-vierkantjes gesneden waarvan 1 hoek is afgesneden om op hun plaats te lijmen om het voorpaneel en het frame iets steviger bij elkaar te houden. (Foto's zijn te zien van deze tabbladen in de sectie elektronica).

Stap 7: finishing touch

Afwerking
Afwerking
Afwerking
Afwerking

Schilderen

Het was een moeilijke beslissing om het hout te beitsen of te verven. Uiteindelijk heb ik het hele display wit geverfd met wat goedkope acrylverf. Ik besloot dat het wit de LED-verlichting mooi zou reflecteren en de cellen echt zou verlichten. Het heeft zeker in mijn voordeel gewerkt!

Lasergesneden letters

Ik had onlangs het geluk dat ik toegang had tot een lasersnijder, dus knip een paar aangepaste zwarte acrylletters uit voor het display. Ik denk dat het de esthetiek van het scherm echt compleet maakt. Voordat ik toegang had tot de lasersnijder, dacht ik erover om goedkope houten letters te kopen en deze te schilderen. (Zoek het bestand dat ik bijgevoegd heb gebruikt).

Stap 8: Elektronica - Planning

Elektronica - Planning
Elektronica - Planning
Elektronica - Planning
Elektronica - Planning

LED's

Ik heb WS2812B LED's gebruikt vanwege hun gemakkelijke bedrading en codering. Oorspronkelijk was ik van plan een opstelling te maken van gemultiplexte LED's en schuifregisters. WS2812B's maken het leven zoveel gemakkelijker! Zelfs als je het scherm niet bouwt, raad ik aan om met deze LED's te spelen omdat ze ongelooflijk zijn (en goedkoop van Ali Express)!

Stroom

Ik gebruikte 90 WS2812B LED's voor het display. Elke LED heeft 3 kleuren (rood groen en blauw) die elk tot 20mA verbruiken bij volledige helderheid. Als alle 3 de kleuren de maximale helderheid hebben, zal de LED tot 60mA verbruiken.

60mA x 90 LED's = 5400mA (5,4A)

Ik vond een goedkope 5 volt voeding op Ali Express die 4A kon leveren, dus heb ik die meegenomen. Deze voeding is voldoende zolang ik niet teveel leds tegelijk op volle sterkte heb. Ik had wel een probleem met flikkerende LED's, maar dit was voornamelijk te wijten aan spanningsdaling (wat ik later zal uitleggen). Ik zou aanraden om de maximale stroomafname te berekenen zoals ik deed en een voeding van ten minste die waarde aan te schaffen.

WS2812B LED's werken op 5V, dus zorg voor een 5V-voeding.

Bluetooth

Ik wilde dat het scherm interactief was. Bluetooth-connectiviteit met een telefoon-app was de gemakkelijkste manier om dat te doen. De HC05 Bluetooth-module is eenvoudig te gebruiken. Je behandelt het gewoon als een seriële verbinding.

Stap 9: Elektronica

Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica
Elektronica

Verbindingskaart

Lees de aansluitingen uit de afbeelding van het bedradingsschema of hieronder geschreven:

(Arduino) D9 - DIN (Begin van LED-keten)

(Arduino) GND - GND (voeding)

(Arduino) +5V - +5V (Voeding)

(Arduino) TX - 1K Weerstand - 2K Weerstand - GND (Voeding)

Middelpunt van de twee weerstanden - RX (Bluetooth-module)

(Arduino) RX - TX (Bluetooth-module)

(Voeding) +5V - +5V (Begin van LED-keten)

(Voeding) GND - GND (Begin van LED-keten)

(Voeding) +5V - +5V (Bluetooth-module)

(Voeding) GND - GND (Bluetooth-module)

Bedrading van de LED's

De bedrading van WS2812B LED's is vrij eenvoudig, maar er is VEEL van! Er zijn 90 LED's met elk 6 soldeeraansluitingen. Dat zijn 540 soldeerverbindingen! Ik bracht WS2812B's op kleine ronde printplaten, wat enigszins vervelend was omdat ik ze aan de bovenkant van elke plank moest lijmen. Ik zou aanraden om de WS2812B LED-strips te krijgen die ik heb gekoppeld in het gedeelte "Wat je nodig hebt" omdat ze al een plakkerige achterkant hebben en een groter oppervlak hebben, dus gemakkelijker om mee te werken. Als je de strips kiest, moet elke LED worden uitgesneden door op de lijnen tussen de contactpads te knippen.

Elke WS2812B heeft 6 aansluitingen. 2 +5V, 2 GND, DIN en DOUT. DIN en DOUT staan voor Data In en Data Out. De datadraad moet van de vorige LED's DOUT naar de volgende LED's DIN lopen. De stroom- en aardingsdraden volgen totdat alle LED's als een ketting met elkaar zijn verbonden. Het bedradingsschema laat zien hoe de LED's zijn bedraad als mijn uitleg niet klopte!

Opmerking: de LED's hebben een pijl om u te laten weten in welke richting ze in de ketting moeten staan. Dit is een goede indicator in plaats van alleen naar DIN en DOUT te kijken.

Ik heb de LED's heet aan de bovenkant van elke plank gelijmd in de richting die wordt weergegeven in het diagram "LED-opstelling".

Opnieuw volgens het diagram "LED-opstelling" knipte ik draden door die tussen elke LED in de ketting kwamen via de gaten die in de MDF-rug waren geboord. Ik heb een andere kleur draad gebruikt voor de +5V-, GND- en datalijnen om ervoor te zorgen dat er geen verwarring ontstaat over welke draad aan welke LED wordt gesoldeerd. Ik moest elke draad strippen met een draadstripper voordat ik ze aan elkaar soldeerde, zoals beschreven in 3 paragrafen hierboven.

Bedrading van de voeding:

WAARSCHUWING: NETVOEDING KAN DOOD ZIJN. WEES VOORZICHTIG BIJ DE BEDRADING VAN DE VOEDING OF KOOP EEN VOEDING MET EEN REEDS BEVESTIGDE KABEL.

De voeding die ik had meegenomen had geen netsnoer. Ik heb een netsnoer gevonden bij een plaatselijke tweedehandswinkel voor mijn land. De voeding die ik heb gekoppeld in "Wat je nodig hebt" is geschikt voor 110/240V-invoer, dus zou in de meeste landen moeten werken.

OPMERKING: DE KLEURGECODEERDE NETDRADEN KUNNEN IN VERSCHILLENDE LANDEN VERSCHILLEND ZIJN.

Ik heb de voedingskabel gestript om de 3 gekleurde draden bloot te leggen. Groen voor aarde, blauw voor neutraal en bruin voor fase. Ik heb deze draden aangesloten op de schroefklemmen van de voeding.

(Draad) Groen -> GND (voeding)

(Draad) Blauw -> N (Voeding)

(Draad) Bruin -> L (Voeding)

OPMERKING: ALS U PROBEERT NET BEDRADING - ZOEK UW LOKALE KLEURCODERING.

Arduino en Bluetooth-module

Ik heb een prototypebord gebruikt om de componenten aan te solderen. Ik heb de Arduino Nano in twee stroken vrouwelijke pin-headers op maat gesneden en vervolgens de headers met Arduino in het prototypebord geplaatst. Vervolgens heb ik de headers van onderaf op het prototypebord gesoldeerd. Dit stelt ons in staat om een verwijderbare Arduino te hebben om te programmeren. Ik heb eigenlijk een Arduino nano-terminal gebruikt voor mijn display, maar zou headers gebruiken als ik het opnieuw zou doen.

Ik deed hetzelfde met de Bluetooth-module, maar zonder de headers (het hoeft niet verwijderbaar te zijn).

Er zijn schroefklemmen ingesoldeerd om de verbindingen met de LED-ketting en voeding te vergemakkelijken (de bedrading is nog steeds hetzelfde als het schema, maar de voedingsdraden en LED-kettingdraden zijn onderbroken door een schroefklem.

De Bluetooth-module, Arduino, voeding en het begin van de LED-keten werden vervolgens aan elkaar gesoldeerd met op maat gesneden en gestripte draden volgens het bedradingsschema.

De elektronica beveiligen

Het prototypebord en de voeding werden vervolgens met hete lijm aan de achterkant van het periodiek systeem bevestigd.

Stap 10: Coderen

Ik heb geprobeerd beschrijvend commentaar te geven en de code gemakkelijk te volgen te maken.

Hier is een kort overzicht van hoe het werkt:

definities

De bovenkant van de code is gevuld met arrays voor het opslaan van informatie over het periodiek systeem en voor het converteren tussen de manier waarop de LED-keten is gerangschikt en hoe de elementen moeten worden georganiseerd.

Bluetooth

De enige code in de lus is code om gegevens van de seriële verbinding (waarop de Bluetooth-module is aangesloten) te lezen en een functie aan te roepen die kiest wat te doen met de ontvangen opdrachten.

Commando's

De meeste commando's zijn slechts enkele woorden. Sommige hebben een voorvoegsel en een achtervoegsel, bijvoorbeeld: select23 zal element 23 aanzetten. Er is een functie die uitwerkt als het gegeven commando een voorvoegsel heeft en het achtervoegsel teruggeeft als dat zo is.

Functies

Elke animatie of functionaliteit zit in een functie. Je zult zien dat het er nogal wat zijn als je naar de code kijkt! Wanneer de functies worden aangeroepen met de juiste parameters gegeven, licht het display op en doet het dingen!

Bronnen

Ik heb mijn Bluetooth-verbindingscode gebaseerd op deze tutorial: Bluetooth- en Arduino-tutorial

De FastLED-bibliotheek voor het aansturen van WS2812B's kan hier worden gedownload: FastLED-bibliotheek

Informatie over het gebruik van de FastLED-bibliotheek vindt u hier: FastLED-informatie

Stap 11: Telefoon-app

Telefoon-app
Telefoon-app
Telefoon-app
Telefoon-app
Telefoon-app
Telefoon-app

MIT App Inventor is een geweldige online tool waarmee je relatief eenvoudig Android-apps kunt maken. Er zijn meerdere manieren om uw app te bekijken terwijl u deze maakt om er zeker van te zijn dat deze correct is. Het maakt gebruik van eenvoudig te leren programmeren op basis van blokken.

De belangrijkste reden waarom ik van App Inventor hou, is omdat het mijn telefoons Bluetooth kan gebruiken om verbinding te maken met een Arduino met een Bluetooth-module!

Er zijn tal van tutorials om aan de slag te gaan. Hier is een geweldige instructable voor App Inventor met Arduino.

Mijn vriendin heeft hier een bijdrage aan geleverd door de app te bouwen die wordt gebruikt om het display te bedienen. Er is een doorzoekbare lijst om afzonderlijke elementen te selecteren, schuifbalken voor de temperatuur- en datumfuncties en knoppen voor al het andere. Het heeft ook een scrollbaar topmenu!

Het App Inventor-bestand is bijgevoegd als u het wilt bekijken. Houd er rekening mee dat we nog een aantal bugs aan het oplossen zijn.

Stap 12: Tips

Hier zijn enkele tips voor elk elektronicaproject

Wanneer u een complex project maakt met veel onderdelen die op elkaar inwerken, begin dan met de kleine afzonderlijke componenten.

Voor het display begon ik met het volgen van een tutorial om de Bluetooth-module op een Arduino aan te sluiten en gegevens te verzenden met een kant-en-klare Bluetooth-terminal-app.

Nadat ik dat had laten werken, kreeg ik de WS2812B-LED's zelfstandig werkend, vervolgens verbonden en vervolgens de Bluetooth-module toegevoegd.

Na het toevoegen van een paar verschillende functies heeft mijn vriendin voor mij de app gemaakt met App Inventor 2 om de commando's automatisch te verzenden wanneer er op knoppen wordt gedrukt.

Doe niet alles tegelijk. Begin klein en bouw dan groot.

Flikkerende LED's

Ik had een groot probleem met flikkerende LED's toen ik te veel LED's tegelijkertijd wit maakte.

Was dit omdat mijn voeding werd onderschat voor het aantal LED's? Waarschijnlijk. Maar een andere bijdragende factor is de spanningsval over lange afstandskabels.

Om de spanningsval op te lossen heb ik de +5V- en GND-draden van de voeding rechtstreeks op het uiteinde en het midden van de LED-keten aangesloten. Dit loste mijn probleem op.

Merk op dat alleen de +5V- en GND-draden naar het einde en het midden moeten worden bedraad. Er mag altijd maar 1 datadraad zijn die de ketting met elkaar verbindt.

Snijden en vullen

Wees voorzichtig tijdens het snijden van de stukken om nauwkeurige sneden te krijgen. Een verstekzaag met een stopblok zou waarschijnlijk veel helpen voor de kleine stukjes. Mijn sneden waren niet perfect, wat leidde tot gaten die leidden tot veel houtvul- en schuurwerk.

Bedankt voor het lezen, ik hoop dat je genoten hebt van het proces

Aanbevolen: