Innholdsfortegnelse:

LiFi -kommunikasjon: 6 trinn
LiFi -kommunikasjon: 6 trinn

Video: LiFi -kommunikasjon: 6 trinn

Video: LiFi -kommunikasjon: 6 trinn
Video: Helvegen. Kaland skole. 6.trinn. Vikingprosjekt 2024, November
Anonim
LiFi kommunikasjon
LiFi kommunikasjon

I denne instruksen lærer du hvordan du implementerer LiFi -kommunikasjon (sender og mottaker) på programvare- og maskinvarenivå.

Trinn 1: Samle komponenter

Samle komponenter
Samle komponenter

Ting du trenger:

-Arduino og Zedboard

-oskilloskop

-Motstandere: 8k ohm, 1k2 ohm, 1k ohm, 220 ohm og 27 ohm.

-ampe, kondensator, zenerdiode, fotodiode, lysdioder og brødbord.

Trinn 2: Bygg designet

Å bygge designet
Å bygge designet
Å bygge designet
Å bygge designet
Å bygge designet
Å bygge designet

På bildet er skjematisk for mottakeren gitt.

Koble først anoden (negativ terminal) til fotodioden til 3,3V (Vcc), katoden (positiv terminal) til jord gjennom en 8k2 ohm motstand. Koble også katoden til den positive terminalen på opampen din, som skal brukes til å forsterke signalet. Vi bruker negativ tilbakemelding, så koble 2 motstander til opampens negative terminal, 1 (1k2 ohm) går til utgangen til opampen, den andre (220 ohm) går til bakken. For å beskytte GPIO -pinnen, kobler du en reversert forspent zenerdiode på 3,3V i serie med en 1k2 ohm motstand til bakken. Utgangen fra opampen må kobles til en GPIO -pin.

Senderen består bare av en 27 ohm motstand og en LED i serie. Den ene enden går til en GPIOpin og den andre til bakken, og sørg for at LED -kortets korte ben er koblet til jord.

Hvis designene fungerer, kan du lage en PCB for den. På kretskortet kombinerte vi senderen og mottakeren på ett kort, slik at vi til slutt kan sende data i to retninger. Du kan også se PCB -skjemaene på bildene for mottakeren og senderen.

Trinn 3: Testing av designet

Bruk et oscilloskop for å kontrollere designet fordi omgivelseslys og forskjellen i fotodioder kan gi forskjellige resultater i utgangssignal.

Koble senderen til en arduino og generer en firkantbølge med ønsket frekvens. Sett senderens LED nær fotodioden.

Koble en sonde til den positive terminalen på opampen din, en annen til utgangen fra opampen din. Hvis utsignalet ditt er for svakt, må de negative tilbakemeldingsmotstandene (1k2 ohm, 220 ohm) endres. Du har 2 valg, øk 1k2 ohm motstanden eller reduser 220 ohm motstanden. Hvis utgangen er for høy, gjør det motsatte.

Hvis alt ser bra ut, fortsett til neste trinn.

Trinn 4: Få all nødvendig programvare

Få all nødvendig programvare
Få all nødvendig programvare

På bildet kan du se de forskjellige kodingstrinnene for å implementere LiFi. For å dekode må de samme trinnene utføres omvendt.

For dette prosjektet er det nødvendig med noen biblioteker, de er inkludert i de gitte filene, og her er koblingene til github -depotet:

-Reed-Solomon:

-Konvolusjonskoder:

For å få filene til å gjøre det vi vil, har vi gjort noen justeringer i dem, så det er nødvendig å bruke vår versjon av bibliotekene, inkludert i filene.

Etter konvolusjonskoderen er et siste kodingstrinn nødvendig, manchester -kodingen. Dataene fra konvolusjonskoderen sendes til en fifobuffer. Denne bufferen leses i PL -delen av zedboard, prosjektet er inkludert i filen 'LIFI.7z'. Med prosjektet kan du bygge din egen bitstream for zedboard, eller du kan bare bruke bitstrømmen vi ga. For å bruke denne bitstrømmen må du først installere Xillinux 2.0 på zedboard. Forklaringen på hvordan du gjør dette er gitt på Xillybus -nettstedet.

Trinn 5: Lag kjørbare

Det må lages to separate kjørbare filer, en for senderen og en for mottakeren. For å gjøre dette må følgende kommandoer utføres på zedboard:

- Sender: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Transmission.cpp -o Transmitter

- Mottaker: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Receiver.cpp -o mottaker

Trinn 6: Testing av alt

Koble senderen til JD1_P -pinnen og mottakeren til JD1_N -pinnen på zedboardet. Sørg for å endre begrensningsfilen hvis du vil endre standardnålene.

For å teste om alt fungerer, åpner du to terminalvinduer i PS -delen. Utfør mottakerdelen først i en terminal. Etter det, utfør senderdelen i det andre terminalvinduet.

Hvis alt går som det skal, skal resultatet bli det samme som på bildet ovenfor.

Anbefalt: