Innholdsfortegnelse:

Raspberry Pi Bulletin Board: 11 trinn (med bilder)
Raspberry Pi Bulletin Board: 11 trinn (med bilder)

Video: Raspberry Pi Bulletin Board: 11 trinn (med bilder)

Video: Raspberry Pi Bulletin Board: 11 trinn (med bilder)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Juli
Anonim
Raspberry Pi Bulletin Board
Raspberry Pi Bulletin Board
Raspberry Pi Bulletin Board
Raspberry Pi Bulletin Board
Raspberry Pi Bulletin Board
Raspberry Pi Bulletin Board

Dette er et prosjekt jeg jobbet med for min kirke. Vi ønsket et elektronisk oppslagstavle som skulle monteres i narthex/lobbyområdet og som skulle gå gjennom statiske lysbilder med noen sekunders mellomrom.

Dette var våre designmål:

  • Statiske lysbilder, ingen video eller lyd
  • Admin genererer lysbilder i Powerpoint (kjent verktøy, ingen ny programvare å lære)
  • Admin kan dra og slippe ny presentasjon for å erstatte den gamle
  • Ingen skybasert løsning, siden oppslagstavlen ville være på vårt private trådløse nettverk
  • Ingen månedlige lisensavgifter eller proprietær programvare, annet enn det vi allerede hadde (Windows, Office, Powerpoint)
  • 49 "skjerm, i stående/vertikal modus (selv om liggende/horisontal modus også er mulig og beskrevet nedenfor)
  • Ønsket kostnad: <$ 1000

Vi klarte å gjøre dette og kom inn under budsjettet. Jeg hjalp nylig en annen kirke i nærheten med å gjøre det samme prosjektet, og den totale kostnaden (ikke inkludert kostnadene til en elektriker for å bringe strøm til rett sted på veggen og arbeidet som er involvert i montering) var mindre enn $ 500.

På grunn av de lave kostnadene og i hovedsak null pågående kostnader (bare strøm), ville dette også passe godt med skoler, biblioteker, museer, ideelle organisasjoner eller andre organisasjoner med begrenset budsjett.

Tilbakemelding mottas med takk.

Trinn 1: Utstyrsliste

Utstyrsliste
Utstyrsliste
Utstyrsliste
Utstyrsliste
Utstyrsliste
Utstyrsliste

Her er en liste over utstyr vi brukte. Kommentarer legges til. Jeg prøver å koble til produsentens nettsted der det er mulig, i stedet for en forhandler.

  • TV/monitor. De fleste moderne TVer eller skjermer vil gjøre det, så lenge de har CEC (se denne artikkelen på Wikipedia for mer informasjon om CEC: https://en.wikipedia.org/wiki/Consumer_Electronics_Control). De fleste skjermer er laget for å monteres i enten vertikal/stående eller horisontal/liggende modus. TV -er er designet for å være horisontale, så det er litt vanskeligere å montere dem vertikalt. Mange TV-er er også asymmetriske fra topp til bunn (det vil si at underkanten ofte er større enn toppen), så montering av den vertikalt kan se litt rart ut. Likevel er TV -er totalt sett billigere, så vi gikk med en TV. Selvfølgelig, hvis din foretrukne orientering er landskap, spiller det ingen rolle. Vi gikk med denne: LG 49 "LED -TV.
  • TV -feste: Dette var vanskelig, fordi vi kjøpte en TV og ønsket å montere den vertikalt. Ting du bør vurdere er monteringsstilen og om den vil være synlig, spesielt hvis TV -en er montert vertikalt. Festet er plassert på veggen i samme retning som om du skulle montere TV -en horisontalt. Hvis du velger å montere TV -en vertikalt, må du vurdere om skruehullene i TV -festet kan passe til de roterte monteringshullene på TV -en. Noen TVer plasserer festeskruene i et firkantet mønster, mens noen er et rektangulært mønster. Tenk gjennom dette, og sørg for at monteringen fungerer på ønsket sted før du kjøper.
  • Raspberry Pi, etui, kabler, kjøleribbe, vifte, etc.: Jeg anbefaler at du får den nyeste og beste versjonen. På den tiden vi bygde prosjektet, var det Raspberry Pi 3 B+, men nå er Raspberry Pi 4 B ute. Når det gjelder sak, strømledning, varmeavleder, vifte, bestemte vi oss for at siden Raspberry Pi skal kjøre døgnet rundt, ville vi ha et etui med en vifte, om enn en stille. Og å ha en strømledning med en innebygd strømbryter gjør det enkelt å tilbakestille systemet uten å måtte trekke ut kontakten. Den andre hovedforskjellen mellom Raspberry Pi 3 B+ og Raspberry Pi 4B er at 4 B har en mikro-HDMI-plugg, noe som betyr at du trenger en adapter (den er inkludert i settet nedenfor).

    • Hvis du går med Raspberry Pi 3 B+: Raspberry Pi 3 B+ Case Kit (inkluderer ikke Raspberry Pi)
    • Hvis du går med Raspberry Pi 4 B: Raspberry Pi 4 B Case Kit (inkluderer ikke Raspberry Pi)
  • HDMI -kabel: Alt er fint, så lenge det støtter CEC. Vær oppmerksom på at Raspberry Pi vanligvis vil være montert på veggen bak TVen/skjermen eller muligens festet til selve TVen/skjermen, så en kort 3 'kabel er sannsynligvis nok. For lang kabel og det vil vise seg. Vurder også hvor HDMI-portene er på TVen/skjermen, og om du kan vurdere en 90-graders kabelende (for eksempel hvis HDMI-portene er på den ene siden).
  • MicroSD -kort. Dette spiller ingen rolle, heller. Vi valgte 32 GB i stedet for standard 16 GB, bare for å ha ekstra plass til ekstra programvare, hvis vi ville, og for å ha et sted å lagre flere presentasjoner. Vi valgte denne: SanDisk Ultra PLUS 32GB MicroSD -kort. Vær oppmerksom på at det er lettere hvis du kjøper et MicroSD -kort med NOOBS allerede installert, som dette: SD -kort med NOOBS. Jeg gjorde ikke det, men du kan lagre et trinn hvis du gjør det. Se her for mer informasjon: NOOBS

En merknad om CEC: CEC (Consumer Electronics Control) lar noen komponenter kontrollere hverandre gjennom HDMI -kabelen. For eksempel kan en DVD -spiller slå på/av den tilkoblede TV -en via HDMI -kabelen hvis begge støtter CEC. Dette er nyttig i vårt tilfelle, ettersom Raspberry Pi kan slå på/av TVen/skjermen som den ønsker. For eksempel, i en kirke, ønsker vi å ha skjermen på bare i timer når kirken er åpen, og det varierer fra ukedag. CEC lar Pi slå av og på TV -en på en vilkårlig kompleks tidsplan.

Trinn 2: Monter Pi -saken

Monter Pi -saken
Monter Pi -saken
Monter Pi -saken
Monter Pi -saken
Monter Pi -saken
Monter Pi -saken

Monteringen er ganske grei. Fest varmeavlederne på sjetongene av tilsvarende størrelse på Raspberry Pi, sett sammen saken et lag for lag. Ikke glem å fjerne de tynne plastbeskyttelsesarkene fra hvert lag.

Trinn 3: Installer Raspbian

Installer Raspbian
Installer Raspbian

Det er en utmerket guide på Raspberry Pi -nettstedet. Følg instruksjonene for å konfigurere den.

Konfigurere din Raspberry Pi

Jeg brukte Raspbian Lite, siden den ikke har ekstra applikasjoner som du ikke trenger for dette prosjektet.

Trinn 4: Legg til standard og tilpasset programvare

Når NOOBS har installert Raspbian, vil du bli bedt om ting som språk, tidssone osv. Første gang du logger deg på. Det vil også be om WiFi -nettverk og passordinformasjon, med mindre du er koblet til en kablet tilkobling. Til slutt vil den laste ned og installere eventuelle Raspbian -oppdateringer. Det hjelper hvis du har samme internettforbindelse som i det siste oppsettet, men det trenger ikke å være det. Det vil si at du kan gjøre dette trinnet hjemme før du setter opp på den endelige plasseringen. Bare husk å sette opp den nye internettforbindelsen før den siste omstarten i det siste trinnet.

Åpne et terminalvindu (klikk på det svarte rektangulære ikonet nær øvre venstre hjørne av skjermen).

Først dobbeltsjekker vi for å se om det er ytterligere Raspbian-oppdateringer. Skriv inn følgende linjer, en om gangen

sudo apt oppdatering

sudo apt oppgradering

(si "Y" hvis den spør om du vil installere oppdateringer).

Deretter installerer vi Samba, som tillater mappedeling med Windows -maskinen (e) på nettverket.

sudo apt installer samba samba-common-bin smbclient cifs-utils

Deretter installerer vi fbi. fbi er unix -verktøyet som viser grafikk på en skjerm som ikke kjører en vindusbehandling.

sudo apt installere fbi

Deretter installerer vi inotify-verktøy. inotify-tools lar lysbildeserien se den delte mappen for eventuelle endringer.

sudo apt installer inotify-tools

Deretter installerer vi cec-utils. cec-utils lar Raspberry Pi slå TVen på og av via HDMI-kabelen.

sudo apt install cec-utils

Deretter må du laste ned de små verktøyene jeg skrev for å spille av lysbildeserien.

git -klon

Dette vil hente koden og sette den i en katalog kalt raspi_slideshow.

Nå er all programvare tilgjengelig på Raspberry Pi. De neste trinnene går gjennom konfigurasjonen.

Trinn 5: Konfigurer delt mappe

Som standard søker lysbildefremvisningskoden etter en katalog (mappe) /delt /presentasjon.

Vi må lage den katalogen. Siden det er på rotnivå, trenger vi rottillatelser, så en sudo er i orden. Du må kanskje skrive inn passordet (standard er bringebær) når du gjør denne kommandoen:

sudo mkdir -p /shared /Presentation

Deretter må vi gjøre dette lesbart og skrivbart for alle på denne Pi. Skriv inn følgende kommando:

sudo chmod a+rwx /shared /Presentation

Dette gjør den bare synlig på denne Pi. Deretter må vi dele denne mappen med verden (faktisk bare andre maskiner på samme nettverk). Derfor anbefaler vi at dette er på et privat (passordbeskyttet) Wi-Fi-nettverk eller et kablet lokalt nettverk.

Da vi installerte samba i forrige trinn, opprettet den en standardfil /etc/samba/smb.conf

Vi må legge til en haug med linjer til slutten av filen. Linjene er i filen raspi_slideshow/add_to_smb.conf

Den enkleste måten å gjøre dette på er følgende:

sudo bash

cat raspi_slideshow/add_to_smb.conf >> /etc/samba/smb.conf exit

Dette sammenføyer i utgangspunktet add_to_smb.conf -filen til slutten av /etc/samba/smb.conf

Du kan velge å gjøre det via en redaktør som nano hvis du foretrekker det, men det er en god del å skrive.

I utgangspunktet deler den /shared -katalogen som en katalog som kan leses og skrives av alle på det lokale nettverket. Jeg vil ikke gå gjennom hvordan du beskytter det her, men hvis du vil at det skal beskyttes (for å kreve et passord for å redigere), kan du lese deg opp på Samba og endre innstillingene deretter.

Trinn 6: Konfigurer Monitor On/off -innstillinger

Vi bruker cron til å slå TV -en/skjermen på og av til faste tider. Cron er et linux -verktøy som kjører oppgaver til faste tidspunkter. Hvis du vil at TVen/skjermen skal kjøre 24/7, eller hvis du vil slå den på og av manuelt, kan du hoppe over dette trinnet.

Kopier eksempel -crontab -filen fra katalogen raspi_slideshow til hjemmekatalogen.

cp raspi_slideshow/crontab_example.pi crontab.pi

Filen crontab_example.pi er et eksempel som viser hvordan denne typen fil fungerer. Det er rikelig med dokumentasjon i Wikipedia og andre steder:

Nå redigerer vi det. Det hjelper å få timeplanen din allerede funnet ut. Eksempelplanen er

  • Søndag: kl. 07.00, avgang kl. 21.00
  • Onsdag: kl. 08.00, avgang kl. 21.00
  • Lørdag: kl. 07.00, avgang kl. 21.00
  • Andre dager: kl. 08.00, avgang kl. 17.00

Jeg liker nano siden den er installert med Raspbian og enkel å bruke. Du kan bruke vi eller hvilken som helst annen redaktør.

nano crontab.pi

Rediger filen for å angi av/på -tider for hver dag. Bruk piltastene for å flytte rundt. Tilbake for å slette, skriv for å sette inn. Når du er ferdig, kontroll-O for å lagre (du må trykke "enter" for å bekrefte filnavnet) og Ctrl-X for å gå ut av nano.

Når du har cron -filen slik du vil ha den, kan du fortelle Raspbian at du vil kjøre den:

crontab crontab.pi

Hvis du noen gang vil endre timeplanen din, kan du redigere $ HOME/crontab.pi og utføre crontab-kommandoen på nytt umiddelbart ovenfor. Det vil erstatte den gamle timeplanen med den nye.

Trinn 7: Konfigurer skjerminnstillinger

Konfigurer skjerminnstillinger
Konfigurer skjerminnstillinger

Vi er nesten ferdige! Vi må konfigurere skjerminnstillingene. fbi er verktøyet vi bruker til å vise lysbildene. Den leser innstillingene fra filen.fbirc i hjemmekatalogen.

Kontroller først at vi er i hjemmekatalogen.

cd $ HJEM

Kopier deretter filen fra katalogen raspi_slideshow til hjemmet

cp raspi_slideshow/.fbirc.

Du trenger ikke å redigere filen. Men hvis du velger, er de tre innstillingene som er av interesse:

tilfeldig = usant

blend-msek = 500

timeout = 8

Den tilfeldige linjen avgjør om fbi randomiserer lysbilderekkefølgen. true betyr at det randomiserer lysbildene, falsk betyr at det ikke gjør det. Siden vi ønsket litt kontroll over hvilken rekkefølge lysbildene er i, setter vi det til falskt.

Blandings-msek-linjen sier hvor mange millisekunder (1000 = 1 sekund) som hver overgang varer. En verdi på 0 betyr at lysbildene endres umiddelbart fra det ene til det neste. Vår innstilling på 500 betyr at lysbildene falmer inn i hverandre i løpet av en periode på 0,5 sekunder.

Tidsavbrudd er tiden (i sekunder) hvert lysbilde vises før det går over til det neste. Du kan justere dette hvis du vil at lysbildene skal være lengre eller kortere. Bare husk at dette gjelder alle lysbilder likt. Det er ingen måte å få noen lysbilder til å vises lengre og andre kortere.

Roter skjermen

Hvis du har TVen/skjermen montert vertikalt, slik vi gjør, må du rotere skjermen 90 grader eller 270 grader. Hvis du har TVen/skjermen montert horisontalt, kan du hoppe over resten av dette trinnet.

Bruk nano igjen. Denne gangen må du kjøre som root, så du må sudo, noe som kan kreve at du skriver inn passordet ditt på nytt (standard er bringebær)

sudo nano /boot/config.txt

Bruk pil ned for å gå helt til bunnen av denne filen. Legg til følgende linje i slutten av filen:

display_rotate = 1

Dette vil rotere skjermen 90 grader. Hvis skjermen er opp ned etter montering, endre 1 til 3.

I utgangspunktet display_rotate = 0 (ingen rotasjon), 1 (90 grader), 2 (180 grader), 3 (270 grader)

På bildet ovenfor hadde vi angitt display_rotate = 1 og måtte gå tilbake og endre det til display_rotate = 3. Mye enklere enn å montere TV-en på nytt!

Trinn 8: Endre passord og konfigurer automatisk kjøring

Endre passord og sett opp automatisk kjøring
Endre passord og sett opp automatisk kjøring
Endre passord og sett opp automatisk kjøring
Endre passord og sett opp automatisk kjøring

På dette tidspunktet er vi nesten ferdige!

Klikk på bringebærmenyen øverst til venstre, velg Preferences-> Raspberry Pi Configuration

Det åpner en dialogboks. Klikk på "Endre passord …" og endre det til noe du vil huske!

Du kan velge å endre navnet på systemet (Hostname -feltet).

Sørg for at du klikker på Boot "To CLI"

Angi automatisk pålogging ("Logg inn som bruker 'pi'")

Nå må du sette opp lysbildeserien for å kjøre når du starter. Den enkleste måten er å legge til en linje i.bashrc filen. Fyrer opp vår nano -redaktør:

nano.bashrc

Ned-pil til slutten av filen og legg til følgende linje:

python3 raspi_slideshow/play_slideshow.py

Disse innstillingene betyr at:

  • Når den startes på nytt, logger Raspberry Pi automatisk på som bruker -pi
  • Det vil ikke starte en vindusbehandling, men bare kjøre på skjermen ("Boot to CLI")
  • Det starter opp bash -skallet, som leser.bashrc -filen, og den siste linjen i filen sier at du skal kjøre lysbildefremvisningen.

Etter dette vil reboot IKKE starte vindusbehandleren og kjøre lysbildefremvisningen automatisk. Du kan stoppe lysbildeserien ved å trykke Control-C under lysbildeserien. Dette vil sprette deg tilbake til bash -ledeteksten ($).

Hvis du vil starte vindusbehandleren fra dette punktet (for feilsøking eller enklere manipulering av innstillinger), kan du gjøre det ved å skrive "startx" på kommandolinjen.

Trinn 9: Bruk (Konfigurere Windows -maskinen)

Ved faktisk bruk kobles Raspberry Pi til vårt private trådløse nettverk ved oppstart. Den deler sin /delte katalog (og alt under) til nettverket. For å se denne mappen fra en Windows -maskin, må du kontrollere at du er på samme nettverk.

Jeg antar at du vil koble deg til dette fra en Windows -datamaskin på et kontor. For enten Windows 7 eller Windows 10, åpne en File Explorer for å se filene/mappene på datamaskinen din. Høyreklikk til venstre der det står "Datamaskin" eller "Min datamaskin", og velg deretter "Kart nettverksstasjon …"

Det vil åpne en dialogboks. Velg hvilken bokstav, f.eks. "Z:" du vil kartlegge stasjonen til. Skriv deretter inn i mappe -feltet:

{name-of-your-Pi-computer} delt

der {name-of-your-Pi-computer} er navnet du ga Raspberry pi tilbake i forrige trinn (se forrige bilde med dialogboksen).

Husk å klikke på "Koble til igjen ved pålogging". Det er mulig at hvis Raspberry Pi slås av når Windows -datamaskinen starter, må dette trinnet må gjentas (eller Windows -datamaskinen startes på nytt) for å se den delte mappen.

Hvis du velger å passordbeskytte mappen din, kan du legge til legitimasjon ved å velge "Koble til med forskjellige legitimasjoner" og skrive inn brukernavn/passord for Raspberry Pi.

Når du vil at lysbildene skal gå inn i lysbildeserien, kopierer du individuelle lysbildebilder (*) til presentasjonsmappen.

Skriptet vil KUN overvåke og vise innholdet i presentasjonsmappen, og ingenting på nivået over det (delt). Dermed bruker vi noen ganger trikset med å sette vanlige lysbilder på øverste nivå og deretter dra dem etter behov inn i eller ut av presentasjonsmappen.

Husk at når noe i presentasjonsmappen endres (filer legges til, slettes eller endres) venter lysbildefremvisningskriptet 2 minutter (120 sekunder, konfigurerbart i play_slideshow.py, søk etter ventetid) før du tilbakestiller og viser de nye lysbildene. Dette gir personen tid til å gjøre alle nødvendige endringer uten å tilbakestille etter at hver ny fil er lagt til.

Individuelle lysbildebilder er jpeg-, gif- eller png -filer som representerer et enkelt lysbilde. Den enkleste måten å generere disse på er å bruke Microsoft PowerPoint eller et lignende program. Du kan generere så mange lysbilder som du vil i Microsoft PowerPoint og lagre det som en PowerPoint -presentasjon. Klikk deretter Fil-> Eksport-> Endre filtype og lagre som enten PNG eller JPEG. Dette vil vise lysbildene som individuelle filer, f.eks. slide1.png, slide2.png, etc. Du kan deretter dra og slippe individuelle filer til Z: / Presentation (eller hvilken stasjonsbokstav du brukte). Vær oppmerksom på at presentasjonen er satt sammen i alfabetisk (ikke numerisk) rekkefølge, så slide11.png kommer etter slide1.png og før slide2.png. Du kan selvfølgelig gi lysbildene nytt navn før du kopierer dem til nettverksmappen. Bare sørg for at de beholder utvidelsen (f.eks.. Png). Slideshow -skriptet ser for øyeblikket bare etter filer med følgende utvidelser:.png,.png,.gif,.gif,.jpg,-j.webp

Trinn 10: Feilsøking

De fleste problemene kan løses med den gamle "prøv å slå den av og på igjen" -løsningen.

Hvis Raspberry Pi ikke kobles til, ikke oppdateres eller ser ut til å være fastlåst, kan du prøve å slå den på.

Hvis Windows -maskinen din mister den tilordnede nettverksstasjonen, kan du prøve å slå den på strøm eller legge til stasjonen manuelt igjen.

Hvis du har andre spørsmål/problemer, vennligst legg inn i kommentarene, så oppdaterer jeg dette trinnet med vanlige problemer og deres løsninger.

Trinn 11: Konklusjon og fremtidig arbeid

FERDIG

På dette tidspunktet kan du starte Raspberry Pi på nytt, enten gjennom menyene eller med strømknappen på strømledningen. Det fine med dette oppsettet er at når Pi-støvlene starter (strømbrudd, krasj, uansett), starter den i lysbildefremvisningsmodus, slik at du kan slå av og på etter eget ønske, og den skal komme seg fint. Når dette er installert og fungerer, kan du stort sett "sette det og glemme det", annet enn oppdateringene til lysbildene. I vårt tilfelle oppdaterer vår kirkeadministrator lysbildene ukentlig, og dette systemet har fungert feilfritt i omtrent et år.

Gi tilbakemelding! Jeg er mottakelig for å fikse feil eller unøyaktigheter. Jeg forstår at det er mange forskjellige måter å gjøre ting på, så jeg er ikke spent på å svare på spørsmål som "hvorfor brukte du python i stedet for {programmeringsspråk X}?" Eller forslag som er funksjonelt de samme (som "sudo apt" alle pakkene på en gang i stedet for en om gangen). Imidlertid er funksjonelle forbedringer alltid velkomne! Jeg prøver å gjøre dette så funksjonelt og nyttig som mulig, samtidig som det er enkelt å installere og lett å vedlikeholde. Jeg liker spesielt tilbakemeldinger fra de som har hatt nytte av denne instruksen. Jeg hjelper deg gjerne hvis jeg kan.

Fremtidig arbeid

Jeg begynner å jobbe med en versjon som gjør at videofiler (med lyd) kan blandes med de statiske lysbildene. Jeg tror jeg kan bruke vlc for det fra kommandolinjen. Jeg oppdaterer dette hvis jeg får det til å fungere. Kom gjerne med forslag!

Anbefalt: