Inhoudsopgave:
- Stap 1: Vereisten en onderdelenlijst
- Stap 2: Het scherm
- Stap 3: Bedrading van de Arduino Mega:
- Stap 4: Bedrading van de Arduino UNO:
- Stap 5: Hoe het werkt
- Stap 6: Alles klaar
Video: Arduino draadloos combinatieslot met NRF24L01 en 4-cijferig 7-segments display - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Dit project begon zijn leven als een oefening om iets te doen met een 4-cijferig 7-segments display.
Wat ik bedacht was de mogelijkheid om een 4-cijferig combinatienummer in te voeren, maar toen het eenmaal klaar was, was het behoorlijk saai. Ik heb het gebouwd met behulp van een Arduino UNO. Het werkte, maar deed niets anders.
Ik had toen het idee dat het een knop moest hebben om het geselecteerde nummer te accepteren, en misschien een andere knop om de combinatie te wijzigen, en misschien een LED om de staat waarin het zich op elk moment bevond te laten zien. Hoewel het klonk als een plan, betekende het ook dat ik geen pinnen meer zou hebben op de UNO. Er is misschien een manier om dit apparaat te multiplexen, maar ik weet niet zeker waar ik moet beginnen, dus pakte ik de Arduino Mega.
Nu ik een groter bord gebruikte en meer pinnen had om mee te spelen, besloot ik ook wifi-mogelijkheden toe te voegen om te communiceren met een andere Arduino die eigenlijk een soort schakelaar zou besturen.
Stap 1: Vereisten en onderdelenlijst
Na daar over nagedacht te hebben, heb ik nu een lijst met vereisten:
- Om een 4-cijferige combinatie in te kunnen voeren.
- Om te beginnen met een standaard hardcoded combinatie.
- Om de combinatie te kunnen wijzigen en de nieuwe combinatie op te slaan in de Arduino's EEPROM.
- Geef de status van het slot weer met een rode LED voor vergrendeld en een groene LED voor open.
- Geef de status weer wanneer de combinatie werd gewijzigd met een blauwe LED.
- Wanneer de status ontgrendeld is, blijft u een bepaalde tijd staan en keert u terug naar de vergrendelde status.
- Verzend de vergrendelde/ontgrendelde staat naar een andere Arduino.
- Geef dezelfde status weer met rode en groene LED's op de ontvangende Arduino.
- Gebruik voor demonstratiedoeleinden een servo om te fungeren als een vergrendelingsmechanisme op basis van de ontvangen status.
Van de eisen kan ik nu een onderdelenlijst maken:
De zender:
- Arduino Mega.
- Broodplank.
- 4-cijferig 7-segments display.
- 2 X momentschakelaars, met doppen.
- 1 X RGB-LED.
- 9X 220ohm weerstanden. 8 voor het display en 1 voor de RGB LED.
- 2 X 10kohm weerstanden. Trek weerstanden naar beneden voor de 2 knoppen. (Ik heb eigenlijk 9.1kohm gebruikt omdat ik dat had)
- 1 X 10k potentiometer.
- 1 X NRF24L01
- [optioneel] 1 X YL-105 breakout-bord voor de NRF24L01. Dit zorgt voor 5v-aansluiting en eenvoudigere bedrading. Doorverbindingsdraden
De ontvanger:
- Arduino UNO.
- Broodplank.
- 1 X RGB-LED.
- 1X 220ohm weerstand. Voor de led.
- 1X-servo. Ik heb een SG90 alleen voor demonstratiedoeleinden gebruikt.
- 1 X NRF24L01
- optioneel] 1 X YL-105 breakout-bord voor de NRF24L01. Dit zorgt voor 5v-aansluiting en eenvoudigere bedrading.
- Doorverbindingsdraden
Stap 2: Het scherm
Ik heb een 4-cijferig 7-segments display gebruikt
Getest met SMA420564 en SM420562K (pinnen zijn hetzelfde)
Pinnen 1 en 12 zijn gemerkt.
Top-down pin-opstelling 12, 11, 10, 9, 8, 7 1, 2, 3, 4, 5, 6
Pinnen 12, 9, 8, 6 zetten de cijfers 1 t/m 4 van links naar rechts aan of uit
Stap 3: Bedrading van de Arduino Mega:
Weergave naar Arduino pin-indeling
- 1 naar pin 6 via 220ohm weerstand (E)
- 2 naar pin 5 via 220ohm weerstand (D)
- 3 naar pin 9 via 220ohm weerstand (DP) hier niet gebruikt
- 4 naar pin 4 via 220ohm weerstand (C)
- 5 naar pin 8 via 220ohm weerstand (G)
- 6 naar pin 33 (cijfer 4)
- 7 naar pin 3 via 220ohm weerstand (B)
- 8 naar pin 32 (cijfer 3)
- 9 naar pin 31 (cijfer 2)
- 10 naar pin 7 via 220ohm weerstand (F)
- 11 naar pin 2 via 220ohm weerstand (A)
- 12 naar pin 30 (cijfer 1)
10kohm-potentiometer om het nummer op het weergegeven cijfer te wijzigen
- Buitenste pin naar 5v
- Middelste pin naar A0
- Andere buitenste pin naar GND
Nummertoets accepteren
- Om 36 te pinnen.
- En pin 36 via een 10kohm pull-down weerstand naar GND
Knop voor combinatienummer wijzigen
- Op pin 37.
- En pin 37 via een 10kohm pull-down weerstand naar GND
RGB-LED (gemeenschappelijke kathode)
- Kathode naar GND via 220ohm weerstand
- Rood naar pin 40
- Groen naar pin 41
- Blauw naar pin 42
NRF24L01 met breakout-bord:
- MISO naar pin 50 (verplicht via speciale pin)
- MOSI naar pin 51 (verplicht via speciale pin)
- SCK naar pin 52 (verplicht via speciale pin)
- CE naar pin 44 (optioneel pinnummer maar gedefinieerd in de schets)
- CSN naar pin 45 (optioneel pinnummer maar gedefinieerd in de schets)
- Vcc naar Arduino 5v (of 3.3v als het breakout-bord niet wordt gebruikt)
- GND naar Arduino GND
Stap 4: Bedrading van de Arduino UNO:
RGB-LED (gemeenschappelijke kathode)
- Kathode naar GND via 220ohm weerstand
- Rood naar pin 2 Groen naar pin 3
- Blauw (hier niet gebruikt)
Servo:
- Rood naar Arduino 5v of aparte voeding indien gebruikt
- Bruin naar Arduino GND en aparte voeding indien gebruikt
- Oranje naar pin 6
NRF24L01 met breakout-bord:
MISO naar pin 12 (verplicht via speciale pin)
MOSI naar pin 11 (verplicht via speciale pin)
SCK naar pin 13 (verplicht via speciale pin)
CE naar pin 7 (optioneel pinnummer maar gedefinieerd in de schets)
CSN naar pin 8 (optioneel pinnummer maar gedefinieerd in de schets)
Vcc naar Arduino 5v (of 3.3v als het breakout-bord niet wordt gebruikt)
GND naar Arduino GND
Stap 5: Hoe het werkt
Zodra beide breadboards voltooid zijn en de juiste schets erop is geüpload, kunnen we deze nu testen.
Met stroom op beide borden.
De rode LED's moeten op beide borden branden.
Op het display verschijnt een nummer in het eerste cijfer. Dit aantal is afhankelijk van waar de potentiometer momenteel is ingesteld.
Draai aan de potentiometer om het gewenste getal te krijgen.
Zodra het nummer is gevonden, drukt u op de knop accepteren. In mijn geval is het die links van de potentiometer.
Doe hetzelfde voor de andere drie nummers.
Als de ingevoerde combinatie correct is, wordt het woord OPEn weergegeven, gaat de groene LED op beide borden branden en draait de servo 180 graden.
Het display wordt blanco en de groene LED blijft ongeveer 5 seconden langer branden.
Zodra de ontgrendeltijd voorbij is, worden beide LED's rood en draait de servo 180 graden terug naar zijn start.
Als de ingevoerde combinatie niet correct is, wordt het woord OOPS weergegeven en blijven de rode LED's branden.
Er is een hard gecodeerde standaardcombinatie in de schets van 1 1 1 1.
Om de combinatie te wijzigen, moet u eerst de juiste combinatie invoeren.
Zodra het woord OPEn verdwijnt, heb je ongeveer 5 seconden om op de andere knop te drukken.
Zodra u de volgorde voor het wijzigen van de combinatie invoert, wordt de LED van het moederbord blauw, terwijl de andere groen blijft en daarom open is.
Voer een nieuwe combinatie in op dezelfde manier als voorheen.
Zodra de nieuwe combinatie is geaccepteerd (bij de laatste druk op de knop) wordt deze opgeslagen in de EEPROM.
Beide Arduino's gaan nu in de vergrendelde modus.
Voer je nieuwe combinatie in en deze wordt ontgrendeld zoals verwacht.
Zodra een combinatie is gewijzigd en in de EEPROM is opgeslagen, wordt de hard gecodeerde standaardwaarde van 1 1 1 1 genegeerd.
Stap 6: Alles klaar
Ik bouwde dit met behulp van de basis NRF24L01 met ingebouwde antenne en beheerde een goede communicatie van ongeveer 15 voet door één muur.
Omdat het Arduino Mega breadboard een beetje druk was met draden in de weg, heb ik op sommige plaatsen directe jumpers gebruikt. Dit, met het feit dat er veel op één breadboard staat, maakt het moeilijk om de foto's te volgen.
Ik denk echter dat ik alles pin voor pin heb uitgelegd en zelfs als je een beginner bent, zou je dit kleine project moeten kunnen bouwen door slechts één draad of pin tegelijk te nemen.
Beide schetsen zijn volledig becommentarieerd om het lezen te vergemakkelijken en kunnen hier worden gedownload.
De schets voor de Arduino Mega is vrij groot, ongeveer 400 regels, maar is opgedeeld in hanteerbare brokken en moet dus gemakkelijk te volgen zijn.
Aanbevolen:
Bank draadloos opladen: 13 stappen (met afbeeldingen)
Bank met draadloos opladen: Ben je de kabels beu en het gedoe van het in- en uitpluggen van je telefoon terwijl je door het huis loopt? Wij ook! We hebben een hoes voor draadloos opladen gemaakt die goed om je bankarm past en naadloos in elkaar overgaat. Deze eenvoudige make-up is een geweldige manier om te upgraden
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Hack een muis met Arduino. 2500 ft draadloos. PS/2: 5 stappen
Hack een muis met Arduino. 2500 ft draadloos. PS/2: In deze instructable laat ik je zien hoe je een muis hackt, zodat je hem kunt gebruiken als controller voor LED's, motoren, draadloze toepassingen, enzovoort. Deze tutorial behandelt muizen met een draad. De meeste van deze muizen gebruiken het PS/2-protocol. De opzet
PCB-handheld met Arduino (met een optie om draadloos te gaan!): 3 stappen
PCB-handheld met Arduino (met een optie om draadloos te gaan!): Update 28.1.2019Ik werk momenteel aan de volgende versie van deze handheld. Je kunt het project volgen op mijn YouTube-kanaal of Twitter.Waarschuwing! Ik heb een fout gevonden in de PCB-layout. De linker- en omhoog-knoppen zijn verbonden met alleen analoge pinnen. ik repareerde
Digitaal combinatieslot! 7 stappen (met afbeeldingen)
Digitaal cijferslot!: Ik heb me altijd afgevraagd hoe elektronische sloten werkten, dus toen ik eenmaal klaar was met de basiscursus digitale elektronica besloot ik er zelf een te bouwen. En ik zal je helpen om je eigen te bouwen! Je zou het kunnen aansluiten op alles van 1v tot 400v (of m