Stap 2: IR-communicatie via TSOP1738 sensor
IR-sensor
- TSOP1738, SFH-5110-38 (38kHz)
TSOP sensoren functies:
- De voorversterker en foto-detector die allebei in één pakket
- Interne filter voor PCM frequentie
- Betere afscherming tegen storingen van het elektrisch veld
- Compatibiliteit van TTL en CMOS
- Uitvoer actieve laag laag stroomverbruik
- Hoge immuniteit tegen omgevingslicht
- Continu datatransmissie mogelijk
NEC-Protocol:
Het transmissieprotocol NEC IR maakt gebruik van puls afstand codering van de bits van het bericht. Elke puls uitbarsting (mark-RC zender op) is 562.5µs in lengte, met een frequentie van de vervoerder van 38 kHz (26.3µs). Logische bits worden doorgegeven als volgt:
- Logische '0' – een 562.5µs pulse barsten gevolgd door een 562.5µs ruimte, met in totaal verstrekken tijd voor 1.125ms
- Logisch '1' – een 562.5µs pulse barsten gevolgd door een 1.6875ms ruimte, met in totaal verstrekken tijd voor 2.25ms
Bij het verzenden of ontvangen met behulp van de NEC IR transmissieprotocol afstandsbedieningscodes, de WB_IRRC voert optimaal wanneer de frequentie van de vervoerder (gebruikt voor modulatie/demodulatie) is ingesteld op 38.222 kHz.
De vier bytes van databits zijn dat elk het minste significante beetje eerst verzonden. Figuur 1 illustreert de indeling van een NEC IR-transmissie frame, voor een adres van 00h(00000000b) en een opdracht van ADh (10101101b).
Inzicht in de Power functies IR Protocol:
Ik begon te juiste het Power-functies infrarood protocol door het meten van de signalen die de IR-detector uit de afstandsbediening opgepikt. De detector die ik gebruikt (Radio Shack 276-640) detecteert infrarood signalen, gemoduleerd op 38KHz met licht golflengte 940±50nm; maar deze detectoren neiging om detecteren meeste infrarood signalen van de afstandsbediening, zelfs als de frequentie modulatie een beetje anders is. Het onderstaande diagram toont de signalen die ik heb gemeten wanneer ik de rode knop in de voorwaartse richting ingedrukt als de afstandsbediening was ingesteld op kanaal een. Elke lijn vertegenwoordigt een uitbarsting van signalen, met tijd gaan van links om te schrijven. Elke zwarte rechthoek vertegenwoordigt één detectie, en de breedte van de rechthoek vertegenwoordigen de lengte van de tijd die het signaal werd ontdekt. De horizontale afstand tussen rechthoek geeft de tijdsduur tussen detecties. Na elke uitbarsting van 18 detecties, de detector did niet speurder iets voor een vrij lange periode, en dan ontdekt een ander burst. Elke burst is vertegenwoordigd in het diagram door een rij met de rechthoek.
Fig2
Deze metingen veroorloofd mij voor het bepalen van de vertegenwoordiging van de opdrachten in het protocol. De overbrengingen bestaan uit signaal periodes van ongeveer dezelfde lengte gescheiden door neen-signaal perioden van verschillende lengtes. De eerste periode van geen-signaal is altijd de dezelfde lengte en veel langer dan alle anderen. Dit lijkt te zijn een soort van een indicatie van de start-voorwaarde die doet niet overbrengen van informatie (met uitzondering van waardoor het ontvangen onderscheid maken tussen dit protocol en anderen). Na dat elke korte periode vertegenwoordigt een nul bits en lange elkaar vertegenwoordigt een beet. Ook hadden de andere manier rond, maar de volledige analyse van de bits-sequenties, beschreven balg, ondersteunt deze hypothesen. Al met al zijn er 16-bits in elke uitbarsting.
Ik histogrammen van de vier perioden van dit protocol gegenereerd: de signaal-periode, de beginperiode van de geen-signaal in elke uitbarsting en de korte en lange neen-signaal perioden vertegenwoordigen bits. Ik schat de gemiddelde signaal-periode tot ongeveer 60 klok teken (), de initiële periode van geen-signaal worden ongeveer 215 teken, de nul geen-signaal worden 40, en het een neen-signaal te zijn ongeveer 110. Alvorens over te gaan tot de eigenlijke betekenis van de bits, wilde ik weten hoe de uitbarstingen zijn verdeeld. Hier is een andere reeks detecties, al omgezet in nullen en enen. Na elke uitbarsting afgedrukt wordt de tijdsduur vanaf het einde van de vorige uitbarsting. Deze volgorde vertegenwoordigt een langere pers van de zelfde key.1000000100010111 130537 1000000100010111 14976 1000000100010111 14839 1000000100010111 23711 1000000100010111 23709 1000000100010111 23786 0000000100001110 29087 0000000100001110 14852 0000000100001110 14923 0000000100001110 23689 0000000100001110 23694We ziet dat de afstandsbediening herhaaldelijk dezelfde opdracht stuurt. De eerste 6 opdrachten vertellen de ontvanger een bepaalde knop wordt gedrukt, waardoor de laatste 5 zien de ontvanger dat de knoppen zijn niet langer ingedrukt. Elke reeks begint met 3 herhalingen ongeveer 14.900 teller teken uit elkaar. Na dat, herhalingen gelijkmatig verdeeld verder uit elkaar. De eerste herhalingen kunnen nauw worden verdeeld zodat de ontvanger snel reageren zelfs als de eerste uitzendingen verloren of beschadigd zijn. De bredere spaceing na dat kan worden ter vermindering van energieverbruik door de zender. Nu laten we onderzoeken de bits-sequenties die de borstband stuurt. Er zijn vier knoppen niet de afstandsbediening, en wanneer jullie ze loslaten, de afstandsbediening stuurt een "geen knop ingedrukt" commando voor een korte tijd. Hier zijn de single-pers maar neen volgorden voor de 4 kanalen. Ik verdeeld de stukjes in groepen die lijken te vertegenwoordigen verschillende gebieden; Zie hieronder voor wat de velden worden weergegeven te betekenen. kanaal 1 rode voorwaartse 1 0 00 0001 0001 011 1 kanaal 1 rode omgekeerde 1 0 00 0001 0010 010 0 kanaal 1 blauwe vooruit 1 0 00 0001 0100 001 0 kanaal 1 blauwe reverse 1 0 00 0001 1000 111 0 kanaal 1 geen knoppen 0 0 0000 0001 00 111 0
kanaal 2 rode toekomen 1 0 01 0001 0001 011 0 kanaal 2 rode reverse 1 0 01 0001 0010 010 1 kanaal 2 blauwe vooruit 1 0 01 0001 0100 001 1 kanaal 2 blauwe omgekeerde 1 0 01 0001 1000 111 1 kanaal 2 geen knoppen 0 0 01 0001 0000 111 1
kanaal 3 rode toekomen 1 0 10 0001 0001 010 1 kanaal 3 rode reverse 1 0 10 0001 0010 011 0 kanaal 3 blauwe toekomen 1 0 10 0001 0100 000 0 kanaal 3 blauwe reverse 1 0 10 0001 1000 110 0 kanaal 3 geen knoppen 0 0 0000 0001 10 110 0
kanaal 4 rode toekomen 1 0 11 0001 0001 010 0 kanaal 4 rode reverse 1 0 11 0001 0010 011 1 channel 4 blauwe vooruit 1 0 11 0001 0100 000 1 kanaal 4 blauwe omgekeerde 1 0 11 0001 1000 110 1 channel 4 geen knoppen 0 0 11 0001 0000 110 1