Inhoudsopgave:

Bluetooth-gestuurde Arduino POV - Ajarnpa
Bluetooth-gestuurde Arduino POV - Ajarnpa

Video: Bluetooth-gestuurde Arduino POV - Ajarnpa

Video: Bluetooth-gestuurde Arduino POV - Ajarnpa
Video: Amazing arduino project 2024, November
Anonim
Image
Image
Bluetooth-gestuurde Arduino POV
Bluetooth-gestuurde Arduino POV

Invoering

Persistentie van het gezichtsvermogen verwijst naar de optische illusie die optreedt wanneer de visuele waarneming van een object enige tijd niet ophoudt nadat de lichtstralen die eruit voortkomen het oog niet meer binnenkomen. De illusie is ook beschreven als "retinale persistentie", "persistentie van indrukken" of gewoon "persistentie" en andere variaties.

De werking van Arduino POV is gebaseerd op het principe van persistentie van visie. Het menselijk brein bewaart het beeld voor ten minste tp sec. Dus elke verandering binnen tp seconden wordt onopgemerkt.

Laten we een voorbeeld bekijken van het weergeven van de letter H.

In eerste instantie zijn alle LED's van de 1e positie AAN. Binnen tp sec wordt één LED van de 2e posities AAN gemaakt. Wederom binnen tp sec zijn alle LED's van de 3e positie AAN. Dus H wordt weergegeven.

Nu voor het weergeven van de 2e letter na H, na een tijd groter dan tp sec, de letter op dezelfde manier weergeven als H wordt weergegeven, door de vereiste LED's hoog te maken.

Dit project bestaat uit 2 delen:

DEEL A (zonder bluetooth)

DEEL B (met bluetooth)

Hardwarevereisten:

Arduino Nano

Led's (5 stuks)

weerstanden (220 ohm en 10 k ohm)

Hall-effect Sensor (44e)

HC-05 Bluetooth-module

30cm liniaal

Tafelventilator/motor

mobiele batterij / Lipo-batterij (3.7v/5v)

PCB voor algemeen gebruik

draden

mannelijke en vrouwelijke burgspelden

soldeerpistool en soldeerlood

magneet en band.

Softwarevereisten:

Arduino IDE

Bluetooth Terminal-applicatie op smartphone.

Stap 1: Installatie

Download de Arduino IDE voor hun officiële website.

Verzamel alle benodigde onderdelen.

Stap 2: Aansluitingen (DEEL A)

Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)
Aansluitingen (DEEL A)

Het schakelschema is weergegeven in de afbeelding. Soldeer de componenten op een PCB voor algemeen gebruik.

Hall-effectsensor wordt gebruikt, zodat het display altijd begint vanaf de positie waar de magneet wordt vastgehouden.

zonder hall-effectsensor te gebruiken krijg je een lopend display dat niet goed zichtbaar is.

Stap 3: Programma

Programma
Programma

In het programma kunnen we zien dat elke letter is gedefinieerd in een array.

voorbeeld:

int H = {1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1};

Letters zijn virtueel gemaakt van 3 rijen, zoals weergegeven in de afbeelding. In de array bestaat een set van 5 elementen uit rij (dwz de eerste 5 is voor rij1 en de volgende 5 zijn voor rij2 en de volgende 5 voor rij3). Deze array-informatie wordt aan de leds geleverd om ze in een specifieke volgorde te laten gloeien.

H weergeven:

Op tijd 't' zijn alle leds AAN (de eerste 5 elementen van de array zijn 1's/HIGH). Na een zeer kleine vertraging van Tp (dotTime) is alleen de middelste led ingeschakeld (in de middelste 5 elementen is slechts één element 1 / HOOG).). dit gebeurt in een zeer snelle opeenvolging die de illusie wekt dat de letter H wordt weergegeven.

Deze tijdvertraging hangt af van de snelheid van de ventilatormotor en kan niet eenvoudig worden berekend, aangezien de snelheid van de ventilatormotor niet ideaal is. Daarom wordt de Trial and Error-methode gebruikt om deze vertraging te berekenen.

het volgende element wordt weergegeven na een andere vertraging Tn(letterSpace).

Stap 4: Definitieve installatie

Definitieve installatie
Definitieve installatie

Monteer de bovenstaande opstelling op de weegschaal en monteer deze op de ventilatorrotor zoals weergegeven in de video.

Zorg ervoor dat u het gewicht aan weerszijden van de liniaal balanceert. Dit is essentieel voor een vlotte werking

de hele opstelling moet in evenwicht zijn wanneer u het midden van de schaal vasthoudt. Balanceren kan worden gedaan door het vereiste aantal gewichten (bijv. munten) aan elke kant te bevestigen.

Plaats de magneet in de positie waar u de weergave wilt starten.

Upload de code met behulp van Arduino IDE naar het Arduino Nano-bord.

Stap 5: REN

LOOP!
LOOP!

Laat de ventilator/motor draaien. Zorg ervoor dat u de ventilator vasthoudt als er sprake is van onbalans.

Schakel de kamerverlichting UIT voor een beter effect en helderheid.

Als u de letters niet ziet, probeer dan de punttijd en letterspace-tijdvertragingen te wijzigen en probeer het opnieuw totdat u de juiste weergave krijgt.

Stap 6: Met Bluetooth (DEEL B)

Volg deze stap alleen als DEEL A is voltooid en werkt.

Sluit de bluetooth module aan op pin 10 en 11 van nano board en sluit ook Vcc en Gnd aan. Vergeet niet om de liniaal in evenwicht te brengen na het toevoegen van een Bluetooth-module!

Download de Bluetooth-terminaltoepassing op een Android-telefoon.

play.google.com/store/apps/details?id=ptah…

Software Serieel wordt gebruikt voor de Bluetooth-interface.

Upload het programma (POV_BLUETOOTH_SIMPLE) naar het Nano-bord. Verbind de bluetooth module met de bluetooth terminal app op de telefoon.

Typ de tekst in de terminal-app en stuur deze naar Nano.

Dit is een simpele code. Om nieuwe tekst te verzenden, moet u de Arduino handmatig resetten door de ventilator / motor UIT te schakelen.

Stap 7: Weergeven (DEEL B)

Laat de ventilator/motor draaien.

Gebruik dit programma om de teksten in realtime bij te werken zonder de Arduino opnieuw in te stellen:

Typ de tekst op de bluetooth-terminaltoepassing en eindig met het '&'-symbool en verzend het. '&' wordt gebruikt om het einde van de tekst aan te geven. De tekst wordt opgeslagen in een array (buffer) en wordt gebruikt voor weergave zoals gedaan in DEEL A

Om de volgende tekst te verzenden, moet u eerst een '$'-teken verzenden en vervolgens de gewenste tekst. Als het programma het '$'-symbool ontvangt, wordt de buffer met de vorige tekst gewist

Stap 8: Voltooien

Je hebt een arduino POV-display gemaakt! Laat het je familie en vrienden zien en geniet!!

Bedankt!!

Aanbevolen: