Arduino IR-afstandsbedieningscircuit

Probeer Ons Instrument Voor Het Oplossen Van Problemen





In dit bericht gaan we een aanpasbare op Arduino gebaseerde IR (infrarood) draadloze afstandsbedieningsschakelaar bouwen, die bestaat uit een IR-afstandsbediening en een ontvanger, die u naar wens kunt aanpassen. In het laatste deel van het artikel leren we over een verbeterde waterdichte versie van een IR-afstandsbediening die alleen zal reageren op een uniek toegewezen frequentie.

Als je boven het beginnersniveau bent, kun je dit gemakkelijk bereiken. Het voorgestelde circuit dat hier wordt geïllustreerd, heeft slechts drie bedieningselementen op de afstandsbediening en 3 relais aan de kant van de ontvanger. U kunt de code en het schakelschema aanpassen aan uw behoeften.



Je hebt twee Arduino-kaarten nodig, die fungeren als afstandsbediening en een andere als ontvanger. Ik zou Arduino pro mini voor dit project aanbevelen, omdat de afmetingen vrij klein zijn en de totale grootte van de afstandsbediening kan worden omzeild.

U kunt een op 3,3 V gebaseerde Arduino pro mini voor afstandsbediening gebruiken, zodat u kunt worden gevoed met twee knoopcellen of twee AA-batterijen, afhankelijk van uw behoeften.



Het IR-zendercircuit heeft 3 drukknoppen en een IR-led voor het verzenden van opdrachten naar de ontvanger. Elke knop is geprogrammeerd met een unieke hexadecimale code, dezelfde hexadecimale code is ook aan de ontvangerzijde geprogrammeerd.

Wanneer een knop wordt ingedrukt, zendt de IR-led de hexadecimale code naar de ontvanger, de ontvanger herkent welke van de knop wordt ingedrukt en schakelt het bijbehorende relais AAN / UIT.

De voorgestelde afstandsbediening maakt gebruik van het RC5-protocol voor communicatie met de ontvanger.U kunt alles wijzigen door de code te wijzigen.

Als je net een beginner bent in Arduino, kun je het nog steeds doen, volg gewoon het diagram en upload de code zonder deze te wijzigen.

Het circuit en programma:

Arduino externe zender:

Foolproof IR-afstandsbedieningscircuit

Het bovenstaande circuit illustreert hoe u de Arduino IR-zender op afstand kunt bouwen.

De drie 10K-weerstanden zijn pull-down-weerstanden, die voorkomen dat de afstandsbediening per ongeluk wordt geactiveerd als gevolg van statische lading, en een stroombegrenzende weerstand van 220 ohm wordt gebruikt voor IR-leds.

Programma voor afstandsbediening:

Arduino-ontvanger:

Het IR Arduino-ontvangercircuit zoals hierboven weergegeven, bestaat uit TSOP1738 sensor weinig transistors, stroombegrenzende weerstanden voor transistor, relais en diodes voor het absorberen van hoogspanningspieken van relaisspoelen.

Het schakelschema spreekt voor zich.

Programma voor Arduino-ontvanger:

Door de bovenstaande uitleg te volgen, kunt u drie bedieningselementen bereiken. Als u meer bedieningselementen en relais wilt toevoegen, moet u de code en het schakelschema bewerken.

U kunt uitvoer en invoer toewijzen voor ongebruikte pinnen in de ontvanger en afstandsbediening in het programma en het aantal transistor en relais aansluiten voor de respectieve pinnen in de ontvanger en op dezelfde manier het aantal schakelaars aansluiten en de weerstand naar beneden trekken in de afstandsbediening.

U kunt willekeurige hexadecimale code gebruiken om een ​​groter aantal knoppen toe te wijzen.

Bijvoorbeeld: 0xA235, 0xFFFF, 0xBA556 enzovoort. En voeg ook dezelfde hexadecimale waarde toe aan de ontvangercode. Bijvoorbeeld: #define output4 0xA235, #define outout5 0xFFFF enzovoort.

Een IR-afstandsbediening maken met een unieke frequentie

In de bovenstaande secties hebben we geleerd over een eenvoudige IR-afstandsbediening die werkt met elke IR-afstandsbediening.
In het volgende artikel zullen we leren hoe we een verbeterde versie van het bovenstaande concept kunnen maken voor een waterdichte bediening van de huishoudelijke apparaten met behulp van een arduino-microcontroller, die zal werken met een unieke frequentie en nooit zal werken met een gewone IR-handset.

Onfeilbare IR-afstandsbediening

Dit circuit kan uw gadgets in- / uitschakelen met behulp van de ongebruikte knoppen van de tv-afstandsbediening of een andere ongebruikte afstandsbediening die mogelijk jarenlang in uw rommeldoos ligt.

Het motto van dit project is om lichamelijk gehandicapte personen te helpen, en hen te helpen onafhankelijk toegang te krijgen tot de AAN / UIT-schakeling van de basistoestellen in huis, zoals ventilatoren of lampen.

Het tweede doel is om de gebruiker in staat te stellen de gadgets 'Like a boss' te bedienen zonder dat hij zijn of haar bestaande positie hoeft te verlaten.

Het circuit maakt gebruik van traditionele IR-gebaseerde communicatie tussen zender en ontvanger.

Dit circuit is cent procent waterdicht voor andere IR-afstandsbedieningen en andere IR-bronnen en minder gevoelig voor fouten.

Het grootste probleem met niet op microcontrollers gebaseerde IR-afstandsbedieningscircuit , die op internet te vinden is, is dat het kan worden in- / uitgeschakeld met elke op IR gebaseerde afstandsbediening en slechts één apparaat tegelijk kan bedienen en ook gevoeliger is voor fouten.

Dit circuit overwint bovengenoemde problemen, en dat kunnen we bedien meerdere gadgets op één afstandsbediening en wijs sleutels toe voor specifieke gadgets.

Voordat u doorgaat met dit project, moet u de bibliotheekbestanden voor arduino downloaden via deze link en de onderstaande instructie volgen: github.com/z3t0/Arduino-IRremote

Instructies:

1) Klik op de knop 'klonen of downloaden' van de gegeven link en klik op 'ZIP downloaden'.

2) Pak het bestand uit en verplaats de map 'IRremote' naar uw bibliotheekmap van Arduino.

3) Verwijder de map 'RobotIRremote' uit uw arduino-bibliotheek. 'RobotIRremote' heeft een vergelijkbare definitie van 'IRremote' -bibliotheek die botst en de code niet naar Arduino kan uploaden, dus verwijderen / verwijderen is verplicht.

Door de bovenstaande instructie te dupliceren, is uw Arduino IDE-software klaar voor alle / de meeste op IR gebaseerde projecten.

Wijs sleutels toe voor afstandsbediening:

In onze tv-afstandsbediening heeft elke toets een unieke hexadecimale code, die wordt gebruikt om te herkennen welke toets wordt ingedrukt voor een bewerking. Voordat u de definitieve code naar Arduino uploadt, moet u weten wat de hexadecimale codes voor uw sleutels zijn.

Om dit te doen, construeer je het volgende circuit in breadboard en volg je de instructies.

1) Open Arduino IDE en upload voorbeeldcode 'IRrecv Demo'

2) Open de seriële monitor en druk op de toets op de afstandsbediening die u wilt gebruiken.

U ziet een hexadecimale code verschijnen zodra u op de toets drukt. Dat is de hexadecimale code voor die specifieke sleutel.

3) Doe hetzelfde voor de andere twee sleutels (3 sleutels worden gegeven in dit project voor het besturen van 3 apparaten)

· We gaan deze hexadecimale codes gebruiken in het hoofdprogramma en uploaden naar arduino.

Programma:

NOTITIE:

In het programma:

#define output1 0x111 // plaats uw code ontvangen van knop A

#define output2 0x111 // plaats uw code ontvangen van knop B

#define output3 0x111 // plaats uw code ontvangen van knop C

· Plaats uw 3 unieke codes van uw afstandsbediening op deze plaats van 111, 112 en 113 en upload de code. Hexadecimale codes zijn van 0 tot 9 en A tot F, bijvoorbeeld: 20156, 26FE789, FFFFFF.

· Plaats uw code met '0x' (nul x).

Schakelschema:

· Door op de toets te drukken, schakelt het relais AAN en door nogmaals op te drukken, wordt het relais uitgeschakeld.




Een paar: Natuurlijk muggenspray met een hoge wattweerstand Volgende: Diepte metaaldetectorcircuit - grondscanner