Სარჩევი:

ინფრაწითელი თვალთვალის ძაღლი: 3 ნაბიჯი
ინფრაწითელი თვალთვალის ძაღლი: 3 ნაბიჯი

ვიდეო: ინფრაწითელი თვალთვალის ძაღლი: 3 ნაბიჯი

ვიდეო: ინფრაწითელი თვალთვალის ძაღლი: 3 ნაბიჯი
ვიდეო: აიზეკ აზიმოვი - "მე, რობოტი" - აუდიო წიგნი 2024, ნოემბერი
Anonim
Image
Image
ინფრაწითელი თვალთვალის ძაღლი
ინფრაწითელი თვალთვალის ძაღლი

ოდესმე აღმოვაჩინე საინტერესო ვიდეო: https://arduinotr.com/cisim/?fbclid=IwAR22rYmiRQQJ0nqAusOLhBj_778gROseej6TUonvbOnAd65A-sl_wnyqrJQ&tdsourcetag=s_pcqq ნამდვილად კარგია

ერთი შეხედვით ვგრძნობ, რომ ეს მართლაც უცნაურია, შემდეგ კი ფეხები მომეტყუა, არ ვიცი რა არის ამ დიზაინერის ასეთი შეცდომაში შემყვანის მიზეზი … ეს შეუძლებელია უბრალო IR სენსორით, ან თუნდაც კონტროლერის გარეშე, მაგრამ მხოლოდ მარტივი ტრიოდებით. რა

მე არ ვიცნობ ბიჭს და მთელ ამბავს, უბრალოდ ვცდილობ, ეს დამოუკიდებლად მოვახერხო. მე უბრალოდ გავაკეთე ჩემი დიზაინი, ძალიან მარტივი მოდულებით:

  • ნებისმიერი Arduino თავსებადი კონტროლერი, როგორიცაა Maduino
  • L298N ძრავის მძღოლი
  • 3x IR სენსორი
  • ზოგიერთი ჩვეულებრივი მხტუნავები

ნაბიჯი 1: დაბრკოლების გამოვლენა

დაბრკოლების გამოვლენა
დაბრკოლების გამოვლენა

იქ 3 IR სენსორი გამოიყენება დაბრკოლების გამოსავლენად, ხოლო მარცხენა/მარჯვენა სენსორმა აღმოაჩინა დაბრკოლება, ის უნდა გადატრიალდეს საათის/საათის საწინააღმდეგო მიმართულებით, ხოლო შუა სენსორი გამოვლენილია, ყველაფერი კარგადაა.

3 სენსორი ამოიცნობს რაიმე წინაღობას. აკავშირებს სიგნალის პინს მადუინოს შესასვლელ ქინძისთავებთან, როგორიცაა Pin2/3/4;

როგორც პროგრამული უზრუნველყოფა, უბრალოდ შეამოწმეთ სენსორის გამომავალი სტატუსი, რომ გადაწყვიტოთ რა უნდა გააკეთოს ძრავამ:

თუ (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // თუ შუალედური სენსორი აღმოაჩენს დაბრკოლებას, ძრავა ჩერდება

{

analogWrite (EN, 0);

გაჩერება ();

}

თუ (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // თუ სწორი სენსორი აღმოაჩენს დაბრკოლებას, საავტომობილო მოძრაობა მაღალი სიჩქარით;

{

analogWrite (EN, მაღალი სიჩქარე);

უკუ ();

}

თუ (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // თუ

მარჯვენა და შუა სენსორი ამოიცნობს დაბრკოლებულ, საავტომობილო მოძრაობას დაბალი სიჩქარით;

{

analogWrite (EN, დაბალი სიჩქარე);

უკუ ();

}

……

ნაბიჯი 2: ძრავის კონტროლი

ძრავის კონტროლი
ძრავის კონტროლი
ძრავის კონტროლი
ძრავის კონტროლი

და ძრავის მძღოლი, რომელიც მართავს ძრავას, მაღალი/დაბალი სიჩქარით, დამოკიდებულია სენსორის სტატუსზე.

L298N მოდულის გამოყენება ძრავის მართვის მიზნით, Maduino pin5/6 და PWM pin (Maduino Pin9) L298N ჩართეთ pin და ჩართეთ მოდული 9V:

int EN = 9; // PWM კონტროლი

int highspeed = 80; // განსაზღვრეთ მაღალი სიჩქარე

int lowspeed = 60; // განსაზღვრეთ დაბალი სიჩქარე

და შემდეგ ძრავის სიჩქარის კონტროლი შესაძლებელია:

analogWrite (EN, მაღალი სიჩქარე);

ნაბიჯი 3: დააინსტალირეთ რამე იქ, ასეთი ძაღლი…

დააინსტალირეთ რამე იქ, ასეთი ძაღლი…
დააინსტალირეთ რამე იქ, ასეთი ძაღლი…

დააინსტალირეთ სენსორები და ძრავები და გააკეთეთ რამე ჩემთვის, მე მომწონს ძაღლი, რომელიც თამაშობს ჩემს 1.5 წლის ქალიშვილთან ერთად. გადმოწერეთ არდუინოს კოდი აქ … უფასოდ დამიკავშირდით: [email protected] კითხვების შემთხვევაში

გირჩევთ: