Πίνακας περιεχομένων:
- Βήμα 1: Συγκέντρωση εξαρτημάτων
- Βήμα 2: Χτίζοντας το σχέδιο
- Βήμα 3: Δοκιμή του σχεδίου
- Βήμα 4: Λήψη όλου του απαραίτητου λογισμικού
- Βήμα 5: Κάντε τα εκτελέσιμα
- Βήμα 6: Δοκιμάζοντας τα πάντα
Βίντεο: Επικοινωνία LiFi: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Σε αυτό το διδακτικό θα μάθετε πώς να εφαρμόζετε την επικοινωνία LiFi (πομπός και δέκτης) σε επίπεδο λογισμικού και υλικού.
Βήμα 1: Συγκέντρωση εξαρτημάτων
Πράγματα που θα χρειαστείτε:
-Ardduino και Zedboard
-παλμοσκόπιο
-Αντίσταση: 8k ohm, 1k2 ohm, 1k ohm, 220 ohm και 27 ohm.
-opamp, πυκνωτής, zenerdiode, photodiode, LEDs και breadbord.
Βήμα 2: Χτίζοντας το σχέδιο
Στην εικόνα, δίνεται το σχηματικό για τον δέκτη.
Αρχικά, συνδέστε την άνοδο (αρνητικό τερματικό) της φωτοδιόδου σε 3,3V (Vcc), την κάθοδο (θετικό τερματικό) στη γείωση μέσω αντίστασης 8k2 ohm. Συνδέστε επίσης την κάθοδο στο θετικό τερματικό του opamp, το οποίο θα χρησιμοποιηθεί για την ενίσχυση του σήματος. Χρησιμοποιούμε αρνητική ανάδραση, οπότε συνδέστε 2 αντιστάσεις στον αρνητικό ακροδέκτη του opamp, 1 (1k2 ohm) πηγαίνει στην έξοδο του opamp, ο άλλος (220 ohm) πηγαίνει στη γείωση. Για να προστατέψετε τον ακροδέκτη GPIO, συνδέστε μια αντίστροφη προκατειλημμένη δίοδο zener 3,3V σε σειρά με αντίσταση 1k2 ohm στη γείωση. Η έξοδος του opamp πρέπει να συνδεθεί σε έναν ακροδέκτη GPIO.
Ο πομπός απλώς αποτελείται από μία αντίσταση 27 ohm και μια σειρά LED. Το ένα άκρο πηγαίνει σε ένα GPIOpin και το άλλο στη γείωση, διασφαλίζοντας ότι το κοντό πόδι του LED είναι συνδεδεμένο με τη γείωση.
Εάν τα σχέδια λειτουργούν, μπορείτε να φτιάξετε ένα PCB για αυτό. Στο PCB συνδυάσαμε τον πομπό και τον δέκτη σε έναν πίνακα, ώστε να μπορούμε τελικά να στείλουμε δεδομένα σε δύο κατευθύνσεις. Μπορείτε επίσης να δείτε τα διαγράμματα PCB στις εικόνες για τον δέκτη και τον πομπό.
Βήμα 3: Δοκιμή του σχεδίου
Χρησιμοποιήστε έναν παλμογράφο για να ελέγξετε το σχέδιο επειδή το φως του περιβάλλοντος και η διαφορά στις δίοδοι φωτογραφιών μπορούν να δώσουν διαφορετικά αποτελέσματα στο σήμα εξόδου.
Συνδέστε τον πομπό σας σε ένα arduino και δημιουργήστε ένα τετράγωνο κύμα με την επιθυμητή συχνότητα. Τοποθετήστε το LED πομπού κοντά στη δίοδο φωτογραφίας.
Συνδέστε έναν αισθητήρα στο θετικό τερματικό του opamp και έναν άλλο στην έξοδο του opamp. Εάν το σήμα εξόδου σας είναι πολύ αδύναμο, οι αντιστάσεις αρνητικής ανάδρασης (1k2 ohm, 220 ohm) πρέπει να αλλάξουν. Έχετε 2 επιλογές, αυξήστε την αντίσταση 1k2 ohm ή μειώστε την αντίσταση 220 ohm. Εάν η έξοδος είναι πολύ υψηλή, κάντε το αντίθετο.
Εάν όλα φαίνονται εντάξει, προχωρήστε στο επόμενο βήμα.
Βήμα 4: Λήψη όλου του απαραίτητου λογισμικού
Στην εικόνα διακρίνονται τα διαφορετικά βήματα κωδικοποίησης για την εφαρμογή LiFi. Για την αποκωδικοποίηση, τα ίδια βήματα πρέπει να εκτελεστούν αντίστροφα.
Για αυτό το έργο χρειάζονται κάποιες βιβλιοθήκες, περιλαμβάνονται στα δεδομένα αρχεία και εδώ είναι οι σύνδεσμοι προς το αποθετήριο github:
-Reed-Solomon:
-Convolutional encoder:
Για να κάνουμε τα αρχεία να κάνουν αυτό που θέλουμε, κάναμε κάποιες προσαρμογές σε αυτά, οπότε είναι απαραίτητο να χρησιμοποιήσουμε την έκδοση των βιβλιοθηκών μας, που περιλαμβάνονται στα αρχεία.
Μετά τον συνελικτικό κωδικοποιητή, απαιτείται ένα τελευταίο βήμα κωδικοποίησης, η κωδικοποίηση manchester. Τα δεδομένα από τον κωδικοποιητή μετατροπής αποστέλλονται σε ένα buffer fifo. Αυτό το buffer διαβάζεται στο τμήμα PL του zedboard, το έργο περιλαμβάνεται στο αρχείο 'LIFI.7z'. Με το έργο μπορείτε να δημιουργήσετε το δικό σας bitstream για το zedboard ή μπορείτε απλά να χρησιμοποιήσετε το bitstream που σας δώσαμε. Για να χρησιμοποιήσετε αυτό το bitstream, πρέπει πρώτα να εγκαταστήσετε το Xillinux 2.0 στο zedboard. Η εξήγηση πώς να το κάνετε αυτό παρέχεται στον ιστότοπο του Xillybus.
Βήμα 5: Κάντε τα εκτελέσιμα
Πρέπει να γίνουν δύο ξεχωριστά εκτελέσιμα, ένα για τον πομπό και ένα για τον δέκτη. Για να γίνει αυτό, πρέπει να εκτελεστούν οι ακόλουθες εντολές στο zedboard:
- Πομπός: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Transmission.cpp -o Transmitter
- Δέκτης: g ++ ReedSolomon.cpp Interleaver.cpp viterbi.cpp Receiver.cpp -o Receiver
Βήμα 6: Δοκιμάζοντας τα πάντα
Συνδέστε τον πομπό στον ακροδέκτη JD1_P και τον δέκτη στον ακροδέκτη JD1_N του zedboard. Βεβαιωθείτε ότι έχετε αλλάξει το αρχείο περιορισμού εάν θέλετε να αλλάξετε τις τυπικές ακίδες.
Για να ελέγξετε αν όλα λειτουργούν, ανοίξτε 2 παράθυρα τερματικών στο τμήμα PS. Σε ένα τερματικό εκτελέστε πρώτα το τμήμα λήψης. Μετά από αυτό, εκτελέστε το τμήμα πομπού στο δεύτερο παράθυρο τερματικού.
Εάν όλα πάνε όπως θα έπρεπε, το αποτέλεσμα θα πρέπει να είναι το ίδιο όπως στην παραπάνω εικόνα.
Συνιστάται:
Ασύρματη επικοινωνία LoRa 3Km έως 8Km με χαμηλό κόστος E32 (sx1278/sx1276) Συσκευή για Arduino, Esp8266 ή Esp32: 15 βήματα
Ασύρματη επικοινωνία LoRa 3Km έως 8Km με χαμηλό κόστος 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 αξόνων ενσωματωμένο σε ένα μόνο τσιπ. Το γυροσκόπιο μετρά την ταχύτητα περιστροφής ή το ρυθμό αλλαγής της γωνιακής θέσης με την πάροδο του χρόνου, Άξονας Χ, Υ και Ζ. Οι έξοδοι του γυροσκοπίου είναι
Κινητό τηλέφωνο με Arduino-bluetooth Επικοινωνία οικιακού αυτοματισμού: 5 βήματα
Κινητό τηλέφωνο Arduino-bluetooth Contactless Home Automation: οι χαιρετισμοί στην εποχή της πανδημίας του covid-19 είναι απαραίτητο για να αποφύγετε την επαφή και να διατηρήσετε την κοινωνική απόσταση, αλλά για να ενεργοποιήσετε και να απενεργοποιήσετε τις συσκευές πρέπει να αγγίξετε τους πίνακες αλλά μην περιμένετε άλλο εισαγωγή συστήματος επαφής λιγότερο για έλεγχο
ΑΙΣΘΗΤΗΡΙΚΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ USB: 3 βήματα
ΑΙΣΘΗΤΗΡΙΚΗ ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ USB: Αυτό το σεμινάριο δείχνει πώς να χρησιμοποιήσετε το Isolated USB EZO Carrier Board για να αλληλεπιδράσετε με κυκλώματα EZO. Με μερικά απλά βήματα, θα μπορείτε να βαθμονομήσετε και να εντοπίσετε σφάλματα κυκλωμάτων ή ακόμη και να παρακολουθήσετε σε πραγματικό χρόνο την εν λόγω παράμετρο. ΠΛΕΟΝΕΚΤΗΜΑΤΑ:
Arduino και Κινητή επικοινωνία Bluetooth (αγγελιοφόρος): 8 βήματα
Arduino και Κινητή επικοινωνία Bluetooth (αγγελιοφόρος): Η επικοινωνία παίζει σημαντικό παράγοντα στην καθημερινή μας ζωή. Αλλά κατά τη διάρκεια αυτής της περιόδου κλειδώματος η επικοινωνία με τη δική μας οικογένεια ή η επικοινωνία με τους ανθρώπους στο σπίτι μας μερικές φορές χρειάζονται κινητά τηλέφωνα. Αλλά η χρήση κινητών τηλεφώνων για σύντομο χρονικό διάστημα