Inhoudsopgave:
- Benodigdheden
- Stap 1: Hardware-installatie
- Stap 2: Configuratie
- Stap 3: Coderen
- Stap 4: Test het uit
Video: RSSI naar afstand met RF-modules (Xbees): 4 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:16
Xbees zijn kleine radiofrequentiemodules die handig kunnen zijn voor het heen en weer sturen van informatie en voor andere specifiekere toepassingen. Voor dit project gebruik ik ze om ontvangen signaalsterkte-indicatoren (RSSI) te krijgen om de afstand tussen de twee Xbee-modules te schatten. Ik wilde mijn werk aan dit project delen omdat ik maar heel weinig volledige tutorials heb gezien over het verkrijgen van RSSI met Xbees. Ik ontdekte dat een eenvoudige manier om de RSSI-waarden van een Xbee te lezen en te interpreteren een Arduino is. Voor deze tutorial heb je een kleine hoeveelheid Arduino-kennis nodig om de gegeven code te kunnen uploaden en indien nodig te kunnen bewerken. De ingebouwde seriële monitor op de Arduino kan de RSSI-waarden weergeven en als u verder wilt gaan, kunt u een LED- of LCD-scherm aansluiten om ze zonder computer te interpreteren.
Deze specifieke tutorial gebruikt één "zender" Xbee3-module die is geprogrammeerd in Micropython en één "ontvanger" xbee3 die via een Xbee-schild aan een Arduino Uno is bevestigd. Het is ook mogelijk om pakketten te verzenden door ze allebei te verbinden met hun eigen Arduino Uno, wat hier wordt behandeld in de online tutorial van iemand anders. Xbee3-modules zijn vereist omdat dit de enige Xbee-modules zijn die Micropython gebruiken, en ze zijn een van de weinige Xbees die het 802.15.4-protocol aanbieden, dat RSSI-waarden in verzonden pakketten bevat.
Benodigdheden
- XBee3 (x2)
- u. FL-antenne (x2)
- Arduino Uno - het Xbee-schild is ontworpen voor dit model
- Aansluitsnoer tussen de Arduino Uno en een computer USB-poort (USB A naar USB B)
- XBee-schild (x1)
- XBee naar USB-adapter (x1)
Opmerking: het kan goed zijn om twee adapters te krijgen zodat beide Xbees tegelijkertijd kunnen worden geconfigureerd, en het is ook goed voor debuggen omdat je ook pakketten via XCTU kunt verzenden.
Om er een autonoom systeem van te maken (optioneel):
- Draagbare powerpack die niet uitschakelt bij een laag stroomverbruik, of batterij-naar-USB-connector
- Batterij naar arduino-connector en 9V-batterij
Stap 1: Hardware-installatie
De fysieke installatie is vrij eenvoudig. Soldeer enkele connectorpinnen aan het Xbee-schild (langs de onderkant aan de buitenkant, waar de gaten zijn) en duw het vervolgens op zijn plaats bovenop de Arduino. RICHTING IS BELANGRIJK - Lijn elke Xbee uit met het witte PCB-spoor bovenop het schild ("ontvanger") of de adapter ("zender"). Om de u. FL-antennes aan te sluiten, raad ik deze handleiding van Sparkfun aan.
Stap 2: Configuratie
Het instellen van de computer kan wat lastiger zijn. Download eerst XCTU. Dit programma wordt gebruikt om de Xbees te configureren. De Xbee3-documentatie is een onschatbare bron voor XCTU en configuratie. Doorloop vervolgens de volgende stappen met elke Xbee aangesloten op de computer op de adapter (PWR-LED op adapter moet oplichten).
Klik in XCTU op "Ontdek radiomodules…" (pictogram is een Xbee met een vergrootglas in de linkerbovenhoek) en klik op volgende en dan op voltooien. Wacht vervolgens tot de Xbee in de zoekopdracht verschijnt, klik erop en klik op "Geselecteerde apparaten toevoegen". Klik op de Xbee die aan de linkerkant van het scherm verschijnt en wacht tot de instellingen zijn geladen voordat u op "Firmware bijwerken" klikt. Volg de eerste afbeelding hierboven en stel de firmwareversie in op 802.15.4 en de nieuwste versie. Configureer vervolgens de "verzenden" Xbee om overeen te komen met de "verzenden" instellingen in de tweede afbeelding, en doe hetzelfde voor de "ontvangen" Xbee. Je zult ook de "receive" Xbee in API-modus 2 moeten zetten om met de Arduino te kunnen communiceren (dit is heel gemakkelijk te googlen als je het moeilijk vindt).
Stap 3: Coderen
Voor de Arduino moet u het eerste bijgevoegde bestand downloaden op de "ontvanger" Xbee. Je moet ook de Xbee-Arduino-bibliotheek downloaden, die hier te vinden is. Arduino is een eenvoudige en goed gedocumenteerde taal, dus als er problemen zijn, is de Arduino-website je vriend.
De Micropython-code is het tweede bijgevoegde bestand. Volg deze Instructable om de code te downloaden op de "zender" Xbee.
Stap 4: Test het uit
Nu alle benodigde onderdelen op hun plaats zitten, kun je eindelijk pakketjes versturen. Zorg ervoor dat de "zender" Xbee de code heeft en sluit hem vervolgens aan op een stroombron (aangesloten houden op de computer werkt ook prima). Voor de "ontvanger" Xbee houdt u de Arduino eerst op de computer aangesloten en zodra de code is gedownload, opent u de seriële monitor. De seriële monitor zou dan waarden moeten weergeven (ongeveer van 20-70).
Uit mijn eigen testen heb ik ontdekt dat in grote open ruimtes de RSSI-waarden correleren met afstanden tot 15 ft en in kleinere ruimtes tot 5 ft. Dit komt door multipathing, een veelvoorkomend probleem als het gaat om radiofrequentiesignalen. Ik hoop dat deze tutorial nuttig was en bedankt voor het lezen.
Bronnen: andere RSSI-instructie, RSSI met twee arduino's/xbees en Xbee- en Arduino-documentatie
Aanbevolen:
Transform-a-Car: op afstand bestuurbaar naar zelfgestuurd - Ajarnpa
Transform-a-Car: Remote Controlled to Self Controlled: dit is een hack op een RC-auto met een kapotte afstandsbediening. Je vindt er genoeg bij garageverkoop
Lange afstand, 1,8 km, Arduino naar Arduino draadloze communicatie met de HC-12 - Ajarnpa
Lange afstand, 1,8 km, Arduino naar Arduino draadloze communicatie met de HC-12.: In deze instructable leert u hoe u kunt communiceren tussen Arduino's over een lange afstand tot 1,8 km in open lucht. De HC-12 is een draadloze seriële poort communicatiemodule die zeer nuttig, extreem krachtig en gemakkelijk te gebruiken is. Eerst ga je
Games uploaden naar Arduboy en 500 games naar Flash-cart: 8 stappen
Spellen uploaden naar Arduboy en 500 spellen naar Flash-cart: Ik heb een zelfgemaakte Arduboy gemaakt met serieel Flash-geheugen dat maximaal 500 spellen kan opslaan om onderweg te spelen. Ik hoop te delen hoe je games kunt laden, inclusief hoe je games opslaat in het seriële flash-geheugen en je eigen geconsolideerde gamepakket kunt maken
Flash AT Command Firmware naar ESP01-module (vereist een USB-naar-TTL-adapter): 5 stappen
Flash AT Command Firmware naar ESP01-module (vereist een USB-naar-TTL-adapter): door Jay Amiel AjocGensan PHfacebook.com/geeamealyoutube.com/jayamielajoc
12v naar USB-adapter 12v naar 5v transformator (ideaal voor auto's): 6 stappen
12v naar USB-adapter 12v naar 5v-transformator (ideaal voor auto's): hier wordt uitgelegd hoe u een 12v-naar-USB (5v)-adapter maakt. Het meest voor de hand liggende gebruik hiervan is voor 12v-autoadapters, maar overal waar je 12v hebt, kun je het gebruiken! Als je 5v nodig hebt voor iets anders dan USB, sla dan gewoon de stappen over het toevoegen van de USB-poorten over