Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Etter mye leting ble jeg overrasket og forferdet over den motstridende informasjonen om hvordan jeg konfigurerer IR -fjernkontroll for mitt RPi -prosjekt. Jeg trodde det ville være enkelt, men å sette opp Linux InfraRed Control (LIRC) har vært problematisk lenge, men mye endret seg i juni 2019 med utgivelsen av Buster -versjonen av Raspbian, noe som gjorde mye av opplæringsprogrammene der ute verdiløse. Mange opplæringsprogrammer lar deg lage en hardware.conf-fil, men LIRC trenger ikke eller vil ha den, og lirc-rpi-modulen er blitt erstattet med gpio-ir-modulen.
Opplæringen forutsetter at RPi kjører raspbian (versjon Buster juni 2019). Det forutsettes også en arbeidskunnskap om terminalen, grunnleggende kommandoer fra ledeteksten og redigering av tekstfiler.
MERK: LIRC -oppsettet mislykkes hvis det kjøres som root -bruker og fører til den fryktede "kan ikke importere navnet RawConnection" -feilen når du kjører python -kode. Denne opplæringen forutsetter at du er logget inn som bruker (dvs. PI)
Mål: Å aktivere IR -fjernkontroll av RPi -prosjekter
1) Oppsett LIRC på RPi [del 1]
2) Demonstrer LIRC ved hjelp av python [del 2]
Rekvisita
--- Bringebær Pi (3, 4, null)
--- Dupont wire (hunn-hunn)
--- VS 1838b IR-mottaker
Trinn 1: Monter maskinvare
Å bruke VS1838b IR -mottaker kan ikke være enklere. Bare koble sensoren til RPi direkte med Dupont wire (Female-Female). Du kan også bruke et brødbrett (ikke vist) eller loddetinn på et protobrett (foto)
Ser på VS1838b IR -mottaker fra forsiden (med den store X -en mot deg)
---- Venstre ben er ute
---- Senterbenet er malt
---- Høyre ben er 3,3v
1) Fest venstre ben til BCM -pinne 17 på RPi (gul ledning)
2) Fest senterbenet til bakken (svart ledning)
3) Fest høyre ben til 3,3v (rød ledning)
Trinn 2: Installer Lirc
1) Åpne terminalvinduet og installer LIRC. Vær oppmerksom på at dette sannsynligvis vil føre til en feilmelding "Kunne ikke starte fleksibel IR -ekstern inngang/utdataprogramstøtte" ettersom de installerte filene nå har.dist lagt til og suffikset må fjernes som nevnt nedenfor. Ikke vanskelig, men frustrerende.
$ sudo apt-get oppdatering
$ sudo apt-get install lirc
---- IKKE BEKOMME! ettersom dette sannsynligvis vil føre til en feilmelding "Kunne ikke starte fleksibel IR ekstern inngang/utgang applikasjonsstøtte" ettersom.dist -suffikset må slettes fra lirc_options.conf. Bare gi nytt navn til filen som vist.
$ sudo mv /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf
2) Installer lirc på nytt nå som filen lirc_options.conf har fått nytt navn
$ sudo apt-get install lirc
Trinn 3: Rediger Lirc_options.conf
Rediger /etc/lirc/lirc_options.conf som følger ved å endre disse to linjene:
:
:
driver = standard
enhet = /dev /lirc0
:
:
Trinn 4: Utfør Flytt for å fjerne.dist -suffiks fra Lircd.conf.dist
Fjern suffikset.dist fra /etc/lirc/lircd.conf.dist
$ sudo mv /etc/lirc/lircd.conf.dist /etc/lirc/lircd.conf
Trinn 5: Rediger Config.txt
Rediger /boot/config.txt ved å legge til en linje i lirc-rpi-moduldelen som følger. Dette eksemplet antar at RPi 'lytter' på BCM Pin 17 for IR -mottakeren, men en hvilken som helst RPi IO -pin kan brukes. Jeg har ikke prøvd det ennå, men hvis du vil sende kommandoer fra RPi, legg til og kommenter den fjerde linjen som vises nedenfor for å sende IR -kommandoer på BCM pin 18
:
:
:
# Ikke kommenter dette for å aktivere lirc-rpi-modulen
#dtoverlay = lirc-rpi
dtoverlay = gpio-ir, gpio_pin = 17
#dtoverlay = gpio-ir-tx, gpio_pin = 18
:
:
:
Trinn 6: Kontroller status og start på nytt
1) Stopp, start og sjekk statusen til lircd for å sikre at det ikke er noen feil!
$ sudo systemctl stop lircd.service
$ sudo systemctl start lircd.service
$ sudo systemctl status lircd.service
2) Start på nytt
$ sudo omstart
Trinn 7: Test fjernkontrollen
Dette trinnet forutsetter at du har en IR -mottaker koblet til RPi -en din på pinnen som er angitt i config.txt.
1) stopp LIRCD -tjenesten og test fjernkontrollen med modus2 -kommandoen
$ sudo systemctl stop lircd.service
$ sudo mode2 -d /dev /lirc0
3) Pek fjernkontrollen mot mottakeren og trykk på noen knapper. Du bør se noe som dette:
:
:
rom
puls
:
:
4) Trykk Ctrl-C for å avslutte
5) IR -mottakeren er konfigurert og klar til å fortsette til del 2 og få tilgang til i python.