Arduino i HC-SR04

User avatar
shimano73
Posts: 2174
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze
Been thanked: 1 time

Post

Dziś uruchomiłem czujnik odległości na module ultradźwiękowym HC-SR04 na Arduino Mega 2560
Dla zainteresowanych fragmenty kodu odpowiedzialny za ten czujnik;

w miejscu definicja zmiennych (przed "void setup()"):

Code: Select all

 int Trig = 38;   // Numer pinu wyzwolenia
 int Echo = 39;   // Numer pinu odpowiedzi
 long EchoTime;  // Czas trwania sygnału ECHO

double distance = 1;

double get_distance(int channelNumber, double distance) {
   
   // Ustawiamy TRIG w stan niski na 2us
  digitalWrite(Trig, LOW);
  delayMicroseconds(2);
 
  // Ustawiamy TRIG w stan wysoki na 10us
  digitalWrite(Trig, HIGH);
  delayMicroseconds(10);
 
  // Ustawiamy TRIG w stan niski - rozpoczynamy pomiar
  digitalWrite(Trig, LOW);
 
  // Odczytujamy czas trwania stanu wysokiego na pinie ECHO
  EchoTime = pulseIn(Echo, HIGH);
 
  // Obliczamy odległość
  distance = EchoTime / 58; // Odległość w metrach
  distance = distance / 100;// Odległość w centymetrach
  Serial.println(distance); 
   return  distance; 
}

W samym "void setup()" :

Code: Select all

...
  pinMode(Trig, OUTPUT);
  pinMode(Echo, INPUT);
  
  
      // CHANNEL 0 -
     SuplaDevice.addDistanceSensor();
Pętla główna "void loop()" się nie zmienia;
Pomocy zaczerpnąłem ze strony http://www.jarzebski.pl/arduino/czujnik ... -sr04.html, żeby nie było że jestem taki dobry :D
To tyle , pozdrawiam
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
Espablo
Posts: 1754
Joined: Wed Jun 29, 2016 5:04 pm
Location: Oświęcim

Post

shimano73 wrote: Tue Sep 19, 2017 12:21 pm Pomocy zaczerpnąłem ze strony http://www.jarzebski.pl/arduino/czujnik ... -sr04.html, żeby nie było że jestem taki dobry :D
Hehe. Umiejętność czerpania wiedzy od innych i stosowania ich do własnych potrzeb to też zaleta ;)
Każde urządzenie elektryczne działa o wiele lepiej jeśli podłączysz je do prądu. :? :roll:

Return to “Ogólna dyskusja”