תוכן עניינים:

Timelapse מבוקר תנועה: 7 שלבים (עם תמונות)
Timelapse מבוקר תנועה: 7 שלבים (עם תמונות)

וִידֵאוֹ: Timelapse מבוקר תנועה: 7 שלבים (עם תמונות)

וִידֵאוֹ: Timelapse מבוקר תנועה: 7 שלבים (עם תמונות)
וִידֵאוֹ: Bean Time-Lapse - 25 days | Soil cross section 2024, יולי
Anonim
Image
Image
התוכנית
התוכנית

חלופות זמן נהדרות! הם עוזרים לנו להביט אל העולם בתנועה איטית שאולי נשכח להעריך את היופי שבו. אבל לפעמים סרטון Timelapse קבוע יכול להיות משעמם או שקורים כל כך הרבה דברים מסביב שזווית אחת בלבד אינה מספיקה. בואו לתבל את זה!

במדריך זה, אראה לך כיצד יצרתי מכשיר שיוסיף תנועה לשעון הזמן שלך. בואו נתחיל!

שלב 1: התוכנית

רציתי שהמצלמה תנוע לשני כיוונים כלומר בציר אופקי (X) ואנכי (Y). לשם כך אצטרך שני מנועים.

עלינו להיות מסוגלים לבחור את מיקום ההתחלה והעצירה עבור שני הצירים.

תנועת המנועים תהיה כזו שאחרי כל צילום הצירים צריכים להסתובב במעלה אחת.

כדי לקבל שליטה מדויקת כל כך, אשתמש במנועי סרוו.

כמו כן, אנו אמורים להיות מסוגלים להגדיר את מרווח הזמן.

רציתי שזה יהיה נייד אז החלטתי להריץ אותו על סוללת LiPo מה שאומר שנדרש טעינה והגברת מעגל.

ולבסוף, המוח שישלוט בכל זה יהיה ארדואינו. ATMega328p ישמש כמיקרו -בקר עצמאי.

הלכתי עם מצלמת GoPro מכיוון שהיא קטנה וביצוע איתה זמני זמן קלים. אתה יכול ללכת עם כל מצלמה קטנה אחרת או הטלפון הנייד שלך.

שלב 2: רשימת רכיבים

רשימת רכיבים
רשימת רכיבים
רשימת רכיבים
רשימת רכיבים
רשימת רכיבים
רשימת רכיבים

1x ATmega328p (עם מטען אתחול של Arduino)

2x מנוע סרוו MG995

1x ממיר Boost MT3608

1x מודול טעינת סוללה מסוג TP4056 LiPo

1x מתג SPDT

1x קריסטל 16 מגהרץ

קבלים 2x22pF

הנגד 2x10k

1x פוטנציומטר (כל ערך)

1 כפתור לחיצה (פתוח בדרך כלל)

אופציונאלי:

מדפסת תלת מימד

שלב 3: עיצוב ה- PCB

עיצוב ה- PCB
עיצוב ה- PCB
עיצוב ה- PCB
עיצוב ה- PCB
עיצוב ה- PCB
עיצוב ה- PCB

כדי להפוך את המעגל לכמה שיותר קטן, הלכתי עם מעגל מודפס. אתה יכול לחרוט את הלוח בעצמך בבית או לתת לאנשי המקצוע לעשות עבורך את העבודה הקשה וזה מה שעשיתי.

כאשר הכל פועל ממש על לוח הלחם, אנו יכולים להתחיל בתהליך עיצוב PCB. בחרתי ב- EasyEDA לעיצוב מכיוון שהוא מקל על דברים מתחילים כמוני.

בדוק, בדוק ובדוק! וודא שלא פספסת שום דבר. ברגע שאתה לגמרי בטוח, לחץ על צור קובץ ייצור כדי להוריד את קבצי Gerber או שאתה יכול להזמין אותו ישירות מ- JLCPCB תמורת 2 $ בלבד באמצעות האפשרות שניתנת להלן.

לאחר שתקבל/תכין את ה- PCB שלך, הגיע הזמן לאכלס אותו. שמור על תרשים המעגלים שלך והתחל בהלחמת הרכיבים בהתאם לסימון מסך המשי.

נקו את הלוח לאחר הלחמה עם אלכוהול איזו פרופיל כדי להסיר את שאריות השטף.

שלב 4: חיבור דברים

לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד
לשים דברים ביחד

לא תזדקק למדפסת תלת מימד מפוארת. ניתן לבנות את החלקים בקלות רבה בעזרת כלים מתאימים. לאחרונה קיבלתי מדפסת תלת מימד והייתי להוט להשתמש בה בפרויקט שלי. מצאתי חלק מהחלקים מ- Thingiverse.

הר GoPro:

סרוו קרן:

חוטי הלחמה למתג ההפעלה, לחצן סיר ולחיצה עם כותרות נקבות וחברו אותם לכותרות הגבריות במעגל הלוח.

הורד ופתח את הקובץ המצורף ב- Arduino IDE והעלה את הקוד ל- Arduino שלך. לאחר העלאת הקוד, הסר את ה- IC מלוח ה- Arduino והכנס אותו למחשב הלוח שלך.

/*מחבר: IndoorGeek YouTube: www.youtube.com/IndoorGeek תודה שהורדת. מקווה שאהבתם את הפרויקט. */

#לִכלוֹל

סרוו xServo;

סרוו yServo;

int potPin = A0;

int val, xStart, xStop, yStart, yStop; כפתור int = 2; מרווח זמן לא חתום;

הגדרת בטל () {

pinMode (כפתור, INPUT); xServo.attach (3); yServo.attach (4); }

לולאת חלל () {

xAxis (); עיכוב (1000); xStart = val; yAxis (); עיכוב (1000); yStart = val; xAxis (); עיכוב (1000); xStop = val; yAxis (); עיכוב (1000); yStop = val; setTimeInterval (); עיכוב (1000); timelapseStart (); }

void xAxis () {

בעוד (digitalRead (כפתור)! = HIGH) {val = analogRead (A0); val = מפה (val, 0, 1023, 0, 180); xServo.write (val); }}

בטל yAxis () {

בעוד (digitalRead (כפתור)! = HIGH) {val = analogRead (A0); val = מפה (val, 0, 1023, 0, 180); yServo.write (val); }}

void setTimeInterval () {// שנה את מרווחי הזמן בהתאם להגדרות הזמן שחזור המצלמה שלך

בעוד (digitalRead (כפתור)! = HIGH) {val = analogRead (A0); if (val> = 0 && val = 171 && val = 342 && val = 513 && val = 684 && val = 855 && val <1023) {timeInterval = 60000L; }}}

void timelapseStart () {

unsigned long lastMillis = 0; xServo.write (xStart); yServo.write (yStart); while (xStart! = xStop || yStart! = yStop) {if (millis () - lastMillis> timeInterval) {if (xStart xStop) {xServo.write (xStart); lastMillis = millis (); xStart--; } אם (yStart xStop) {yServo.write (yStart); lastMillis = millis (); yStart--; }}}}

שלב 5: עבודה

עובד
עובד
עובד
עובד

הפעל את המתג הראשי.

ציר ה- X יהיה פעיל. סובב את הסיר למצב שממנו ברצונך להתחיל את הזמן שחלף. לחץ על כפתור הלחצן בחר כדי לאשר את עמדת ההתחלה. לאחר מכן, ציר ה- Y יהיה פעיל. בצע את אותו הדבר כדי לבחור את מיקום ההתחלה של ציר Y.

חזור על ההליך הנ ל לעמדת עצור ציר X ו- Y.

כעת, בעזרת הסיר, בחר את מרווח הזמן בין כל זריקה. סיבוב הסיר מחולק ל -6 חלקים במרווחים של 1 שניות, 2 שניות, 5 שניות, 10 שניות, 30 שניות ו -60 שניות. ניתן לשנות את המרווחים בפונקציה setTimeInterval () כפי שמוצג בתמונה. לחץ על כפתור הלחצן בחר כדי לאשר זאת.

הסרווס יגיעו למיקום ההתחלה שלהם וינועו במעלה אחת לאחר מרווח הזמן.

סדר פעולות:

  1. הגדר את מיקום ההתחלה של ציר ה- X
  2. הגדר את מיקום ההתחלה של ציר Y
  3. הגדר את מיקום עצירת ציר ה- X
  4. הגדר את מיקום העצירה של ציר Y
  5. הגדר את מרווח הזמן

שלב 6: שדרוגים עתידיים

שדרוגים עתידיים
שדרוגים עתידיים

1) כרגע, בשל צילום אחד/תואר, המספר הרב ביותר של תמונות שאנו יכולים לקבל הוא 180 מכיוון שרווסים יכולים להסתובב מ -0 ל -180 מעלות. הוספת הילוכים תגדיל את הרזולוציה. כך יהיו לנו יותר צילומים ומכאן שחלופי זמן חלקים. אני די נוח עם אלקטרוניקה אבל לא כל כך עם דברים מכניים. מצפה לשפר אותו.

2) ניתן להחליף את הפוטנציומטר על ידי מקודד סיבובי.

3) שליטה אלחוטית, אולי ?!

יש הרבה מה ללמוד

שלב 7: תהנה

תודה שהחזקת עד הסוף. מקווה שכולכם אוהבים את הפרויקט הזה ולמדתם משהו חדש היום. ספר לי אם תכין אחד לעצמך. הירשם לערוץ היוטיוב שלי לפרויקטים נוספים הקרובים. תודה לך, שוב!

מוּמלָץ: