Innholdsfortegnelse:
- Trinn 1: Hvordan fungerer det?
- Trinn 2: Hvordan konfigurere de tre sensorstasjonene og objektene
- Trinn 3: Hvordan konfigurere hovedstasjonen
- Trinn 4: Liste over materiale
Video: Ultralydbasert posisjoneringssystem: 4 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Alle versjonene av ultralydradarer jeg har funnet for arduino -enheter (Arduino - Radar/Ultrasonic Detector, Arduino Ultrasonic Radar Project) er veldig fine radarer, men alle er "blinde". Jeg mener, radaren oppdager noe, men hva oppdager den?
Så jeg foreslår meg selv å utvikle et system som er i stand til å oppdage objekter og identifisere dem. Med andre ord et posisjoneringssystem uten bruk av GPS -enheter, men ultralyddetektorer.
Dette er resultatet jeg håper du liker.
Trinn 1: Hvordan fungerer det?
Posisjonssystemene er dannet av tre sensorstasjoner med ultralyddetektorer og id_node 1, 2 og 3 som danner et rektangel eller firkant som feier en vinkel på 90º og hvor avstandene mellom dem er kjent som vist på bilde 1.
const flyte avstand mellom 1 og 2 = 60,0;
const flyte avstand mellom 2 og 3 = 75,0;
Disse sensorene måler avstanden og vinkelen til andre objekter med id_node større enn 3 som også har en ultralyddetektor som feier en vinkel på 170 °.
Alle sender avstander, målte vinkler og id_node til en annen hovedstasjon ved hjelp av trådløse kommunikasjoner for å analysere, beregne posisjonen til objektene ved hjelp av trigonometriberegning og identifisere dem.
For å unngå forstyrrelser synkroniserer hovedstasjonen alle ultralyddetektorer på den måten at bare én ultralyddetektor måler i hvert øyeblikk
Etter det og ved hjelp av en seriell kommunikasjon sender hovedstasjonen informasjonen (vinkel, avstand, id_objekt) til en behandlingsskisse for å plotte resultatene.
Trinn 2: Hvordan konfigurere de tre sensorstasjonene og objektene
Den eneste funksjonen til hver sensorstasjon er å oppdage objekter og sende listen over avstand, vinkel og ID -node som er målt til hovedstasjonen.
Så du må oppdatere maksimal deteksjonsavstand ("valid_max_distance") som er tillatt og den minste ("valid_min_distance") (centimeter) for å forbedre deteksjonen og begrense deteksjonssonen:
int valid_max_distance = 80;
int valid_min_distance = 1;
ID -noden til disse sensorstasjonene (“denne_node” i koden nedenfor) er 1, 2 og 3 og ID -noden til hovedstasjonen er 0.
const uint16_t this_node = 01; // Adressen til noden vår i oktalt format (Node01, Node02, Node03)
const uint16_t other_node = 00; // Adressen til hovednoden (Node00) i Octal -format
Hver sensorstasjon feier og vinkel på 100º (“max_angle” i koden nedenfor)
#define min_angle 0
#define max_angle 100
Som ovenfor er den eneste funksjonen til et objekt å oppdage objekter og sende listen over avstander, vinkler og ID -objekt målt til hovedstasjonen. IDen til ett objekt (“denne_node” i koden nedenfor) må være større enn 3.
Hvert objekt feier og vinkler på 170º, og som ovenfor er det mulig å oppdatere maksimal og minimum deteksjonsavstand.
const uint16_t this_node = 04; // Adressen til noden vår i oktalt format (Node04, Node05, …)
const uint16_t other_node = 00; // Adresse til hovednoden (Node00) i Octal -format int valid_max_distance = 80; int valid_min_distance = 1; #define min_angle 0 #define max_angle 170
Trinn 3: Hvordan konfigurere hovedstasjonen
Hovedstasjonens funksjon er å motta overføringene av sensorstasjonene og objektene og sende resultatene ved hjelp av serieporten til en prosessskisse for å plotte dem. Videre synkroniserer alle objektene og de tre sensorstasjonene på den måten at bare en av dem måler hver gang for å unngå forstyrrelser.
Først må du oppdatere avstanden (centimeter) mellom sensor 1 og 2 og avstanden mellom 2 og 3.
const flyte avstand mellom 1 og 2 = 60,0;
const flyte avstand mellom2and3 = 70,0;
Skissen beregner plasseringen av objektene på følgende måte:
- For alle overføringer av objektene (id_node større enn 3) ser du etter den samme avstanden i hver overføring av ultralydsensorene (id_node 1, 2 eller 3).
- Alle disse punktene danner en liste over "kandidater" (avstand, vinkel, id_node) for å være posisjonen til ett objekt ("prosess_punktobjekt_med_punktssensor" i skissen).
- For hver "kandidat" i den forrige listen beregner funksjonen "kandidat_valgt_ mellom_sensor2og3" fra ultralydsensor 2 og 3 synspunkt hvilken av dem som samsvarer med følgende trigonometri -tilstand (se bildene 2 og 3)
flyte avstand fra rom2 = sin (radianer (vinkel)) * avstand;
float distancefroms3 = cos (radianer (angle_candidate)) * distance_candidate; // Trigonometri tilstand 1 abs (distancefroms2 + distancefroms3 - distancebetween2and3) <= float (max_diference_distance)
Som ovenfor, for hver "kandidat" i den forrige listen, beregner funksjonen "kandidat_valgt_ mellom_sensor1og2" fra ultralydsensor 1 og 2 synspunkt hvilken av dem som matcher følgende trigonometri -forhold (se bildet 2 og 3)
float distancefroms1 = sin (radianer (vinkel)) * distanse; float distancefroms2 = cos (radianer (vinkel_kandidat)) * distanse_kandidat; // Trigonometri tilstand 2 abs (distancefroms1 + distancefroms2 - distancebetween1and2) <= float (max_diference_distance)
Bare kandidatene (avstand, vinkel, id_node) som samsvarer med trigonometriforholdene 1 og 2 er identifiserte objekter detektert av sensorstasjonene 1, 2 og 3
Etter det blir resultatene sendt av hovedstasjonen til en behandlingsskisse for å plotte dem.
Trinn 4: Liste over materiale
Listen over materiale som trengs for en sensorstasjon eller ett objekt er følgende:
- Nanotavle
- Ultralydsensor
- Mikro servomotor
- NRF24L01 trådløs modul
- NRF24L01 adapter
og materialelisten for hovedstasjonen er følgende:
- Nanotavle
- NRF24L01 trådløs modul
- NRF24L01 adapter
Anbefalt:
Ta flotte bilder med en iPhone: 9 trinn (med bilder)
Ta flotte bilder med en iPhone: De fleste av oss har med oss en smarttelefon overalt i disse dager, så det er viktig å vite hvordan du bruker smarttelefonkameraet ditt til å ta flotte bilder! Jeg har bare hatt en smarttelefon i et par år, og jeg har elsket å ha et greit kamera for å dokumentere ting jeg
Slik gjør du det: Installere Raspberry PI 4 Headless (VNC) med Rpi-imager og bilder: 7 trinn (med bilder)
Howto: Installere Raspberry PI 4 Headless (VNC) Med Rpi-imager og bilder: Jeg planlegger å bruke denne Rapsberry PI i en haug med morsomme prosjekter tilbake i bloggen min. Sjekk det gjerne ut. Jeg ønsket å begynne å bruke Raspberry PI igjen, men jeg hadde ikke tastatur eller mus på min nye plassering. Det var en stund siden jeg konfigurerte en bringebær
Ultralydbasert tilgangssystem: 6 trinn (med bilder)
Ultralydbasert tilgangssystem: Denne gangen presenterer jeg deg et ultralydbasert tilgangssystem, jeg tror det kan være interessant. å prøve t
Slik demonterer du en datamaskin med enkle trinn og bilder: 13 trinn (med bilder)
Slik demonterer du en datamaskin med enkle trinn og bilder: Dette er en instruksjon om hvordan du demonterer en PC. De fleste grunnkomponentene er modulære og fjernes lett. Det er imidlertid viktig at du er organisert om det. Dette vil bidra til å hindre deg i å miste deler, og også i å gjøre monteringen igjen
PCB -design med enkle og enkle trinn: 30 trinn (med bilder)
PCB -design med enkle og enkle trinn: HELLO VENNER Den veldig nyttige og enkle opplæringen for de som ønsker å lære PCB -design, kan komme i gang