» Elektronica » Arduino »Prisma-lamp op Arduino met Bluetooth-bediening

Prisma-lamp op Arduino met Bluetooth-bediening

Prisma-lamp op Arduino met Bluetooth-bediening


Video:


Groeten aan alle lezers, auteurs en andere bezoekers van de site "". Vandaag zal ik de instructies delen voor het maken van een tafellamp in de vorm van een prisma. De basis zijn de WS2812-adres-LED's. Dit is de tweede versie van zo'n lamp. U vindt instructies voor het maken van de eerste versie hier.

In tegenstelling tot de eerste versie zal de controller in deze lamp of nachtlamp zijn Arduino. We plaatsen daar ook een Bluetooth-module voor communicatie met de buitenwereld. Voor beheer gebruiken we een applicatie van de niet zo bekende AlexGyver. Neem ook, net als bij de eerste versie van de lamp, de WS2812 LED strip met een dichtheid van 60 diodes per meter. In totaal zijn er 120 diodes nodig, dus 2 meter. In de instructies van de eerste versie van deze lamp miste ik een paar belangrijke punten, vandaag zal ik dit vervelende misverstand corrigeren.

Actief winkelen:
- Arduino Pro Mini 5V
- Bluetooth-module (HC-05 of HC-06)
- aansluitdraden
- Een klein stukje plastic buis met een diameter van 6 mm (geschikt en dunner)
- Mat of "melk" plastic
- Golfkarton
- USB-TTL
- USB-aansluiting
- Voeding 5 V, minimaal 2 A
- Metalen vijl
- Heet lijmpistool
- Soldeerbout, hars, soldeer, etc. enzovoort.

Stap 1 Monteer het lamphuis.
Het geval in de eerste versie is hetzelfde in de tweede. Daarom gaan we mee de link

En we doen alles vanaf "Stap 1 De basis en LED's voorbereiden".
Snij het karton:


Voeg het toe in de vorm van een prisma:


Plakband van LED-strip is niet altijd voldoende, het is beter om de kartonnen basis te lijmen met dubbelzijdige tape:


Nu kunnen we de LED's plakken, ze in parallelle lijnen plakken, allemaal in één richting:


Vergeet niet de draden van de eerste strip te verwijderen:


In deze stap vergat ik te schrijven over de vervaardiging van een plastic toplaag. Gecorrigeerd. We hebben plastic nodig van 2 tot 5 mm dik. Het plastic moet mat zijn of zoals het ook wel "melk" wordt genoemd. Het kan worden besteld in de online winkel of op AliExpress. En je kunt het zoals ik doen. Neem plastic van een onnodige LCD-monitor. Nadat we de oude LCD-monitor of tv hebben gedemonteerd, halen we de matrix eruit. Demonteer voorzichtig de matrix zelf, er moeten verschillende lagen lichtfilters (films) en een mat verstrooiend plastic zijn. Dat is precies waar ik deze lamp van heb gemaakt. Omdat we zo'n plastic hebben, hebben we er drie rechthoeken uitgesneden.Als je wilt dat de LED's als stippen zichtbaar zijn, zoals mijn lamp, moet plastic dicht bij de LED's worden gelijmd. In dit geval moeten de rechthoeken 137 x 95 mm zijn. Ze zien er ongeveer zo uit:


Je kunt de leds laten samensmelten tot één lichtbron, dan moet je het plastic op een afstand van 10 - 20 mm van de leds bevestigen. Hiervoor moeten rechthoeken met een afmeting van 137 x 110 mm worden gesneden. Plastic kan het beste worden gesneden met een handzaag. Het blijkt lang, maar betrouwbaar. Het is beter om geen decoupeerzaag te gebruiken, omdat door de snelle beweging van de vijl het plastic zal opwarmen, smelten en aan het bestand zal blijven plakken, waardoor het plastic breekt en de snijplaats niet nauwkeurig wordt.
Het resultaat zou als volgt moeten zijn:


Stap 2 Elektronisch deel.
Zoals ik al zei, zal de basis de Arduino Pro Mini zijn.


Take zou een versie moeten zijn die wordt aangedreven door 5 volt. Om Arduino minder dan een set te kosten, mogen pluggen niet worden gesoldeerd. Er zijn nu veel Bluetooth-modules, ik denk dat iedereen het zal doen. Ik zal afstemmen en schrijven vanaf HC-05.


Wat de toekomst betreft, zal ik zeggen dat er verschillende versies van de schets voor Arduino zullen zijn. Afhankelijk van de schets zijn er verschillende mogelijkheden om de Bluetooth module aan te sluiten op de Arduino.

Dus, als je wilt dat Arduino tegelijkertijd een computer en een Bluetooth-module heeft, kies dan voor schetsen met een softwarecommunicatiepoort (SoftSeriel wordt in de namen van de schets geschreven). In deze schetsen wordt de Arduino-computer op de gebruikelijke manier (hardware TX RX) aangesloten en via de software-implementatie van de communicatielijn op de Bluetooth-module aangesloten. In dergelijke schetsen is de verbinding als volgt:
Arduino Bluetooth
D7 (TX) - RX
D8 (RX) - TX
5V - VCC
GND –GND

In de namen van schetsen waar het onmogelijk is om tegelijkertijd een computer en een Bluetooth-module aan te sluiten, wordt BT eenvoudig geschreven. Om deze schetsen te uploaden, is USB-TTL aangesloten op de Arduino. En om met dezelfde contacten te werken is de HC-05 aangesloten. Dat wil zeggen, de verbinding is als volgt:
Arduino Bluetooth
D1 (TX) - RX
D0 (RX) - TX
5V - VCC
GND –GND

In alle schetsen sluit de tape op dezelfde manier aan. Vergeet niet dat de tape voedsel nodig heeft. En de tape en Arduino en HC-05 (HC-06) worden gevoed via één USB-kabel. Deze lamp sluit je niet aan op de usb poort van een computer of laptop. De maximaal toegestane stroom op USB-poorten is 500 mA. Dit is niet voldoende voor normaal gebruik van de lamp. U kunt verbinding maken met opladers met een USB-poort of voedingen met een uitgang van 5 V en minimaal 2 A.


De signaaldraad van de ledstrip (Din) wordt aangesloten op de D5 Arduino.


Stap 3 Configureer de Bluetooth-module.
Laten we nu verder gaan met het instellen van de Bluetooth-module. Modules zijn heel verschillend:


Maar ze verbinden allemaal op dezelfde manier. En om te beginnen moet u als volgt verbinding maken met de USB-TTL
USB-TTL - Bluetooth
TX - RX
RX - TX
5V - VCC
GND –GND

Open een terminalvenster of poortmonitor in de Arduino IDE. In de terminalinstellingen moet u de snelheid instellen op 38400 en het verzenden van NL en CR instellen. Wat betreft snelheid kan ik het mis hebben, aangezien verschillende modules verschillende standaardsnelheden hebben. Als de module niets ontvangt en niets accepteert, zoek dan naar de gewenste snelheid met behulp van de poke-methode. Voor HC-06 zijn 9600, NL en CR niet nodig. Als je alles goed hebt gedaan, probeer dan het commando te sturen:
AT

Het antwoord zou ok moeten zijn. Als het kwam, kunt u doorgaan met het configureren van de module. Wijzig de naam van de module om te weten waar u verbinding mee maakt met de opdracht:
AT + NAAM

Nu moet u de snelheid van het Bluetooth-communicatiekanaal instellen. Voor de schets "GyverMatrixOS" is het 9600. Voer de volgende opdracht in:
AT + UART = 9600.0.0

Voor alle andere schetsen heb je snelheid 57600 nodig. Installeer het met de opdracht:
AT + UART = 57600.0.0

Als u niet zeker bent van de instellingen, zet u ze terug naar de fabrieksinstellingen door de opdracht in te voeren:
AT + ORGL

Ik was het bijna vergeten! Ik raad aan om modules te kopen die onmiddellijk op een doe-het-zelfbord zijn gesoldeerd, voor een gemakkelijke verbinding met Arduino:


Stap 4 Voorbereiding van programma's.
Om de schets te bewerken en te vullen, hebben we de Arduino IDE nodig. De nieuwste versie, die altijd kan worden gedownload van officiële site programma's.

De volgende bibliotheken moeten eraan worden toegevoegd: Adafruit_NeoPixel, Adafruit_GFX_Library en SoftwareSerial. U kunt de bibliotheekmanager gebruiken, degene vinden die u nodig hebt en deze installeren. De manager bevindt zich in het Arduino IDE-menu "Sketch" - "Connect the library." Of u kunt ze downloaden in de volgende archieven:

adafruit_gfx_library.rar
adafruit_neopixel.rar
softwareserial.rar

Als je de "GyverMatrixOS" sketch wilt gebruiken, ga dan naar de AlexGyver website op de projectpagina en download het archief met de sketch en alle benodigde bibliotheken vanaf daar.

Stap 5 Schetsen.
Zoals beloofd heb ik een paar schetsen. Het eenvoudigst. Je hebt namelijk niet eens een Bluetooth-module nodig. Vul het gewoon in Arduino, sluit de tape aan zonder een Bluetooth-module. En verheug je op het nieuwe nachtlicht, dat in een cirkel een groot aantal verschillende effecten zal veranderen:
ard_prizma.rar

Helderheid kan alleen worden gewijzigd in een schets op voorraad:

strip.setBrightness (10);

Eenvoudig, betrouwbaar. Plug in en alles is klaar.

De volgende schets werkt op een seriële hardwarepoort, opdrachten kunnen vanaf een computer via een terminal worden verzonden. Of door de Bluetooth-module via de applicatie te verbinden:
ard_prizma_bt.rar

Een schets die draait op een seriële poort voor software, u kunt de HC-05 (HC-06) en een computer tegelijkertijd aansluiten.
ard_prizma_bt_softserial.rar

Voor liefhebbers van een groot aantal effecten en geweldige functionaliteit (waaronder een paar games, etc.), raad ik je aan om de sketch te gebruiken "GyverMatrixOS"Gedownload van de projectsite.

Instellingen voor ons prisma voor de schets "GyverMatrixOS":
USE_BUTTONS 0 // gebruik fysieke bedieningsknoppen (0 nee, 1 ja)
BUTT_UP 3 // omhoog-knop
BUTT_DOWN 5 // knop ingedrukt
BUTT_LEFT 2 // knop naar links
BUTT_RIGHT 4 // knop rechts
LED_PIN 5 // lintspeld
BRIGHTNESS 10 // standaard maximale helderheid (0-255)
BREEDTE 15 // matrixbreedte
HOOGTE 8 // matrixhoogte
MATRIX_TYPE 1 // matrixtype: 0 - zigzag, 1 - opeenvolgend
CONNECTION_ANGLE 3 // verbindingshoek: 0 - linksonder, 1 - linksboven, 2 - rechtsboven, 3 - rechtsonder
STRIP_DIRECTION 2 // tape-richting vanuit de hoek: 0 - rechts, 1 - omhoog, 2 - links, 3 - omlaag
SCORE_SIZE 0 // de grootte van de letters van het account in het spel. 0 - klein (voor 8x8), 1 - groot
FONT_TYPE 1 // (0/1) twee soorten kleine lettertjes
GLOBAL_COLOR_1 CRGB :: Groen // De belangrijkste kleur nr. 1 voor games
GLOBAL_COLOR_2 CRGB :: Oranje // primaire kleur nr. 2 voor games

Stap 6 Configureer de telefoon die u wilt bedienen.
We zullen een telefoon gebruiken om de lamp te bedienen. Voor mijn schets is elk programma voor het werken met Bluetooth geschikt, bijvoorbeeld "Arduino Bluetooth Control". Het kan worden gedownload van "Google play»

Voor een schets van AlexGyver heb je zijn eigen programma nodig, het kan ook worden gedownload naar je telefoon of tablet met "Google play»

10
10
10

Voeg een opmerking toe

    • lachglimlachtxaxaokweet het nietyahoonea
      baaskrabbendwaasjaja-jaagressiefgeheim
      sorrydansdance2dance3pardonhulpdrankjes
      stopvriendengoedgoedfluitjebezwijmdtong
      rookklappencrayverklarenbeledigenddon-t_mentiondownloaden
      hittebooslach1mdavergaderingmoskingnegatief
      not_ipopcornstraffenlezenschrikschriktzoeken
      bespottendankjewelditto_clueUmnikacuutmee eens
      slechtbeeeblack_eyeblum3: oopscheppenverveling
      gecensureerdbeleefdheidgeheim2bedreigenoverwinningyusun_bespectacled
      shokrespektlolvoorgekomenwelkomkrutoyya_za
      ya_dobryihelperne_huliganne_othodifludverbodsluiten

We raden je aan om te lezen:

Geef het voor de smartphone ...