
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02

Jeg bygger for moro skyld en robot som jeg vil flytte autonomt inne i et hus.
Det er et langt arbeid, og jeg gjør trinn for trinn.
Dette instruerbare fokuset på gjenkjenning av hindringer med Arduino Mega
Ultralydsensorer HC-SR04 vs HY-SRF05 er billige og enkle å bruke, men kan bli vanskelige å integrere i mikrokontrollersløyfen i en kompleks robot. Jeg ønsket å kjøre hindringsdeteksjon på en asynkron måte.
_
Jeg har allerede publisert 3 instrukser om funksjonene til denne roboten:
- Lag din hjulkoder
- Lag din WIFI -gateway
- Bruk treghetsmodulenhet
Og en dokumentasjon om å kombinere kunstig intelligens og ultralyd for å lokalisere roboten.
Trinn 1: Hva er problemet med ultralydsensorer og mikrokontrollere?


Synkron ventetid og Arduino -begrensninger
Mikrokontrollerkoden kjøres i en sløyfe og støtter ikke flertråd. Ultralydsensorer er basert på signalvarighet. Denne varigheten varer opptil 30 m s som er veldig lang å vente på inne i sløyfen når mikrokontrollerne må håndtere flere motorer og sensorer (for eksempel servo- og likestrømsmotorer med hjulkodere).
Så jeg ønsket å utvikle et objekt som kjører asynkront.
Trinn 2: Hvordan fungerer det?

Den er designet for Atmega for gjenkjenning av hindringer. Den støtter opptil 4 ultralydsensorer.
Takket være periodisk tidsavbrudd kan systemet overvåke opptil 4 ultralydsensorer. Hovedkoden må bare definere hvilken sensor som skal aktiveres med tilstand og terskel. Hoveddelen vil bare bli avbrutt i tilfelle (tilstand, terskel) vises.
Hovedfunksjonene er:
- Varsel er den grunnleggende hinderdeteksjonen og gir avbrudd hvis minst 1 av de 4 sensorene oppdager en avstand under terskelen
- Monitor er en utvidet funksjon som gir avbrudd på en kombinasjon av avstandstilstand på opptil 4 sensorer. De mulige forholdene er over, under, like eller ikke lik terskler.
Trinn 3: Tekniske detaljer
Bruk timer4 så pin 6 7 8 ikke kan brukes som PWM.
For hver sensor trenger objektet en utløserkode og en avbruddskode.
På toppen av sensorene avbryter PIN -koder objektet trenger en annen avbrutt PIN for programvarebruk.
Trinn 4: Hvordan implementere?

Koble sensorene som ovenfor
Last ned fra dette GitHub -depotet
- EchoObstacleDetection.cpp,
- EchoObstacleDetection.h
- EksempelEchoObstacleDetection.ino
Lag EchoObstacleDetection -katalogen inne i IDE -biblioteket og flytt.cpp og.h
Test det
Åpne eksempelEchoObstacleDetection.ino.
Dette er et enkelt eksempel på gjenkjenning av hindringer med 2 ultralydsensorer.
Utgangen er rettet på seriell skjerm. Først vil den skrive ut avstander som er oppdaget av de to sensorene, og deretter skrive ut varsler avhengig av avstander under terskler.
Anbefalt:
Kropps-ultralyd sonografi med Arduino: 3 trinn (med bilder)

Kropps-ultralyd sonografi med Arduino: Hei! Min hobby og lidenskap er å realisere fysikkprosjekter. Et av mine siste arbeider handler om ultralyd sonografi. Som alltid prøvde jeg å gjøre det så enkelt som mulig med deler du kan få på ebay eller aliexpress. Så la oss se på hvor langt jeg kan gå med
Strømmåling med vannmåler (ultralyd): 5 trinn (med bilder)

Strømmåling med vannmåler (ultralyd): Vann er en kritisk ressurs for planeten vår. Vi mennesker trenger vann hver dag. Og vann er nødvendig for en rekke næringer, og vi mennesker trenger det hver dag. Etter hvert som vann har blitt mer verdifullt og mangelvare, er behovet for effektiv overvåking og håndtering
Boe-Bot: Robot for hindring av hindringer: 6 trinn

Boe-Bot: Robot for hindring av hindringer: Denne lille roboten bruker whiskers for å oppdage hindringer. Når en eller begge whiskers blir utløst, rygger han og vender seg til en annen retning. Ellers går han videre. Drevet av 4 AA -batterier, lar Paralax hovedkort dette lille
Oppdage hindringer og advarsler - Arduino UNO og ultralyd: 4 trinn (med bilder)

Oppdage hindringer og advarsler - Arduino UNO og ultralyd: Dette er veiledning for å hjelpe deg med å forstå ultralyd og summer og gå dypere inn i å lære Arduino, følg disse trinnene og gi meg tilbakemelding
Vurderer et Ajax -nettsted med et asynkront påloggingsskjema: 6 trinn (med bilder)

Vurderer et Ajax -nettsted med et asynkront påloggingsskjema: Problemet: Spidering -verktøy tillater ikke AJAX -påloggingsautentisering. Denne instruksjonen viser deg hvordan du logger inn via et AJAX -skjema ved hjelp av Python og en modul som heter Mechanize. Edderkopper er webautomatiseringsprogrammer som blir stadig mer populære