[PROJEKT] HC-SR04 – ultradźwiękowy czujnik odległości i Arduino
W opisywanym przykładzie została wykorzystywana płytka zgodna z Arduino Uno. Sposób połączeń pokazano na rysunku 5, natomiast na fotografii 6 pokazano zmontowany układ. Wejście TRIG czujnika dołączono do linii 3 na płytce Arduino, natomiast wyjście ECHO zostało dołączone do linii 2 na płytce Arduino.

Rys. 5. Sposób dołączenia czujnika do Arduino Uno

Fot. 6. Widok zmontowanego układu
Na listingu 1 znajduje się program przygotowany dla Arduino Uno. Stałe TrigPin i EchoPin wskazują sposób dołączenia czujnika do płytki zgodnie z rysunkiem 5. W zmiennej distance jest przechowywana obliczona odległość pomiędzy czujnikiem i przeszkodą. Do zmiennej duration jest wpisywany czas trwania impulsu na wyjściu ECHO. Czas ten (w mikrosekundach) jest wpisywany przez funkcję pulseIn(). Pomiar jest powtarzany co ok. 500 ms, a wynik pomiaru jest szeregowo wysyłany, np. do komputera, co można obejrzeć wykorzystując terminal komputera (rysunek 7).
List. 1.
#define TrigPin 3
#define EchoPin 2
int distance;
long duration = 0;
void setup()
{
Serial.begin (9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
}
void loop()
{
// impuls 10 us wyzwalający pomiar odległości na pinie TRIG
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW);
// pomiar czasu trwania impulsu na pinie ECHO [us]
duration = pulseIn(EchoPin, HIGH);
// obliczenie odległości w cm
distance = duration/58;
if ( distance < 2 || distance > 200 )
Serial.println("----- Poza zakresem");
else
{
Serial.print("Odeglosc: ");
Serial.print( distance );
Serial.println(" cm");
}
delay(500);
}

Rys. 7. Wizualizacja odebranych danych

Nordic poszerza opcje rozwojowe serii nRF54L o płytkę nRF7002 EBII do łączności Wi-Fi 6
Technologie End of Life i bezpieczeństwo sieci – wyzwania Europy związane z tzw. długiem technologicznym
Najczęstsze błędy firm przy wyborze dostawcy energii i jak ich uniknąć 



