Përmbajtje:
Video: Telekomanda e kompjuterit IR: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:21
Përveç shumë qëllimeve të tjera, unë jam duke përdorur kompjuterin tim si qendër multimediale. Ka raste kur jam duke pushuar në divan duke dëgjuar muzikë ose duke parë një film ose një televizor dhe nuk më vjen të zgjohem për të rregulluar volumin ose për të ndryshuar kanalin televiziv sa herë që shfaqen reklama budallaqe ose jam duke fjetur dhe dëshiroj heshtje. Kështu që unë kam vendosur ta bëj kompjuterin tim të kontrolluar nga distanca me një telekomandë standarde IR, në mënyrë që të mund të shtyp menjëherë butonin në vend që të kapem me zemërim për miun ose çelësin e heshtjes në tastierë.
Projekti përbëhet nga disa pjesë:
- Telekomandë
- Softuer PC
- Moduli i marrësit IR
Hapi 1: Telekomanda
Pika e parë - telekomanda - është e parëndësishme për të përfunduar me të. Thjesht përdorni çdo kontroll IR që ju pëlqen. Kam përdorur atë që është në shitje si komplet së bashku me marrësin IR - shihni foton. Arsyeja e vetme që kam vendosur për këtë lloj është vetëm sepse e kisha tashmë në shtëpi.
Hapi 2: Softueri
Unë kam krijuar programin për GNU/Linux OS që funksionon në një terminal. Kodi burimor është falas për tu shkarkuar/përdorur/ndarë/modifikuar. Për të përpiluar kodin thjesht lëshoni komandën si gcc -o remotePC remotePC.c në terminal. Për të ekzekutuar llojin e programit./remotePC.
Informacioni i mëposhtëm në këtë hap u drejtohet atyre që janë të interesuar se si funksionojnë gjërat.
Përshkrimi i programit
Programi së pari kontrollon nëse skedari /dev /ttyACM0 ose ttyACM1 ekziston. Nëse është kështu, grupi ID i skedarit kontrollohet të jetë i ndryshëm nga zero. Kjo do të thotë që porti serik mund të lexohet dhe të shkruhet nga përdoruesi i zakonshëm. Dy bajtë me vlera 0xAA 0x55 pastaj shkruhen në port për të sinjalizuar se programi është gati për të marrë të dhënat. Të dhënat e ardhura krahasohen me vlerat e ruajtura. Nëse ndeshja gjendet, veprimi i paracaktuar ekzekutohet.
Kontrolli i volumit
Programi është në gjendje të ndez/fik zërin, të rrisë/ulë nivelin e volumit në nivelin e sistemit. Kjo arrihet me përdorimin e programit pactl. Komandat pastaj duken kështu:
pactl set-sink-mute 0 kthesë
pactl set-lavaman-volumi 0 +10%
pactl set-lavaman-volumi 0 -10%
Nëse është e nevojshme, instaloni paketat e kërkuara.
Kontrolli i VLC Media Player
Programi gjithashtu mund të fillojë/ndalojë audio/video dhe të ndryshojë pjesën në atë të mëparshme/të ardhshme në listën e luajtjes të VLC Media Player. Bus Desktop përdoret në këtë rast. Komandat:
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. Para më parë
Hapi 3: Moduli i Marrësit IR
Pjesa e tretë e projektit është ajo më komplekse, por ende mjaft e thjeshtë. Ideja është që marrësi IR të nxjerrë sinjalin në MCU që do ta transformojë atë në numrin unik. Ky numër më pas do të transmetohet në PC përmes USB.
Moduli ka për qëllim të montohet brenda kutisë së kompjuterit dhe të lidhet me folenë USB në motherboard me kabllo. Në rast se preferoni lidhjen e jashtme me USB ju do të duhet të bëni rregullime të vogla.
MCU
Unë kam ndërtuar modulin në mikrokontrolluesin PIC16F1829. Zgjedhja e MCU nuk është kritike, mund të përdorni çdo MCU tjetër nëse jeni në gjendje të rregulloni kodin burimor. Unë kam zgjedhur këtë PIC për dy arsye. Së pari e kisha në dispozicion dhe së dyti kunjat e tij u dëmtuan pjesërisht nga përdorimi intensiv në projekte të ndryshme testimi. Kështu që unë doja ta përdorja në projektin e përhershëm para se të bëhej plotësisht i papërdorshëm.:-)
Marrës IR
Pjesa e dytë në të cilën bazohet moduli është marrësi IR VS1838B - ai i përmendur në hapin e parë.
Konvertuesi UART/USB
Pjesa e tretë është MCP2221 që është konvertuesi UART/I2C/USB.
Detyra është të kombinoni këto 3 pjesë për të ndërtuar modulin që do të jetë në gjendje të marrë sinjale nga telekomanda IR dhe t'i dorëzojë ato në PC.
Instalime elektrike
Në foton e parë ekziston qarku i testimit në dërrasën e bukës. Në të dytën ka skemën e instalimeve elektrike.
Lista e pjesëve
1 copë PIC16F1829 (ose ndonjë MCU tjetër)
1 kompjuter VS1838B (ose ndonjë marrës tjetër IR)
1 kompjuter MCP2221 (ose ndonjë konvertues tjetër UART/USB)
2 copë kokë me 4 kunja
1 kokë kokë me 6 kunja
1 pc rezistencë 100R
2 copë rezistencë 10K
2 copë rezistencë 330R
1 pc kondensator 470 nF
2 copë kondensator elektrolitik 4.7 uF
Çelës 1 kompjuter (opsional)
Montim PCB
Vendosni së bashku modulin me përdorimin e skemës. Ju ose mund të përdorni bordin universal ose të krijoni PCB të personalizuar. Nëse kjo e fundit është rasti, unë kam siguruar skedarët KiCad në arkivin më poshtë.
Firmware
Kodi burimor për PIC i shkruar me përdorimin e MPLAB X IDE dhe përpiluesit XC8 është i disponueshëm për shkarkim më poshtë.
Shënimet e kodit burimor
Për ata që duan të dinë se çfarë saktësisht po bën programi janë rreshtat e mëposhtëm.
Pasi të jenë bërë të gjitha cilësimet, LED i kuq është ndezur dhe MCU është duke pritur për të dhënat 0x55AA. Pas kësaj LED bëhet e gjelbër dhe MCU fillon të zbulojë sinjalin nga marrësi IR me përdorimin e ndërprerjeve. Ai mat dhe regjistron intervalet kohore kur sinjali është në nivele të larta dhe të ulëta. Këto kohë më pas transformohen në numrin 32-bit që dërgohet në PC.
Marrëdhënia midis kohëve dhe numrit përfundimtar jepet nga protokolli NEC.
Hapi 4: Si të përdorni pajisjen
Firmware
Ngarko firmware -in në PIC. Unë përdor programuesin PICkit 3.
Hardware
Instaloni modulin e marrësit IR siç shihet në foto:
- Lidheni titullin USB ose në folenë e brendshme USB në motherboard brenda kutisë së PC me kabllon e duhur me 4 tela ose nga jashtë me folenë USB me kabllon USB standard. Në rastin e dytë ju duhet të ndihmoni veten në një farë mënyre, p.sh. siç shihet në foton e 3 -të për frymëzim.
- Bashkoni kabllon e energjisë 5 V nga burimi i energjisë brenda kutisë së kompjuterit në kokën 4-pin. Ose moduloni modulin në një mënyrë tjetër në rastin e përdorimit të jashtëm.
Shikoni përshkrimin e kunjave të prizës USB të motherboard. Nuk jam i sigurt nëse instalimet elektrike ndjekin një lloj standardi, kështu që është më mirë të siguroheni. Në rastin tim ka dy rreshta me 5 kunja në rreshtin e sipërm dhe 4 kunja në atë të poshtëm. Nga e majta në të djathtë kunjat janë + 5 V, D-, D +, Gnd. Pina e 5 -të në rreshtin e parë nuk është e lidhur. Kam bashkangjitur kabllon siç shihet në foton e dytë.
Softuer
Drejtoni programin në terminal. Nëse gjithçka shkon mirë, mesazhi i fundit i programit është "duke pritur të dhëna …". Tani kur shtypni butonin në telekomandë, kodi i marrë do të shfaqet në terminal. Në këtë mënyrë ju do të dini se cili buton lëshon cilin kod.
Tani disa gjëra programimi ju presin, por mos u shqetësoni. Vetëm disa gjëra duhet të ndryshohen në kodin burimor të programit në mënyrë që programi t'i përgjigjet telekomandës tuaj. Hapni skedarin remotePC.c në redaktuesin e tekstit ose në ndonjë IDE nëse ju pëlqen dhe zëvendësoni kodet e mia me tuajat. Thjesht shtypni butonat që keni ndërmend të përdorni për secilin veprim një nga një. Thjesht kopjoni kodet që shfaqen në terminal dhe ngjitini ato në kodin burimor në vend me veprimin përkatës.
Kur të keni mbaruar përfundoni programin dhe rikompiloni kodin me komandën gcc -o remotePC remotePC.c. Drejtoni programin përsëri dhe tani e tutje do t'i përgjigjet telekomandës tuaj.
Unë e përdor këtë mënyrë me veprimet e koduara në program pasi e kam të pakuptimtë të humbas kohën time me zhvillimin e mëtejshëm të projektit në gjendje kur është e mundur të shtoni/ndryshoni kodet/veprimet në mjedisin grafik miqësor për përdoruesit, për shembull. Por nëse dëshironi ta bëni këtë ose edhe më shumë, mundeni.
Recommended:
Telekomanda e bazuar në shfletuesin Arduino (linux): 9 hapa (me fotografi)
Telekomanda e bazuar në shfletuesin Arduino (linux): Ne kemi fëmijë. I dua shumë, por ata vazhdojnë të fshehin telekomandën për satelitin dhe televizorin kur vendosin kanalet e fëmijëve. Pasi kjo ndodhi në baza ditore për disa vjet, dhe pasi gruaja ime e dashur më lejoi të kem një
Telekomanda e bazuar në LoRa - Kontrolloni pajisjet nga distancat e mëdha: 8 hapa
Telekomanda e bazuar në LoRa | Kontrolloni pajisjet nga distancat e mëdha: Hej, çfarë ka, djema! Akarsh këtu nga CETech. Në këtë projekt, ne do të krijojmë një telekomandë e cila mund të përdoret për të kontrolluar një larmi instrumentesh si LED, motorë ose nëse flasim për jetën tonë të përditshme mund të kontrollojmë apelin tonë në shtëpi
Butoni Magjik 4k: telekomanda me valë 20USD BMPCC 4k (ose 6k): 4 hapa (me fotografi)
Butoni Magjik 4k: Telekomanda me valë 20USD BMPCC 4k (ose 6k): Shumë njerëz më kanë kërkuar të ndaj disa detaje rreth kontrolluesit tim pa tel për BMPCC4k. Shumica e pyetjeve ishin në lidhje me kontrollin bluetooth, kështu që unë do të përmend disa detaje në lidhje me këtë. Supozoj se jeni njohur me mjedisorët ESP32 Arduino
Telekomanda ATtiny85 RF: 3 hapa
Telekomanda ATtiny85 RF: SHENIM: Loja ime e udhëzueshme " Fshehja dhe Kërkimi Virtual " tregon se si të përdoret ky lloj telekomande me një modul RXC6 i cili deshifron automatikisht mesazhin. Siç e përmenda në një udhëzues të mëparshëm, kohët e fundit fillova të luaj me disa ATtiny85 chi
Telekomanda Wi-Fi për Hayward ColorLogic: 3 hapa
Telekomanda Wi-Fi për Hayward ColorLogic: Hayward ColorLogic është një shtesë e njohur për pishinat, llixhat, pellgjet dhe veçoritë e tjera të ujit. Çdo dritë përmban një sërë LED të ndritshëm plus logjikën për të siguruar një duzinë ngjyrash të forta dhe shfaqje të dritës. Këto njësi përdorin energji 12 VAC, që e bën