Indholdsfortegnelse:
Video: Computerens fjernbetjening: 4 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Udover de mange andre formål bruger jeg min pc som multimediecenter. Nogle gange slapper jeg af på sofaen og lytter til musik eller ser en film eller et fjernsyn og har ikke lyst til at stå op for at justere lydstyrken eller skifte tv -kanal hver gang dumme reklamer dukker op, eller jeg sover og ønsker stilhed. Så jeg har besluttet at lave min pc fjernbetjent med en standard IR -fjernbetjening, så jeg bare med det samme kunne trykke på knappen i stedet for rasende at gribe efter musen eller mute -tasten på tastaturet.
Projektet består af flere dele:
- Fjernbetjening
- PC -software
- IR -modtagermodul
Trin 1: Fjernbetjeningen
Det første element - fjernbetjeningen - er trivielt at blive færdig med. Brug bare enhver IR -kontrol, du kan lide. Jeg brugte den der er til salg som sættet sammen med IR -modtager - se billedet. Den eneste grund til at jeg har besluttet mig for denne type er bare fordi jeg allerede havde den hjemme.
Trin 2: Software
Jeg har oprettet programmet til GNU/Linux OS, der kører i en terminal. Kildekoden er gratis at downloade/bruge/dele/ændre. For at kompilere koden skal du bare udstede kommandoen som gcc -o remotePC remotePC.c i terminalen. For at køre programtypen./remotePC.
Følgende oplysninger i dette trin er rettet til dem, der er interesserede i, hvordan tingene fungerer.
Programbeskrivelsen
Programmet kontrollerer først, om filen /dev /ttyACM0 eller ttyACM1 findes. I så fald er gruppens ID for filen markeret til at være forskellig fra nul. Det betyder, at den serielle port kan læses fra og skrives til af den almindelige bruger. To bytes med værdierne 0xAA 0x55 skrives derefter til porten for at signalere, at programmet er klar til at modtage dataene. De indgående data sammenlignes med de lagrede værdier. Hvis matchen findes, udføres den foruddefinerede handling.
Volumenkontrollen
Programmet er i stand til at tænde/slukke lyden, øge/reducere lydstyrken på systemniveau. Dette opnås ved brug af pactl -programmet. Kommandoerne ser derefter sådan ud:
pactl set-sink-mute 0 skifte
pactl set-sink-volume 0 +10%
pactl set-sink-volume 0-10%
Om nødvendigt installeres de påkrævede pakker.
VLC Media Player kontrol
Programmet kan også starte/sætte lyd/video på pause og ændre sporet til det forrige/næste i afspilningslisten på VLC Media Player. Desktopbus bruges i dette tilfælde. Kommandoerne:
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. Forrige
Trin 3: IR -modtagermodul
Den tredje del af projektet er den mest komplekse, men alligevel ret simpel. Ideen er, at IR -modtageren sender signalet til MCU'en, der vil transformere det til det unikke nummer. Dette nummer overføres derefter til pc'en via USB.
Modulet er beregnet til at blive monteret inde i pc -kabinettet og tilsluttet USB -stikket på bundkortet med kablet. Hvis du foretrækker den eksterne forbindelse til USB'en, skal du foretage mindre justeringer.
MCU
Jeg har bygget modulet på PIC16F1829 mikrokontroller. Valget af MCU er ikke kritisk. Du kan bruge enhver anden MCU, hvis du er i stand til at justere kildekoden. Jeg har valgt denne PIC af to grunde. Først havde jeg den tilgængelig, og for det andet blev stifterne delvist beskadiget af den intensive brug i de forskellige testprojekter. Så jeg ville bruge det i det permanente projekt, før det bliver totalt ubrugeligt.:-)
IR -modtager
Den anden del, modulet er baseret på, er IR -modtageren VS1838B - den, der er nævnt i det første trin.
UART/USB -konverter
Den tredje del er MCP2221, der er UART/I2C/USB -konverteren.
Opgaven er at kombinere disse 3 dele til at opbygge det modul, der vil være i stand til at modtage signalerne fra IR -fjernbetjeningen og aflevere dem til pc'en.
Ledningerne
På det første billede er der testkredsløbet på brødbrættet. I den anden er der ledningsskemaet.
Listen over dele
1 stk PIC16F1829 (eller enhver anden MCU)
1 stk VS1838B (eller enhver anden IR -modtager)
1 stk MCP2221 (eller enhver anden UART/USB -konverter)
2 stk. 4-benet header
1 stk. 6-benet header
1 stk modstand 100R
2 stk modstand 10K
2 stk. Modstand 330R
1 stk kondensator 470 nF
2 stk elektrolytkondensator 4,7 uF
1 pc switch (valgfri)
PCB -samling
Sæt modulet sammen ved hjælp af skematikken. Du kan enten bruge universalbordet eller oprette det brugerdefinerede printkort. Hvis sidstnævnte er tilfældet, har jeg leveret KiCad -filerne i arkivet herunder.
Firmwaren
Kildekoden til PIC'en skrevet med brug af MPLAB X IDE og XC8 -kompilatoren er tilgængelig til download herunder.
Kildekoden noterer
For dem, der gerne vil vide, hvad programmet præcist laver, er følgende linjer.
Når alle indstillingerne er udført, lyser den røde LED, og MCU venter på 0x55AA -dataene. Derefter lyser LED'en grønt, og MCU begynder at registrere signalet fra IR -modtageren ved hjælp af afbrydelserne. Det måler og registrerer de tidsintervaller, signalet er i de høje og lave niveauer. Disse tider omdannes derefter til det 32-bit nummer, der sendes til pc'en.
Forholdet mellem tiderne og det endelige nummer er givet ved NEC -protokollen.
Trin 4: Sådan bruges enheden
Firmware
Upload firmwaren til PIC. Jeg bruger PICkit 3 programmereren.
Hardware
Installer IR -modtagermodulet som vist på billederne:
- Tilslut USB-headeren enten til den interne USB-slot på bundkortet inde i pc-kabinettet med passende 4-leder kabel eller eksternt til USB-stikket med standard USB-kabel. I det andet tilfælde skal du hjælpe dig selv på en eller anden måde, f.eks. som set på det 3. billede for en inspiration.
- Vedhæft 5 V-strømkablet fra strømkilden inde i pc-kabinettet til det 4-benede header. Eller strøm modulet på en anden måde i tilfælde af ekstern brug.
Slå op på bundkortets USB -stik pins beskrivelse. Jeg er ikke sikker på, om ledningerne følger en slags standard, så det er bedre at sikre sig. I mit tilfælde er der to stifterækker med 5 ben i den øverste række og 4 ben i den nederste. Fra venstre til højre er benene + 5 V, D-, D +, Gnd. Den 5. pin i den første række er ikke forbundet. Jeg fastgjorde kablet som set på det andet billede.
Software
Kør programmet i terminalen. Hvis alt går rigtigt, er den sidste meddelelse i programmet "venter på data …". Når du nu trykker på knappen på fjernbetjeningen, vises den modtagne kode i terminalen. På denne måde ved du, hvilken knap der udsender hvilken kode.
Nu venter nogle programmerings ting på dig, men bare rolig. Bare et par ting skal ændres i programmets kildekode, så programmet reagerer på din fjernbetjening. Åbn filen remotePC.c i teksteditoren eller i en eller anden IDE, hvis du kan lide det, og udskift mine koder med dine. Bare tryk på de knapper, du agter at bruge for hver handling en efter en. Du skal blot kopiere de koder, der vises i terminalen, og indsætte dem i kildekoden til stedet med tilsvarende handling.
Når du er færdig, afslut programmet og kompilér koden igen med kommandoen gcc -o remotePC remotePC.c. Kør programmet igen, og det vil reagere på din fjernbetjening fra nu af.
Jeg bruger denne måde med hardkodede handlinger i programmet, da jeg finder det meningsløst at spilde min tid med videreudvikling af projektet til staten, når det f.eks. Er muligt at tilføje/ændre koder/handlinger i det brugervenlige grafikmiljø. Men hvis du gerne vil gøre dette eller endnu mere, kan du.
Anbefalede:
TV -fjernbetjening Bliver en RF -fjernbetjening -- NRF24L01+ Tutorial: 5 trin (med billeder)
TV -fjernbetjening Bliver en RF -fjernbetjening || NRF24L01+ Tutorial: I dette projekt vil jeg vise dig, hvordan jeg brugte den populære nRF24L01+ RF IC til at justere lysstyrken på en LED -strimmel trådløst gennem tre ubrugelige knapper på en fjernsyns fjernbetjening. Lad os komme igang
IRduino: Arduino fjernbetjening - Efterlign en tabt fjernbetjening: 6 trin
IRduino: Arduino fjernbetjening - Efterlign en tabt fjernbetjening: Hvis du nogensinde har mistet fjernbetjeningen til dit tv eller din dvd -afspiller, ved du, hvor frustrerende det er at skulle gå til, finde og bruge knapperne på selve enheden. Nogle gange tilbyder disse knapper ikke engang den samme funktionalitet som fjernbetjeningen. Modtag
Semi-passiv køling af computerens strømforsyning: 3 trin
Semi-passiv køling af computerens strømforsyning: Hej! Den grundlæggende idé er, at hvis en strømforsyning med en stor strømreserve, så er der ikke behov for konstant rotation af blæseren (ligesom det blev gjort i CPU -blæseren). Derfor, hvis det er pålideligt at overvåge temperaturen på strømforsyningen un
Konverter din IR -fjernbetjening til RF -fjernbetjening: 9 trin (med billeder)
Konverter din IR -fjernbetjening til RF -fjernbetjening: I dagens Instructable viser jeg dig, hvordan du kan bruge et generisk RF -modul uden en mikrokontroller, som i sidste ende vil føre os til at bygge et projekt, hvor du kan konvertere en IR -fjernbetjening af enhver enhed til en RF Fjern. Den største fordel ved at konvertere en
Styr dine elektriske apparater med din tv -fjernbetjening (ir -fjernbetjening) med temperatur- og luftfugtighedsvisning: 9 trin
Styr dig elektriske apparater med din tv -fjernbetjening (ir -fjernbetjening) med temperatur- og luftfugtighedsdisplay: hej, jeg er Abhay, og det er min første blog om Instructables, og i dag vil jeg vise dig, hvordan du styrer dine elektriske apparater med din fjernsyns fjernbetjening ved at bygge denne simpelt projekt. tak til atl lab for støtte og levering af materialet