Sadržaj:

Asinhrono otkrivanje prepreka ultrazvukom: 4 koraka
Asinhrono otkrivanje prepreka ultrazvukom: 4 koraka

Video: Asinhrono otkrivanje prepreka ultrazvukom: 4 koraka

Video: Asinhrono otkrivanje prepreka ultrazvukom: 4 koraka
Video: 20 товаров для автомобиля с Алиэкспресс, автотовары №37 2024, Srpanj
Anonim
Asinkrono otkrijte prepreke ultrazvukom
Asinkrono otkrijte prepreke ultrazvukom

Za zabavu gradim robota kojeg želim autonomno kretati unutar kuće.

To je dug posao i radim ga korak po korak.

Ovaj poučni fokus na otkrivanje prepreka s Arduino Mega

Ultrazvučni senzori HC-SR04 vs HY-SRF05 jeftini su i jednostavni za upotrebu, ali ih može biti teško integrirati u petlju mikrokontrolera u složenom robotu. Htio sam pokrenuti otkrivanje prepreka na asinkroni način.

_

Već sam objavio 3 upute o značajkama ovog robota:

  • Napravite svoj koder za kotače
  • Napravite svoj WIFI Gateway
  • Koristite jedinicu s inercijskim modulom

I dokumentaciju o kombiniranju umjetne inteligencije i ultrazvuka za lokalizaciju robota.

Korak 1: Što je točno problem s ultrazvučnim senzorima i mikrokontrolerima?

Što je točno problem s ultrazvučnim senzorima i mikrokontrolerima?
Što je točno problem s ultrazvučnim senzorima i mikrokontrolerima?
Što je točno problem s ultrazvučnim senzorima i mikrokontrolerima?
Što je točno problem s ultrazvučnim senzorima i mikrokontrolerima?

Ograničenja sinkronog čekanja i Arduina

Kod mikrokontrolera radi u petlji i ne podržava više niti. Ultrazvučni senzori temelje se na trajanju signala. Ovo trajanje traje do 30 m s, što je jako dugo čekati unutar petlje kada se mikrokontroleri moraju nositi s više motora i senzora (na primjer servo i istosmjerni motori s koderima kotača).

Tako sam htio razviti objekt koji radi asinkrono.

Korak 2: Kako to funkcionira?

Kako radi ?
Kako radi ?

Dizajniran je za Atmegu za otkrivanje prepreka. Podržava do 4 ultrazvučna senzora.

Zahvaljujući povremenim vremenskim prekidima, sustav može nadzirati do 4 ultrazvučna senzora. Glavni kôd samo mora definirati koji senzor aktivirati sa stanjem i pragom. Glavni će se prekinuti samo u slučaju da se pojavi (stanje, prag).

Glavne funkcije su:

  • Upozorenje je osnovno otkrivanje prepreka i pruža prekid ako barem 1 od 4 senzora detektira udaljenost ispod praga
  • Monitor je proširena funkcija koja omogućuje prekid u kombinaciji udaljenosti do 4 senzora. Mogući uvjeti su iznad, pod, jednaki ili nisu jednaki pragovima.

Korak 3: Tehnički detalji

Upotrijebite timer 4 tako da se pin 6 7 8 ne može koristiti kao PWM.

Za svaki senzor objekt treba PIN okidača i PIN za prekid.

Na vrhu senzora za prekid PIN -a objekt treba drugi PIN za prekid za korištenje softvera.

Korak 4: Kako implementirati?

Kako implementirati?
Kako implementirati?

Spojite senzore kao što je gore navedeno

Preuzmite s ovog GitHub spremišta

  • EchoObstacleDetection.cpp,
  • EchoObstacleDetection.h
  • ExampleEchoObstacleDetection.ino

Izradite direktorij EchoObstacleDetection unutar svoje IDE knjižnice i premjestite.cpp i.h

Testirajte ga

Otvorite ExampleEchoObstacleDetection.ino.

Ovo je jednostavan primjer otkrivanja prepreka koji se izvodi s 2 ultrazvučna senzora.

Izlaz je usmjeren na serijski monitor. Isprva će ispisati udaljenosti koje su otkrila 2 senzora, a zatim će ispisati upozorenja ovisno o udaljenostima ispod pragova.

Preporučeni: