Съдържание:
- Стъпка 1: Съберете компоненти
- Стъпка 2: Изграждане на дизайна
- Стъпка 3: Тестване на дизайна
- Стъпка 4: Получаване на целия необходим софтуер
- Стъпка 5: Направете изпълними файлове
- Стъпка 6: Тествайте всичко
Видео: LiFi комуникация: 6 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
В тази инструкция ще научите как да прилагате LiFi комуникация (предавател и приемник) на софтуерно и хардуерно ниво.
Стъпка 1: Съберете компоненти
Нещата, от които се нуждаете:
-Arduino и Zedboard
-осцилоскоп
-Резистори: 8k ohm, 1k2 ohm, 1k ohm, 220 ohm и 27 ohm.
-омпа, кондензатор, ценердиод, фотодиод, светодиоди и корда.
Стъпка 2: Изграждане на дизайна
На изображението е дадена схемата за приемника.
Първо, свържете анода (отрицателен извод) на фотодиода към 3.3V (Vcc), катода (положителен извод) към земята чрез резистор 8k2 ohm. Свържете също катода към положителния извод на вашия opamp, който ще се използва за усилване на сигнала. Използваме отрицателна обратна връзка, така че свържете 2 резистора към отрицателния извод на опампата, 1 (1k2 ома) отива към изхода на опампата, другият (220 ома) отива към земята. За да защитите своя GPIO щифт, свържете последователно обърнат ценеров диод от 3.3V с резистор 1k2 ohm към земята. Изходът на opamp трябва да бъде свързан към GPIO щифт.
Предавателят се състои само от един 27 омов резистор и светодиод последователно. Единият край отива към GPIOpin, а другият към земята, като се уверите, че късият крак на светодиода е свързан към земята.
Ако дизайните работят, можете да направите печатна платка за него. На печатната платка комбинирахме предавателя и приемника на една платка, така че в крайна сметка можем да изпращаме данни в две посоки. Можете също да видите схемите на печатни платки в изображенията за приемника и предавателя.
Стъпка 3: Тестване на дизайна
Използвайте осцилоскоп, за да проверите дизайна, тъй като околната светлина и разликата във фотодиодите могат да дадат различни резултати в изходния сигнал.
Свържете вашия предавател към arduino и генерирайте квадратна вълна с желаната честота. Поставете светодиода на предавателя близо до фотодиода.
Свържете една сонда към положителния извод на вашия opamp, друга към изхода на вашия opamp. Ако вашият изходен сигнал е твърде слаб, резисторите с отрицателна обратна връзка (1k2 ohm, 220 ohm) трябва да бъдат сменени. Имате 2 възможности за избор, увеличете резистора 1k2 ohm или намалете резистора 220 ohm. Ако продукцията е твърде висока, направете обратното.
Ако всичко изглежда наред, преминете към следващата стъпка.
Стъпка 4: Получаване на целия необходим софтуер
На изображението могат да се видят различните стъпки за кодиране за прилагане на LiFi. За да декодирате, същите стъпки трябва да се изпълнят в обратен ред.
За този проект са необходими някои библиотеки, те са включени в дадените файлове и ето връзките към хранилището на github:
-Рийд-Соломон:
-Конволюционен енкодер:
За да накараме файловете да правят това, което искаме, направихме някои корекции в тях, така че е необходимо да използваме нашата версия на библиотеките, включени във файловете.
След конволюционния енкодер е необходима една последна стъпка на кодиране, кодирането в Манчестър. Данните от конволюционния енкодер се изпращат към fifo буфер. Този буфер се чете в PL частта на zedboard, проектът е включен във файла 'LIFI.7z'. С проекта можете да изградите свой собствен поток от битове за zedboard или просто да използвате предоставения от нас бит поток. За да използвате този поток от битове, първо трябва да инсталирате Xillinux 2.0 на zedboard. Обяснението как да направите това е дадено на уебсайта на Xillybus.
Стъпка 5: Направете изпълними файлове
Трябва да се направят два отделни изпълними файла, един за предавателя и един за приемника. За да направите това, следните команди трябва да бъдат изпълнени на zedboard:
- Предавател: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Transmission.cpp -o Предавател
- Приемник: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Receiver.cpp -o приемник
Стъпка 6: Тествайте всичко
Свържете предавателя към щифта JD1_P и приемника към щифта JD1_N на zedboard. Не забравяйте да промените ограничителния файл, ако искате да промените стандартните щифтове.
За да проверите дали всичко работи, отворете 2 терминални прозореца в частта PS. В един терминал първо изпълнете приемащата част. След това изпълнете частта на предавателя във втория терминален прозорец.
Ако всичко върви както трябва, резултатът трябва да е същият като на горното изображение.
Препоръчано:
Безжична комуникация SmartHome: Екстремните основи на MQTT: 3 стъпки
Безжична комуникация SmartHome: Екстремните основи на MQTT: Основи на MQTT: ** Ще правя серия за домашна автоматизация, ще премина през стъпките, които предприех, за да науча всичко, което съм направил в бъдеще. Този Instructable е базовата линия за това как да настроя MQTT за използване в моите бъдещи Instructables. Хоув
Безжична комуникация LoRa от 3 до 8 км с ниска цена E32 (sx1278/sx1276) Устройство за Arduino, Esp8266 или Esp32: 15 стъпки
Безжична комуникация LoRa от 3 до 8 км с ниска цена E32 (sx1278/sx1276) Устройство за Arduino, Esp8266 или Esp32: Създавам библиотека за управление на EBYTE E32 въз основа на серия Semtech на устройство LoRa, много мощно, просто и евтино устройство. Можете да намерите 3Km версия тук, 8Km версия тук Те могат да работят на разстояние от 3000m до 8000m и имат много функции и
MPU 6050 Gyro, комуникация с акселерометър с Arduino (Atmega328p): 5 стъпки
MPU 6050 Gyro, комуникация с акселерометър с Arduino (Atmega328p): MPU6050 IMU има 3-осен акселерометър и 3-осен жироскоп, интегрирани в един чип. Жироскопът измерва скоростта на въртене или скоростта на промяна на ъгловата позиция с течение на времето Ос X, Y и Z. Изходите на жироскопа са
СЕНЗОРНА КОМУНИКАЦИЯ ПО USB: 3 стъпки
СЕНЗОРНА КОМУНИКАЦИЯ ПО USB: Този урок показва как да използвате изолираната USB EZO Carrier Board за взаимодействие с EZO вериги. С няколко прости стъпки ще можете да калибрирате и отстранявате грешки или дори да наблюдавате в реално време въпросния параметър. ПРЕДИМСТВА:
Arduino и мобилна Bluetooth комуникация (пратеник): 8 стъпки
Arduino и мобилна Bluetooth комуникация (пратеник): Комуникацията играе важен фактор в ежедневието ни. Но през това време на блокиране комуникацията със собственото ни семейство или общуването с хората в дома ни понякога се нуждаят от мобилни телефони. Но използването на мобилни телефони за кратко