Talaan ng mga Nilalaman:

DIY Photography Slider: 4 na Hakbang
DIY Photography Slider: 4 na Hakbang

Video: DIY Photography Slider: 4 na Hakbang

Video: DIY Photography Slider: 4 na Hakbang
Video: DIY GoPro Steadicam Version 2: Step-By-Step Build How-To 2024, Nobyembre
Anonim
DIY Photography Slider
DIY Photography Slider

hello sa lahat! ito ang aking proyekto para sa isang slider ng DIY camera, nagkaroon ako ng isang mahirap na oras sa minahan, ngunit sigurado ako kung bibigyan mo ng higit na pansin ang detalye gagana ito!

sa teorya, dapat itong ganap na gumana

kung pipiliin mong gawin ito inaasahan kong nasiyahan ka!

Hakbang 1: Ipunin Mo Mga Materyal

Ipunin Mo Mga Materyal
Ipunin Mo Mga Materyal
Ipunin Mo Mga Materyal
Ipunin Mo Mga Materyal
Ipunin Mo Mga Materyal
Ipunin Mo Mga Materyal

Mga Kagamitan sa Elektronikon

  • Arduino
  • dalawang 360 servo
  • board ng tinapay
  • resistors
  • mga pindutan (mas mabuti na 3)

Mga materyales sa gusali

  • dalawang piraso ng foam board
  • mga piraso ng kahoy na dowel (maaaring metal)
  • kahoy na hugis-itlog na mga piraso (sumangguni sa larawan ng intro na imahe).

Hakbang 2: Pag-set up

Setup!
Setup!

ang larawang ito ay ang diagram ng circuit

sundin ito at gagana ang iyong proyekto!

Hakbang 3: Assembly of Breadboard

Assembly of Breadboard!
Assembly of Breadboard!
  • una sa lahat kumonekta positibo at ground sa breadboard.
  • pangalawang ikonekta ang dalawang servos … at magkaroon ng dalawang wires na tumatakbo sa lupa at positibo, at isa pa sa pin na pipiliin mo. (tandaan ang code ay magkakaroon ng mga pin na pinili ko)..
  • pagkatapos ay tipunin ang iyong mga pindutan … tandaan na kumonekta sa mga pin na iyong pinili ngunit hindi gagana ang code kung hindi mo gagamitin ang mga pin na pinili ko. ikonekta din ang mga pindutan sa lupa.
  • at gumamit ng isang 220 risistor.
  • Panghuli, kung nais mong gumamit ng isang monitor ng LCD kakailanganin mong ikonekta ang 2 mga pin sa analog input at isang kawad sa positibong terminal.

Hakbang 4: Ang Arduino Code

# isama ang # isama ang # isama

LiquidCrystal_I2C lcd (0x27, 16, 2); // itakda ang LCD address sa 0x27 para sa isang 16 chars at 2 line display

Servo servoLeft; // Tukuyin ang kaliwang servo Servo servoRight; // Tukuyin ang tamang servo

Const int startbut = 8; // pin for startbut (startbutton) const int forwardbut = 12; // pin for forwardbut (forwardbutton) const int reverseebut = 13; // pin for reverseebut (reverseebutton) int tim = 500; // ang halaga ng pagkaantala ng oras int flag = 0; int count = 0;

char array1 = "maligayang pagdating"; // the string to print on the LCD ("welcome") char array2 = "push left = LEFT, right = RIGHT!"; // ang string upang mai-print sa LCD ("push left = LEFT, right = RIGHT")

void setup () {servoLeft.attach (10); // Itakda ang kaliwang servo sa digital pin 10 servoRight.attach (9); // Itakda ang kanang servo sa digital pin 9 servoLeft.write (90); // set servos to 90 degrees servoRight.write (90); pagkaantala (100);

// turn the pin to inputs pinMode (startbut, INPUT); // ipasimula ang startbut (startbutton) bilang isang input pinMode (reverseebut, INPUT); // ipasimuno ang balikdalan (reverseebutton) bilang isang input pinMode (forwardbut, INPUT); // ipasimula ang forwardbut (forwardbutton) bilang isang input

}

void loop () {// Loop through motion test // code for LCD monitor if (flag == 1 && count == 0) {count = 1; lcd.init (); // ipasimula ang lcd lcd.backlight (); // buksan ang backlight

lcd.setCursor (15, 0); // itakda ang cursor sa haligi 15, linya 0 para sa (int posisyonCounter1 = 0; posisyonCounter1 <26; posisyonCounter1 ++) {lcd.scrollDisplayLeft (); // Nag-scroll sa mga nilalaman ng display ng isang puwang sa kaliwa. lcd.print (array1 [posisyonCounter1]); // I-print ang isang mensahe sa LCD. antala (tim); // wait for 250 microseconds} lcd.clear (); // Nilinaw ang screen ng LCD at pinosisyon ang cursor sa kaliwang sulok sa itaas. lcd.setCursor (15, 1); // itakda ang cursor sa haligi 15, linya 1 para sa (int posisyonCounter = 0; posisyonCounter <26; posisyonCounter ++) {lcd.scrollDisplayLeft (); // Scroll ang mga nilalaman ng display ng isang puwang sa kaliwa. lcd.print (array2 [posisyonCounter]); // I-print ang isang mensahe sa LCD. antala (tim); // wait for 250 microseconds} lcd.clear (); // Nilinaw ang screen ng LCD at pinosisyon ang cursor sa kaliwang sulok sa itaas. } // ///. // ///. // ///.

/ suriin kung ang mga pindutan ay pinindot kung (digitalRead (startbut) == 1) {flag = 1; // variable ng flag para magsimula ang pindutan}

kung (flag == 1) {kung (digitalRead (reverseebut) == MATAAS) // reverseebut na pinindot ay bubukas sa isang servo {reverse (); // variable variable para sa reverseebutton} iba pa kung (digitalRead (forwardbut) == MATAAS) // forwardbut pinindot ay magpapasara sa isang servo {forward (); // forward variable para sa forwardbutton} iba pa {stop (); // stop variable upang ihinto ang paggalaw ng mga servo kapag hindi pinindot ang mga pindutan}}

}

// Mga paggalaw sa paggalaw para sa pasulong, baligtarin at ihinto ang walang bisa pasulong () {// forward command servoLeft.write (0); // direksyon kung saan lumiliko ang servoRight.write (180); } void stop () {// stop command servoLeft.write (90); // ihihinto ang parehong servos sa parehong lugar, kung hindi man ay nasa magkakaibang posisyon sila servoRight.write (90); } void reverse () {// reverse command servoLeft.write (180); // servos buhayin sa kabaligtaran direksyon servoRight.write (0); }

narito ang code para sa tagumpay! pagkatapos mong mai-set up ang iyong arduino lahat dapat gumana! at magsaya!

kung hindi ito gumana siguraduhing tumingin sa pabalik sa itinuturo na ito at suriin ang lahat!

Inirerekumendang: