ESP32 ટ્યુટોરિયલ 21/55 - PIR મોશન સેન્સર વડે માનવી શોધવું | SunFounderની ESP32 IoT લર્નિંગ કિટ
આ ટ્યુટોરિયલમાં, આપણે શીખીશું કે માનવ હાજરી શોધવા માટે ESP32 સાથે PIR મોશન સેન્સરનો ઉપયોગ કેવી રીતે કરવો. ESP32 એક શક્તિશાળી માઇક્રોકંટ્રોલર છે જે Wi-Fi અને Bluetooth બંને ક્ષમતાઓ પ્રદાન કરે છે, જે તેને IoT પ્રોજેક્ટ્સ માટે આદર્શ બનાવે છે. PIR સેન્સરને એકીકૃત કરીને, આપણે એક સિસ્ટમ બનાવી શકીએ છીએ જે જ્યારે પણ ગતિ શોધાય ત્યારે LED અથવા બઝર સક્રિય કરે છે, જે માનવ પ્રવૃત્તિ પર નજર રાખવાની એક સરળ છતાં અસરકારક રીત પ્રદાન કરે છે.
PIR (પેસિવ ઇન્ફ્રારેડ) સેન્સર વસ્તુઓ, ખાસ કરીને મનુષ્યો જેવા ગરમ શરીરવાળા, દ્વારા ઉત્સર્જિત ઇન્ફ્રારેડ કિરણોત્સર્ગને સમજીને ગતિ શોધે છે. જ્યારે ગતિ શોધાય છે, ત્યારે સેન્સર ESP32 ને સિગ્નલ મોકલે છે, જે પછી LED પ્રકાશિત કરવા અથવા બઝર વગાડવા જેવું આઉટપુટ ટ્રિગર કરી શકે છે. આ ટ્યુટોરિયલ તમને સિસ્ટમને યોગ્ય રીતે કાર્ય કરવા માટે જરૂરી હાર્ડવેર સેટઅપ, વાયરિંગ અને કોડ દ્વારા માર્ગદર્શન આપશે (વિડિયોમાં 00:45 પર).
હાર્ડવેર સમજાવ્યું
આ પ્રોજેક્ટમાં ઘણા મુખ્ય ઘટકો સામેલ છે. ESP32 માઇક્રોકંટ્રોલર કામગીરીના મગજ તરીકે સેવા આપે છે, સેન્સર ડેટા સંભાળે છે અને આઉટપુટ નિયંત્રિત કરે છે. PIR મોશન સેન્સર ઇન્ફ્રારેડ કિરણોત્સર્ગમાં ફેરફારો માપીને હિલચાલ શોધે છે. LED અથવા બઝર ગતિ શોધાય ત્યારે દ્રશ્ય અથવા શ્રાવ્ય ચેતવણી પ્રદાન કરે છે.
ESP32 Wi-Fi અને Bluetooth થી સજ્જ છે, જે ક્લાઉડ કનેક્ટિવિટી જેવી વિસ્તૃત કાર્યક્ષમતાઓને મંજૂરી આપે છે. PIR સેન્સરમાં એક લેન્સ હોય છે જે ઇન્ફ્રારેડ પ્રકાશને પાયરોઇલેક્ટ્રિક સેન્સર પર કેન્દ્રિત કરે છે, જે ઇન્ફ્રારેડ સ્તરોમાં ફેરફારો શોધે ત્યારે વોલ્ટેજ સિગ્નલ ઉત્પન્ન કરે છે, જે હિલચાલ સૂચવે છે.
ડેટાશીટ વિગતો
| ઉત્પાદક | SunFounder |
|---|---|
| ભાગ નંબર | PIR સેન્સર મોડ્યુલ |
| લોજિક/IO વોલ્ટેજ | 3.3 V |
| સપ્લાય વોલ્ટેજ | 3.3 V |
| આઉટપુટ કરંટ (પ્રતિ ચેનલ) | 20 mA મહત્તમ |
| પીક કરંટ (પ્રતિ ચેનલ) | 50 mA મહત્તમ |
| PWM આવર્તન માર્ગદર્શન | N/A |
| ઇનપુટ લોજિક થ્રેશોલ્ડ | 0.3 V (નીચું), 2.0 V (ઉચ્ચ) |
| વોલ્ટેજ ડ્રોપ / RDS(on) / સેચ્યુરેશન | N/A |
| થર્મલ મર્યાદાઓ | 0 થી 70 °C |
| પેકેજ | મોડ્યુલ |
| નોંધો / વેરિઅન્ટ્સ | એડજસ્ટેબલ સંવેદનશીલતા અને વિલંબ |
- નુકસાન ટાળવા માટે યોગ્ય પાવર સપ્લાય (3.3 V) સુનિશ્ચિત કરો.
- કરંટ મર્યાદિત કરવા માટે LED માટે રેઝિસ્ટરનો ઉપયોગ કરો.
- શોર્ટ સર્કિટ અટકાવવા માટે યોગ્ય વાયરિંગ જાળવો.
- જરૂર મુજબ સંવેદનશીલતા અને વિલંબ માટે PIR સેન્સર નોબ્સને સમાયોજિત કરો.
- શ્રેષ્ઠ કામગીરી માટે વિવિધ વાતાવરણમાં સેન્સરનું પરીક્ષણ કરો.
વાયરિંગ સૂચનાઓ

PIR મોશન સેન્સર અને LED ને ESP32 સાથે વાયર કરવા માટે, PIR સેન્સરના VCC પિનને ESP32 પરના 3.3 V આઉટપુટ સાથે જોડીને શરૂ કરો. આગળ, PIR સેન્સરના ગ્રાઉન્ડ પિનને ESP32 પરના ગ્રાઉન્ડ પિન સાથે જોડો. PIR સેન્સરનો સિગ્નલ પિન (ઘણીવાર S તરીકે લેબલ થયેલ) ESP32 પરના GPIO પિન 14 સાથે જોડાયેલ હોવો જોઈએ.
LED માટે, લાંબા પગ (એનોડ) ને 220 ઓહ્મ રેઝિસ્ટર દ્વારા GPIO પિન 26 સાથે જોડો, અને ટૂંકા પગ (કેથોડ) ને ગ્રાઉન્ડ સાથે જોડો. યોગ્ય કાર્યક્ષમતા સુનિશ્ચિત કરવા માટે બધા જોડાણો સુરક્ષિત છે તેની ખાતરી કરો. જો તમે LED ને બદલે બઝરનો ઉપયોગ કરી રહ્યા છો, તો બઝરનો એક પિન GPIO પિન 26 સાથે અને બીજો ગ્રાઉન્ડ સાથે જોડો, LED સેટઅપને બદલીને.
કોડ ઉદાહરણો અને વોકથ્રુ
કોડમાં, આપણે PIR સેન્સર અને LED માટે પિન નંબરો વ્યાખ્યાયિત કરીએ છીએ. આપણે PIR પિન સેટ કરવા માટે const int pirPin = 14; અને LED પિન માટે const int ledPin = 26; નો ઉપયોગ કરીએ છીએ. આ સ્થિરાંકો ખાતરી કરે છે કે પ્રોગ્રામના અમલ દરમિયાન પિન નંબરો યથાવત રહે.
const int pirPin = 14; // પિર પિનનો નંબર
const int ledPin = 26; // LED પિન
આ સ્નિપેટ આપણે ઉપયોગ કરીશું તે પિનને પ્રારંભ કરે છે. setup() ફંક્શનમાં, આપણે PIR પિનને ઇનપુટ તરીકે અને LED પિનને આઉટપુટ તરીકે ગોઠવીએ છીએ. સેન્સરની સ્થિતિ વાંચવા અને LED નિયંત્રિત કરવા માટે આ સેટઅપ નિર્ણાયક છે.
void setup() {
Serial.begin(115200);
pinMode(pirPin, INPUT); // પિર પિનને ઇનપુટ તરીકે પ્રારંભ કરો
pinMode(ledPin, OUTPUT); // LED પિનને આઉટપુટ તરીકે પ્રારંભ કરો
}
loop() ફંક્શનમાં, આપણે digitalRead(pirPin); નો ઉપયોગ કરીને PIR સેન્સરની સ્થિતિ સતત વાંચીએ છીએ. જો સેન્સર ગતિ શોધે છે (HIGH સ્થિતિ દ્વારા સૂચવાયેલ), તો આપણે digitalWrite(ledPin, HIGH); નો ઉપયોગ કરીને LED ચાલુ કરીએ છીએ. નહીં તો, આપણે LED બંધ કરીએ છીએ.
if (pirState == HIGH) {
digitalWrite(ledPin, HIGH); // LED ચાલુ કરો
} else {
digitalWrite(ledPin, LOW); // LED બંધ કરો
}
આ તર્ક LED ને PIR સેન્સર દ્વારા શોધાયેલ ગતિને પ્રતિસાદ આપવા દે છે. સંપૂર્ણ કાર્યક્ષમતા માટે લેખની નીચે આપેલ સંપૂર્ણ કોડ અપલોડ કરવાની ખાતરી કરો.
પ્રદર્શન / શું અપેક્ષા રાખવી
એકવાર બધું સેટ થઈ જાય અને કોડ અપલોડ થઈ જાય, પછી PIR સેન્સર દ્વારા ગતિ શોધાય ત્યારે LED પ્રકાશિત થશે. તમે તેની સામે ખસીને સેન્સરનું પરીક્ષણ કરી શકો છો; LED તરત જ ચાલુ થવું જોઈએ. જો સેન્સર વિલંબ પર સેટ છે, તો તે ફરીથી બંધ થતા પહેલા નિર્દિષ્ટ સમય માટે ચાલુ રહેશે (વિડિયોમાં 12:15 પર).
સામાન્ય ભૂલોમાં ખોટું વાયરિંગ સામેલ છે, જે સેન્સરને કાર્ય કરતા અટકાવી શકે છે. ખાતરી કરો કે PIR સેન્સરને યોગ્ય રીતે પાવર મળી રહ્યો છે અને સિગ્નલ પિન ESP32 પરના યોગ્ય GPIO પિન સાથે જોડાયેલ છે. PIR સેન્સર પરની સંવેદનશીલતા અને વિલંબની નોબ્સને સમાયોજિત કરવાથી તમારા વાતાવરણના આધારે કામગીરીને શ્રેષ્ઠ બનાવવામાં પણ મદદ મળી શકે છે.
વિડિયો સમયાંકો
- 00:00 શરૂઆત
- 1:54 PIR સેન્સરનો પરિચય
- 6:38 વાયરિંગ સમજાવ્યું
- 10:21 Arduino કોડ સમજાવ્યો
- 12:45 Arduino IDE માં ESP32 બોર્ડ અને COM પોર્ટ પસંદ કરવું
- 14:27 PIR સેન્સરનું પ્રદર્શન અને માપાંકન
// set pin numbers
const int pirPin = 14; // the number of the pir pin
const int ledPin = 26; // LED pin
// variable for storing the pir status
int pirState = 0;
void setup() {
Serial.begin(115200);
// initialize the pir pin as an input
pinMode(pirPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the state of the pir value
pirState = digitalRead(pirPin);
Serial.println(pirState);
delay(100);
// if the pir is pressed, the pirState is HIGH
if (pirState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
} else {
// turn LED off
digitalWrite(ledPin, LOW);
}
}
Common Course Links
Common Course Files
સંસાધનો અને સંદર્ભો
હજી સુધી કોઈ સંસાધનો નથી.
ફાઇલો📁
ડેટાશીટ (pdf)
-
RE200B_PRI motion sensor datasheet
RE200B_PRI_datasheet.pdf0.02 MB -
BISS0001 motion sensor chip datasheet
BISS0001_datasheet.pdf0.16 MB
અન્ય ફાઇલો
-
HC-SR501 motion Sensor User's Manual
robojax-HC-SR501-motion-manual.pdf0.83 MB