### Project 6: Ultrasoonse Sensor
#### **(1)Beschrijving:**

De HC-SR04 ultrasoonse sensor gebruikt sonar om de afstand tot een object te bepalen, vergelijkbaar met hoe vleermuizen dat doen. Het biedt uitstekende contactloze afstandsdetectie met hoge nauwkeurigheid en stabiele metingen in een eenvoudig te gebruiken behuizing. Het wordt geleverd met ultrasone zender- en ontvangermodules.
De HC-SR04 of de ultrasoonse sensor wordt gebruikt in een breed scala aan elektronica-projecten voor het maken van obstakels detectie en afstandsmeting, evenals diverse andere toepassingen. Hier hebben we de eenvoudige methode beschreven om de afstand te meten met Arduino en een ultrasoonse sensor, en hoe je de ultrasoonse sensor met Arduino kunt gebruiken.

#### **(2)Parameters:**
- Voedingsspanning: +5V DC
- Ruststroomverbruik: \<2mA
- Werkstroom: 15mA
- Effectieve hoek: \<15°
- Meetbereik: 2cm – 400 cm
- Resolutie: 0.3 cm
- Meethoek: 30 graden
- Breedte triggerpuls: 10uS
#### **(3)Het werkingsprincipe van de ultrasoonse sensor:**
Zoals op de bovenstaande afbeelding te zien is, lijkt het op twee ogen. De ene is het zenduiteinde, de andere is het ontvangsteinde.
De ultrasoonse module zendt ultrasoonse golven uit nadat een signaal is getriggerd. Wanneer de ultrasoonse golven een object tegenkomen en worden teruggekaatst, geeft de module een echoSignaal uit, zodat de afstand tot het object kan worden bepaald op basis van het tijdverschil tussen het triggersignaal en het echosignaal.
Hierbij is t de tijd vanaf het moment dat het uitgezonden signaal het obstakel ontmoet tot het terugkeert. De voortplantingssnelheid van geluid in de lucht is ongeveer 343m/s, en afstand = snelheid * tijd. Omdat de ultrasoonse golf echter naar het obstakel reist en terug, vertegenwoordigt de tijd tweemaal de afstand. Daarom moet het door 2 worden gedeeld. De door de **ultrasoonse golf gemeten afstand = (snelheid * tijd) / 2**.
1. Gebruiksmethode en tijdsdiagram van de ultrasoonse module:
2. Stel de vertragingstijd van de Trig-pin van de SR04 in op minimaal 10μs, wat het triggert om de afstand te detecteren.
3. Na het triggeren zendt de module automatisch acht ultrasoonse pulsen van 40KHz uit en detecteert of er een signaalterugkeer is. Deze stap wordt automatisch door de module uitgevoerd.
4. Als het signaal terugkeert, zal de Echo-pin een hoog niveau uitvoeren, en de duur van het hoge niveau is de tijd van de verzending van de ultrasoonse golf tot de terugkeer.

Schakelschema van de ultrasoonse sensor:

#### **(4)Aansluitingsschema:**

Bedrading opmerking: De VCC-pin van de ultrasoonse sensormodule is verbonden met de 5v(V) van het Keyestudio 8833 motoraandrijving uitbreidingsbord, de Trig-pin is verbonden met digitaal D12, de Echo-pin is verbonden met digitaal D13, en de Gnd-pin is verbonden met Gnd(G);
#### **(5)Testcode:**
Je kunt ook blokken slepen om je code te bewerken, zoals hieronder weergegeven.







**Volledige Testcode**
(**Opmerking:** Sluit de Bluetooth-module niet aan voordat je de code uploadt, omdat het uploaden van de code ook gebruik maakt van seriële communicatie, en er kunnen conflicten ontstaan met de Bluetooth-seriële communicatie, waardoor het uploaden kan mislukken.)

#### **(6)Testresultaten:**
Upload de testcode naar het ontwikkelbord, open de seriële monitor en stel de baudrate in op 9600. De gedetecteerde afstand wordt weergegeven in cm en inches. Wanneer je de ultrasoonse sensor met je hand blokkeert, wordt de weergegeven afstandswaarde kleiner.

#### **(7)Uitbreidingsoefening:**
We hebben zojuist de door de ultrasoonse sensor gemeten afstand weergegeven. Hoe zit het met het aansturen van een LED met de gemeten afstand? Laten we het proberen en een LED-lichtmodule verbinden met de D9-pin.

Je kunt ook blokken slepen om je code te bewerken, zoals hieronder weergegeven.







**Volledige Testcode**
(**Opmerking:** Sluit de Bluetooth-module niet aan voordat je de code uploadt, omdat het uploaden van de code ook gebruik maakt van seriële communicatie, en er kunnen conflicten ontstaan met de Bluetooth-seriële communicatie, waardoor het uploaden kan mislukken.)

Upload de testcode naar het ontwikkelbord, beweeg je hand dichter naar de ultrasoonse sensor en controleer of de LED aangaat.
