Talaan ng mga Nilalaman:
- Hakbang 1: Mga Bahagi
- Hakbang 2: Pagpapatupad ng 3 Servo Motors + MPU6050 Gyro + HC-05
- Hakbang 3: Disenyo at Pag-andar ng 3D
- Hakbang 4: Mekanismo ng Pagkontrol
Video: Roll and Pitch Axis Gimbal para sa GoPro Gamit ang Arduino - Servo at MPU6050 Gyro: 4 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ang itinuturo na ito ay nilikha bilang pagtupad sa kinakailangan ng proyekto ng Makecourse sa University of South Florida (www.makecourse.com)
Ang layunin ng proyektong ito ay upang bumuo ng isang 3-axis Gimbal para sa GoPro sa pamamagitan ng paggamit ng Arduino nano + 3 servo motors + MPU6050 gyro / accelerometer. Sa proyektong ito, kinontrol ko ang 2-axis (Roll at yaw) sa pamamagitan ng paggamit ng MPU6050 gyro / accelerometer, ang third-axis (yaw) ay kinokontrol nang malayuan at manu-mano sa tulong ng HC-05 at Arduino BlueControl app na nasa Android App Store.
Kasama rin sa gawaing ito ang lahat ng mga file ng disenyo ng 3D ng mga sangkap na mekanikal ng Gimbal. Nagbahagi ako ng.stl na mga file para sa madaling pag-print ng 3D at mga file ng disenyo ng 3D sa ibaba.
Sa simula ng aking proyekto, ang aking plano ay upang magtayo ng 3-axis gimbal na may 3 brushless motor, sapagkat ang brushless motor ay makinis at mas tumutugon ihambing sa mga servo motor. Ginamit ang mga brushless motor sa mga application na may bilis, kaya maaari nating ayusin ang bilis ng pagbili ng motor ng ESC (controller). Ngunit upang magamit ang brushless motor sa proyekto ng Gimbal, napagtanto ko na kailangan kong magmaneho ng brushless motor tulad ng isang servo. Sa servo motor, ang posisyon ng motor ay kilala. Ngunit sa brushless motor, hindi namin alam ang posisyon ng motor, kaya't ito ay isang disbentaha ng brushless motor na hindi ko mawari kung paano ito himukin. Sa huli nagpasya akong gumamit ng 3 MG995 servo motor para sa mataas na metalikang kuwintas na kinakailangan ng proyekto ng Gimbal. Kinontrol ko ang 2 servo motor para sa roll at pitch axis sa pamamagitan ng paggamit ng MPU6050 gyro, at kinontrol ko ang yaw axis servo motor sa pamamagitan ng paggamit ng HC-05 bluetooth at Android app.
Hakbang 1: Mga Bahagi
Ang mga sangkap na ginamit ko sa proyektong ito;
1- Arduino Nano (1 unit) (Micro usb)
2- MG995 Servo motors (3 unit)
3- GY-521 MPU6050 3 axis Accelerometer / Gyroscope (1 unit)
4- HC-05 Bluetooth Module (Upang makontrol ang yaw (Servo3) axis mula sa malayuan)
4- 5V micro usb portable charger
Hakbang 2: Pagpapatupad ng 3 Servo Motors + MPU6050 Gyro + HC-05
Mga Kable ng Servo
Servo1 (Roll), Servo2 (Pitch), Servo3 (Yaw)
Ang mga motor ng servo ay mayroong 3 mga wire: VCC (pula), GND (kayumanggi o itim), PWM (dilaw).
D3 => Servo1 PWM (dilaw na kawad)
D4 => Servo2 PWM (dilaw na kawad)
D5 => Servo3 PWM (dilaw na kawad)
5V PIN ng Arduino => VCC (pula) ng 3 servo motor.
GND PIN ng Arduino => GND (kayumanggi o itim) ng 3 servo motor
Mga kable ng MPU6050 gyro
A4 => SDA
A5 => SCL
3.3 V PIN ng Arduino => VCC ng MPU6050
GND PIN ng Arduino => GND ng MPU6050
Mga kable ng Bluetooth na HC-05
D9 => TX
D10 => RX
3.3 V PIN ng Arduino => VCC ng HC-05 Bluetooth
GND PIN ng Arduino => GND ng HC-05 Bluetooth
Hakbang 3: Disenyo at Pag-andar ng 3D
Nakumpleto ko ang disenyo ng 3D ng Gimbal sa pamamagitan ng pagkuha ng sanggunian ng iba pang mga Gimbal na ibinebenta sa merkado. Mayroong tatlong pangunahing mga bahagi na umiikot sa servo motors. Dinisenyo ko ang isang GoPro mount na umaangkop sa laki nito.
Ang.step file ng lahat ng disenyo ng 3D ay ibinabahagi sa ibaba upang paganahin ang pag-edit ng mas madali.
Hakbang 4: Mekanismo ng Pagkontrol
Ang pangunahing algorithm ng aking proyekto sa Gimbal ay gumagamit ng pag-ikot ng Quaternion na kahalili sa mga anggulo ng Euler. Gumamit ako ng helper_3dmath.h library bilang isang sanggunian upang paganahin ang makinis na paggalaw sa pamamagitan ng paggamit ng Quaternion algorithm. Bagaman makinis ang tugon ng axis ng Pitch, nahuhuli ang roll axis upang tumugon sa paggalaw ng stick. Sa pamamagitan ng paggamit ng Quaternion algorithm, nakontrol ko ang mga motor ng servo ng Roll at Pitch. Kung nais mong gumamit ng yaw axis, maaaring kailanganin mong gumamit ng pangalawang MPU6050 upang makontrol lamang ang yaw axis. Bilang isang alternatibong solusyon, na-configure ko ang HC-05 at kinontrol ang axis ng yaw mula sa malayo sa android app sa pamamagitan ng paggamit ng mga pindutan. Sa bawat pindutin upang itulak ang pindutan, umiikot ang servo ng axis servo ng 10 degree.
Sa proyektong ito, ang mga aklatan kung saan kailangan kong mag-import ng panlabas ay ang mga sumusunod;
1- I2Cdev.h // Ginamit gamit ang wire.h upang paganahin ang komunikasyon sa MPU6050
2- "MPU6050_6Axis_MotionApps20.h" // Gyroscope library
3- // Pinapayagan nitong mai-convert ang mga digital na pin sa mga pin ng RX at TX (Kailangan ito para sa HC-05 bluetooth module)
4-
5- // Pinapayagan itong makipag-usap sa mga aparatong I2C na gumagamit ng dalawang data pin (SDA at SCL) => MPU6050
Ang pangunahing code ay nilikha ni Jeff Rowberg, at binago ko ito alinsunod sa pagpapaandar ng aking proyekto at nagkomento sa lahat ng mga pagpapaandar sa ino file.
Inirerekumendang:
Subukan ang Bare Arduino, Gamit ang Software ng Laro Gamit ang Capacitive Input at LED: 4 na Hakbang
Subukan ang Bare Arduino, Gamit ang Software ng Laro Gamit ang Capacitive Input at LED: " Push-It " Interactive na laro gamit ang isang hubad na Arduino board, walang mga panlabas na bahagi o mga kable na kinakailangan (gumagamit ng isang capacitive 'touch' input). Ipinapakita sa itaas, ipinapakita ang pagtakbo nito sa dalawang magkakaibang board. Push-Mayroon itong dalawang layunin. Upang mabilis na maipakita / v
Internet Clock: Ipakita ang Petsa at Oras Gamit ang isang OLED Gamit ang ESP8266 NodeMCU Sa NTP Protocol: 6 na Hakbang
Internet Clock: Display Date and Time With an OLED Gamit ang ESP8266 NodeMCU With NTP Protocol: Kumusta mga tao sa mga itinuturo na ito na magtatayo kami ng isang orasan sa internet na magkakaroon ng oras mula sa internet kaya't ang proyektong ito ay hindi mangangailangan ng anumang RTC upang tumakbo, kakailanganin lamang nito ang isang nagtatrabaho koneksyon sa internet At para sa proyektong ito kailangan mo ng isang esp8266 na magkakaroon ng
Wireless Remote Gamit ang 2.4Ghz NRF24L01 Module Sa Arduino - Nrf24l01 4 Channel / 6 Channel Transmitter Receiver para sa Quadcopter - Rc Helicopter - Rc Plane Gamit ang Arduino: 5 Hakbang (na may Mga Larawan)
Wireless Remote Gamit ang 2.4Ghz NRF24L01 Module Sa Arduino | Nrf24l01 4 Channel / 6 Channel Transmitter Receiver para sa Quadcopter | Rc Helicopter | Rc Plane Gamit ang Arduino: Upang mapatakbo ang isang Rc car | Quadcopter | Drone | RC eroplano | RC boat, palagi kaming nangangailangan ng isang reciever at transmitter, kumbaga para sa RC QUADCOPTER kailangan namin ng isang 6 channel transmitter at receiver at ang uri ng TX at RX ay masyadong magastos, kaya gagawa kami ng isa sa aming
I-convert ang 120 Roll Film sa 620 Roll Film: 6 Hakbang
I-convert ang 120 Roll Film sa 620 Roll Film: Kaya nakakita ka ng isang lumang medium format na kamera, at habang gumana ang kasalukuyang magagamit na medium format na 120 roll film ay hindi magkasya dahil ang spool ay medyo masyadong taba at ang mga ngipin ng drive ay masyadong maliit upang magkasya sa 120 spool, Marahil ay nangangailangan ng 620 f
Kontrolin ang Arduino Gamit ang Smartphone Sa pamamagitan ng USB Gamit ang Blynk App: 7 Mga Hakbang (na may Mga Larawan)
Kontrolin ang Arduino Gamit ang Smartphone Sa Pamamagitan ng USB Sa Blynk App: Sa tutorial na ito, matututunan namin kung paano gamitin ang Blynk app at Arduino upang makontrol ang lampara, ang kumbinasyon ay sa pamamagitan ng USB serial port. Ang layunin ng pagtuturo na ito ay upang ipakita ang pinakasimpleng solusyon sa malayo-pagkontrol ng iyong Arduino o c