Taula de continguts:

Comunicació LiFi: 6 passos
Comunicació LiFi: 6 passos

Vídeo: Comunicació LiFi: 6 passos

Vídeo: Comunicació LiFi: 6 passos
Vídeo: Andy Grammer - "Don't Give Up On Me" [Official Video from the Five Feet Apart Film] 2024, Juliol
Anonim
Comunicació LiFi
Comunicació LiFi

En aquest instructiu aprendreu a implementar la comunicació LiFi (transmissor i receptor) a nivell de programari i maquinari.

Pas 1: reuniu components

Reuneix components
Reuneix components

Coses que necessitareu:

-Arduino i Zedboard

-osciloscopi

-Resistències: 8k ohm, 1k2 ohm, 1k ohm, 220 ohm i 27 ohm.

-amp, condensador, zenerdiode, fotodiode, LEDs i breadbord.

Pas 2: Construir el disseny

Construint el disseny
Construint el disseny
Construint el disseny
Construint el disseny
Construint el disseny
Construint el disseny

A la imatge, apareix l’esquema del receptor.

En primer lloc, connecteu l’ànode (terminal negatiu) del fotodiode a 3,3V (Vcc), el càtode (terminal positiu) a terra mitjançant una resistència de 8k2 ohm. Connecteu també el càtode al terminal positiu del vostre opamp, que s’utilitzarà per amplificar el senyal. Estem utilitzant retroalimentació negativa, de manera que connecteu 2 resistències al terminal negatiu de l’opamp, 1 (1k2 ohm) va a la sortida de l’opamp, l’altre (220 ohm) va a terra. Per protegir el vostre pin GPIO, connecteu un diode zener esbiaixat invertit de 3,3V en sèrie amb una resistència de 1k2 ohm a terra. La sortida de l’opamp ha d’estar connectada a un pin GPIO.

El transmissor només consta d’una resistència de 27 ohms i un LED en sèrie. Un extrem va a un GPIOpin i l’altre a terra, assegurant-se que la pota curta del LED està connectada a terra.

Si els dissenys funcionen, podeu fer-ne un PCB. Al PCB hem combinat el transmissor i el receptor en una placa, de manera que podem enviar dades en dues direccions. També podeu veure els esquemes del PCB a les imatges del receptor i del transmissor.

Pas 3: provar el disseny

Utilitzeu un oscil·loscopi per comprovar el disseny, perquè la llum ambiental i la diferència en els díodes fotogràfics poden donar resultats diferents en el senyal de sortida.

Connecteu el transmissor a un arduino i genereu una ona quadrada amb la freqüència desitjada. Col·loqueu el LED del transmissor a prop del díode fotogràfic.

Connecteu una sonda al terminal positiu del vostre opamp i una altra a la sortida del vostre opamp. Si el senyal de sortida és massa feble, cal canviar les resistències de retroalimentació negativa (1k2 ohm, 220 ohm). Teniu dues opcions: augmentar la resistència de 1k2 ohm o reduir la resistència de 220 ohm. Si la sortida és massa alta, feu el contrari.

Si tot sembla correcte, continueu amb el següent pas.

Pas 4: Obtenir tot el programari necessari

Obtenir tot el programari necessari
Obtenir tot el programari necessari

A la imatge es poden veure els diferents passos de codificació per implementar LiFi. Per descodificar, cal executar els mateixos passos a la inversa.

Per a aquest projecte es necessiten algunes biblioteques, s’inclouen als fitxers donats i aquí teniu els enllaços al repositori de github:

-Reed-Solomon:

-Codificador de conversió:

Per aconseguir que els fitxers facin el que volem, hi vam fer alguns ajustaments, de manera que cal utilitzar la nostra versió de les biblioteques, inclosa als fitxers.

Després del codificador de convolució, cal un darrer pas de codificació, la codificació de Manchester. Les dades del codificador de convolució s’envien a un buffer fifo. Aquest buffer es llegeix a la part PL del zedboard, el projecte s'inclou al fitxer 'LIFI.7z'. Amb el projecte podeu crear el vostre propi flux de bits per al zedboard o només podeu utilitzar el flux de bits que us proporcionem. Per utilitzar aquest flux de bits, primer heu d’instal·lar Xillinux 2.0 al zedboard. L'explicació de com fer-ho es proporciona al lloc web de Xillybus.

Pas 5: feu els fitxers executables

Cal fer dos executables separats, un per al transmissor i un per al receptor. Per fer-ho, cal executar les ordres següents al taulell:

- Transmissor: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Transmission.cpp -o Transmissor

- Receptor: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Receiver.cpp -o Receptor

Pas 6: provar-ho tot

Connecteu el transmissor al pin JD1_P i el receptor al pin JD1_N del tauler de control. Assegureu-vos de canviar el fitxer de restriccions si voleu canviar els pins estàndard.

Per comprovar si tot funciona, obriu 2 finestres de terminal a la part PS. En un terminal, executeu primer la part receptora. Després, executeu la part del transmissor a la segona finestra del terminal.

Si tot va com hauria de ser, el resultat hauria de ser el mateix que a la imatge superior.

Recomanat: