Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 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 univerzitetu, ali nemam priliku to vježbati na poslu, pa sam odlučio nekako nastaviti. 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 sa okruglom glavom
Alati:
- Pištolj za vruće ljepilo
- okrugli mlin
- vidio
- Hammer
Korak 2: Oči
Isecite loptice, ali ne na pola. Neka jedan dio bude mnogo veći od drugog, režemo kuglice da bismo mogli staviti nešto unutra i trebaju 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-Tube-u, ali nisam htio kupiti. Prvi put sam pokušao koristiti drvo i metal sa isječaka. Igle sam učvrstio pištoljem za ljepilo, ali nisam bio zadovoljan rezultatima. Kao industrijski radnik imam pristup mnogim stvarima. Primijetio sam da cijev za hlađenje vode sa okruglom glavom izgleda baš ono što mi je trebalo, ali bilo je čvrsto da se slobodno okreće. Glodala sam unutar sekcije i tada je moj dio bio spreman za slobodno okretanje.
Korak 4: Baza
Možete upotrijebiti čekić za savijanje baze, a klupa pomaže postići savršenih 90 °. Izbušite rupu prije savijanja, to je mnogo 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.
#include
#define pi 3.14159265358979323846 #define twopi (2*pi) float circleradius = 50; // 50 sa svake strane - ne pravite više nikakvu 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
byte randomhor; // definiramo slučajnu horizontalnu varijablu varijable byte randomvert; // definiramo slučajnu varijablu vertikalne pozicije int randomdelay; // definiramo varijablu slučajnog kašnjenja
#define HLEFTLIMIT 40 // definirajte lijevo ograničenje na horizontalnom (lijevo/desno) servo #define HRIGHTLIMIT 80 // definirajte desno ograničenje na horizontalnom (lijevo/desno) servo
#define VTOPLIMIT 70 // definirajte gornju granicu na vertikalnom (gore/dolje) servo #define VBOTLIMIT 110 // definirajte donju granicu na horizontalnoj (gore/dolje) servo
void setup () {horServo.attach (8); // horizontalni 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 = mapa (x, 1-kružni radijus, kružni radijus, 0, 2*kružni radijus); y = mapa (y, 1-kružni radijus, kružni radijus, 0, 2*kružni radijus);
horServo.write (x); // zapisuje na horizontalni servo vertServo.write (y); // zapisuje na horizontalni servo
kašnjenje (10); }}
void loop () {randomhor = random (HLEFTLIMIT, HRIGHTLIMIT); // postavljanje granica randomvert = random (VTOPLIMIT, VBOTLIMIT); // postavljanje granica randomdelay = random (1000, 4000); // pomera se svakih 1 do 4 sekunde
horServo.write (randomhor); // zapisuje na horizontalni servo vertServo.write (randomvert); // upis na okomiti servo kašnjenje (randomdelay); // odgoditi slučajni vremenski period (unutar gore navedenih vrijednosti)}