Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Mən CNC operatoru olaraq çalışıram və düşünürəm ki, çox gözəl bir işim var, amma öz layihələrimə rəhbərlik edə biləcəyimi sübut etmək istəyirdim. Universitetdə idarəetmə texnologiyasını öyrəndim, amma işlə məşğul olmaq imkanım yoxdur, buna görə də özümü birtəhər davam etdirməyə qərar verdim. Texnologiyanın bu gün bu qədər əlçatan olduğunu kəşf etmək çox həyəcanlı idi. Gələcəkdə robotlar qurmaq istəyirəm və gözün yaxşı bir başlanğıc olduğunu düşündüm.
Addım 1: Ehtiyacınız budur
Materiallar:
- 2 ağ stolüstü tennis topu
- Dairəvi Başlı Su Soyutma Borusu
Alətlər:
- İsti yapışqan silahı
- yuvarlaq dəyirman
- gördüm
- Hammer
Addım 2: Gözlər
Topları kəsin, ancaq yarısında deyil. Bir hissəsi digərindən daha böyük olsun, içəriyə bir şey qoya bilmək üçün topları kəsdik və gözləri idarə etməyə kömək edən delikləri qazmaq üçün kənarlara ehtiyacımız var.
Boyalar və deliklər qazın.
Addım 3: Fri Rotation
Yalnız bir tərəfdən digərinə hərəkət edən bir göz istəmirdim. Bir çox təlimat gördüm, amma bunun necə mümkün olacağını başa düşmədim. Nəhayət You-Tube-də bir video tapdım, amma almaq istəmədim. Kliplərdən ağac və metaldan istifadə etmək üçün ilk cəhdimi etdim. Sancaqları yapışqan tabancası ilə bağladım, amma nəticələrdən razı qalmadım. Sənaye işçisi olaraq bir çox şeyə girişim var. Dəyirmi Başlı Su Soyutma Borusunun ehtiyacım olduğu kimi göründüyünü gördüm, ancaq sərbəst dönmək üçün sıx idi. Bölmənin içərisində öğütdüm və sonra hissəm sərbəst dönməyə hazır oldu.
Addım 4: Baza
Baza əymək üçün bir çəkicdən istifadə edə bilərsiniz, dəzgah mengenesi mükəmməl 90 ° -ə çatmağa kömək edir. Bükmədən əvvəl çuxuru qazdığınızdan əmin olun, bu daha asandır.
Addım 5: Gözlərə nəzarət
Addım 6: Proqram
Çox yeni olduğum üçün proqramla əlaqədar bir yardıma ehtiyacım var, layihəni burada görə bilərsiniz. Mənbəm
Proqramı Arduino mühitinizə kopyalayın və yapışdırın.
#daxil edin
#define pi 3.14159265358979323846 #define twopi (2*pi) float circleradius = 50; // hər tərəfdən 50 - maksimum limit dəyərlərinizdən heç birini etməyin float stepnumber = 360; float stepangle;
#include // servo nəzarəti üçün servo kitabxana daxildir
Servo horServo; // sol/sağ hərəkət üçün servo Servo vertServo; // yuxarı/aşağı hərəkət üçün servo
bayt təsadüfən; // təsadüfi üfüqi mövqe dəyişənini bayt təsadüfən təyin etmək; // təsadüfi şaquli mövqe dəyişənini təyin etmə int randomdelay; // təsadüfi gecikmə dəyişənini təyin edin
#define HLEFTLIMIT 40 // üfüqi (sol/sağ) servoda sol limiti təyin edin #define HRIGHTLIMIT 80 // üfüqi (sol/sağ) servoda sağ limiti təyin edin
#define VTOPLIMIT 70 // şaquli (yuxarı/aşağı) servoda üst həddi təyin edin #debine VBOTLIMIT 110 // üfüqi (yuxarı/aşağı) servoda alt həddi təyin edin
boş quraşdırma () {horServo.attach (8); // 8 -ci pindəki üfüqi servo vertServo.attach (9); // şaquli servo pin 9 randomSeed (analogRead (0)); // Bağlanmayan analog pin istifadə edərək bəzi təsadüfi dəyərlər yaradın
stepangle = ikiqat/addım sayı; üçün (int i = 0; i
x = xəritə (x, 1-circleradius, circleradius, 0, 2*circleradius); y = xəritə (y, 1-circleradius, circleradius, 0, 2*circleradius);
horServo.write (x); // üfüqi servoya vertServo.write (y) yaz; // üfüqi servoya yazın
gecikmə (10); }}
void loop () {randomhor = təsadüfi (HLEFTLIMIT, HRIGHTLIMIT); // limitləri təsadüfi çevirmək = təsadüfi (VTOPLIMIT, VBOTLIMIT); // məhdudiyyətlər təyin edin randomdelay = təsadüfi (1000, 4000); // hər 1-4 saniyədə bir hərəkət edir
horServo.write (randomhor); // üfüqi servoya yaz vertServo.write (randomvert); // şaquli servo gecikməsinə yazın (randomdelay); // təsadüfi bir müddət gecikdirin (yuxarıda göstərilən dəyərlər daxilində)}