Cảm Biến Siêu Âm UltraSonic HY-SRF05 hay được sử dụng kết nối với Mạcharduino: Phát ra sóng siêu âm và nhận sóng siêu âm phản hồi ngược lại khi gặp vật cản.Được ứng dụng trong việc đo khoảng cách, hay sử dụng để phát hiện, né tránh vật cản.Dùng đo khoảng cách, đo mực chất lỏng, robot dò đường, xe dò line tránh vật cản…

Thông tin kỹ thuật HY-SRF05

Điện áp hoạt động: 5VDCKhoảng cách phát: 2cm – 450cmĐộ chính xác: ± 0.2cmTín hiệu đầu vào: 10us xung TTLSơ đồ chân: có 5 chânVCC : 5VdcTrig(T) : digital input.echo (R): digital output.OUTGND

*

Cảm biến siêu âm SRF05 Cảm biến khoảng cách vật cản

Cảm biến siêu âm UltraSonic HY-SRF05 có hai cách sử dụng là sử dụng cặp chân Echo / Trigger hoặc chỉ sử dụng 1 chân Out để phát và nhận tín hiệu, cảm biến được sử dụng phổ biến với vô số bộ thư viện và Code mẫu với Arduino.

*

HY-SRF05 Cảm biến siêu âm

*

Cảm biến siêu âm SRF05

CODE:

/* Arduino SRF-05 5V 5V GND GND D7 TRIG D6 ECHO*/#include #include

const int pingPin = 7; // Trigger Pin of Ultrasonic Sensorconst int echoPin = 6; // Echo Pin of Ultrasonic Sensor

LiquidCrystal_I2C lcd(0x27,20,2);

int limit = 50;

void setup() { lcd.init(); // initialize the lcd lcd.init(); lcd.backlight(); Serial.begin(9600); // Starting Serial Terminal pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW);

lcd.setCursor(4,0); lcd.print(“lltb3d.com”);

}void dangerous(){}void loop() { long duration, distance, cm; pinMode(pingPin, OUTPUT); digitalWrite(pingPin, LOW); delayMicroseconds(2); digitalWrite(pingPin, HIGH); delayMicroseconds(10); digitalWrite(pingPin, LOW); pinMode(echoPin, INPUT); duration = pulseIn(echoPin, HIGH); cm = microsecondsToCentimeters(duration); distance = (duration/2) / 29.1; Serial.print(cm); Serial.print(“cm”); Serial.println();

lcd.setCursor(4,0); lcd.print(“lltb3d.com”); lcd.setCursor(11,1); lcd.print(distance); lcd.setCursor(14,1); lcd.print(“cm”); if(distance { digitalWrite(LED_BUILTIN, HIGH); Serial.println(” Dangerous “); lcd.setCursor(0,1); lcd.print(“DANGEROUS”); } else { digitalWrite(LED_BUILTIN, LOW); Serial.println(“Safety”); lcd.setCursor(0,1); lcd.print(“SAFETY “); } delay(1000); lcd.clear();}

long microsecondsToCentimeters(long microseconds) { return microseconds / 29 / 2;}

Leave a Reply

Your email address will not be published. Required fields are marked *