குறியீட்டை தேடு

ஆர்டுயினோ குறியீடு மற்றும் HC-SR501 மோஷன் சென்சாருக்கான வீடியோ

ஆர்டுயினோ குறியீடு மற்றும் HC-SR501 மோஷன் சென்சாருக்கான வீடியோ

இந்த டுடோரியலில், HC-SR501 மோஷன் சென்சாரை ஆராய்வோம், இது அகச்சிவப்பு தொழில்நுட்பத்தின் மூலம் இயக்கத்தைக் கண்டறிய வடிவமைக்கப்பட்டுள்ளது. இயக்கத்தைக் கண்டறிவதன் அடிப்படையில் LED அல்லது அலாரங்கள் போன்ற சாதனங்களைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் ஒரு வெளியீட்டை சென்சார் தூண்டலாம். இந்த டுடோரியலின் முடிவில், சென்சாரை எவ்வாறு இணைப்பது மற்றும் அதை திறம்பட செயல்படுத்த Arduino குறியீட்டை எவ்வாறு செயல்படுத்துவது என்பது பற்றிய தெளிவான புரிதல் உங்களுக்கு இருக்கும். (வீடியோவில் 00:45)

வன்பொருள் விளக்கம்

HC-SR501 மோஷன் சென்சார் என்பது 32 ஆல் 24 மில்லிமீட்டர் அளவுள்ள ஒரு காம்பாக்ட் தொகுதி ஆகும், இது 5 முதல் 20 வோல்ட் வரையிலான மின்னழுத்த வரம்பில் செயல்படக்கூடியது. அதன் மையத்தில் LHI 778 அகச்சிவப்பு சென்சார் உள்ளது, இது அகச்சிவப்பு கதிர்வீச்சின் மாற்றங்களை உணர்ந்து இயக்கத்தைக் கண்டறிகிறது. இது பாதுகாப்பு அமைப்புகள் மற்றும் ரோபோடிக் திட்டங்கள் உட்பட பல்வேறு பயன்பாடுகளுக்கு ஏற்றதாக அமைகிறது.

இந்த தொகுதி மூன்று முக்கிய பின்களைக் கொண்டுள்ளது: மின்சக்திக்கான VCC, தரைக்கான GND, மற்றும் வெளியீட்டு சிக்னலுக்கான OUT. இயக்கம் கண்டறியப்படும்போது, OUT பின் ஒரு உயர் சிக்னலை (3.3 வோல்ட் TTL) அனுப்புகிறது, இது அலாரங்கள் அல்லது பிற சாதனங்களைத் தூண்டுவதற்குப் பயன்படுத்தப்படலாம். சென்சார் சரிசெய்யக்கூடிய உணர்திறன் மற்றும் நேர தாமத அமைப்புகளையும் உள்ளடக்கியது, இது உங்கள் குறிப்பிட்ட தேவைகளின் அடிப்படையில் அதன் செயல்பாட்டைத் தனிப்பயனாக்க உங்களை அனுமதிக்கிறது.

டேட்டாஷீட் விவரங்கள்

உற்பத்தியாளர்HC-SR501
பகுதி எண்HC-SR501
லாஜிக்/IO மின்னழுத்தம்3.3 V
விநியோக மின்னழுத்தம்5–20 V
வெளியீட்டு மின்னோட்டம் (ஒரு சேனலுக்கு)≤ 20 mA
உச்ச மின்னோட்டம் (ஒரு சேனலுக்கு)≤ 50 mA
PWM அதிர்வெண் வழிகாட்டுதல்பொருந்தாது
உள்ளீட்டு லாஜிக் வரம்புகள்0.8 V (LOW), 2.0 V (HIGH)
மின்னழுத்த வீழ்ச்சி / RDS(on) / செறிவு0.1 V
வெப்ப வரம்புகள்0°C முதல் 70°C வரை
பேக்கேஜ்தொகுதி
குறிப்புகள் / மாறுபாடுகள்சரிசெய்யக்கூடிய உணர்திறன் மற்றும் நேர தாமதம்

  • சரியான மின்சக்தி விநியோக மின்னழுத்தத்தை (5-20 V) உறுதிசெய்யவும்.
  • மின்னோட்டத்தைக் கட்டுப்படுத்த LED களுடன் தொடரில் ஒரு மின்தடையத்தைப் பயன்படுத்தவும்.
  • கண்டறிதல் வரம்பிற்கு உணர்திறன் பொட்டென்டியோமீட்டரை சரிசெய்யவும்.
  • வெளியீடு எவ்வளவு நேரம் உயர்வாக இருக்கும் என்பதைக் கட்டுப்படுத்த நேர தாமதத்தை அமைக்கவும்.
  • மிதக்கும் உள்ளீடுகளில் கவனமாக இருங்கள்; தேவைக்கேற்ப புல்-அப் அல்லது புல்-டவுன் மின்தடையங்களைப் பயன்படுத்தவும்.

வயரிங் வழிமுறைகள்

Arduino wiring for HC-SR501 Motions sensor
Arduino wiring for HC-SR501 Motions sensor

HC-SR501 மோஷன் சென்சாரை இணைக்க, Arduino இல் உள்ள 5V வெளியீட்டுடன் VCC பின்னை இணைப்பதன் மூலம் தொடங்கவும். அடுத்து, Arduino இல் உள்ள தரை (GND) உடன் GND பின்னை இணைக்கவும். OUT பின் Arduino இல் உள்ள டிஜிட்டல் பின் 2 உடன் இணைக்கப்பட வேண்டும், இது மோஷன் கண்டறிதல் சிக்னலைப் படிக்கும்.

காட்சி பின்னூட்டத்திற்காக நீங்கள் ஒரு LED ஐப் பயன்படுத்துகிறீர்கள் என்றால், LED இன் அனோடை (நீண்ட பின்) Arduino இல் உள்ள டிஜிட்டல் பின் 8 உடன் இணைக்கவும். கேத்தோடு (குறுகிய பின்) 680-ஓம் மின்தடையத்தின் ஒரு முனையுடன் இணைக்கப்பட வேண்டும், மின்தடையத்தின் மறு முனை தரைக்குச் செல்லும். இந்த அமைப்பு Arduino இயக்கத்தைக் கண்டறிவதன் அடிப்படையில் LED ஐக் கட்டுப்படுத்த அனுமதிக்கிறது.

குறியீடு எடுத்துக்காட்டுகள் & விளக்கம்

இந்த அமைப்பிற்கான Arduino குறியீடு சீரியல் மானிட்டரைத் துவக்கி உள்ளீடு மற்றும் வெளியீட்டு பின்களை உள்ளமைக்கிறது. குறியீட்டில் உள்ள முக்கிய அடையாளங்காட்டிகளில் motion அடங்கும், இது மோஷன் சென்சாரின் நிலையைச் சேமிக்கிறது, மேலும் உள்ளீட்டைப் படிக்கவும் LED ஐக் கட்டுப்படுத்தவும் பயன்படுத்தப்படும் டிஜிட்டல் பின்கள் அடங்கும்.

void setup() {
  Serial.begin(9600);// தகவலைக் காண்பிக்க சீரியல் மானிட்டரை அமைக்கவும்
  pinMode(2, INPUT);// சென்சாரிலிருந்து உள்ளீடு
  pinMode(8, OUTPUT);// அலாரம் அல்லது LED க்கு வெளியீடு
}

இந்த பகுதியில், setup() செயல்பாடு சீரியல் தொடர்பைத் துவக்கி சென்சார் மற்றும் LED க்கான பின் முறைகளை அமைக்கிறது. பின் 2 மோஷன் சென்சாரின் வெளியீட்டைப் படிக்க உள்ளீடாக அமைக்கப்பட்டுள்ளது, அதே நேரத்தில் பின் 8 LED ஐக் கட்டுப்படுத்த வெளியீடாக அமைக்கப்பட்டுள்ளது.

void loop() {
  int motion = digitalRead(2);
  if(motion){
    Serial.println("Motion detected");
    digitalWrite(8, HIGH);
  }else{
    Serial.println("===nothing moves");
    digitalWrite(8, LOW);
  }
  delay(500);
}

இந்த குறியீடு பகுதி முக்கிய லூப்பைக் குறிக்கிறது, அங்கு நிரல் மோஷன் சென்சாரின் நிலையை தொடர்ந்து சரிபார்க்கிறது. இயக்கம் கண்டறியப்பட்டால், அது சீரியல் மானிட்டரில் "Motion detected" என அச்சிட்டு LED ஐ இயக்குகிறது. இயக்கம் கண்டறியப்படாவிட்டால், அது "===nothing moves" என அச்சிட்டு LED ஐ அணைக்கிறது.

செயல்விளக்கம் / என்ன எதிர்பார்க்கலாம்

அமைப்பு முடிந்து குறியீடு Arduino க்கு பதிவேற்றப்படும்போது, HC-SR501 சென்சார் இயக்கத்தைக் கண்டறியும்போது LED ஒளிரும் என எதிர்பார்க்க வேண்டும். கூடுதலாக, சீரியல் மானிட்டர் இயக்கம் கண்டறியப்படுகிறதா இல்லையா என்பதைக் குறிக்கும் செய்திகளைக் காண்பிக்கும். சென்சாரில் உள்ள உணர்திறன் மற்றும் நேர தாமத அமைப்புகளை நீங்கள் சரிசெய்தால், சென்சார் இயக்கத்திற்கு எவ்வளவு விரைவாக பதிலளிக்கிறது என்பதில் மாற்றங்களை நீங்கள் கவனிக்கலாம் (வீடியோவில் 05:30).

பொதுவான தவறுகளில் தவறான வயரிங் அடங்கும், அதாவது VCC மற்றும் GND க்கான இணைப்புகளை மாற்றுவது, இது சென்சாரை சேதப்படுத்தக்கூடும். மிதக்கும் உள்ளீடுகளைத் தவிர்க்க சென்சாரின் வெளியீட்டு பின் Arduino இல் நியமிக்கப்பட்ட உள்ளீட்டு பின்னுடன் சரியாக இணைக்கப்பட்டுள்ளதை உறுதிசெய்யவும்.

வீடியோ நேர முத்திரைகள்

  • 00:00 அறிமுகம்
  • 00:45 வன்பொருள் கண்ணோட்டம்
  • 02:30 வயரிங் வழிமுறைகள்
  • 04:00 குறியீடு விளக்கம்
  • 05:30 செயல்விளக்கம்

படங்கள்

HC-SR501 back
HC-SR501 back
HC-SR501 module
HC-SR501 module
Arduino wiring for HC-SR501 Motions sensor
Arduino wiring for HC-SR501 Motions sensor
48-This is the Arduino code for the HC-SR501 motion sensor.
மொழி: C++
/*
 * This is the Arduino code for HC-SR501 Motion Sensor
 * to detect motion of humans or objects using Arduino for robotic car and other applications
 * Watch the video https://youtu.be/mZCJNOf69JI
 * 
 * Written by Ahmad Shamshiri for Robojax Video
 * Date: Dec 27, 2017, 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.
 * 
 */

void setup() {
  Serial.begin(9600);// setup Serial Monitor to display information
  pinMode(2, INPUT);// Input from sensor
  pinMode(8, OUTPUT);// OUTPUT to alarm or LED
}

void loop() {
  int motion =digitalRead(2);
  if(motion){
    Serial.println("Motion detected");
    digitalWrite(8,HIGH);
  }else{
     Serial.println("===nothing moves");
     digitalWrite(8,LOW);
  }
  delay(500);

}

வளங்கள் மற்றும் மேற்கோள்கள்

இன்னும் எந்த வளங்களும் இல்லை.

கோப்புகள்📁

மற்ற கோப்புகள்