Search Code

Koodu Arduino ati fidio fun modulu sensori išipaya HC-SR505 pẹlu relay

Koodu Arduino ati fidio fun modulu sensori išipaya HC-SR505 pẹlu relay

Nínú ẹ̀kọ́ yìí, a óò kọ́ ètò ìṣàwárí ìṣísẹ̀ pẹ̀lú ẹ̀rọ ìmọ̀-ìṣísẹ̀ HC-SR505 àti modulu relay. Ètò yìí yóò jẹ́ kí o lè mú àwọn ẹ̀rọ bíi iná tàbí buzzer ṣiṣẹ́ nígbà tí a bá ṣàwárí ìṣísẹ̀. Relay náà ń ṣiṣẹ́ gẹ́gẹ́ bíi kọ́ńtákítì láti darí àwọn ẹ̀rọ tí ń lo foliteji gíga láìléwu. Ní ìparí ìtọ́sọ́nà yìí, o óò ní ètò ìmọ̀-ìṣísẹ̀ tí ó ń ṣiṣẹ́ tí ó lè mú oríṣiríṣi ẹ̀rọ ṣiṣẹ́ nípa ìṣàwárí ìṣísẹ̀. Fún òye tí ó ṣe kedere, rí i pé o wo fídíò tí ó somọ́ (nínú fídíò ní 0:00).

HC-SR505 motion sensor

Àlàyé Ohun-èlù

Àwọn ohun-èlù pàtàkì nínú iṣẹ́ yìí ni ẹ̀rọ ìmọ̀-ìṣísẹ̀ HC-SR505, modulu relay, àti bọ́ọ̀dù Arduino. HC-SR505 jẹ́ ẹ̀rọ ìmọ̀-ìṣísẹ̀ tí ń lo ìtànṣán infurarẹ́dì (PIR) tí ó ń ṣàwárí ìṣísẹ̀ nípa ṣíṣàkíyèsí àwọn ìyípadà nínú ìtànṣán infurarẹ́dì. Ó ń ṣiṣẹ́ nípa dídiwọ̀n ooru tí àwọn ohun tí ó wà níwájú rẹ̀ ń jáde. Nígbà tí a bá ṣàwárí ohun tí ó ń gbé, ẹ̀rọ náà yóò fi àmì ránṣẹ́ sí Arduino.

Modulu relay náà ni a ń lò láti darí ẹ̀rọ tí ń lo foliteji gíga, bíi iná. Ó ń ṣiṣẹ́ gẹ́gẹ́ bíi kọ́ńtákítì tí ń ṣiṣẹ́ pẹ̀lú iná mànàmáná, tí ó jẹ́ kí Arduino lè mú ẹ̀rọ náà ṣiṣẹ́ tàbí pa á láìléwu. Relay náà ní àwọn ìtòlẹ́sẹ̀ pàtàkì méjì: tí ó ṣí ní gbogbo ìgbà (NO) àti tí ó pa ní gbogbo ìgbà (NC), èyí tí ó pinnu ipò àkọ́kọ́ nígbà tí a kò bá mú relay ṣiṣẹ́.

Àwọn Àlàyé Láti Ìwé Ìtọ́sọ́nà

Olùṣelọ́pọ̀HC-SR505
Nọ́mbà apáHC-SR505
Foliteji Logic/IO3.3V - 20V
Foliteji ìpèsè5V
Ìwọ̀n iná tí ó jáde (fún ikanni kọ̀ọ̀kan)20 mA
Ìwọ̀n iná tí ó ga jùlọ (fún ikanni kọ̀ọ̀kan)100 mA
Ìtọ́sọ́nà ìgbohùnsáfẹ́fẹ́ PWMKò sí
Àwọn ìpele ìwọ̀n iná tí ó wọlé0.3V (rẹ̀lẹ̀) / 2.5V (ga)
Ìdìndì foliteji / RDS(on) / ìkún0.2V
Àwọn ìwọ̀n ooru tí ó pọ̀ jùlọ+70 °C
ÌpakoModulu
Àwọn àkíyèsí / oríṣiríṣiÌwọ̀n kékeré; àgbára iná kékeré

  • Rí i pé o tú ooru dáradára fún àwọn ẹ̀rù iná tí ó ga.
  • Lo àwọn capacitors tí ń yọ̀ọ́da láti rí i pé ìpèsè iná dúró ṣinṣin.
  • Ṣọ́ra pẹ̀lú àwọn ìsopọ̀ foliteji gíga; rí i pé o ṣàbò.
  • Dán ẹ̀rọ ìmọ̀-ìṣísẹ̀ wò pẹ̀lú àwọn ohun tí ó rọrùn kí o tó so ó pọ̀ mọ́ relay.
  • Ṣàyẹ̀wò ìtọ́sọ́nà ẹ̀rọ ìmọ̀-ìṣísẹ̀ PIR fún ìṣàwárí tí ó dára jùlọ.

Àwọn Ìtọ́sọ́nà Ìsopọ̀

Arduino wiring for  HC-SR505 motion sensor
Arduino wiring for HC-SR505 motion sensor

Láti so ẹ̀rọ ìmọ̀-ìṣísẹ̀ HC-SR505 pọ̀, kọ́kọ́ so pin iná (tí a fi àmì + sí) pọ̀ mọ́ ìjàde 5V lórí Arduino rẹ. Lẹ́yìn náà, so pin ilẹ̀ (tí a fi àmì - sí) pọ̀ mọ́ ọ̀kan lára àwọn pin ilẹ̀ Arduino. Pin àmì (pin àárín) yẹ kí ó so pọ̀ mọ́ pin oní nọ́ńbà 2 lórí Arduino.

Fún modulu relay, so pin VCC pọ̀ mọ́ ìjàde 5V lórí Arduino àti pin ilẹ̀ pọ̀ mọ́ ilẹ̀ Arduino. Pin tí ń gba àmì wọlé ti relay yẹ kí ó so pọ̀ mọ́ pin oní nọ́ńbà 9 lórí Arduino. Ní ìparí, so pin rere buzzer pọ̀ mọ́ pin oní nọ́ńbà 8 àti pin òdì rẹ̀ pọ̀ mọ́ ilẹ̀. Rí i pé o so àwọn pin tí ó wọ́pọ̀ àti àwọn pin tí ó ṣí ní gbogbo ìgbà ti relay pọ̀ dáradára láti darí ẹ̀rọ rẹ.

Àwọn Àpẹẹrẹ Kóòdù & Ìtọ́sọ́nà

Kóòdù fún iṣẹ́ yìí ń bẹ̀rẹ̀ àwọn pin fún ẹ̀rọ ìmọ̀-ìṣísẹ̀, buzzer, àti relay. Ó ń lo iṣẹ́ digitalRead() láti ṣàyẹ̀wò ìṣísẹ̀ àti láti dáhùn ní ìbámu. Ní ìsàlẹ̀ yìí ni àpẹẹrẹ láti inú iṣẹ́ ìtòlẹ́sẹ̀:


void setup() {
  Serial.begin(9600); // ṣètò Serial Monitor
  pinMode(PIR, INPUT_PULLUP); // ṣàlàyé pin gẹ́gẹ́ bíi Input fún ẹ̀rọ ìmọ̀-ìṣísẹ̀
  pinMode(BUZZER, OUTPUT); // ṣàlàyé pin gẹ́gẹ́ bíi OUTPUT fún buzzer
  pinMode(RELAY, OUTPUT); // ṣàlàyé pin gẹ́gẹ́ bíi OUTPUT fún relay
}

Nínú àpẹẹrẹ yìí, àwọn pin ni a ṣètò sí ipò input tàbí output. Serial.begin(9600) ń bẹ̀rẹ̀ ìbánisọ̀rọ̀ serial fún ṣíṣàtúnṣe àṣìṣe.

Lúùpù àkọ́kọ́ ń ṣàyẹ̀wò ìṣísẹ̀ àti ń mú buzzer àti relay ṣiṣẹ́ nígbà tí a bá ṣàwárí ìṣísẹ̀. Èyí ni àpẹẹrẹ pàtàkì láti inú iṣẹ́ lúùpù:

Wirig relay module to AC load

void loop() {
  int motion = digitalRead(PIR); // ka ẹ̀rọ ìmọ̀-ìṣísẹ̀
  if(motion) {
    Serial.println("Ìṣísẹ̀ ti ṣàwárí");
    digitalWrite(BUZZER, HIGH); // mú buzzer ṣiṣẹ́
    digitalWrite(RELAY, LOW); // mú relay ṣiṣẹ́
  } else {
    Serial.println("===kò sí ohun tí ń gbé");
    digitalWrite(BUZZER, LOW); // pa buzzer
    digitalWrite(RELAY, HIGH); // pa relay
  }
  delay(500);
}

Àpẹẹrẹ yìí ń ka ipò ẹ̀rọ ìmọ̀-ìṣísẹ̀ PIR àti ń mú buzzer àti relay ṣiṣẹ́ tàbí pa wọ́n nípa ìṣísẹ̀ tí a ṣàwárí. Ìdúró díẹ̀ ti 500 milliseconds ń rí i pé lúùpù ń ṣàyẹ̀wò ẹ̀rọ ìmọ̀-ìṣísẹ̀ ní àkókò tí ó bọ́gbọ́n mu.

Ìfihàn / Ohun Tí O Lè Retí

Nígbà tí a bá ṣàwárí ìṣísẹ̀, iná tí ó so pọ̀ mọ́ relay yóò tàn, àti buzzer yóò dun. Bí a kò bá ṣàwárí ìṣísẹ̀, relay yóò pa iná, àti buzzer yóò dákẹ́. Ṣe àkíyèsí pé HC-SR505 ní ìdúró tí ó wà nínú rẹ̀ tí ó máa ń mú ìjàde dúró fún ìgbà díẹ̀ lẹ́yìn tí a bá ṣàwárí ìṣísẹ̀ (títí di 8 ìṣẹ́jú àáyá), èyí tí a kò lè yí padà (nínú fídíò ní 5:30).

Àwọn Àkókò Nínú Fídíò

  • 00:00 – Ìfihàn sí iṣẹ́ náà
  • 01:30 – Àlàyé àwọn ohun-èlù
  • 03:15 – Àwọn ìtọ́sọ́nà ìsopọ̀
  • 05:30 – Ìtọ́sọ́nà kóòdù
  • 07:00 – Ìfihàn ètò náà

Aworan

Wirig relay module to AC load
Wirig relay module to AC load
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
HC-SR505 motion sensor
Arduino wiring for  HC-SR505 motion sensor
Arduino wiring for HC-SR505 motion sensor
74-This is the Arduino code for the HC-SR505 motion sensor (small) with relay.
Ede: C++
/*
 * This is the Arduino code for HC-SR501 Motion Sensor
 * to detect motion of human or objects using Arduino for robotic car and other applications
 * Watch HC-SR505 video https://youtu.be/qhThpxiXubI
 * 
// Written by Ahmad S. for Robojax.com on 
// February 10, 2018 at 11:41 in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: this code is "AS IS" and for educational purposes only.
 * 
 */


#define PIR 2 // define pin 2 for sensor
#define BUZZER 8 // define pin 8 as for buzzer
#define RELAY 9 // define pin 9 as for relay

void setup() {
  // HC-SR505 Motion Sensor Code by Robojax.com 20180210
  Serial.begin(9600);// setup Serial Monitor to display information
  pinMode(PIR, INPUT_PULLUP);// define pin as Input sensor
  pinMode(BUZZER, OUTPUT);// define pin as OUTPUT for buzzer or LED
  pinMode(RELAY, OUTPUT);// define pin as OUTPUT for relay
}

void loop() {
  // HC-SR505 Motion Sensor Code by Robojax.com 20180210
  int motion =digitalRead(PIR);// read the sensor 
  if(motion){
    Serial.println("Motion detected");
    digitalWrite(BUZZER,HIGH);// turn the buzzer ON
    digitalWrite(RELAY,LOW);// turn the relay ON
  }else{
     Serial.println("===nothing moves");
     digitalWrite(BUZZER,LOW);// keep the buzzer OFF
     digitalWrite(RELAY,HIGH);// turn the relay OFF
  }
  delay(500);
 // HC-SR505 Motion Sensor Code by Robojax.com 20180210
}

Orisun & itọkasi

Ko si awọn orisun sibẹsibẹ.

Fáìlìs📁

Fọọmu data (pdf)

Fayile Fritzing