Sadržaj:

LiFi komunikacija: 6 koraka
LiFi komunikacija: 6 koraka

Video: LiFi komunikacija: 6 koraka

Video: LiFi komunikacija: 6 koraka
Video: 6 ЛАЙФХАКОВ ДЕТЕЙ СССР 2024, Juli
Anonim
LiFi komunikacija
LiFi komunikacija

U ovom uputstvu ćete naučiti kako implementirati LiFi komunikaciju (predajnik i prijemnik) na softverskom i hardverskom nivou.

Korak 1: Skupite komponente

Skupite komponente
Skupite komponente

Stvari koje će vam trebati:

-Arduino i Zedboard

-osciloskop

Otpornici: 8k ohm, 1k2 ohm, 1k ohm, 220 ohm i 27 ohm.

-opamp, kondenzator, zenerdioda, fotodioda, LED diode i žica za hleb.

Korak 2: Izgradnja dizajna

Izgradnja dizajna
Izgradnja dizajna
Izgradnja dizajna
Izgradnja dizajna
Izgradnja dizajna
Izgradnja dizajna

Na slici je data šema prijemnika.

Prvo spojite anodu (negativni terminal) fotodiode na 3,3 V (Vcc), katodu (pozitivni terminal) na masu kroz otpornik od 8 k2 ohma. Također spojite katodu na pozitivni terminal vašeg opampa, koji će se koristiti za pojačavanje signala. Koristimo negativnu povratnu vezu pa spojite 2 otpornika na negativni terminal opampa, 1 (1k2 ohma) ide na izlaz opampa, drugi (220 ohma) ide na masu. Da biste zaštitili svoj GPIO pin, povežite serijski obrnutu zener diodu od 3,3 V s 1k2 ohmskim otpornikom na masu. Izlaz opampa mora biti spojen na GPIO pin.

Predajnik se sastoji samo od jednog otpornika od 27 ohma i LED u nizu. Jedan kraj ide na GPIOpin, a drugi na uzemljenje, pazeći da je kratka noga LED diode spojena na masu.

Ako dizajn radi, za njega možete napraviti PCB. Na PCB -u smo kombinirali odašiljač i prijemnik na jednoj ploči, tako da na kraju možemo poslati podatke u dva smjera. Sheme PCB -a možete vidjeti i na slikama za prijemnik i predajnik.

Korak 3: Testiranje dizajna

Koristite osciloskop da provjerite dizajn jer ambijentalno svjetlo i razlika u foto diodama mogu dati različite rezultate u izlaznom signalu.

Priključite svoj odašiljač na arduino i generirajte kvadratni val sa željenom frekvencijom. LED predajnika postavite blizu foto diode.

Spojite jednu sondu na pozitivni terminal opampa, drugu na izlaz opampa. Ako je vaš izlazni signal preslab, potrebno je promijeniti otpornike s negativnom povratnom spregom (1k2 ohm, 220 ohm). Imate 2 izbora, povećajte otpornik od 1 k2 ohma ili smanjite otpornik od 220 oma. Ako je izlaz previsok, učinite suprotno.

Ako sve izgleda u redu, prijeđite na sljedeći korak.

Korak 4: Nabavite sav potreban softver

Nabavite sav potreban softver
Nabavite sav potreban softver

Na slici se mogu vidjeti različiti koraci kodiranja za implementaciju LiFi -a. Za dekodiranje, iste korake je potrebno izvršiti obrnuto.

Za ovaj projekt potrebne su neke biblioteke, one su uključene u date datoteke, a ovdje su veze do github spremišta:

-Reed-Solomon:

-Konvolucijski koder:

Da bi datoteke radile ono što želimo, izvršili smo neke prilagodbe u njima pa je potrebno koristiti našu verziju biblioteka, uključenu u datoteke.

Nakon konvolucijskog kodera, potreban je posljednji korak kodiranja, manchester kodiranje. Podaci iz konvolucijskog kodera šalju se u fifo bafer. Ovaj bafer se čita u PL dijelu zedboard -a, projekt je uključen u datoteku 'LIFI.7z'. S projektom možete izgraditi vlastiti bitstream za zedboard ili jednostavno upotrijebiti bitstream koji smo dali. Da biste koristili ovaj tok bitova, morate prvo instalirati Xillinux 2.0 na zedboard. Objašnjenje kako se to radi nalazi se na web stranici Xillybus.

Korak 5: Napravite izvršne datoteke

Potrebno je napraviti dvije zasebne izvršne datoteke, jednu za predajnik i jednu za prijemnik. Da biste to učinili, potrebno je izvršiti sljedeće naredbe na zedboard -u:

- Odašiljač: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Transmission.cpp -o Odašiljač

- Prijemnik: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Receiver.cpp -o prijemnik

Korak 6: Sve testirajte

Priključite odašiljač na pin JD1_P, a prijemnik na pin JD1_N na zedbordu. Obavezno promijenite datoteku ograničenja ako želite promijeniti standardne pinove.

Da biste provjerili radi li sve, otvorite 2 terminala u dijelu PS. Na jednom terminalu prvo izvršite prijemni dio. Nakon toga izvedite dio odašiljača u drugom prozoru terminala.

Ako sve bude kako treba, rezultat bi trebao biti isti kao na gornjoj slici.

Preporučuje se: