How HC-SR04 Ultrasonic Sensor Works & Interface It With Arduino
Ultrasonic Sensors
Ultrasonic Sensors គឺជា sensors 1 ប្រភេទដែលមានតួនាទីកំណត់ចម្ងាយនៃរត្តុណាមួយ ។
វាក៏អាចកំណត់ចម្ងាយបានយ៉ាងល្អក្នុងចន្លោះពី 2cm – 400cm ៕
Ultrasonic Sensors វាមាន Pin 4 :
·                       Vcc វាគឺជា Pin ដែលនិងត្រូវភ្ជាប់ទៅនិង 5v នៃ Arduino Board
·                       GND វាគឺជា Pin ដែលនិងត្រូវភ្ជាប់ទៅនិង GND នៃ Arduino Board
· TRIG វាគឺជា Pin ដែលនិងត្រូវភ្ជាប់ទៅនិង Digital Pin ( ជាទូទៅ ៩ ឬ PIN ដ៏ទៃទៀត ) នៃ
                            Arduino Board
· ECHO វាគឺជា Pin ដែលនិងត្រូវភ្ជាប់ទៅនិង Digital Pin ( ជាទូទៅ ១០ ឬ PIN ដ៏ទៃទៀត ) នៃ
                           Arduino
Board
របៀបដែលវាដំណើរការមានដូចជា : 
ដំបូង Transmitter ( trig pin ) ដែលបញ្ចូនទៅសញ្ញារលកប្រេកង់នៃសម្លេងចេញទៅ
រហូតវាបានប៉ះវត្ថុណាមួយ ៕ រលកសញ្ញានោះក៏ទ្បងត្រទ្បប់មកវិញ ហើយវាត្រូវបានទទួលដោយ
Receiver
( echo pin ) បន្ទាប់មកវាក៏បង្កើតបានជាចម្ងាយពី sensors ទៅកាន់វត្ថុមួយនោះ ៕
យើងអាចគណនារកចម្ងាយបានតាមរូបមន្ត :
ចម្ងាយ ( distance ) = ល្បឿន ( speed
) *  រយ:ពេល ( time ) 
ដោយល្បឿនសម្លេងគឺប្រហែល 0.0343 c/us ( centimeters per microsecond ) រួចចែកវានឹង
2 ( ដោយសាររលកធ្វើដំណើរទៅវត្ថុហើយក៏ត្រទ្បាប់មកវិញ
) ៕
Distance =  ( duration *
0.0343 ) / 2 ;
        រៀងរាល់ទិន្នន័យនិងត្រូវបានបង្ហាញចេញនៅកន្លែង output បាន ៕
ខាងក្រោមនេះគឺជាការតភ្ជាប់រវាង Ultrasonic sensors ទៅនិង Arduino Uno ៕
#include "NewPing.h"
#define TRIGGER_PIN 9
#define ECHO_PIN 10
// Maximum distance we want to ping for (in centimeters).
#define MAX_DISTANCE 400  
// NewPing setup of pins and maximum distance.
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
float duration, distance;
void setup() 
{
  Serial.begin(9600);
}
void loop() 
{
  // Send ping, get distance in cm
  distance = sonar.ping_cm();
  
  // Send results to Serial Monitor
  Serial.print("Distance = ");
  
  if (distance >= 400 || distance <= 2) 
  {
    Serial.println("Out of range");
  }
  else 
  {
    Serial.print(distance);
    Serial.println(" cm");
  }
  delay(500);
}
Comments
Post a Comment