Sadržaj:

Klizač za fotografiju DIY: 4 koraka
Klizač za fotografiju DIY: 4 koraka

Video: Klizač za fotografiju DIY: 4 koraka

Video: Klizač za fotografiju DIY: 4 koraka
Video: НЕ ВЫБРОСИЛА СТАРЫЙ ТЮЛЬ И ХОРОШО СЭКОНОМИЛА СЕМЕЙНЫЙ БЮДЖЕТ! 4 КРУТЫЕ ИДЕИ ИЗ ТЮЛЯ! 2024, Srpanj
Anonim
Klizač za fotografije DIY
Klizač za fotografije DIY

Pozdrav svima! ovo je moj projekt za DIY fotoaparat klizač, bilo mi je teško s mojim, ali siguran sam da ako obratite više pažnje na detalje to će uspjeti!

teoretski, ovo bi trebalo u potpunosti funkcionirati

ako se odlučite za ovo, nadam se da ćete uživati!

Korak 1: Prikupite materijale

Prikupite materijale
Prikupite materijale
Prikupite materijale
Prikupite materijale
Prikupite materijale
Prikupite materijale

Elektronički materijali

  • Arduino
  • dva 360 serva
  • daska za kruh
  • otpornici
  • tipke (po mogućnosti 3)

Građevinski materijal

  • dva komada pjenaste ploče
  • drveni komadi tipla (mogu biti metalni)
  • drveni ovalni oblici (pogledajte uvodnu sliku slike).

Korak 2: Postavljanje

Postaviti!
Postaviti!

ova fotografija je dijagram kruga

slijedite ovo i vaš će projekt uspjeti!

Korak 3: Montaža Breadboard -a

Montaža Breadboard -a!
Montaža Breadboard -a!
  • prije svega spojite pozitivnu masu i masu na matičnu ploču.
  • drugo spojite dva serva … i vodite dvije žice na masu i pozitivu, a drugu na pin koji biste odabrali. (imajte na umu da će kod imati pinove koje sam odabrao)..
  • zatim sastavite gumbe … ne zaboravite se spojiti na pinove po vašem izboru, ali kôd neće raditi ako ne koristite pinove koje sam odabrao. spojite gumbe i na masu.
  • i upotrijebite otpornik 220.
  • na kraju, ako želite koristiti LCD monitor, morat ćete spojiti 2 pina na analogni ulaz i jednu žicu na pozitivni terminal.

Korak 4: Arduino kod

#include #include #include

LiquidCrystal_I2C LCD (0x27, 16, 2); // postavite LCD adresu na 0x27 za prikaz od 16 znakova i 2 retka

Servo servoLijevo; // Definiraj lijevi servo Servo servoRight; // Definiraj desni servo

const int startbut = 8; // pin za startbut (startbutton) const int forwardbut = 12; // pin za forwardbut (forwardbutton) const int reversebut = 13; // pin za reversebut (reversebutton) int tim = 500; // vrijednost vremena kašnjenja int flag = 0; int broj = 0;

char array1 = "dobrodošli"; // niz za ispis na LCD -u ("dobrodošli") char array2 = "pritisnite lijevo = LIJEVO, desno = DESNO!"; // niz za ispis na LCD -u ("pritisnite lijevo = LIJEVO, desno = DESNO")

void setup () {servoLeft.attach (10); // Postavite lijevi servo na digitalni pin 10 servoRight.attach (9); // Desni servo postavite na digitalni pin 9 servoLeft.write (90); // postavljanje servo upravljača na 90 stupnjeva servoRight.write (90); kašnjenje (100);

// okreće pin na ulaze pinMode (startbut, INPUT); // inicijalizirati startbut (startbutton) kao ulazni pinMode (reversebut, INPUT); // inicijalizira reversebut (reversebutton) kao ulazni pinMode (forwardbut, INPUT); // inicijalizira forwardbut (forwardbutton) kao ulaz

}

void loop () {// Prolaz kroz testove kretanja // kôd za LCD monitor if (flag == 1 && count == 0) {count = 1; lcd.init (); // inicijalizira lcd lcd.backlight (); // otvaranje pozadinskog osvjetljenja

lcd.setCursor (15, 0); // postavite kursor na stupac 15, redak 0 za (int positionCounter1 = 0; positionCounter1 <26; positionCounter1 ++) {lcd.scrollDisplayLeft (); // Pomicanje sadržaja zaslona za jedan prostor ulijevo. lcd.print (niz1 [brojač pozicija1]); // Ispis poruke na LCD -u. kašnjenje (tim); // čekati 250 mikrosekundi} lcd.clear (); // Briše LCD zaslon i postavlja kursor u gornji lijevi kut. lcd.setCursor (15, 1); // postavite kursor na stupac 15, redak 1 za (int positionCounter = 0; positionCounter <26; positionCounter ++) {lcd.scrollDisplayLeft (); // Pomicanje sadržaja zaslona za jedan prostor ulijevo. lcd.print (niz2 [Brojač pozicija]); // Ispis poruke na LCD -u. kašnjenje (tim); // čekati 250 mikrosekundi} lcd.clear (); // Briše LCD zaslon i postavlja kursor u gornji lijevi kut. } /////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// //////////////////////////////////////////

/provjerite jesu li pritisnuti gumbi if (digitalRead (startbut) == 1) {flag = 1; // označava varijablu za gumb za početak}

if (flag == 1) {if (digitalRead (reversebut) == HIGH) // reversebut pritisnut će uključiti servo {reverse (); // obrnuta varijabla za reversebutton} else if (digitalRead (forwardbut) == HIGH) // pritisnuto forwardbut će uključiti servo {forward (); // naprijed varijabla za forwardbutton} else {stop (); // zaustavi varijablu za zaustavljanje kretanja servo upravljača kada gumbi nisu pritisnuti}}

}

// Rutine kretanja za naprijed, natrag i zaustavljanje void forward () {// naredba za naprijed servoLeft.write (0); // smjer u kojem servomotori okreću servoRight.write (180); } void stop () {// naredba za zaustavljanje servoLeft.write (90); // zaustavlja oba servo pogona na istom mjestu, inače bi bili u različitim položajima servoRight.write (90); } void reverse () {// obratna naredba servoLeft.write (180); // servomotori se aktiviraju u suprotnom smjeru servoRight.write (0); }

evo koda za uspjeh! nakon što postavite vaš arduino sve bi trebalo funkcionirati! i uživaj!

ako ne uspije, svakako se osvrnite na ovo uputstvo i provjerite sve!

Preporučeni: