Obsah:

Posuvník fotografie pre domácich majstrov: 4 kroky
Posuvník fotografie pre domácich majstrov: 4 kroky

Video: Posuvník fotografie pre domácich majstrov: 4 kroky

Video: Posuvník fotografie pre domácich majstrov: 4 kroky
Video: Стабилизация биохимических показателей крови. Большой восстановительный рефлекторный каскад 2024, Júl
Anonim
DIY fotografický posuvník
DIY fotografický posuvník

Ahojte všetci! toto je môj projekt pre posuvný fotoaparát pre domácich majstrov, mal som s ním ťažké časy, ale som si istý, že ak budete venovať väčšiu pozornosť detailom, bude fungovať!

teoreticky by to malo fungovať úplne

ak sa pre to rozhodnete, dúfam, že sa vám to bude páčiť!

Krok 1: Zhromaždite materiály

Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály
Zhromaždite materiály

Elektronické materiály

  • Arduino
  • dve 360 serva
  • chlebová doska
  • odpory
  • tlačidlá (najlepšie 3)

Stavebné materiály

  • dva kusy penovej dosky
  • drevené kusy hmoždinky (môžu byť kovové)
  • drevené oválne kusy (pozrite sa na úvodný obrázok).

Krok 2: Nastavenie

Nastaviť!
Nastaviť!

táto fotka je schéma zapojenia

riaďte sa týmto a váš projekt bude fungovať!

Krok 3: Montáž Breadboardu

Montáž Breadboardu!
Montáž Breadboardu!
  • v prvom rade pripojte kladný a uzemňovací vodič na dosku.
  • za druhé spojte dve serva … a nechajte dva vodiče viesť k uzemneniu a kladnému pólu a ďalší na kolík, ktorý by ste si vybrali. (kód bude obsahovať piny, ktoré som vybral)..
  • potom zostavte svoje tlačidlá … nezabudnite sa pripojiť k pinom podľa vášho výberu, ale kód nebude fungovať, ak piny, ktoré som vybral, nepoužijete. pripojte tlačidlá aj k zemi.
  • a použite odpor 220.
  • Nakoniec, ak by ste chceli používať LCD monitor, budete musieť pripojiť 2 piny na analógový vstup a jeden vodič na kladný pól.

Krok 4: Arduino kód

#include #include #include

LiquidCrystal_I2C lcd (0x27, 16, 2); // nastavte adresu LCD na 0x27 pre 16 znakový a 2 riadkový displej

Servo servo vľavo; // Definujte ľavé servo Servo servoRight; // Definujte pravé servo

const int startbut = 8; // pin pre startbut (startbutton) const int forwardbut = 12; // pin pre forwardbut (forwardbutton) const int reverseebut = 13; // pin pre reverzné tlačidlo (reverzné tlačidlo) int tim = 500; // hodnota času oneskorenia int príznak = 0; počet int = 0;

char array1 = "vitajte"; // reťazec na tlač na LCD („vitajte“) char array2 = "zatlačte doľava = VĽAVO, vpravo = VPRAVO!"; // reťazec, ktorý sa má vytlačiť na LCD („push left = LEFT, right = RIGHT“)

void setup () {servoLeft.attach (10); // Nastavte ľavé servo na digitálny kolík 10 servoRight.attach (9); // Nastav pravé servo na digitálny pin 9 servoLeft.write (90); // nastav serva na 90 stupnov servoRight.write (90); oneskorenie (100);

// otočí pin na vstupy pinMode (startbut, INPUT); // inicializácia štartbutu (startbutton) ako vstupného pinMode (reverzné tlačidlo, INPUT); // inicializácia reverzného tlačidla (reverzné tlačidlo) ako vstupného pinMode (forwardbut, INPUT); // inicializácia tlačidla forwardbut (tlačidlo dopredu) ako vstupu

}

void loop () {// Opakovanie pohybových testov // kód pre LCD monitor if (flag == 1 && count == 0) {count = 1; lcd.init (); // inicializácia lcd lcd.backlight (); // otvorte podsvietenie

lcd.setCursor (15, 0); // nastavte kurzor na stĺpec 15, riadok 0 pre (int positionCounter1 = 0; positionCounter1 <26; positionCounter1 ++) {lcd.scrollDisplayLeft (); // Posunie obsah displeja o jedno miesto doľava. lcd.print (pole1 [positionCounter1]); // Vytlačte správu na LCD. oneskorenie (tim); // počkajte 250 mikrosekúnd} lcd.clear (); // Vymaže obrazovku LCD a umiestni kurzor do ľavého horného rohu. lcd.setCursor (15, 1); // nastavte kurzor na stĺpec 15, riadok 1 pre (int positionCounter = 0; positionCounter <26; positionCounter ++) {lcd.scrollDisplayLeft (); // Posunie obsah displeja o jedno miesto doľava. lcd.print (pole2 [polohový počítadlo]); // Vytlačte správu na LCD. oneskorenie (tim); // počkajte 250 mikrosekúnd} lcd.clear (); // Vymaže obrazovku LCD a umiestni kurzor do ľavého horného rohu. } ///////////////////////////////////////////////////////// ////////////////////////////////////////////////////////// /////////////////////////////////////////

/skontrolujte, či sú tlačidlá stlačené, ak (digitalRead (startbut) == 1) {flag = 1; // premenná príznaku pre spustenie tlačidla}

if (flag == 1) {if (digitalRead (reverseebut) == HIGH) // spätný chod stlačený zapne servo {reverse (); // premenná dozadu pre reverzné tlačidlo} else if (digitalRead (forwardbut) == HIGH) // dopredu stlačené zapne servo {forward (); // premenná dopredu pre tlačidlo dopredu} else {stop (); // zastavenie premennej na zastavenie pohybu serva, ak nie sú stlačené tlačidlá}}

}

// Rutiny pohybu pre posun vpred, vzad a zastavenie neplatné dopredu () {// príkaz dopredu servoLeft.write (0); // smer, v ktorom sa serva otáčajú servoRight.write (180); } void stop () {// príkaz na zastavenie servoLeft.write (90); // zastaví obe serva na tom istom mieste, inak by boli v rôznych polohách servoRight.write (90); } void reverse () {// reverzný príkaz servoLeft.write (180); // serva sa aktivujú v opačnom smere servoRight.write (0); }

tu je kód úspechu! potom, čo si nastavíte arduino, by malo všetko fungovať! a užiť si!

Ak to nefunguje, nezabudnite sa pozrieť na tento návod a skontrolovať všetko!

Odporúča: