Indholdsfortegnelse:

Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring: 7 trin
Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring: 7 trin

Video: Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring: 7 trin

Video: Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring: 7 trin
Video: #1 Как запрограммировать ПЛК Outseal Arduino (начало работы) 2024, Juli
Anonim
Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring
Sådan programmeres IR-dekoder til multi-speed vekselstrømsmotorstyring

Enfasede vekselstrømsmotorer findes typisk i husholdningsartikler som f.eks. Ventilatorer, og deres hastighed kan let kontrolleres, når der bruges et antal diskrete viklinger til indstillede hastigheder. I denne Instructable bygger vi en digital controller, som giver brugerne mulighed for at styre funktioner som motorhastighed og driftstid. Denne instruks indeholder også et infrarødt modtager kredsløb, der understøtter NEC -protokollen, hvor en motor kan styres fra trykknapper eller fra et signal modtaget af en infrarød sender.

For at udføre dette bruges en GreenPAK ™, SLG46620 fungerer som en grundlæggende controller med ansvar for disse forskellige funktioner: et multiplexkredsløb for at aktivere en hastighed (ud af tre hastigheder), 3-periode nedtællingstimere og en infrarød dekoder til modtagelse et eksternt infrarødt signal, som udtrækker og udfører en ønsket kommando.

Hvis vi ser på kredsløbets funktioner, bemærker vi flere diskrete funktioner, der bruges samtidigt: MUXing, timing og IR -afkodning. Producenter bruger ofte mange IC'er til at bygge det elektroniske kredsløb på grund af manglen på en tilgængelig unik løsning inden for en enkelt IC. Brug af en GreenPAK IC gør det muligt for producenterne at anvende en enkelt chip til at inkludere mange af de ønskede funktioner og dermed reducere systemomkostningerne og tilsynet med fremstilling.

Systemet med alle dets funktioner er testet for at sikre korrekt drift. Det sidste kredsløb kan kræve særlige ændringer eller yderligere elementer, der er skræddersyet til den valgte motor.

For at kontrollere, at systemet fungerer nominelt, er testcases for inputene blevet genereret ved hjælp af GreenPAK -designeremulatoren. Emuleringen verificerer forskellige testcases for output, og IR -dekoderens funktionalitet bekræftes. Det endelige design er også testet med en egentlig motor til bekræftelse.

Nedenfor beskrev vi de nødvendige trin for at forstå, hvordan GreenPAK-chippen er programmeret til at oprette IR-dekoderen til multi-speed AC-motorstyring. Men hvis du bare vil få resultatet af programmeringen, skal du downloade GreenPAK -software for at se den allerede gennemførte GreenPAK -designfil. Tilslut GreenPAK Development Kitto til din computer, og tryk på programmet for at oprette den brugerdefinerede IC til IR-dekoderen til multi-speed AC-motorstyring.

Trin 1: 3-speed AC Fan Motor

3-speed AC blæsermotor
3-speed AC blæsermotor
3-speed AC blæsermotor
3-speed AC blæsermotor

3-trins vekselstrømsmotorer er enfasede motorer, der drives af en vekselstrøm. De bruges ofte i en lang række husholdningsmaskiner, såsom forskellige typer ventilatorer (vægventilator, bordventilator, kasseventilator). Sammenlignet med en jævnstrømsmotor er styring af hastighed i en vekselstrømsmotor relativt kompliceret, da den leverede strøm frekvens skal ændre sig for at ændre motorhastigheden. Apparater som blæsere og kølemaskiner kræver normalt ikke fin granularitet i hastighed, men kræver diskrete trin såsom lave, mellemstore og høje hastigheder. Til disse applikationer har AC blæsermotorer et antal indbyggede spoler designet til flere hastigheder, hvor skift fra en hastighed til en anden opnås ved at aktivere den ønskede hastigheds spole.

Motoren, vi bruger i dette projekt, er en 3-trins vekselstrømsmotor, der har 5 ledninger: 3 ledninger til hastighedskontrol, 2 ledninger til strøm og en startkondensator som illustreret i figur 2 nedenfor. Nogle producenter bruger standard farvekodede ledninger til funktionsidentifikation. En motors datablad viser den særlige motors oplysninger til ledningsidentifikation.

Trin 2: Projektanalyse

I denne instruks er en GreenPAK IC konfigureret til at udføre en given kommando, modtaget fra en kilde, f.eks. En IR -sender eller en ekstern knap, for at angive en af tre kommandoer:

On/Off: systemet tændes eller slukkes med hver fortolkning af denne kommando. Tilstanden Til/Fra vendes med hver stigende kant af kommandoen Til/Fra.

Timer: timeren betjenes i 30, 60 og 120 minutter. Ved den fjerde puls slukkes timeren, og timerperioden vender tilbage til den oprindelige timingtilstand.

Hastighed: Kontrollerer motorens hastighed og gentager successivt det aktiverede output fra motorens hastighedsvalgstråde (1, 2, 3).

Trin 3: IR -dekoder

IR -dekoder
IR -dekoder

Et IR -dekoder kredsløb er bygget til at modtage signaler fra en ekstern IR -sender og til at aktivere den ønskede kommando. Vi vedtog NEC -protokollen på grund af dens popularitet blandt producenter. NEC -protokollen bruger "pulsafstand" til at kode hver bit; hver puls tager 562,5 os at blive transmitteret ved hjælp af signalet fra en 38 kHz frekvensbærer. Transmissionen af et logisk 1 -signal kræver 2,25 ms, mens transmissionen af et logisk 0 -signal tager 1,125 ms. Figur 3 illustrerer pulstogtransmissionen i henhold til NEC -protokollen. Den består af 9 ms AGC burst, derefter 4,5 ms mellemrum, derefter 8-bit adressen og endelig 8-bit kommandoen. Bemærk, at adressen og kommandoen transmitteres to gange; anden gang er 1's komplement (alle bitene er omvendt) som paritet for at sikre, at den modtagne besked er korrekt. LSB transmitteres først i meddelelsen.

Trin 4: GreenPAK Design

GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design

Den modtagne meddelelses relevante bits ekstraheres over flere faser. Til at begynde med angives meddelelsens begyndelse fra 9 ms AGC-burst ved hjælp af CNT2 og 2-bit LUT1. Hvis dette er blevet registreret, specificeres derefter 4,5 ms plads gennem CNT6 og 2L2. Hvis headeren er korrekt, er DFF0 -udgangen indstillet High for at tillade modtagelse af adressen. Blokkene CNT9, 3L0, 3L3 og P DLY0 bruges til at udtrække urimpulser fra den modtagne meddelelse. Bitværdien tages ved den stigende kant af IR_CLK -signalet, 0,845 ms fra den stigende kant fra IR_IN.

Den fortolkede adresse sammenlignes derefter med en adresse, der er gemt i PGEN ved hjælp af 2LUT0. 2LUT0 er en XOR -gate, og PGEN gemmer den omvendte adresse. Hver bit af PGEN sammenlignes sekventielt med det indgående signal, og hver sammenlignings resultat gemmes i DFF2 sammen med den stigende kant af IR-CLK.

Hvis der er registreret en fejl i adressen, ændres 3-bit LUT5 SR-låseudgangen til Høj med det formål at forhindre sammenligning af resten af meddelelsen (kommandoen). Hvis den modtagne adresse matcher den lagrede adresse i PGEN, dirigeres anden halvdel af meddelelsen (kommando & omvendt kommando) til SPI, så den ønskede kommando kan læses og udføres. CNT5 og DFF5 bruges til at angive slutningen af adressen og starten af kommandoen, hvor 'Tællerdata' for CNT5 er lig med 18: 16 pulser for adressen ud over de to første pulser (9ms, 4.5ms).

I tilfælde af at den fulde adresse, inklusive header, er korrekt modtaget og gemt i IC (i PGEN), giver 3L3 OR Gate -udgangen signalet Low til SPI's nCSB -pin, der skal aktiveres. SPI begynder derfor at modtage kommandoen.

SLG46620 IC har 4 interne registre med 8-bit længde, og det er således muligt at gemme fire forskellige kommandoer. DCMP1 bruges til at sammenligne den modtagne kommando med de interne registre, og en 2-bit binær tæller er designet, hvis A1A0-udgange er forbundet til MTRX SEL # 0 og # 1 i DCMP1 for at sammenligne den modtagne kommando med alle registre successivt og kontinuerligt.

En dekoder med lås blev konstrueret ved hjælp af DFF6, DFF7, DFF8 og 2L5, 2L6, 2L7. Designet fungerer som følger; hvis A1A0 = 00 sammenlignes SPI -udgangen med register 3. Hvis begge værdier er ens, giver DCMP1 et højt signal ved sin EQ -udgang. Da A1A0 = 00 aktiverer dette 2L5, og DFF6 udsender følgelig et højt signal, der angiver, at signalet On/Off er modtaget. Tilsvarende for resten af styresignalerne er CNT7 og CNT8 konfigureret som 'Both Edge Delay' til at generere en tidsforsinkelse og tillade DCMP1 at ændre tilstanden for sin output, før outputværdien holdes af DFF'erne.

Værdien af On/Off -kommandoen gemmes i register 3, timer -kommando i register 2 og hastighedskommando i register 1.

Trin 5: Hastighed MUX

Hastighed MUX
Hastighed MUX

For at skifte hastigheder blev der bygget en 2-bit binær tæller, hvis inputpuls modtages af den eksterne knap, der er forbundet til Pin4 eller fra IR-hastighedssignal via P10 fra kommandokomparatoren. I starttilstanden Q1Q0 = 11, og ved at anvende en puls på tællerens input fra 3bit LUT6, bliver Q1Q0 successivt 10, 01 og derefter 00 -tilstanden. 3-bit LUT7 blev brugt til at springe 00-tilstanden over, da der kun er tre hastigheder tilgængelige i den valgte motor. Tænd/sluk -signalet skal være højt for at aktivere kontrolprocessen. Følgelig, hvis tænd/sluk -signalet er lavt, deaktiveres den aktiverede udgang, og motoren slukkes som vist i figur 6.

Trin 6: Timer

Timer
Timer
Timer
Timer

En 3-timers timer (30 min, 60 min, 120 min) implementeres. For at oprette kontrolstrukturen modtager en 2-bit binær tæller pulser fra en ekstern timerknap, der er forbundet til Pin13 og fra IR-timersignalet. Tælleren bruger Pipe Delay1, hvor Out0 PD num er lig med 1 og Out1 PD num er lig med 2 ved at vælge en omvendt polaritet for Out1. I starttilstanden Out1, Out0 = 10 er timeren deaktiveret. Derefter, ved at anvende en puls på input CK for rørforsinkelse1, ændres udgangstilstanden til 11, 01, 00 i rækkefølge og inverterer CNT/DLY til hver aktiveret tilstand. CNT0, CNT3, CNT4 blev konfigureret til at fungere som 'Rising Edge Delays', hvis input stammer fra output fra CNT1, som er konfigureret til at give en puls hvert 10. sekund.

Sådan får du en tidsforsinkelse på 30 minutter:

30 x 60 = 1800 sekunder ÷ 10 sekunders intervaller = 180 bits

Derfor er moddata for CNT4 180, CNT3 er 360 og CNT0 er 720. Når tidsforsinkelsen er afsluttet, transmitteres en høj puls gennem 3L14 til 3L11, hvilket får systemet til at slukke. Timerne nulstilles, hvis systemet slukkes med den eksterne knap, der er forbundet til Pin12 eller med IR_ON/OFF -signalet.

*Du kan bruge et triac- eller solid state -relæ i stedet for elektromekanisk relæ, hvis du gerne vil bruge en elektronisk switch.

* En hardware debouncer (kondensator, modstand) blev brugt til trykknapperne.

Trin 7: Resultater

Resultater
Resultater
Resultater
Resultater
Resultater
Resultater

Som det første trin i evalueringen af designet blev GreenPAK Software Simulator brugt. Der blev oprettet virtuelle knapper på indgangene, og de eksterne lysdioder modsat outputene på udviklingskortet blev overvåget. Signalguide -værktøjet blev brugt til at generere et signal, der ligner NEC -format af hensyn til fejlfinding.

Et signal med mønsteret 0x00FF5FA0 blev genereret, hvor 0x00FF er den adresse, der svarer til den inverterede adresse, der er gemt i PGEN, og 0x5FA0 er kommandoen, der svarer til den inverterede kommando i DCMP -register 3 for at styre On/Off -funktionaliteten. Systemet i den oprindelige tilstand er i OFF -tilstand, men efter at signalet er påført, bemærker vi, at systemet tændes. Hvis en enkelt bit er blevet ændret i adressen, og signalet blev anvendt igen, bemærker vi, at der ikke sker noget (inkompatibel adresse).

Figur 11 viser tavlen efter at have startet signalguiden én gang (med gyldig kommando til/fra).

Konklusion

Denne instruktør fokuserer på konfigurationen af en GreenPAK IC designet til at styre en 3-trins vekselstrømsmotor. Det indeholder en række funktioner, såsom cykelhastigheder, generering af en 3-timers timer og konstruktion af en IR-dekoder, der er kompatibel med NEC-protokollen. GreenPAK har demonstreret effektivitet ved at integrere flere funktioner, alle i en lavpris og lille område IC -løsning.

Anbefalede: