Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Radim kao CNC operater i mislim da imam jako kul posao, ali htio sam sebi dokazati da mogu voditi svoje projekte. Studirao sam tehnologiju upravljanja na sveučilištu, ali nemam priliku to vježbati na poslu, pa sam odlučio nastaviti nekako. Bilo je vrlo uzbudljivo otkriti da je tehnologija danas tako dostupna. Želim graditi robote u budućnosti i mislio sam da je oko dobar početak.
Korak 1: Ovo je ono što vam treba
Materijali:
- 2 bijele ping-pong loptice
- Cijev za hlađenje vodom okrugle glave
Alati:
- Pištolj za vruće ljepilo
- okrugli mlin
- pila
- Čekić
Korak 2: Oči
Prerežite kuglice, ali ne na pola. Neka jedan dio bude puno veći od drugog, izrezali smo kuglice kako bismo mogli staviti nešto unutra i potrebni su nam rubovi za bušenje rupa koje pomažu u kontroli očiju.
Obojite i izbušite rupe.
Korak 3: Pet rotacija
Ne želim oko koje se pomiče samo s jedne strane na drugu. Vidio sam mnoge instrukcije, ali nisam mogao razumjeti kako to omogućiti. Konačno sam pronašao video na You-Tubeu, ali nisam želio kupiti. Prvi put sam pokušao koristiti drvo i metal s isječaka. Igle sam učvrstio pištoljem za ljepilo, ali nisam bio zadovoljan rezultatima. Kao industrijski radnik imam pristup mnogim stvarima. Promatrao sam cijev za hlađenje vode s okruglom glavom koja izgleda baš ono što mi je trebalo, ali bilo je preusko da se slobodno okreće. Glodala sam unutar odjeljka i tada je moj dio bio spreman za slobodno okretanje.
Korak 4: Baza
Možete upotrijebiti čekić za savijanje podnožja, klupa pomaže postići savršenih 90 °. Prije savijanja svakako izbušite rupu, mnogo je lakše.
Korak 5: Kontrola očiju
Korak 6: Program
Ja sam jako nov pa mi je trebala pomoć oko programa, projekt možete vidjeti ovdje. Moj izvor
Kopirajte i zalijepite program u svoje Arduino okruženje.
#uključi
#define pi 3.14159265358979323846 #define twopi (2*pi) float circleradius = 50; // 50 sa svake strane - neka više ne bude neka od vaših maksimalnih graničnih vrijednosti float stepnumber = 360; float stepangle;
#include // uključuje servo biblioteku za servo kontrolu
Servo horServo; // servo za kretanje lijevo/desno Servo vertServo; // servo za kretanje gore/dolje
bajt randomhor; // definiranje slučajnog vodoravnog položaja varijabla byte randomvert; // definiramo slučajnu varijablu okomitog položaja int randomdelay; // definiramo varijablu slučajnog kašnjenja
#define HLEFTLIMIT 40 // definirajte lijevo ograničenje na vodoravnom (lijevo/desno) servo #define HRIGHTLIMIT 80 // definirajte desno ograničenje na horizontalnom (lijevo/desno) servo
#define VTOPLIMIT 70 // definirajte gornju granicu na okomitom (gore/dolje) servo #define VBOTLIMIT 110 // definirajte donju granicu na horizontalnoj (gore/dolje) servo
void setup () {horServo.attach (8); // vodoravni servo na pinu 8 vertServo.attach (9); // vertikalni servo na pinu 9 randomSeed (analogRead (0)); // Stvorite neke slučajne vrijednosti pomoću nepovezanog analognog pina
stepangle = twopi/stepnumber; za (int i = 0; i
x = karta (x, 1-kružni radijus, kružni radijus, 0, 2*kružni radijus); y = karta (y, 1-kružni radijus, kružni radijus, 0, 2*kružni radijus);
horServo.write (x); // zapisivanje u vodoravni servo vertServo.write (y); // pisanje na vodoravni servo
kašnjenje (10); }}
void loop () {randomhor = random (HLEFTLIMIT, HRIGHTLIMIT); // postavljanje granica randomvert = random (VTOPLIMIT, VBOTLIMIT); // postavljanje granica randomdelay = random (1000, 4000); // pomiče se svakih 1 do 4 sekunde
horServo.write (randomhor); // zapisivanje na vodoravni servo vertServo.write (randomvert); // zapisivanje na okomiti servo kašnjenje (randomdelay); // odgoditi nasumično vrijeme (unutar gore navedenih vrijednosti)}