Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Një ditë gjeta një video interesante në:
Në shikim të parë ndjej se është vërtet e çuditshme, dhe pastaj këmbët e mashtruara, nuk e di cila është arsyeja e fundit që ky projektues bëri një histori kaq mashtruese … është e pamundur nga një sensor i thjeshtë IR, ose edhe pa ndonjë kontrollues, por vetëm triode të thjeshta Me
Unë nuk e njoh djalin dhe të gjithë historinë, thjesht përpiqem ta bëj vetë. Unë sapo bëra modelin tim, me module shumë të thjeshta:
- Çdo kontrollues i pajtueshëm me Arduino siç është Maduino
- Drejtuesi i motorit L298N
- 3x sensor IR
- Disa kërcyes të zakonshëm
Hapi 1: Zbulimi i Pengesave
Atje 3 sensorë IR përdoren për të zbuluar pengesën, dhe sensori i majtë/i djathtë zbuloi pengesën, ai duhet të rrotullohet në drejtim të orës/kundër orës, ndërsa sensori i mesëm i zbuluar, është në rregull.
Sensori 3 zbulon nëse ka ndonjë pengesë përpara. Lidh pinin e sinjalit me kunjat e hyrjes Maduino, të tilla si Pin2/3/4;
Si softuer, thjesht kontrolloni statusin e daljes së sensorit, për të vendosur se çfarë duhet të bëjë motori:
nëse (IR1_STA == HIGH & IR2_STA == LOW & IR3_STA == LART) // Nëse sensori mesatar zbulon pengesën, motori ndalon
{
analogWrite (EN, 0);
Ndalo ();
}
nëse (IR1_STA == LOW & IR2_STA == LART & IR3_STA == LART) // nëse sensori i drejtë zbulon të kundërtën, me motor të kundërt me shpejtësi të lartë;
{
analogWrite (EN, shpejtësi të lartë);
E kundërta ();
}
nëse (IR1_STA == LOW & IR2_STA == LOW & IR3_STA == LART) // nëse
sensori i djathtë dhe i mesëm zbulon motorin e kundërt të pengueshëm, me shpejtësi të ulët;
{
analogWrite (EN, shpejtësi e ulët);
E kundërta ();
}
……
Hapi 2: Kontrolli i motorit
Dhe një drejtues motori për të drejtuar motorin, me shpejtësi të lartë/të ulët, varet nga statusi i sensorit.
Përdorimi i një moduli L298N për të drejtuar motorin, me pinin Maduino5/6, dhe kunjin PWM (Maduino Pin9) në L298N Aktivizoni kunjin dhe aktivizoni modulin me 9V:
int EN = 9; // Kontrolli PWM
int highspeed = 80; // përcaktoni shpejtësinë e lartë
int lowspeed = 60; // përcaktoni shpejtësinë e ulët
dhe pastaj shpejtësia e motorit mund të kontrollohet nga:
analogWrite (EN, shpejtësi të lartë);
Hapi 3: Instaloni diçka atje, një qen i tillë…
Instaloni sensorët dhe motorët dhe bëni diçka, për mua, më pëlqen një qen të luajë me vajzën time 1.5 vjeçare. Shkarkoni kodin Arduino këtu…. Pa pagesë të më kontaktoni: [email protected] nëse keni ndonjë pyetje