Sadržaj:

ULAGAČ: 5 koraka
ULAGAČ: 5 koraka

Video: ULAGAČ: 5 koraka

Video: ULAGAČ: 5 koraka
Video: Домашний ХЛЕБ - всего 5 компонентов! + намазка к нему! Простейший РЕЦЕПТ от шеф-повара Лазерсона 2024, Novembar
Anonim
ROADRUNNER
ROADRUNNER

Roadrunner je malo automatizirano vozilo koje ima funkciju transporta limenki za piće do žednih korisnika.

Kako radi? Limenka se postavlja na gornju bazu vozila, a težina limenke pokreće malo dugme koje transporteru govori da je spremno za rad. Da bi se usmjerio, Roadrunner slijedi put na tlu u obliku crne crte, koja pokazuje gdje treba ići, a zahvaljujući upotrebi fotosenzora, u stanju je otkriti kada mu se udalji s puta, ispravljajući njegov smjer, da ostanu na ovaj način, uvijek unutar staze. Nakon što vozilo stigne do korisnika, preuzima limenku za piće i zaustavlja mali prijevoz na istom mjestu. Neće obnoviti svoj marš sve dok korisnik ne stavi limenku na njega, kako bi se vratio na početnu točku i završio svoj posao.

Korak 1: Alati i materijali

Alati i materijali
Alati i materijali
Alati i materijali
Alati i materijali

Korak 2: Sklapanje hardvera

Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera
Sklapanje hardvera

1. TELO

Za tijelo smo koristili aluminijsku ploču, koju smo izrezali i savili u željenom obliku. Napravili smo i sve rupe koje su potrebne za vijke.

2. TOČKOVI

Koristili smo 2 kotača iz Mecano igre koji savršeno pristaju našem robotu. Servomotori idu ispod ploče spojene pomoću vijaka. Za prednji kotač koristili smo "slobodni" kotač, tako da se može lako kretati u bilo kojem smjeru.

3. FOTOSENZORI

Za fotosenzore RDL koristili smo ploču i zavarili kolo na nju, ona uključuje otpor, LDR, pozitivan, negativan i signal.

4. ARDUINO ODBOR

Arduino ploču smo pričvrstili na ploču pomoću vijaka. Tada smo samo spojili sve krugove na njega. Za napajanje ploče koristili smo 2 9V baterije, koje smo ujedinili i priključili na Arduino.

5. TOP PLOČA

Za gornju ploču koristili smo stroj za lasersko rezanje za rezanje PMMA. Dizajnirali smo ovaj oblik s AutoCad -om. Sastoji se od velike ploče, 3 kružna prstena i kružnog komada koji se uklapa u prstenove. Ploči smo dali prostora kako bismo mogli staviti dugme.

Korak 3: Električne veze

Električni priključci
Električni priključci

1. Priključivanje servomotora:

Servomotori se sastoje od tri kabela; jedna žuta ili narančasta za signal, crvena za napajanje (Vcc) i crna ili smeđa za uzemljenje (GND). Crvena i smeđa su pričvršćene na odgovarajuće pinove na Arduinu (5V i GND). Jedan servo je priključen na PWM pin 10, a drugi na PWM pin 11.

2. Dugme za povezivanje:

Elektronski tasteri rade na pomalo osebujan način; dopustiti da napon pređe preko pinova dijagonalno, odnosno ako imamo četiri pina, moramo spojiti ulaz i izlaz na samo dva pina, 1-4 ili 2-3 da bi radili. Na primjer, ako odaberemo pinove 1-4, spojit ćemo uzemljenje (GND) na pin 4, a izlaz će se spojiti na PWM 9 pin i, zauzvrat, zajedno s otporom od 1 kOhm, spojiti ga na 5V (Vcc).

3. Povezivanje fotosenzora:

Za spajanje fotosenzora, moramo postaviti jednu nogu direktno na Vcc napajanje, a drugu je spojiti istovremeno, na analogni pin (u ovom slučaju na pinove A0 i A1) i na uzemljeni GND zajedno sa otpor 1 kOhm.

Bilješka:

Možete spojiti male konektore na žice ako se žice ne uklapaju izravno u Arduino ili upotrijebiti protoboard kako biste olakšali različite veze. U ovom projektu koristili smo spojne trake za različite spojeve.

Korak 4: Programiranje Arduina

Programiranje Arduina
Programiranje Arduina
Programiranje Arduina
Programiranje Arduina

CODE

#include Servo myservoL;

Servo myservoR;

int inPin = 7;

int buttonVal = 1;

void setup () {

// SERVOMOTORI

myservoL.attach (10);

myservoR.attach (11);

Serial.begin (9600); }

void loop () {{100} {101}

int LDR_L = analogRead (A2);

int LDR_R = analogRead (A1);

buttonVal = digitalRead (inPin);

// PAKIRAJTE LIJEVO

if (LDR_L> 590 && buttonVal == 0) {

myservoL.write (180);

//Serial.println(LDR_L); }

else {

myservoL.write (92);

//Serial.println(LDR_L);

}

// PAKIRAJTE DESNO

if (LDR_R> 750 && buttonVal == 0) {

myservoR.write (-270);

//Serial.println(LDR_R); }

else {

myservoR.write (92);

//Serial.println(LDR_R); }

}

Preporučuje se: