Inhoudsopgave:
- Stap 1: Benodigd gereedschap
- Stap 2: Benodigde componenten
- Stap 3: Hoe het werkt (IR-protocol)
- Stap 4: De afstandsbediening
- Stap 5: RAW-samples vastleggen
- Stap 6: De RAW-voorbeelden observeren en converteren naar een door mensen leesbaar formaat
- Stap 7: Patronen observeren door meerdere onbewerkte monsters te vergelijken
- Stap 8: UITVOER de gedecodeerde gegevens naar de seriële monitor
- Stap 9: Voltooien
Video: Inzicht in het IR-protocol van de afstandsbedieningen van de airconditioner - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
Ik ben al geruime tijd aan het leren over IR-protocollen. Hoe IR-signalen te verzenden en ontvangen. Op dit moment is het enige dat overblijft het IR-protocol van AC-afstandsbedieningen.
In tegenstelling tot traditionele afstandsbedieningen van bijna alle elektronische apparaten (bijvoorbeeld een tv) waar de informatie van slechts één knop tegelijk wordt verzonden, worden bij AC-afstandsbedieningen alle parameters gecodeerd en tegelijk verzonden. Daarom kan het een beetje lastig zijn om het signaal van een microcontroller te decoderen.
In deze instructable leg ik uit hoe we gemakkelijk IR-protocollen van elke AC-afstandsbediening kunnen decoderen. Ik zal mijn HID IR-TOETSENBORD gebruiken om de IR-signalen te lezen en te decoderen door een nieuw programma te schrijven. maar je kunt bijna elke microcontroller gebruiken die je kent, zolang deze externe interrupts ondersteunt in combinatie met een TSOP IR-demodulator.
Stap 1: Benodigd gereedschap
Soldeerstation. (bijv. DIT)
Hoewel u goedkopere strijkijzers kunt gebruiken, wordt een soldeerstation van goede kwaliteit aanbevolen als u van elektronica houdt.
Pickit 2.(bijv. DIT)
Je kunt ook een PICKIT 3 gebruiken, maar dan moet je een aparte USB-naar-UART-converter gebruiken om de output van de microcontroller uit te lezen.
Een oscilloscoop
Nou, ik heb het niet. maar als je er een hebt, zal het je leven een stuk gemakkelijker maken. Koop er zeker een, als je er een kunt betalen.
Een computer
Nou.. Duh
Stap 2: Benodigde componenten
- PIC18F25J50 (bijv. HIER)
- TSOP IR-ontvanger. (bijv. HIER)
- LM1117 3.3v regelaar. (bijv. HIER)
- 2x220nf condensatoren.
- 470 ohm weerstand.
- 10k ohm weerstand.
Dit zijn de componenten die nodig zijn om mijn HID IR-toetsenbordproject te maken. Als je een ander foto-ontwikkelbord of een arduino hebt, heb je alleen de TSOP IR-decodermodule nodig.
Een AC-afstandsbediening
De afstandsbediening die moet worden gedecodeerd. Ik gebruik de afstandsbediening van mijn Videocon AC. Deze heeft geen display maar werkt vergelijkbaar met andere afstandsbedieningen met displays.
Stap 3: Hoe het werkt (IR-protocol)
Voordat we verder gaan, laten we enkele basisprincipes begrijpen.
IR-afstandsbedieningen gebruiken een IR-led om het signaal van de afstandsbediening naar de ontvanger te verzenden door de led snel aan en uit te schakelen. Maar veel andere lichtbronnen produceren ook IR-licht. Dus om ons signaal speciaal te maken, wordt een PWM-signaal gebruikt op een bepaalde frequentie.
Frequenties die in bijna alle IR-afstandsbedieningen worden gebruikt, zijn 30 kHz, 33 kHz, 36 kHz, 38 kHz, 40 kHz en 56 kHz.
De meest voorkomende zijn echter 38khz en 40khz.
De TSOP-module demoduleert het draaggolfsignaal (bijv. 38khz) naar een meer geschikte TTL-logica van GND en VCC.
De duur van HIGH of LOW logica geeft bit '1' of '0' aan. De duur varieert per protocol op afstand (bijv. NEC)
Om het IR-protocol in detail te begrijpen, kunt u dit document raadplegen.
Stap 4: De afstandsbediening
De afstandsbediening die ik gebruik, is van een nogal oude airconditioner die in mijn kamer is gemonteerd. Het heeft dus geen fancy display, maar het functioneert vrijwel hetzelfde als elke AC-afstandsbediening met een display.
We kunnen de volgende instellingen wijzigen met de afstandsbediening.
- Inschakelen / uitschakelen
- Slaapmodus aan/uit
- Turbomodus aan/uit
- Schommel aan/uit
- Ventilatorsnelheid (Laag, Gemiddeld, Hoog)
- Modus selecteren (Koelen, Drogen, Ventilator)
- Temperatuur (van 16 tot 30 graden celsius)
Stap 5: RAW-samples vastleggen
In de afbeelding zie je de RAW-samples die door de TSOP ir-ontvanger zijn uitgespuugd. de cijfers geven de duur van de burst aan en het +/- teken geeft de MARK en SPACE van het signaal aan.
hier staat 1 eenheid voor 12us (microseconden.)
Dus een burst van 80 staat voor 960us enzovoort.
het volgende stukje code legt de gegevens vast en voert deze uit naar de seriële monitor van de pickit2. (De IDE is MikroC PRO voor PIC)
Om de een of andere reden knoeit de Instructable-editor met de codetag. Dus ik heb zojuist de schermafbeelding van de code bijgevoegd, raadpleeg de tweede afbeelding van deze stap.
Ik zou de hele projectmap hebben bijgevoegd, maar het is nu een puinhoop en is nog niet helemaal klaar voor wat ik probeer te bereiken.
Stap 6: De RAW-voorbeelden observeren en converteren naar een door mensen leesbaar formaat
Als we goed naar de RAW-samples kijken, kunnen we gemakkelijk zien dat er vier reeksen van burst-duur zijn.
~80
~45
~170
~250
De laatste drie waarden zijn altijd +250 -250 +250. Daarom kunnen we veilig aannemen dat dit het STOP-bit is van de burst-gegevens. Met behulp van het volgende codefragment kunnen we deze vier burst-duren verdelen in '-', '.' en 1'.
Raadpleeg de 3e afbeelding van deze stap voor het codefragment.
Het is je misschien opgevallen dat ik het nummer ~ 80 burst in de code negeerde. dat komt omdat elke vreemde plaatsing van de code onbeduidend is. Door de _rawprocess-array af te drukken naar de seriële monitor (zoals u kunt zien in de tweede afbeelding van deze stap). We hebben een veel duidelijk beeld van de ontvangen gegevens. Door nu op verschillende knoppen op de afstandsbediening te drukken, kunnen we de patroonveranderingen in de gegevens observeren, zoals uitgelegd in de volgende stap.
Stap 7: Patronen observeren door meerdere onbewerkte monsters te vergelijken
Door alleen de gedecodeerde gegevens af te drukken, kunnen we een veel duidelijk beeld krijgen van welke bits worden gebruikt om welke gegevens te verzenden.
De instelling POWER SLEEP en TURBO gebruikt slechts één bit. d.w.z. ofwel '.' of een '1'.
De SWING gebruikt drie bits naast elkaar. die gaat als '…' of '111'.
De ventilator- en modusselectie gebruikt ook elk 3 bits '1..' '.1.' en 1'
De temperatuur gebruikt vier bits die waarde verzenden met behulp van binair gecodeerde bits met een offset van 16, wat '…' betekent. verzendt de waarde van 16 graden Celsius terwijl '111.' stuurt 30 graden celsius.
Stap 8: UITVOER de gedecodeerde gegevens naar de seriële monitor
Zoals je in de afbeelding kunt zien, heb ik met succes alle bits gedecodeerd die door de AC-afstandsbediening zijn verzonden.
Vanaf hier weten degenen die ervaring hebben met het omgaan met ir-protocollen al hoe het signaal opnieuw te coderen en naar de AC te sturen. Als je wilt zien hoe dat kan, wacht dan op mijn volgende instructable die ik over een week of zo zal posten.
Stap 9: Voltooien
Bedankt voor uw tijd.
laat een reactie achter als je het project leuk vond. of als u een fout heeft opgemerkt.
Prettige dag.
Aanbevolen:
Raspberry Pi Oled-klok Bekijk het, hoor het en voel het: 5 stappen (met afbeeldingen)
Raspberry Pi Oled Clock Watch It Hear It and Feel It: dit is een slimme klok die de tijd op een OLED-display weergeeft en je kunt ook de tijd horen op verschillende tijdsintervallen die hulpvol zijn voor blinden en het verandert ook de led-kleur met de tijd zoals licht in de schemering licht in de avond wordt oranje naar geel en houdt van t
Schrijf het ! Maak het ! Deel het!: 4 stappen
Schrijf het ! Maak het ! Deel het!: Mijn leerlingen hebben Lego gebruikt om creativiteit toe te voegen aan hun schrijven, de organisatie van het schrijven en om hun werk digitaal te presenteren met hun familie en met hun leeftijdsgenoten in de klas
Hoe muziek te krijgen van BIJNA ELKE (Haha) website (zolang je het kunt horen, kun je het krijgen Ok prima als het in Flash is ingesloten, kun je dat misschien niet) BEWERKT !!!!! Info toegevoegd: 4 stappen
Hoe muziek te krijgen van BIJNA ELKE (Haha) website (zolang je het kunt horen, kun je het krijgen … Ok prima als het in Flash is ingesloten, kun je dat misschien niet) BEWERKT !!!!! Toegevoegde info: als je ooit naar een website gaat en een nummer speelt dat je leuk vindt en wilt, dan is hier de instructie voor jou, niet mijn schuld als je iets verknoeit (de enige manier waarop het zal gebeuren is als je dingen begint te verwijderen zonder reden )ik heb muziek kunnen krijgen voor
Hoe zich te ontdoen van het domme ".hex No Such File" Fout bij het uploaden van Arduino!: 4 stappen
Hoe zich te ontdoen van het domme ".hex No Such File" Fout bij het uploaden van Arduino!: Deze Instructable geeft u stapsgewijze instructies voor het maken van een Arduino Diecemella, het daadwerkelijk uploaden van zelfgemaakte code, in plaats van alleen voorbeelden op Windows XP
Waterdichte luidsprekers die drijven - "Het drijft, het draagt en het rockt de noten!": 7 stappen (met afbeeldingen)
Waterdichte luidsprekers die drijven - "It Floats, It Totes and It Rocks the Notes!": Dit waterdichte luidsprekerproject is geïnspireerd op vele reizen naar de Gila-rivier in Arizona (en SNL's "I'm on a Boat!" ). We zullen de rivier afdrijven of lijnen aan de kust bevestigen zodat onze drijvers vlak bij onze camping blijven. Iedereen he