Talaan ng mga Nilalaman:

Prototype Camera Stabilizer (2DOF): 6 na Hakbang
Prototype Camera Stabilizer (2DOF): 6 na Hakbang

Video: Prototype Camera Stabilizer (2DOF): 6 na Hakbang

Video: Prototype Camera Stabilizer (2DOF): 6 na Hakbang
Video: DIY – testing steadicam prototype printed on 3d printer. 2024, Hulyo
Anonim
Prototype Camera Stabilizer (2DOF)
Prototype Camera Stabilizer (2DOF)

Mga May-akda:

Robert de Mello e Souza, Jacob Paxton, Moises Farias

Mga Pagkilala:

Isang malaking salamat sa California State University Maritime Academy, ang programa nito sa Teknolohiya ng Teknolohiya, at Dr. Chang-Siu para sa pagtulong sa amin na magtagumpay sa aming proyekto sa mga masalimuot na oras.

Panimula:

Ang aparato ng camera stabilizer, o camera gimbal, ay isang mount na pumipigil sa pag-iling ng camera at iba pang mga hindi paggalaw na paggalaw. Ang isa sa mga unang nagpapatatag na naimbento ng ginamit na mga shock absorber / spring upang mapahina ang biglaang mga pagbabago sa paggalaw ng kamera. Ang iba pang mga uri ng stabilizer ay gumagamit ng gyroscope o fulcrums upang makamit ang parehong gawain. Ang mga aparatong ito ay nagpapatatag ng mga hindi ginustong paggalaw hanggang sa tatlong magkakaibang palakol o sukat. Kasama rito ang x, y, at z-axis. Nangangahulugan ito na ang isang pampatatag ay maaaring makapagpahina ng paggalaw sa tatlong magkakaibang direksyon: roll, pitch, at yaw. Karaniwan itong nagagawa gamit ang 3 mga motor na kinokontrol ng isang elektronikong sistema ng kontrol sa bawat pag-counteract ng ibang axis.

Kami ay may kakaibang interes sa proyektong ito sa maraming kadahilanan. Lahat tayo ay nasisiyahan sa iba't ibang mga panlabas na aktibidad tulad ng snowboarding at iba pang mga sports. Ang pagkuha ng de-kalidad na footage ng mga aktibidad na ito ay mahirap dahil sa dami ng kinakailangang kilusan. Ang isang pares sa amin ay nagmamay-ari ng isang tunay na camera stabilizer na binili mula sa tindahan, at sa gayon, nais naming siyasatin kung ano ang kinakailangan upang lumikha ng isang bagay na tulad nito. Sa aming mga klase sa lab at panayam, nalaman namin ang tungkol sa kung paano makipag-ugnay sa mga servo motor gamit ang Arduino, kinakailangang coding upang gumana ang mga ito, at ang teorya sa likod ng electronic circuitry upang matulungan kaming magdisenyo ng mga circuit.

* TANDAAN: Dahil sa COVID-19, hindi namin nakumpleto ang proyektong ito sa kabuuan. Ang itinuturo na ito ay isang gabay para sa circuitry at code na kinakailangan para sa prototype ng stabilizer. Nilayon naming kumpletuhin ang proyekto tuwing magpapatuloy ang paaralan at mayroon kaming access sa mga 3D printer muli. Ang nakumpletong bersyon ay magkakaroon ng isang circuit ng baterya at isang 3D-print na pabahay na may mga sandata ng pampatatag (ipinapakita sa ibaba). Gayundin, mangyaring tandaan na ang pagpapatakbo ng mga motor ng Servo mula sa suplay ng kuryente ng Arduino 5v sa pangkalahatan ay hindi magandang kasanayan. Ginagawa lamang namin ito upang payagan ang pagsubok sa prototype. Ang isang hiwalay na supply ng kuryente ay isasama sa panghuling proyekto at ipinapakita sa circuit diagram sa ibaba.

Mga gamit

-Arduino UNO Microcontroller

-Breadboard

-Wire Jumper Kit

-MPU6050 Yunit ng Pagsukat ng Inertial

-MG995 Servo Motor (x2)

-LCD1602 Modyul

-Moystick Module

Hakbang 1: Pangkalahatang-ideya ng Proyekto

Image
Image

Sa itaas ay isang video ng aming proyekto at nagpapakita rin ng isang gumaganang demonstrasyon.

Hakbang 2: Teorya at Pagpapatakbo

Diagram ng Estado / Logic
Diagram ng Estado / Logic

Para sa pagpapapanatag ng aming camera, gumamit kami ng dalawang motor na servo upang patatagin ang pitch at roll axis. Ang isang Inertial Measurement Unit (IMU) ay nakakaramdam ng pagpabilis, anggulo ng pagbilis, at lakas na magnet na magagamit natin upang matukoy ang anggulo ng kamera. Gamit ang isang IMU na nakakabit sa pagpupulong, maaari naming gamitin ang sensed data upang awtomatikong pigilan ang pagbabago sa paggalaw ng hawakan gamit ang servos. Bukod dito, sa isang Arduino Joystick, maaari naming manu-manong makontrol ang dalawang palakol ng pag-ikot, isang motor para sa bawat axis.

Sa Larawan 1 maaari mong makita ang roll ay kontra sa pamamagitan ng roll servo motor. Habang ang hawakan ay inilipat sa direksyon ng roll, ang motor ng servo ng rol ay paikutin sa pantay ngunit kabaligtaran na direksyon.

Sa Larawan 2 maaari mong makita ang angulo ng pitch ay kinokontrol ng isang magkakahiwalay na servo motor na kumikilos sa isang katulad na paraan sa roll servo motor.

Ang mga motor ng Servo ay isang mahusay na pagpipilian para sa proyektong ito dahil pinagsasama nito ang motor, isang sensor ng posisyon, isang maliit na built-in na microcontroller, at H-tulay na nagbibigay-daan sa amin upang mano-mano at awtomatikong kontrolin ang posisyon ng motor sa pamamagitan ng Arduino. Ang paunang disenyo ay tumawag lamang sa isang servo motor, ngunit pagkatapos ng ilang pagsasaalang-alang, nagpasya kaming gumamit ng dalawa. Ang mga karagdagang sangkap na idinagdag ay isang Arduino LCD screen at Joystick. Ang layunin ng LCD screen ay upang ipakita kung ano ang estado ng stabilizer ay kasalukuyang nasa at ang kasalukuyang anggulo ng bawat servo habang nasa manu-manong kontrol.

Upang likhain ang pabahay upang hawakan ang lahat ng mga de-koryenteng sangkap, gumamit kami ng Computer-Aided Design (CAD) at gagamit ng isang 3D printer. Upang hawakan ang mga de-koryenteng sangkap, nagdisenyo kami ng isang katawan na gagana rin bilang isang hawakan. Dito mai-mount ang sensor ng IMU at joystick. Para sa kontrol ng dobleng axis, dinisenyo namin ang mga pag-mount para sa mga motor.

Hakbang 3: Diagram ng Estado / Logic

Ang code ay binubuo ng tatlong mga estado, ang bawat isa ay ipapahiwatig sa LCD screen. Kapag ang Arduino ay tumatanggap ng lakas, ang LCD screen ay i-print ang "Initializing…" at ang komunikasyon ng I2C ay nagsimula sa MPU-6050. Ang paunang data mula sa MPU-6050 ay naitala upang makita ang average. Pagkatapos, papasok ang Arduino sa manual control mode. Dito, ang parehong mga motor na servo ay maaaring ayusin nang manu-mano gamit ang joystick. Kung ang pindutan ng joystick ay pinindot, pagkatapos ay ipapasok ang estado na "Antas ng Auto" at ang nagpapatatag na platform ay mapanatili ang antas na patungkol sa Earth. Ang anumang paggalaw sa rolyo o direksyon ng pitch ay makikipaglaban sa mga servo motor, kaya't pinapanatili ang antas ng platform. Sa pamamagitan ng isa pang pagpindot sa pindutan ng joystick, ang Arduino ay papasok sa isang "Do Nothing State" kung saan mako-lock ang mga motor na servo. Sa pagkakasunud-sunod na iyon, ang mga estado ay patuloy na magbabago sa bawat pagpindot sa pindutan ng joystick.

Hakbang 4: Diagram ng Circuit

Diagram ng Circuit
Diagram ng Circuit

Ang larawan sa itaas ay naglalarawan ng aming diagram ng proyekto sa circuit sa mode na OFF. Nagbibigay ang Arduino Microcontroller ng mga kinakailangang koneksyon upang patakbuhin ang MPU-6050 IMU, Joystick, at ang LCD display. Ang mga cell ng LiPo ay direktang konektado sa changer at nagbibigay ng lakas sa parehong Arduino Microcontroller pati na rin sa parehong servo motor. Sa panahon ng mode na ito ng pagpapatakbo, ang mga baterya ay nakakonekta nang kahanay sa paggamit ng isang 3-point double-throw (3PDT) switch. Pinapayagan kami ng switch na idiskonekta ang pagkarga, habang sabay na kumokonekta sa charger at ilipat ang mga cell mula sa isang serye sa isang parallel na pagsasaayos. Hinahayaan din nito ang baterya na singilin nang sabay-sabay.

Kapag ang switch ay baligtad sa ON mode, dalawang 3.7v cells ang magbibigay ng lakas sa Arduino at Servo Motors. Sa panahon ng mode na ito ng pagpapatakbo, ang mga baterya ay nakakonekta sa serye gamit ang isang switch ng 3-point double-throw (3PDT). Pinapayagan kaming makakuha ng 7.4v mula sa aming mapagkukunan ng kuryente. Ang parehong LCD Screen at IMU sensor ay gumagamit ng komunikasyon ng I2C. Ginagamit ang SDA upang maipadala ang data, habang ang SCL ay ang linya ng orasan na ginamit upang pagsabayin ang mga paglilipat ng data. Ang servo motors ay may tatlong lead bawat isa: lakas, lupa, at data. Ang Arduino ay nakikipag-usap sa mga servos sa pamamagitan ng mga pin 3 at 5; ang mga pin na ito ay gumagamit ng Pulse Width Modulation (PWM) upang maipadala ang data na may mas malinaw na mga pagbabago.

* Ang Battery Charging Circuit ay mula sa Adafruit.com

Hakbang 5: Konstruksiyon

Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon
Konstruksyon

Ang pangunahing disenyo ng isang camera gimbal ay medyo simple, dahil ito ay mahalagang isang hawakan lamang at mag-mount para sa isang kamera. Ang gimbal ay binubuo ng dalawang servos motor upang mapigilan ang anumang paggalaw sa mga direksyon ng roll at pitch. Ang paggamit ng isang Arduino Uno ay nangangailangan ng isang malaking halaga ng puwang, kaya nagdagdag din kami ng isang pabahay sa ilalim ng hawakan upang maglaman ng lahat ng mga de-koryenteng sangkap. Ang pabahay, hawakan at servo motor mount ay lahat ay naka-print sa 3D, na nagpapahintulot sa amin na i-minimize ang gastos at pangkalahatang laki, dahil maaari naming kontrolin ang disenyo. Mayroong maraming mga paraan na maaaring idisenyo ng isang tao ang gimbal, ngunit ang pinakamalaking salik na isasaalang-alang ay ang pag-iwas sa isang servo motor mula sa pag-ikot sa isa pa. Sa prototype, ang isang motor na servo ay mahalagang nakakabit sa isa pa. Kapag mayroon kaming access sa mga 3D printer muli, i-print namin ang 3D sa braso at platform na ipinakita sa itaas.

* Ang mga disenyo para sa braso at platform ay mula sa

Hakbang 6: Pangkalahatang Mga Paghahanap at Mga Potensyal na Pagpapabuti

Ang paunang pananaliksik na ginawa namin sa mga camera gimbal ay nakakatakot. Habang mayroong isang napakaraming mga mapagkukunan at impormasyon sa paksa, parang isang proyekto na wala sa aming liga. Nagsimula kaming dahan-dahan, gumagawa ng mas maraming pagsasaliksik hangga't maaari, ngunit kaunti ang pagsipsip. Tuwing linggo ay magkikita at magtutulungan kami. Habang nagtatrabaho kami, nakakuha kami ng mas maraming momentum at sa huli ay hindi gaanong natatakot at mas nasasabik sa proyekto. Habang nagdagdag kami ng isang karagdagang joystick at LCD screen, marami pa ring maidaragdag sa proyekto. Mayroon ding ilang mga pagpapabuti na maaaring idagdag, tulad ng mga paghihigpit sa manu-manong kontrol na pipigilan ang gumagamit na paikutin ang isang servo motor papunta sa isa pa. Ito ay isang maliit na problema at maaari ding maayos sa ibang disenyo ng mounting. Tinalakay din namin ang mga posibilidad ng pagdaragdag ng isang tampok na pan. Papayagan nito ang gumagamit na gamitin ang servo motors upang mag-pan sa isang lugar sa isang tinukoy na oras.

Bilang isang koponan, lahat kami ay nagtulungan nang maayos. Sa kabila ng mga pangyayari, at tanging ang kakayahang magkita ng halos lahat, sinulit namin ito at nanatili sa madalas na pakikipag-usap. Ang lahat ng mga bahagi at bahagi ay ibinigay sa isang tao at ito ay ginagawang mas mahirap para sa natitirang pangkat na makakatulong sa pag-troubleshoot ng anumang mga problemang dumating. Nakapagtatrabaho kami sa mga isyung lumitaw, ngunit kung mayroon kaming lahat ng parehong mga materyales, mas madali sana itong tumulong. Sa pangkalahatan, ang pinakamalaking ambag sa pagkumpleto ng aming proyekto ay ang kakayahan para sa bawat miyembro na magkaroon ng kakayahang magamit at pagpayag na matugunan at makipag-usap tungkol sa proyekto.

Inirerekumendang: