Sommario:

Comprensione del protocollo IR dei telecomandi di Air Conditoner: 9 passaggi (con immagini)
Comprensione del protocollo IR dei telecomandi di Air Conditoner: 9 passaggi (con immagini)

Video: Comprensione del protocollo IR dei telecomandi di Air Conditoner: 9 passaggi (con immagini)

Video: Comprensione del protocollo IR dei telecomandi di Air Conditoner: 9 passaggi (con immagini)
Video: Come non pagare l'acqua. #shorts #bollette 2024, Novembre
Anonim
Comprensione del protocollo IR dei telecomandi di Air Conditoner
Comprensione del protocollo IR dei telecomandi di Air Conditoner

Ho imparato a conoscere i protocolli IR da un po' di tempo ormai. Come inviare e ricevere segnali IR. A questo punto, l'unica cosa rimasta è il protocollo IR dei telecomandi AC.

A differenza dei telecomandi tradizionali di quasi tutti i dispositivi elettronici (ad esempio una TV) in cui vengono inviate solo le informazioni di un pulsante alla volta, nei telecomandi AC tutti i parametri vengono codificati e inviati contemporaneamente. Quindi, può essere un po' complicato decodificare il segnale da un microcontrollore.

In questo tutorial, spiegherò come possiamo facilmente decodificare i protocolli IR di qualsiasi telecomando AC. Userò la mia HID IR KEYBOARD per leggere e decodificare i segnali IR scrivendo un nuovo programma. ma puoi usare quasi tutti i microcontrollori con cui hai familiarità purché supporti gli interrupt esterni accoppiati con un demodulatore TSOP IR.

Passaggio 1: strumenti necessari

Stazione di saldatura. (es. QUESTO)

Sebbene sia possibile utilizzare ferri più economici, si consiglia una stazione di saldatura di buona qualità se si è appassionati di elettronica.

Pickit 2.(es. QUESTO)

Puoi anche usare un PICKIT 3 ma poi dovrai usare un convertitore USB-to-UART separato per leggere l'output dal microcontrollore.

Un oscilloscopio

Beh, non ce l'ho. ma se ne hai uno, ti renderà la vita molto più semplice. Sicuramente comprane uno, se te lo puoi permettere.

Un computer

Beh.. Duh

Passaggio 2: componenti necessari

  • PIC18F25J50 (es. QUI)
  • Ricevitore TSOP IR. (es. QUI)
  • Regolatore LM1117 3.3v. (es. QUI)
  • Condensatori 2x220nf.
  • Resistenza da 470 ohm.
  • Resistenza da 10kohm.

Questi sono i componenti necessari per realizzare il mio progetto di tastiera HID IR.. se hai un'altra scheda di sviluppo di immagini o un arduino, avrai solo bisogno del modulo di decodifica IR TSOP.

Un telecomando AC

Il telecomando che deve essere decodificato. Userò il telecomando del mio Videocon AC. Questo non ha un display ma funziona in modo simile ad altri telecomandi con display.

Passaggio 3: come funziona (protocollo IR)

Come funziona (protocollo IR)
Come funziona (protocollo IR)

Prima di procedere, comprendiamo alcune nozioni di base.

I telecomandi IR utilizzano un led IR per trasmettere il segnale dal telecomando al ricevitore accendendo e spegnendo rapidamente il LED. Ma anche molte altre sorgenti luminose producono luce IR. Quindi, per rendere speciale il nostro segnale, viene utilizzato un segnale PWM a una certa frequenza.

Le frequenze utilizzate in quasi tutti i telecomandi IR sono 30khz, 33khz, 36khz, 38khz, 40khz e 56khz.

I più comuni, tuttavia, sono 38khz e 40khz.

Il modulo TSOP demodula il segnale portante (es. 38khz) ad una logica TTL più adatta di GND e VCC.

La durata della logica ALTO o BASSO denota il bit '1' o '0'. La durata varia da ogni protocollo remoto. (es. NEC)

Per comprendere in dettaglio il protocollo IR, è possibile fare riferimento a QUESTO documento.

Passaggio 4: il telecomando

Il remoto
Il remoto

Il telecomando che sto usando appartiene a un condizionatore d'aria piuttosto vecchio montato nella mia stanza. Quindi non ha alcun display elegante ma funziona praticamente come qualsiasi telecomando AC con display.

Possiamo modificare le seguenti impostazioni utilizzando il telecomando.

  • Accensione/spegnimento
  • Attivazione/disattivazione della modalità di sospensione
  • Modalità Turbo attivata/disattivata
  • Accensione/spegnimento
  • Velocità della ventola (bassa, media, alta)
  • Selezione modalità (Freddo, Deumidificazione, Ventilatore)
  • Temperatura (da 16 a 30 gradi centigradi)

Passaggio 5: acquisizione di campioni RAW

Acquisizione di campioni RAW
Acquisizione di campioni RAW
Acquisizione di campioni RAW
Acquisizione di campioni RAW

Nell'immagine, puoi vedere i campioni RAW sputati dal ricevitore IR TSOP. i numeri denotano la durata del burst e il segno +/- denota MARK e SPACE del segnale.

qui 1 unità indica 12us (microsecondi).

Quindi, un burst di 80 denota 960us e così via.

la parte di codice successiva acquisisce i dati e li invia al monitor seriale del pickit2. (L'IDE è MikroC PRO per PIC)

Per qualche ragione, l'editor Instructable fa confusione con il tag code. Quindi, ho appena allegato lo screenshot del codice, fare riferimento alla seconda immagine di questo passaggio.

Avrei allegato l'intera cartella del progetto, ma al momento è un disastro e non è ancora pronto per quello che sto cercando di ottenere.

Passaggio 6: osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo

Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo
Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo
Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo
Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo
Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo
Osservazione dei campioni RAW e conversione in un formato leggibile dall'uomo

Se osserviamo da vicino i campioni RAW, possiamo facilmente osservare che ci sono quattro intervalli di durate dei burst.

~80

~45

~170

~250

Gli ultimi tre valori sono sempre +250 -250 +250. Quindi, possiamo tranquillamente presumere che sia il bit di STOP dei dati burst. Ora, usando il seguente frammento di codice, possiamo dividere queste quattro durate di burst in '-', '.' e '1'.

Fare riferimento alla terza immagine di questo passaggio per lo snippet di codice.

Potresti aver notato che ho ignorato il numero ~ 80 burst nel codice. questo perché ogni posizionamento dispari del codice è insignificante. Stampando l'array _rawprocess sul monitor seriale, (come puoi vedere nella seconda immagine di questo passaggio). Abbiamo un'immagine molto chiara dei dati ricevuti. Ora premendo diversi pulsanti sul telecomando possiamo osservare i cambiamenti del modello nei dati come spiegato nel passaggio successivo.

Passaggio 7: osservazione dei modelli confrontando più campioni grezzi

Osservazione dei modelli confrontando più campioni grezzi
Osservazione dei modelli confrontando più campioni grezzi
Osservazione dei modelli confrontando più campioni grezzi
Osservazione dei modelli confrontando più campioni grezzi
Osservazione dei modelli confrontando più campioni grezzi
Osservazione dei modelli confrontando più campioni grezzi

Stampando solo i dati decodificati possiamo ottenere un'immagine molto chiara di quali bit vengono utilizzati per inviare quali dati.

L'impostazione POWER SLEEP e TURBO utilizza solo un bit. cioè o '.' o un '1'.

Lo SWING utilizza tre bit adiacenti tra loro. che va come '…' o '111'.

Anche la selezione della ventola e della modalità utilizza 3 bit ciascuno '1..' '.1.' e '..1'

La temperatura utilizza quattro bit che inviano valore utilizzando bit codificati binari con un offset di 16 che significa '….' invia il valore di 16 gradi Celsius mentre '111.' invia 30 gradi Celsius.

Passaggio 8: TRASMETTERE i dati decodificati al monitor seriale

TRASMETTERE i dati decodificati al monitor seriale
TRASMETTERE i dati decodificati al monitor seriale

Come puoi vedere nell'immagine, ho decodificato con successo tutti i bit inviati dal telecomando AC.

Da qui in poi, chi ha esperienza con i protocolli ir sa già come ricodificare il segnale e iniziare a inviarlo all'AC. Se vuoi vedere come si può fare, aspetta il mio prossimo istruibile che pubblicherò tra una settimana o giù di lì.

Passaggio 9: fine

Grazie per il tuo tempo.

per favore lascia un commento se ti è piaciuto il progetto. o se hai notato qualche errore.

Buona giornata.

Consigliato: