Spisu treści:

Komunikacja LiFi: 6 kroków
Komunikacja LiFi: 6 kroków

Wideo: Komunikacja LiFi: 6 kroków

Wideo: Komunikacja LiFi: 6 kroków
Wideo: 6 kroków po awansie 2024, Listopad
Anonim
Komunikacja LiFi
Komunikacja LiFi

W tej instrukcji dowiesz się, jak wdrożyć komunikację LiFi (nadajnik i odbiornik) na poziomie oprogramowania i sprzętu.

Krok 1: Zbierz komponenty

Zbierz komponenty
Zbierz komponenty

Rzeczy, których będziesz potrzebować:

-Arduino i Zedboard

-oscyloskop

-Rezystory: 8k omów, 1k2 omów, 1 k omów, 220 omów i 27 omów.

-opamp, kondensator, zenerdiode, fotodioda, diody LED i breadbord.

Krok 2: Budowanie projektu

Budowanie projektu
Budowanie projektu
Budowanie projektu
Budowanie projektu
Budowanie projektu
Budowanie projektu

Na zdjęciu schemat odbiornika.

Najpierw podłącz anodę (zacisk ujemny) fotodiody do 3,3 V (Vcc), katodę (zacisk dodatni) do masy przez rezystor 8 k2 omów. Podłącz również katodę do dodatniego zacisku wzmacniacza operacyjnego, który będzie używany do wzmocnienia sygnału. Używamy ujemnego sprzężenia zwrotnego, więc podłącz 2 rezystory do ujemnego zacisku opampa, 1 (1k2 ohm) idzie do wyjścia opampa, drugi (220 ohm) idzie do masy. Aby chronić swój pin GPIO, podłącz szeregowo odwróconą diodę Zenera o napięciu 3,3 V z rezystorem 1 k2 omów do masy. Wyjście opamp musi być podłączone do pinu GPIO.

Nadajnik składa się tylko z jednego rezystora 27 omów i diody LED połączonych szeregowo. Jeden koniec idzie do GPIOpin, a drugi do masy, upewniając się, że krótka noga diody LED jest podłączona do masy.

Jeśli projekty działają, możesz zrobić dla nich płytkę drukowaną. Na płytce PCB połączyliśmy nadajnik i odbiornik na jednej płytce, dzięki czemu docelowo możemy przesyłać dane w dwóch kierunkach. Możesz również zobaczyć schematy PCB na zdjęciach odbiornika i nadajnika.

Krok 3: Testowanie projektu

Użyj oscyloskopu, aby sprawdzić projekt, ponieważ światło otoczenia i różnica w fotodiodach mogą dawać różne wyniki w sygnale wyjściowym.

Podłącz nadajnik do arduino i wygeneruj falę prostokątną o pożądanej częstotliwości. Umieść diodę LED nadajnika blisko fotodiody.

Podłącz jedną sondę do dodatniego zacisku twojego opampa, drugą do wyjścia twojego opampa. Jeśli twój sygnał wyjściowy jest zbyt słaby, rezystory ujemnego sprzężenia zwrotnego (1k2 ohm, 220 ohm) muszą zostać zmienione. Masz 2 możliwości, zwiększ rezystor 1k2 omów lub zmniejsz rezystor 220 omów. Jeśli moc wyjściowa jest zbyt wysoka, zrób odwrotnie.

Jeśli wszystko wygląda dobrze, przejdź do następnego kroku.

Krok 4: Uzyskanie całego niezbędnego oprogramowania

Uzyskanie całego niezbędnego oprogramowania
Uzyskanie całego niezbędnego oprogramowania

Na obrazie można zobaczyć różne etapy kodowania w celu wdrożenia LiFi. Aby zdekodować, te same kroki należy wykonać w odwrotnej kolejności.

Do tego projektu potrzebne są biblioteki, są one zawarte w podanych plikach i oto linki do repozytorium github:

-Reed-Solomon:

- Enkoder splotowy:

Aby pliki robiły to, co chcemy, dokonaliśmy w nich pewnych poprawek, więc konieczne jest użycie naszej wersji bibliotek zawartych w plikach.

Po koderze splotowym potrzebny jest ostatni etap kodowania, kodowanie manchester. Dane z kodera splotowego są przesyłane do bufora fifo. Bufor ten jest odczytywany w części PL zedboard, projekt jest zawarty w pliku 'LIFI.7z'. Dzięki projektowi możesz zbudować własny strumień bitów dla zedboard lub możesz po prostu użyć dostarczonego przez nas strumienia bitów. Aby korzystać z tego strumienia bitów, musisz najpierw zainstalować Xillinux 2.0 na zedboard. Wyjaśnienie, jak to zrobić, znajduje się na stronie internetowej Xillybus.

Krok 5: Utwórz pliki wykonywalne

Należy utworzyć dwa oddzielne pliki wykonywalne, jeden dla nadajnika i jeden dla odbiornika. Aby to zrobić, na zedboard należy wykonać następujące polecenia:

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

- Odbiornik: g++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Odbiornik.cpp -o Odbiornik

Krok 6: Testowanie wszystkiego

Podłącz nadajnik do pinu JD1_P, a odbiornik do pinu JD1_N na zedboard. Pamiętaj, aby zmienić plik wiązania, jeśli chcesz zmienić standardowe szpilki.

Aby sprawdzić, czy wszystko działa, otwórz 2 okna terminala w części PS. W jednym terminalu najpierw wykonaj część odbiorczą. Następnie wykonaj część nadajnika w drugim oknie terminala.

Jeśli wszystko pójdzie tak, jak powinno, wynik powinien być taki sam, jak na powyższym obrazku.

Zalecana: