Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Bir kuni men qiziq videoni topdim:
Bir qarashda, men o'zimni g'alati his qilyapman, keyin esa oyoqlar aldanib ketdi, menimcha, bu dizaynerning chalg'ituvchi hikoya qilishining asosiy sababi nimada … buni oddiy IQ sensori, hatto boshqaruvchisiz ham, faqat oddiy triodlar yordamida amalga oshirish mumkin emas..
Men yigitni va butun voqeani bilmayman, men buni faqat o'zim qilishga harakat qilaman. Men o'z dizaynimni juda oddiy modullar bilan yaratdim:
- Maduino kabi Arduino -ga mos keladigan har qanday nazoratchi
- L298N dvigatel uchun haydovchi
- 3x IQ sensori
- Ba'zi oddiy jumperlar
1 -qadam: to'siqlarni aniqlash
To'siqni aniqlash uchun 3 ta IQ sensori ishlatiladi va to'siqni chap/o'ng sensori aniqladi, uni soat/soatga qarshi yo'nalishda aylantirish kerak, o'rta sezgich esa aniq.
3 sensori oldingizda biron bir to'siq borligini aniqlaydi. Signal pinini Maduino kirish pinlariga ulaydi, masalan Pin2/3/4;
Dvigatel nima qilishi kerakligini aniqlash uchun dasturiy ta'minot sifatida sensorning chiqish holatini tekshiring:
if (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == HIGH) // Agar vositachi to'siqni aniqlasa, vosita to'xtashi
{
analogWrite (EN, 0);
STOP();
}
agar (IR1_STA == LOW & IR2_STA == HIGH & IR3_STA == HIGH) // agar sensori to'siqni aniqlasa, dvigatel teskari tezlikda;
{
analogWrite (EN, yuqori tezlik);
Teskari ();
}
if (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == HIGH) // agar
O'ng va o'rta sensor past tezlikda harakatlanuvchi, teskari dvigatelni aniqlaydi;
{
analogWrite (EN, past tezlik);
Teskari ();
}
……
2 -qadam: Dvigatelni boshqarish
Dvigatel haydovchisi, yuqori/past tezlikda, dvigatelni boshqaradi, bu sensor holatiga bog'liq.
D2 dvigatelini boshqarish uchun L298N modulidan foydalanib, Maduino pin5/6 va PWM pinli (Maduino Pin9) L298N pinini yoqing va modulni 9V bilan quvvatlang:
int EN = 9; // PWM nazorati
int highspeed = 80; // yuqori tezlikni aniqlang
int lowspeed = 60; // past tezlikni aniqlang
Dvigatel tezligini quyidagicha boshqarish mumkin:
analogWrite (EN, yuqori tezlik);
3 -qadam: U erda biror narsa o'rnating, bunday it …
Datchiklar va motorlarni o'rnating va nimadir yasang, men uchun 1,5 yoshli qizim bilan o'ynaydigan itni yaxshi ko'raman. Arduino kodini bu erga yuklang. Men bilan bog'laning: [email protected]