Isticmaalka Sensor Dhaqdhaqaaqa HC-SR501 oo leh Relay iyo Code Arduino
Cashigarkani, waxaan ku baran doonaa sida loo isticmaalo dareemaha dhaqdhaqaaqa HC-SR501 oo lala xiriirinayo relay si loo xakameeyo nalalka AC ama nooc kale oo culeys ah iyadoo la isticmaalayo Arduino. HC-SR501 waa dareeme dhaqdhaqaaq infrared ah oo qaadi kara dhaqdhaqaaq ilaa 7 mitir, taasoo ka dhigaysa mid ku habboon codsiyo kala duwan sida qalabka amniga ama nidaamyada iftiinka otomaatiga ah. Adigoo isticmaalaya dareemahan iyo relay, waxaad abuuri kartaa mashruuc shidi kara nalalka marka dhaqdhaqaaq la ogaado.

Waxaan ku siin doonaa hagaha tallaabo-tallaabo ah oo ku saabsan qalabaynta hardware-ka, tilmaamaha fiilooyinka, iyo koodhka Arduino ee loo baahan yahay si loo gaaro shaqadan. Si aad u fahanto habka si cad, hubi inaad daawato fiidiyowga la xidhiidha (fiidiyowga 00:00).
Qalabka La Sharxay
Qaybaha aasaasiga ah ee mashruucan waxaa ka mid ah dareemaha dhaqdhaqaaqa HC-SR501, module-ka relay-ga, iyo looxa Arduino. Dareemaha HC-SR501 wuxuu leeyahay saddex biin: VCC, GND, iyo OUT. Biinka VCC wuxuu ku xidhmaa ilo koronto (5V), biinka GND wuxuu ku xidhmaa dhulka, biinka OUT-na wuxuu u diraa calaamad Arduino-ga marka dhaqdhaqaaq la ogaado.
Module-ka relay-ga wuxuu u shaqeeyaa sidii furaha xakameyn kara qalabka korontada sare leh. Wuxuu leeyahay saddex biin oo waaweyn: COM (guud), NO (caadi ahaan furan), iyo NC (caadi ahaan xiran). Qalabkan, waxaan isticmaali doonaa biinka NO, kaas oo ku xidhma culeyska marka relay-ga la hawlgeliyo. Tani waxay u oggolaanaysaa Arduino-ga inuu xakameeyo relay-ga iyadoo ku saleysan calaamadda laga helo dareemaha dhaqdhaqaaqa.
Faahfaahinta Xogta
| Soo saaraha | HC-SR501 |
|---|---|
| Nambarka qaybta | HC-SR501 |
| Korontada Logic/IO | 5 V |
| Korontada sahayda | 5–20 V |
| Isticmaalka korontada | 65 mA |
| Xagasha ogaanshaha | 120 darajo |
| Fogaanta ogaanshaha | 3–7 m |
| Heerkulka shaqada | -15 ilaa 70 °C |
| Nooca wax soo saarka | Dijitaal |
| Baakad | Module |
- Hubi inaad siiso koronto ku habboon (5–20 V) dareemaha.
- Hagaaji potentiometer-ka xasaasiyadda si aad u hesho kala duwanaanshaha ogaanshaha ugu fiican.
- Isticmaal biinka NO ee relay-ga si aad si wax ku ool ah u xakameyso culeyska.
- Ka digtoonow qiimeynta hadda ee relay-ga (ugu badnaan 10 A).
- Tijaabi kala duwanaanshaha ogaanshaha dareemaha ka hor rakibaadda kama dambaysta ah.
- Tixgeli kala-baxa kulaylka haddii aad isticmaasho relay-ga culeysyo sare.
Tilmaamaha Fiilooyinka

Si aad ugu xidho dareemaha dhaqdhaqaaqa HC-SR501 iyo relay-ga Arduino-ga, ka bilow adigoo ku xidhaya biinka VCC ee dareemaha biinka 5V ee Arduino-ga. Marka xigta, ku xidh biinka GND ee dareemaha mid ka mid ah biinanka GND ee Arduino-ga. Biinka OUT ee dareemaha dhaqdhaqaaqa waa in lagu xidhaa biinka dijitaalka ah ee 2 ee Arduino-ga.
Module-ka relay-ga, ku xidh biinka VCC biinka 5V ee Arduino-ga iyo biinka GND dhulka. Biinka gelinta (badanaa lagu calaamadeeyo IN ama wax la mid ah) ee relay-ga waa in lagu xidhaa biinka dijitaalka ah ee 4 ee Arduino-ga. Hubi inaad eegto jihada relay-ga si aad u hubiso in loo dejiyay inuu yahay caadi ahaan furan (NO) qalabkan. Ugu dambayntii, ku xidh culeyska (tusaale, nalka AC) relay-ga iyadoo la raacayo qeexitaannada relay-ga, hubi in xiriirada ay yihiin kuwo adag.
Tusaalooyinka Koodhka & Sharaxaad
Koodhka Arduino-ga, waxaan ku qeexaynaa xariiqyo joogto ah oo loogu talagalay biinanka dareemaha iyo relay-ga. Biinka dareemaha waxaa loo dejiyay SENSOR_PIN, kaas oo loo qoondeeyay biinka dijitaalka ah ee 2, biinka relay-gana waxaa loo dejiyay RELAY_PIN, oo loo qoondeeyay biinka dijitaalka ah ee 4. Qaabkan wuxuu noo oggolaanayaa inaan akhrino wax soo saarka dareemaha oo aan xakameyno relay-ga si waafaqsan.
const int SENSOR_PIN = 2; // biinka Arduino ee ku xidhan wax soo saarka dareemaha
const int RELAY_PIN = 4; // biinka Arduino kaas oo ku xidhan xakamaynta relay-ga
Shaqada setup(), waxaan ku bilaabaynaa kormeerka serial-ka si loo muujiyo macluumaadka waxaanan dejinaynaa noocyada biinanka ee dareemaha iyo relay-ga. Tani waxay hubinaysaa in Arduino-ga uu ogaado biinanka kuwaas oo ah gelinta iyo soo saarka.
void setup() {
Serial.begin(9600); // deji kormeerka Serial si uu u muujiyo macluumaadka
pinMode(SENSOR_PIN, INPUT); // Qeex SENSOR_PIN sida Gelinta ee dareemaha
pinMode(RELAY_PIN, OUTPUT); // Qeex RELAY_PIN sida SOO SAARKA ee relay-ga
}
Shaqada loop(), waxaan si joogto ah u hubinaynaa xaaladda dareemaha dhaqdhaqaaqa. Haddii dhaqdhaqaaq la ogaado, waxaan daabacnaa farriin kormeerka serial-ka waxaanan shidnaa relay-ga adigoo u dejinaya hoose. Haddii aan dhaqdhaqaaq la ogaan, waxaan daabacnaa farriin kale waxaanan daminaa relay-ga adigoo u dejinaya sare.
void loop() {
int motion = digitalRead(SENSOR_PIN); // akhri biinka dareemaha
if (motion) {
Serial.println("Dhaqdhaqaaq la ogaaday");
digitalWrite(RELAY_PIN, LOW); // Shiid relay-ga
} else {
Serial.println("===Waxba ma dhaqaaqin");
digitalWrite(RELAY_PIN, HIGH); // Dami relay-ga
}
delay(500);
}
Muuqaal / Waxa Laga Filan Karo
Marka dareemaha dhaqdhaqaaqa uu ogaado dhaqdhaqaaq, relay-ga wuu hawlgelin doonaa, taasoo u oggolaanaysa korontada inay u socoto culeyska ku xidhan, sida nalka AC. Waa inaad aragtaa nalka oo isla markiiba shidma marka dhaqdhaqaaq la ogaado. Haddii dareemaha uusan ogaan wax dhaqdhaqaaq ah, nalku wuu dami doonaa. Ogow in dejinta xasaasiyadda dareemaha ay saameyn doonto kala duwanaanshaha ogaanshaha, markaa hagaajin ayaa laga yaabaa inay lagama maarmaan noqoto si loo helo waxqabadka ugu fiican (fiidiyowga 05:00).
Khaladaadka caadiga ah waxaa ka mid ah fiilooyinka qaldan ama ka gudubka xadka hadda ee relay-ga, taasoo keeni karta guuldarro. Hubi in dhammaan xiriiradu ay yihiin kuwo adag oo tijaabi qalabka jawi la xakameeyay ka hor isticmaalka kama dambaysta ah.
Waqtiyada Fiidiyowga
- 00:00 Bilow
- 00:35 Qalabka la sharaxay
- 04:35 Qiimaynta tamarta relay-ga
- 06:00 Fiilalka la sharaxay
- 07:53 Koodhka Arduino la sharaxay
- 09:48 Tusaale ahaanshaha mashruucan
/*
* This Arduino code uses an HS-SR501 motion sensor and a relay
* and switches an alarm or a device using the relay when motion is detected.
* The device can be an alarm, a light, or any other device.
*
* Written by Ahmad Shamshiri on August 5, 2018, at 12:36 PM for Robojax.com
* in Ajax, Ontario, Canada
* Watch the video instruction for this code: https://youtu.be/QQ7iDagQnQM
* This code has been downloaded from Robojax.com
*/
const int SENSOR_PIN = 2;// the Arduino pin connected to the output (middle) wire of the sensor
const int RELAY_PIN = 4;// the Arduino pin which is connected to control the relay
void setup() {
Serial.begin(9600);// setup Serial Monitor to display information
Serial.println("Robojax Arduino Tutorial");
Serial.println("HC-SR501 sensor with relay");
pinMode(SENSOR_PIN, INPUT);// Define SENSOR_PIN as Input from sensor
pinMode(RELAY_PIN, OUTPUT);// Define RELAY_PIN as OUTPUT for relay
}
void loop() {
// Robojax.com HC-SR501 motion sensor tutorial August 5, 2018
int motion =digitalRead(SENSOR_PIN);// read the sensor pin and stores it in "motion" variable
// if motion is detected
if(motion){
Serial.println("Motion detected");
digitalWrite(RELAY_PIN, LOW);// Turn the relay ON
}else{
Serial.println("===Nothing moves");
digitalWrite(RELAY_PIN,HIGH);// Turn the relay OFF
}
delay(500);
// Robojax.com HC-SR501 motion sensor tutorial August 5, 2018
}
Waad u baahan tahay
-
Amaazon
-
eBay
-
AliExpressPurchase HC-SR501 HC-SR505 HW-MS03 motion sensor from AliExpresss.click.aliexpress.com
Kheyraadka & Tixraacyada
Wali wax kaydsan ah oo weli ma jiro.
Faylasha📁
Fayl la'aan.