Spisu treści:

Suwak fotografii DIY: 4 kroki
Suwak fotografii DIY: 4 kroki

Wideo: Suwak fotografii DIY: 4 kroki

Wideo: Suwak fotografii DIY: 4 kroki
Wideo: Как сделать фотографию 3 на 4 в домашних условиях? Фото на документы 2024, Lipiec
Anonim
Suwak fotografii DIY
Suwak fotografii DIY

cześć wszystkim! to jest mój projekt na suwak do aparatu DIY, miałem trudny czas z moim, ale jestem pewien, że jeśli zwrócisz większą uwagę na szczegóły, to zadziała!

teoretycznie powinno to w pełni działać

jeśli zdecydujesz się to zrobić, mam nadzieję, że Ci się spodoba!

Krok 1: Zbierz materiały

Zbierz materiały
Zbierz materiały
Zbierz materiały
Zbierz materiały
Zbierz materiały
Zbierz materiały

Materiały elektroniczne

  • Arduino
  • dwa serwa 360
  • deska do chleba
  • rezystory
  • przyciski (najlepiej 3)

Materiały budowlane

  • dwa kawałki płyty piankowej
  • drewniane kawałki kołków (mogą być metalowe)
  • drewniane elementy owalne (patrz zdjęcie wprowadzające).

Krok 2: Konfiguracja

Ustawiać!
Ustawiać!

to zdjęcie to schemat obwodu

postępuj zgodnie z tym, a Twój projekt zadziała!

Krok 3: Montaż deski do krojenia chleba

Montaż płyty chlebowej!
Montaż płyty chlebowej!
  • przede wszystkim podłącz plus i masę do płytki stykowej.
  • po drugie podłącz dwa serwa… i dwa przewody biegnące do masy i dodatniego, a drugi do pinu, który byś wybrał. (zwróć uwagę, że kod będzie miał szpilki, które wybrałem)..
  • następnie zmontuj przyciski… pamiętaj, aby połączyć się z wybranymi pinami, ale kod nie zadziała, jeśli nie użyjesz wybranych przeze mnie pinów. podłącz również przyciski do masy.
  • i użyj rezystora 220.
  • na koniec, jeśli chcesz użyć monitora LCD, będziesz musiał podłączyć 2 piny do wejścia analogowego i jeden przewód do dodatniego zacisku.

Krok 4: Kod Arduino

#include #include #include

LiquidCrystal_I2C lcd (0x27, 16, 2); // ustaw adres LCD na 0x27 dla 16-znakowego i 2-wierszowego wyświetlacza

Serwo serwoLeft; // Zdefiniuj lewe serwo Servo servoRight; // Zdefiniuj prawe serwo

const int startbut = 8; //pin dla startbut (przycisk startu) const int forwardbut = 12; //pin dla forwardbut (forwardbutton) const int reversebut = 13; //pin dla reversebut (reversebutton) int tim = 500; //wartość czasu opóźnienia int flag = 0; liczba int = 0;

char array1=" witamy "; //ciąg do wydrukowania na wyświetlaczu LCD ("witamy") char array2="push left=LEFT, right=RIGHT !"; //ciąg do wydrukowania na wyświetlaczu LCD ("push left=LEFT, right=RIGHT")

void setup () { servoLeft.attach(10); // Ustaw lewe serwo na pin cyfrowy 10 servoRight.attach(9); // Ustaw prawe serwo na pin cyfrowy 9 servoLeft.write(90); // ustaw serwa na 90 stopni servoRight.write(90); opóźnienie (100);

//zmienia pin na wejścia pinMode(startbut, INPUT); //zainicjuj startbut (przycisk start) jako wejście pinMode(reversebut, INPUT); //zainicjuj reversebut (reversebutton) jako wejście pinMode(forwardbut, INPUT); //zainicjuj forwardbut (forwardbutton) jako dane wejściowe

}

void loop() { // Pętla przez testy ruchu //kod dla monitora LCD if (flaga == 1 && count == 0) { count = 1; lcd.init(); //zainicjuj lcd lcd.backlight(); //otwórz podświetlenie

lcd.setCursor(15, 0); // ustaw kursor na kolumnę 15, wiersz 0 for (int LicznikPozycji1 = 0;LicznikPozycji1 < 26;LicznikPozycji1++) { lcd.scrollDisplayLeft(); //Przewija zawartość wyświetlacza o jedno miejsce w lewo. lcd.print(tablica1[LicznikPozycji1]); //Drukuj komunikat na LCD. opóźnienie(tim); //czekaj 250 mikrosekund } lcd.clear(); //Czyści ekran LCD i umieszcza kursor w lewym górnym rogu. lcd.setCursor(15, 1); //ustaw kursor na kolumnę 15, wiersz 1 for (int positionCounter = 0; positionCounter < 26; positionCounter++) { lcd.scrollDisplayLeft(); //Przewija zawartość wyświetlacza o jedno miejsce w lewo. lcd.print(tablica2[LicznikPozycji]); //Drukuj komunikat na LCD. opóźnienie(tim); //czekaj 250 mikrosekund } lcd.clear(); //Czyści ekran LCD i umieszcza kursor w lewym górnym rogu. } //////////////////////////////////////////////// //////////////////////////////////////////////// ////////////////////////////////////

/sprawdź, czy przyciski zostały naciśnięte if (digitalRead(startbut) == 1) { flag = 1; //flaga zmienna dla przycisku do uruchomienia }

if (flaga == 1){ if(digitalRead(reversebut) == HIGH) //reversebut wciśnięty włączy serwo { reverse(); //zmienna wsteczna dla przycisku reverse } else if(digitalRead(forwardbut) == HIGH) //naciśnięcie przycisku forwardbut włączy serwo { forward(); //zmienna do przodu dla przycisku do przodu } else { stop(); //stop zmienna zatrzymująca ruch serw, gdy przyciski nie są wciśnięte } }

}

// Procedury ruchu do przodu, do tyłu i do zatrzymania void forward() { //polecenie do przodu servoLeft.write(0); //kierunek, w którym obracają się serwa servoRight.write(180); } void stop() { //zatrzymaj polecenie servoLeft.write(90); //zatrzymuje oba serwa w tym samym miejscu, w przeciwnym razie byłyby w różnych pozycjach servoRight.write(90); } void reverse() { //reverse polecenie servoLeft.write(180); //serwa aktywują się w przeciwnym kierunku servoRight.write(0); }

oto kod na sukces! po skonfigurowaniu arduino wszystko powinno działać! i baw się dobrze!

jeśli to nie zadziała, spójrz wstecz na tę instrukcję i sprawdź wszystko!

Zalecana: