Sommario:

Come programmare il decodificatore IR per il controllo del motore CA a più velocità: 7 passaggi
Come programmare il decodificatore IR per il controllo del motore CA a più velocità: 7 passaggi

Video: Come programmare il decodificatore IR per il controllo del motore CA a più velocità: 7 passaggi

Video: Come programmare il decodificatore IR per il controllo del motore CA a più velocità: 7 passaggi
Video: Ucraino continua a divertirsi in spiaggia nonostante le bombe russe a Berdyansk 2024, Dicembre
Anonim
Come programmare il decodificatore IR per il controllo del motore CA a più velocità
Come programmare il decodificatore IR per il controllo del motore CA a più velocità

I motori a corrente alternata monofase si trovano in genere in articoli per la casa come i ventilatori e la loro velocità può essere facilmente controllata quando si utilizza un numero di avvolgimenti discreti per le velocità impostate. In questo Instructable costruiamo un controller digitale che consente agli utenti di controllare funzioni come la velocità del motore e il tempo di funzionamento. Questo Instructable include anche un circuito ricevitore a infrarossi che supporta il protocollo NEC, in cui un motore può essere controllato da pulsanti o da un segnale ricevuto da un trasmettitore a infrarossi.

Per eseguire ciò, viene utilizzato un GreenPAK™, SLG46620 funge da controller di base responsabile di queste diverse funzioni: un circuito multiplex per attivare una velocità (su tre velocità), timer per il conto alla rovescia a 3 periodi e un decodificatore a infrarossi per ricevere un segnale infrarosso esterno, che estrae ed esegue un comando desiderato.

Se osserviamo le funzioni del circuito, notiamo diverse funzioni discrete impiegate contemporaneamente: MUXing, temporizzazione e decodifica IR. I produttori spesso utilizzano molti circuiti integrati per costruire il circuito elettronico a causa della mancanza di una soluzione unica disponibile all'interno di un singolo circuito integrato. L'uso di un CI GreenPAK consente ai produttori di utilizzare un singolo chip per includere molte delle funzioni desiderate e di conseguenza ridurre il costo del sistema e la supervisione della produzione.

Il sistema con tutte le sue funzioni è stato testato per garantire il corretto funzionamento. Il circuito finale può richiedere modifiche speciali o elementi aggiuntivi su misura per il motore scelto.

Per verificare che il sistema funzioni nominalmente, sono stati generati casi di test per gli input con l'aiuto dell'emulatore del designer GreenPAK. L'emulazione verifica diversi casi di test per le uscite e viene confermata la funzionalità del decodificatore IR. Il progetto finale viene anche testato con un motore reale per conferma.

Di seguito abbiamo descritto i passaggi necessari per comprendere come è stato programmato il chip GreenPAK per creare il decodificatore IR per il controllo del motore CA a più velocità. Tuttavia, se desideri solo ottenere il risultato della programmazione, scarica il software GreenPAK per visualizzare il file di progettazione GreenPAK già completato. Collega il kit di sviluppo GreenPAK al tuo computer e premi il programma per creare il circuito integrato personalizzato per il decodificatore IR per il controllo del motore CA a più velocità.

Passaggio 1: motore del ventilatore CA a 3 velocità

Motore del ventilatore CA a 3 velocità
Motore del ventilatore CA a 3 velocità
Motore del ventilatore CA a 3 velocità
Motore del ventilatore CA a 3 velocità

I motori AC a 3 velocità sono motori monofase azionati da una corrente alternata. Sono spesso utilizzati in un'ampia varietà di macchine domestiche come vari tipi di ventilatori (ventilatore da parete, ventilatore da tavolo, ventilatore a scatola). Rispetto a un motore a corrente continua, il controllo della velocità in un motore a corrente alternata è relativamente complicato poiché la frequenza della corrente erogata deve cambiare per cambiare la velocità del motore. Apparecchi come ventilatori e macchine frigorifere di solito non richiedono una granularità fine della velocità, ma richiedono passaggi discreti come velocità bassa, media e alta. Per queste applicazioni, i motori dei ventilatori CA hanno una serie di bobine integrate progettate per diverse velocità in cui il passaggio da una velocità all'altra viene effettuato eccitando la bobina della velocità desiderata.

Il motore che utilizziamo in questo progetto è un motore CA a 3 velocità con 5 fili: 3 fili per il controllo della velocità, 2 fili per l'alimentazione e un condensatore di avviamento come illustrato nella Figura 2 di seguito. Alcuni produttori utilizzano cavi codificati a colori standard per l'identificazione delle funzioni. La scheda tecnica di un motore mostrerà le informazioni del motore specifico per l'identificazione del filo.

Fase 2: Analisi del progetto

In questo Instructable un IC GreenPAK è configurato per eseguire un dato comando, ricevuto da una sorgente come un trasmettitore IR o un pulsante esterno, per indicare uno dei tre comandi:

On/Off: il sistema viene acceso o spento ad ogni interpretazione di questo comando. Lo stato di On/Off verrà invertito ad ogni fronte di salita del comando On/Off.

Timer: il timer funziona per 30, 60 e 120 minuti. Al quarto impulso il timer viene spento e il periodo del timer torna allo stato di temporizzazione originale.

Velocità: controlla la velocità del motore, iterando successivamente l'uscita attivata dai fili di selezione della velocità del motore (1, 2, 3).

Passaggio 3: decodificatore IR

Decodificatore IR
Decodificatore IR

Un circuito decodificatore IR è costruito per ricevere segnali da un trasmettitore IR esterno e per attivare il comando desiderato. Abbiamo adottato il protocollo NEC per la sua popolarità tra i produttori. Il protocollo NEC utilizza la "distanza di impulso" per codificare ogni bit; ogni impulso impiega 562,5 us per essere trasmesso utilizzando il segnale di una portante di frequenza a 38 kHz. La trasmissione di un segnale logico 1 richiede 2,25 ms mentre la trasmissione di un segnale logico 0 richiede 1,125 ms. La Figura 3 illustra la trasmissione a treno di impulsi secondo il protocollo NEC. Consiste in un burst AGC di 9 ms, quindi uno spazio di 4,5 ms, quindi l'indirizzo a 8 bit e infine il comando a 8 bit. Si noti che l'indirizzo e il comando vengono trasmessi due volte; la seconda volta è il complemento a 1 (tutti i bit sono invertiti) come parità per garantire che il messaggio ricevuto sia corretto. LSB viene trasmesso per primo nel messaggio.

Passaggio 4: progettazione GreenPAK

Design GreenPAK
Design GreenPAK
Design GreenPAK
Design GreenPAK

I bit rilevanti del messaggio ricevuto vengono estratti in più fasi. Per iniziare, l'inizio del messaggio è specificato da un burst AGC di 9 ms utilizzando CNT2 e LUT1 a 2 bit. Se questo è stato rilevato, viene quindi specificato uno spazio di 4,5 ms tramite CNT6 e 2L2. Se l'intestazione è corretta, l'uscita DFF0 è impostata su Alta per consentire la ricezione dell'indirizzo. I blocchi CNT9, 3L0, 3L3 e P DLY0 vengono utilizzati per estrarre gli impulsi di clock dal messaggio ricevuto. Il valore del bit è preso al fronte di salita del segnale IR_CLK, 0.845ms dal fronte di salita da IR_IN.

L'indirizzo interpretato viene quindi confrontato con un indirizzo memorizzato all'interno del PGEN utilizzando 2LUT0. 2LUT0 è una porta XOR e il PGEN memorizza l'indirizzo invertito. Ogni bit del PGEN viene confrontato sequenzialmente con il segnale in ingresso e il risultato di ogni confronto viene memorizzato in DFF2 insieme al fronte di salita di IR-CLK.

Nel caso in cui sia stato rilevato un errore nell'indirizzo, l'uscita latch LUT5 SR a 3 bit viene modificata in High allo scopo di impedire il confronto del resto del messaggio (il comando). Se l'indirizzo ricevuto corrisponde all'indirizzo memorizzato in PGEN, la seconda metà del messaggio (comando e comando invertito) viene indirizzata a SPI in modo che il comando desiderato possa essere letto ed eseguito. CNT5 e DFF5 vengono utilizzati per specificare la fine dell'indirizzo e l'inizio del comando dove i "dati contatore" di CNT5 sono pari a 18: 16 impulsi per l'indirizzo oltre ai primi due impulsi (9 ms, 4,5 ms).

Nel caso in cui l'indirizzo completo, incluso l'intestazione, sia stato correttamente ricevuto e memorizzato nell'IC (in PGEN), l'uscita 3L3 OR Gate fornisce il segnale Low al pin nCSB di SPI da attivare. L'SPI inizia quindi a ricevere il comando.

L'IC SLG46620 dispone di 4 registri interni di 8 bit di lunghezza ed è quindi possibile memorizzare quattro diversi comandi. DCMP1 viene utilizzato per confrontare il comando ricevuto con i registri interni e viene progettato un contatore binario a 2 bit le cui uscite A1A0 sono collegate a MTRX SEL # 0 e # 1 di DCMP1 per confrontare il comando ricevuto con tutti i registri in successione e in continuo.

Un decoder con latch è stato costruito utilizzando DFF6, DFF7, DFF8 e 2L5, 2L6, 2L7. Il design funziona come segue; se A1A0=00 l'uscita SPI viene confrontata con il registro 3. Se entrambi i valori sono uguali, DCMP1 fornisce un segnale High alla sua uscita EQ. Dato che A1A0=00, questo attiva 2L5, e DFF6 di conseguenza emette un segnale High che indica che il segnale On/Off è stato ricevuto. Allo stesso modo, per il resto dei segnali di controllo, CNT7 e CNT8 sono configurati come 'Both Edge Delay' per generare un ritardo e consentire al DCMP1 di modificare lo stato della sua uscita prima che il valore dell'uscita venga mantenuto dai DFF.

Il valore del comando On/Off è memorizzato nel registro 3, il comando timer nel registro 2 e il comando velocità nel registro 1.

Passaggio 5: velocità MUX

Velocità MUX
Velocità MUX

Per cambiare velocità è stato costruito un contatore binario a 2 bit il cui impulso in ingresso viene ricevuto dal pulsante esterno che è collegato al Pin4 o dal segnale di velocità IR tramite P10 dal comparatore di comando. Nello stato iniziale Q1Q0 =11, e applicando un impulso all'ingresso del contatore da 3bit LUT6, Q1Q0 diventa successivamente 10, 01, e quindi lo stato 00. LUT7 a 3 bit è stato utilizzato per saltare lo stato 00, dato che nel motore scelto sono disponibili solo tre velocità. Il segnale On/Off deve essere alto per attivare il processo di controllo. Di conseguenza, se il segnale On/Off è Basso, l'uscita attivata viene disabilitata e il motore viene spento come mostrato in Figura 6.

Passaggio 6: timer

Timer
Timer
Timer
Timer

È implementato un timer a 3 periodi (30 min, 60 min, 120 min). Per creare la struttura di controllo un contatore binario a 2 bit riceve impulsi da un Pulsante Timer esterno collegato al Pin13 e dal segnale Timer IR. Il contatore utilizza Pipe Delay1, dove Out0 PD num è uguale a 1 e Out1 PD num è uguale a 2 selezionando una polarità invertita per Out1. Nello stato iniziale Out1, Out0 = 10, il Timer è disabilitato. Successivamente, applicando un impulso sull'ingresso CK per Pipe Delay1, lo stato dell'uscita passa a 11, 01, 00 in successione, invertendo il CNT/DLY ad ogni stato attivato. CNT0, CNT3, CNT4 sono stati configurati per funzionare come 'Rising Edge Delays' il cui ingresso proviene dall'uscita di CNT1, che è configurata per fornire un impulso ogni 10 secondi.

Per avere un ritardo di 30 minuti:

30 x 60 = 1800 secondi ÷ intervalli di 10 secondi = 180 bit

Pertanto, i dati del contatore per CNT4 sono 180, CNT3 è 360 e CNT0 è 720. Una volta terminato il ritardo di tempo, viene trasmesso un impulso alto attraverso 3L14 a 3L11 provocando lo spegnimento del sistema. I timer vengono azzerati se il sistema viene spento dal pulsante esterno collegato al Pin12 o dal segnale IR_ON/OFF.

*È possibile utilizzare un triac o un relè a stato solido invece del relè elettromeccanico se si desidera utilizzare un interruttore elettronico.

* Per i pulsanti è stato utilizzato un dispositivo antirimbalzo hardware (condensatore, resistore).

Passaggio 7: risultati

Risultati
Risultati
Risultati
Risultati
Risultati
Risultati

Come primo passo nella valutazione del progetto, è stato utilizzato il simulatore software GreenPAK. Sono stati creati pulsanti virtuali sugli ingressi e sono stati monitorati i LED esterni opposti alle uscite sulla scheda di sviluppo. Lo strumento Signal Wizard è stato utilizzato per generare un segnale simile al formato NEC per il debug.

È stato generato un segnale con il pattern 0x00FF5FA0, dove 0x00FF è l'indirizzo corrispondente all'indirizzo invertito memorizzato nel PGEN e 0x5FA0 è il comando corrispondente al comando invertito nel registro DCMP 3 per controllare la funzionalità On/Off. Il sistema nello stato iniziale è nello stato OFF, ma dopo l'applicazione del segnale, notiamo che il sistema si accende. Se un singolo bit è stato modificato nell'indirizzo e il segnale è stato riapplicato, notiamo che non succede nulla (indirizzo incompatibile).

La Figura 11 presenta la scheda dopo aver avviato il Signal Wizard per una volta (con comando On/Off valido).

Conclusione

Questo Instructable è incentrato sulla configurazione di un IC GreenPAK progettato per controllare un motore CA a 3 velocità. Incorpora una serie di funzioni come le velocità di ciclo, la generazione di un timer a 3 periodi e la costruzione di un decodificatore IR compatibile con il protocollo NEC. Il GreenPAK ha dimostrato efficacia nell'integrare diverse funzioni, tutte in una soluzione IC a basso costo e di piccola area.

Consigliato: