Innehållsförteckning:
- Steg 1: Fjärrkontrollen
- Steg 2: Programvara
- Steg 3: IR -mottagarmodul
- Steg 4: Så här använder du enheten
Video: Datorns fjärrkontroll: 4 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Förutom många andra ändamål använder jag min dator som multimediecenter. Ibland slappnar jag av i soffan och lyssnar på musik eller tittar på en film eller en TV och känner inte för att gå upp för att justera volymen eller byta TV -kanal varje gång dumma reklamfilmer dyker upp eller jag somnar och önskar tystnad. Så jag har bestämt mig för att göra min dator fjärrkontrollerad med en vanlig IR -fjärrkontroll så att jag bara kunde trycka på knappen omedelbart istället för att rasande ta tag i musen eller mut -knappen på tangentbordet.
Projektet består av flera delar:
- Fjärrkontroll
- PC -programvara
- IR -mottagarmodul
Steg 1: Fjärrkontrollen
Det första objektet - fjärrkontrollen - är trivialt att göra klart. Använd bara vilken IR -kontroll du vill. Jag använde den som är till salu som set tillsammans med IR -mottagare - se bilden. Den enda anledningen till att jag har bestämt mig för den här typen är bara för att jag redan hade den hemma.
Steg 2: Programvara
Jag har skapat programmet för GNU/Linux OS som körs i en terminal. Källkoden är gratis att ladda ner/använda/dela/ändra. För att kompilera koden utfärdar du bara kommandot som gcc -o remotePC remotePC.c i terminalen. För att köra programtypen./remotePC.
Följande information i detta steg riktar sig till dem som är intresserade av hur sakerna fungerar.
Programbeskrivningen
Programmet kontrollerar först om filen /dev /ttyACM0 eller ttyACM1 finns. I så fall kontrolleras gruppens ID för filen för att vara annorlunda än noll. Detta innebär att den seriella porten kan läsas från och skrivas till av den vanliga användaren. Två byte med värdena 0xAA 0x55 skrivs sedan till porten för att signalera att programmet är redo att ta emot data. Inkommande data jämförs med de lagrade värdena. Om matchningen hittas utförs den fördefinierade åtgärden.
Volymkontrollen
Programmet kan slå på/av ljudet, öka/sänka volymen på systemnivå. Detta uppnås med hjälp av programmet pactl. Kommandona ser då ut så här:
pactl set-sink-mute 0 växla
pactl set-sink-volume 0 +10%
pactl set-sink-volume 0-10%
Installera vid behov paketen som krävs.
VLC Media Player -kontroll
Programmet kan också starta/pausa ljudet/videon och ändra spåret till föregående/nästa i spellistan på VLC Media Player. Skrivbordsbussen används i detta fall. Kommandona:
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. PlayPause
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Next
dbus-send --type = method_call --dest = org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Previous
Steg 3: IR -mottagarmodul
Den tredje delen av projektet är den mest komplexa men ändå ganska enkel. Tanken är att IR -mottagaren kommer att mata ut signalen till MCU som omvandlar den till det unika numret. Detta nummer överförs sedan till datorn via USB.
Modulen är avsedd att monteras inuti PC -fodralet och anslutas till USB -kortplatsen på moderkortet med kabeln. Om du föredrar den externa anslutningen till USB måste du göra mindre justeringar.
MCU
Jag har byggt modulen på PIC16F1829 mikrokontroller. Valet av MCU är inte kritiskt, du kan använda valfri annan MCU om du kan justera källkoden. Jag har valt denna PIC av två skäl. Först hade jag den tillgänglig och för det andra skadades nålarna delvis av den intensiva användningen i de olika testprojekten. Så jag ville använda den i det permanenta projektet innan det blir helt oanvändbart.:-)
IR -mottagare
Den andra delen som modulen bygger på är IR -mottagaren VS1838B - den som nämns i det första steget.
UART/USB -omvandlare
Den tredje delen är MCP2221 som är UART/I2C/USB -omvandlaren.
Uppgiften är att kombinera dessa 3 delar för att bygga upp modulen som kommer att kunna ta emot signalerna från IR -fjärrkontrollen och överlämna dem till datorn.
Ledningarna
På den första bilden finns testkretsen på brödbrädan. I den andra finns kopplingsschemat.
Listan över delar
1 st PIC16F1829 (eller någon annan MCU)
1 st VS1838B (eller någon annan IR -mottagare)
1 st MCP2221 (eller någon annan UART/USB -omvandlare)
2 st 4-polig header
1 st 6-polig sidhuvud
1 st motstånd 100R
2 st motstånd 10K
2 st motstånd 330R
1 st kondensator 470 nF
2 st elektrolytkondensator 4,7 uF
1 st switch (tillval)
PCB -montering
Sätt ihop modulen med hjälp av schemat. Du kan antingen använda universalkortet eller skapa det anpassade kretskortet. Om det senare är fallet har jag tillhandahållit KiCad -filerna i arkivet nedan.
Firmware
Källkoden för PIC skriven med användning av MPLAB X IDE och XC8 -kompilatorn är tillgänglig för nedladdning nedan.
Källkod anteckningar
För dem som vill veta vad programmet gör exakt är följande rader.
När alla inställningar är klara lyser den röda lysdioden och MCU väntar på 0x55AA -data. Därefter lyser lysdioden grön och MCU börjar detektera signalen från IR -mottagaren med hjälp av avbrotten. Den mäter och registrerar tidsintervallen som signalen är i höga och låga nivåer. Dessa tider omvandlas sedan till 32-bitarsnumret som skickas till datorn.
Förhållandet mellan tiderna och det slutliga numret ges av NEC -protokollet.
Steg 4: Så här använder du enheten
Firmware
Ladda upp firmware till PIC. Jag använder PICkit 3 programmeraren.
Hårdvara
Installera IR -mottagarmodulen enligt bilderna:
- Anslut USB-huvudet antingen till det interna USB-uttaget på moderkortet inuti PC-fodralet med lämplig 4-trådskabel eller externt till USB-uttaget med standard USB-kabel. I det andra fallet måste du hjälpa dig själv på något sätt, t.ex. som på den 3: e bilden för inspiration.
- Anslut 5 V-strömkabeln från strömkällan inuti PC-fodralet till det 4-poliga huvudet. Eller strömförsörj modulen på ett annat sätt vid extern användning.
Slå upp beskrivningen på moderkortets USB -uttag. Jag är inte säker på om ledningarna följer någon form av standard så det är bättre att se till. I mitt fall finns det två stiftrader med 5 stift i den övre raden och 4 stift i den nedre. Från vänster till höger är stiften + 5 V, D-, D +, Gnd. Den femte stiftet i den första raden är inte ansluten. Jag fäst kabeln som ses på den andra bilden.
programvara
Kör programmet i terminalen. Om allt går rätt är det sista meddelandet i programmet "väntar på data …". När du nu trycker på knappen på fjärrkontrollen kommer den mottagna koden att visas i terminalen. På så sätt vet du vilken knapp som sänder vilken kod.
Nu väntar några programmeringsgrejer på dig, men oroa dig inte. Bara några saker måste ändras i programmets källkod så att programmet svarar på din fjärrkontroll. Öppna filen remotePC.c i textredigeraren eller i någon IDE om du vill och ersätt mina koder med dina. Tryck bara på knapparna du tänker använda för varje åtgärd en efter en. Kopiera bara koderna som visas i terminalen och klistra in dem i källkoden till platsen med motsvarande åtgärd.
När du är klar avslutar du programmet och kompilerar om koden med kommandot gcc -o remotePC remotePC.c. Kör programmet igen och det kommer att svara på din fjärrkontroll från och med nu.
Jag använder detta sätt med hårdkodade åtgärder i programmet eftersom jag tycker det är meningslöst att slösa min tid med vidareutveckling av projektet till staten när det är möjligt att lägga till/ändra koder/åtgärder i den användarvänliga grafikmiljön till exempel. Men om du vill göra det här eller ännu mer kan du.
Rekommenderad:
Återställa gamla datorns nätaggregat: 12 steg (med bilder)
Återställa gamla PC -nätaggregat: Sedan 1990 -talet har världen invaderats av datorer. Situationen fortsätter till denna dag. Äldre datorer, fram till 2014 … 2015, är i stort sett borta. Eftersom varje dator har strömförsörjning finns det ett stort antal övergivna i form av avfall. De
Lägg till en fläkt i en datorns kylfläns - inga skruvar krävs: 5 steg
Lägg till en fläkt till en datorns kylfläns - inga skruvar krävs: Problemet: Jag har (hade) ett moderkort på min filserver med en fläktlös kylfläns över vad jag tror är Northbridge. Enligt sensorprogrammet (ksensorer) som jag körde i Fedora höll moderkortets temperatur cirka 190F. Mitt knä
En slank bänk strömförsörjning från datorns nätaggregat: 8 steg (med bilder)
En slank bänks strömförsörjning från datorns nätaggregat: Uppdatering: Anledningen till att jag inte har behövt använda ett motstånd för att stoppa strömförsörjningen från nätaggregatet är att (det tror …) att lysdioden i strömbrytaren jag använde drar tillräckligt med ström för att förhindra PSU stängde av. Så jag behövde en strömförsörjning på bänken och bestämde mig för att göra en
Konvertera din IR -fjärrkontroll till RF -fjärrkontroll: 9 steg (med bilder)
Konvertera din IR -fjärrkontroll till RF -fjärrkontroll: I dagens Instructable visar jag dig hur du kan använda en generisk RF -modul utan en mikrokontroller som så småningom kommer att leda oss till att bygga ett projekt där du kan konvertera en IR -fjärrkontroll från vilken enhet som helst till en RF Avlägsen. Den största fördelen med att konvertera en
Styr dina elektriska apparater med din fjärrkontroll för fjärrkontroll (IR -fjärrkontroll) med temperatur- och luftfuktighetsdisplay: 9 steg
Styr dig elektriska apparater med din TV -fjärrkontroll (ir -fjärrkontroll) med temperatur- och luftfuktighetsdisplay: hej jag är Abhay och det är min första blogg om Instructables och idag ska jag visa dig hur du styr dina elektriska apparater med din fjärrkontroll genom att bygga detta enkelt projekt. tack till atl lab för stöd och tillhandahållande av materialet