Mundarija:

Harakat boshqariladigan vaqt oralig'i: 7 qadam (rasmlar bilan)
Harakat boshqariladigan vaqt oralig'i: 7 qadam (rasmlar bilan)

Video: Harakat boshqariladigan vaqt oralig'i: 7 qadam (rasmlar bilan)

Video: Harakat boshqariladigan vaqt oralig'i: 7 qadam (rasmlar bilan)
Video: Машинангизни "ТАМОМ КИЛАДИГАН" 7та Зарарли ОДАТ! 2024, Iyul
Anonim
Image
Image
Reja
Reja

Vaqt soatlari ajoyib! Ular bizga go'zallikni qadrlashni unutishimiz mumkin bo'lgan sekin harakatlanuvchi dunyoga qarashga yordam beradi. Ammo ba'zida vaqtni ushlab turuvchi video zerikarli bo'lishi mumkin yoki juda ko'p voqealar sodir bo'ladiki, faqat bitta burchak etarli emas. Keling, ziravorlar qo'shamiz!

Ushbu yo'riqnomada men sizning vaqt oralig'iga harakat qo'shadigan qurilmani qanday yaratganimni ko'rsataman. Qani boshladik!

1 -qadam: Reja

Men kamera ikki yo'nalishda, ya'ni gorizontal (X) va vertikal (Y) o'qda harakatlanishini xohlardim. Buning uchun menga ikkita dvigatel kerak bo'ladi.

Biz ikkala o'q uchun ham boshlang'ich va to'xtash joyini tanlashimiz kerak.

Dvigatellarning harakati shunday bo'ladiki, har bir fotosuratdan keyin o'qlar 1 gradusga buriladi.

Bunday aniq nazoratni olish uchun men Servo Motors -dan foydalanaman.

Bundan tashqari, biz vaqt oralig'ini sozlashimiz kerak.

Men uni portativ bo'lishini xohlardim, shuning uchun uni LiPo batareyasida ishlatishga qaror qildim, ya'ni zaryadlash va kuchaytirish davri kerak bo'ladi.

Va nihoyat, bularning barchasini boshqaradigan miya Arduino bo'ladi. ATMega328p mustaqil mikrokontroller sifatida ishlatiladi.

Men GoPro kamerasi bilan bordim, chunki u kichik va vaqt jadvalini tuzish oson. Siz boshqa har qanday kichik kamera yoki mobil telefoningiz bilan borishingiz mumkin.

2 -qadam: Komponentlar ro'yxati

Komponentlar ro'yxati
Komponentlar ro'yxati
Komponentlar ro'yxati
Komponentlar ro'yxati
Komponentlar ro'yxati
Komponentlar ro'yxati

1x ATmega328p (Arduino bootloader bilan)

2x MG995 Servo dvigateli

1x MT3608 Boost konvertori

1x TP4056 LiPo batareyasini zaryadlash moduli

1 x SPDT kaliti

1x 16 MGts kristalli

2x 22pF kondansatör

2x 10k rezistor

1x potentsiometr (har qanday qiymat)

1 marta bosish tugmasi (odatda ochiq)

Majburiy emas:

3D printer

3 -qadam: tenglikni loyihalash

PCB dizayni
PCB dizayni
PCB dizayni
PCB dizayni
PCB dizayni
PCB dizayni

O'chirish sxemasini iloji boricha kichikroq qilish uchun men bosilgan elektron karta bilan bordim. Siz taxtani o'zingiz uyda yasashingiz yoki professionallarga siz uchun og'ir ishni bajarishiga ruxsat berishingiz mumkin, men ham shunday qildim.

Hamma narsa taxtada to'g'ri ishlayotganda, biz tenglikni loyihalash jarayonidan boshlashimiz mumkin. Men dizayn uchun EasyEDA -ni tanladim, chunki bu men kabi yangi boshlanuvchilar uchun hamma narsani osonlashtiradi.

Tekshiring, tekshiring va tekshiring! Hech narsani o'tkazib yubormaganingizga ishonch hosil qiling. Ishonchingiz komil bo'lganda, Gerber fayllarini yuklab olish uchun "Ishlab chiqarish faylini yaratish" tugmasini bosing yoki quyida keltirilgan variant yordamida uni JLCPCB -dan atigi 2 dollarga buyurtma qilishingiz mumkin.

Agar siz tenglikni qabul qilsangiz/tayyorlasangiz, uni to'ldirish vaqti keldi. O'chirish sxemasini tayyor saqlang va silkscreen belgisi bo'yicha komponentlarni lehimlashni boshlang.

Iso propil spirti bilan lehimlangandan keyin oqim qoldig'ini olib tashlash uchun tenglikni tozalang.

4 -qadam: narsalarni birlashtirish

Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish
Hamma narsani birlashtirish

Sizga chiroyli 3D printer kerak bo'lmaydi. Tegishli asboblar yordamida qismlar juda oson qurilishi mumkin. Men yaqinda 3D printerga ega bo'ldim va uni loyihamda ishlatishni xohlardim. Men Thingiverse -dan ba'zi qismlarni topdim.

GoPro tog'i:

Servo shoxi:

Quvvat tugmachasiga, ayol sarlavhali "Pot va Push" tugmachalariga lehim simlari va ularni PCBdagi erkak sarlavhalariga ulang.

Arduino IDE -da biriktirilgan faylni yuklab oling va oching va Arduino -ga kodni yuklang. Kodni yuklaganingizdan so'ng, Arduino kartasidan ICni olib tashlang va uni PCB -ga joylashtiring.

/*Muallif: IndoorGeek YouTube: www.youtube.com/IndoorGeek Yuklaganingiz uchun tashakkur. Umid qilamanki, loyiha sizga yoqadi. */

#qo'shing

Servo xServo;

Servo yServo;

int potPin = A0;

int val, xStart, xStop, yStart, yStop; int tugmasi = 2; imzosiz uzoq vaqt oralig'i;

bo'sh o'rnatish () {

pinMode (tugma, INPUT); xServo.attach (3); yServo.attach (4); }

void loop () {

xAxis (); kechikish (1000); xStart = qiymat; yAksis (); kechikish (1000); yStart = val; xAxis (); kechikish (1000); xStop = val; yAksis (); kechikish (1000); yStop = val; setTimeInterval (); kechikish (1000); timelapseStart (); }

bekor xAxis () {

while (digitalRead (tugma)! = YUQORI) {val = analogRead (A0); val = xarita (val, 0, 1023, 0, 180); xServo.write (val); }}

yaroqsiz yAxis () {

while (digitalRead (tugma)! = YUQORI) {val = analogRead (A0); val = xarita (val, 0, 1023, 0, 180); yServo.write (val); }}

void setTimeInterval () {// Vaqt oralig'ini kamerangizning vaqt oralig'i sozlamalariga muvofiq o'zgartiring

while (digitalRead (tugma)! = YUQORI) {val = analogRead (A0); agar (val> = 0 && val = 171 && val = 342 && val = 513 && val = 684 && val = 855 && val <1023) {timeInterval = 60000L; }}}

void timelapseStart () {

imzosiz uzoq 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--; } agar (yStart xStop) {yServo.write (yStart); lastMillis = millis (); yStart--; }}}}

5 -qadam: ishlash

Ishlash
Ishlash
Ishlash
Ishlash

Asosiy kalitni yoqing.

X o'qi faol bo'ladi. Qozonni vaqt oralig'ini boshlamoqchi bo'lgan joyga aylantiring. Boshlanish pozitsiyasini tasdiqlash uchun Tanlash tugmasini bosing. Shundan so'ng, Y o'qi faol bo'ladi. Y o'qining boshlang'ich pozitsiyasini tanlash uchun ham xuddi shunday qiling.

X va Y o'qlari to'xtash joyi uchun yuqoridagi protsedurani takrorlang.

Endi, potdan foydalanib, har bir otish orasidagi vaqt oralig'ini tanlang. Qozonning aylanishi 1 qism, 2 sek, 5 soniya, 10 soniya, 30 soniya va 60 soniya oralig'ida 6 qismga bo'linadi. SetTimeInterval () funktsiyasidagi intervallarni rasmda ko'rsatilgandek o'zgartirishingiz mumkin. Buni tasdiqlash uchun Tanlash tugmasini bosing.

Servo boshlang'ich pozitsiyasiga o'tadi va vaqt oralig'idan keyin 1 darajaga siljiydi.

Tartib:

  1. X o'qining boshlang'ich pozitsiyasini o'rnating
  2. Y o'qining boshlang'ich pozitsiyasini o'rnating
  3. X o'qi to'xtash joyini o'rnating
  4. Y o'qining to'xtash joyini o'rnating
  5. Vaqt oralig'ini o'rnating

6 -qadam: kelajakdagi yangilanishlar

Kelgusi yangilanishlar
Kelgusi yangilanishlar

1) Hozirgi vaqtda 1 graduslik daraja tufayli biz olishimiz mumkin bo'lgan fotosuratlar soni 180 tani tashkil etadi, chunki servolar 0 dan 180 gradusgacha aylana oladi. Vites qo'shish piksellar sonini oshiradi. Shunday qilib, biz ko'proq tortishishlarga ega bo'lamiz va shuning uchun vaqt jadvallari silliq bo'ladi. Men elektronika bilan juda qulayman, lekin mexanik narsalar bilan emas. Yaxshilashni kutmoqdamiz.

2) Potansiyometrni Rotary kodlovchi bilan almashtirish mumkin.

3) Simsiz boshqaruv, balki ?!

O'rganish uchun juda ko'p narsa bor

7 -qadam: Xursand bo'ling

Oxirigacha saqlaganingiz uchun tashakkur. Umid qilamanki, barchangiz ushbu loyihani yaxshi ko'rasiz va bugun yangi narsalarni bilib oldingiz. Agar siz o'zingiz uchun biror narsa qilsangiz, menga xabar bering. Ko'proq yangi loyihalar uchun YouTube kanalimga obuna bo'ling. Yana bir bor rahmat!

Tavsiya: