Talaan ng mga Nilalaman:

Dragon Swinging Dragonfly: 11 Mga Hakbang
Dragon Swinging Dragonfly: 11 Mga Hakbang

Video: Dragon Swinging Dragonfly: 11 Mga Hakbang

Video: Dragon Swinging Dragonfly: 11 Mga Hakbang
Video: Dragon Unit - Dragon Unit Lyrics 2024, Nobyembre
Anonim
Head Swinging Dragonfly
Head Swinging Dragonfly

Gumawa ako ng tutubi. Ang dragonfly swings head na may isang sensor ng kilos at isang motor na pang-motor.

mga sangkap

  • Arduino UNO
  • Nakitang Grove - Kilos
  • FS90R Micro Patuloy na Pag-ikot Servo

Hakbang 1: Saligang Batas

Saligang Batas
Saligang Batas

Ang pagtuklas ng paggalaw ng daliri gamit ang sensor ng kilos at pagkontrol sa direksyon ng pag-ikot ng 360 ° patuloy na servo ng pag-ikot na may Arduino.

Hakbang 2: Lumikha ng Dragonfly - Head 1 -

Lumikha Dragonfly - Head 1
Lumikha Dragonfly - Head 1

Ang ulo ay ginawa gamit ang 12 mm haba na M8 screw. Kapag umiikot ang ulo gamit ang servo gupitin ang stick upang huminto sa isang nakapirming anggulo gupitin ang kawad sa naaangkop na haba at ihihinang ito sa tornilyo.

Hakbang 3: Lumikha ng Dragonfly - Head 2 -

Lumikha Dragonfly - Head 2
Lumikha Dragonfly - Head 2

Ang mga mata at bibig ay ginawang may kislap na mga seal ng alahas. Nagsusulat ako ng bibig gamit ang panulat.

Hakbang 4: Lumikha Dragonfly - Head 3 -

Lumikha Dragonfly - Head 3
Lumikha Dragonfly - Head 3

Ang koneksyon sa pagitan ng ulo at dibdib (servo) ay binubuo ng isang nut. Ikabit ang mga balahibo at mani na nakalakip sa servo gamit ang agarang malagkit.

Hakbang 5: Lumikha Dragonfly - Katawan 1 -

Lumikha Dragonfly - Katawan 1
Lumikha Dragonfly - Katawan 1

Gawin ang servomotor sa dibdib ng dragonfly. Sumunod sa 60 mm ang haba ng M6 tornilyo bilang tiyan.

Hakbang 6: Lumikha Dragonfly - Katawan 2 -

Lumikha Dragonfly - Katawan 2
Lumikha Dragonfly - Katawan 2

I-screw ang mga mani na nilikha nang mas maaga sa servo at ibuklod ang mga balahibo ng mga plake gamit ang mga paa ng kawad.

Hakbang 7: Lumikha ng Dragonfly - Katawan 3 -

Lumikha Dragonfly - Katawan 3
Lumikha Dragonfly - Katawan 3

Maglakip ng isang makapal na kawad sa servo upang mahuli ito sa head replacement bar. Inihihinang ko ang mga paa ng manipis na kawad sa makapal na kawad na ito (para sa hindi kinakalawang na asero).

Hakbang 8: Lumikha Dragonfly - Katawan 4 -

Lumikha Dragonfly - Katawan 4
Lumikha Dragonfly - Katawan 4

I-screw ang ulo sa nut at nakumpleto ang dragonfly. Paganahin ang servo at i-on ito.

Hakbang 9: 360-Degree Patuloy na Pag-ikot Servo

Ang servo na ito ay nagpapatakbo sa library ng Servo na orihinal na isinama sa Arduino IDE, ngunit bahagyang naiiba mula sa normal na servo motor.

  • Huminto sa servo na may 90 degree input
  • Paikutin nang pakanan sa pag-input na may 0 hanggang 89 degree. Ang bilis ng pag-ikot ay nagdaragdag nang mas malayo mula sa 90 degree.
  • Paikutin nang pakaliwa na may input mula 91 hanggang 180 degree. Ang bilis ng pag-ikot ay nagdaragdag nang mas malayo mula sa 90 degree.

Hakbang 10: Arduino Code

Ikonekta ang servo at sensor ng kilos sa Arduino UNO.

Gumagamit ang library ng gesture sensor ng sumusunod.https://github.com/Seed-Studio/Gesture_PAJ7620

Tiningnan ko ang sample ng code paj7620_9gestures.ino.

Ginagawa ng kilos na kilalanin ang direksyon sa direksyon ng orasan at ang pabalik na direksyon ng daliri.

Ang digital 8 pin ng Arduino ay konektado sa GND upang ang servo ay mabagal na umiikot sa direksyong direksyon upang ang ulo ng tornilyo ay maaaring gawing nut.

Ang digital 8 pin open ng Arduino ay naglalabas ng normal na operasyon, at nagsisimula ang pagtuklas ng sensor ng kilos. Nakita ang pag-ikot ng paggalaw ng daliri at gumagalaw ayon sa servo.

# isama ang # isama ang "paj7620.h" # isama ang Servo MyServo; // create servo object upang makontrol ang isang servo

void setup () {uint8_t error = 0; Serial.begin (9600); myservo.attach (A0); // nakakabit ang servo sa pin 9 sa servo object pinMode (8, INPUT_PULLUP); error = paj7620Init (); // ipasimula ang mga rehistro ng Paj7620 kung (error) {Serial.print ("INIT ERROR, CODE:"); Serial.println (error); } iba pa {Serial.println ("INIT OK"); } Serial.println ("Mangyaring i-input ang iyong mga kilos: / n"); }

void loop () {uint8_t data = 0, data1 = 0, error; kung (digitalRead (8) == LOW) {myservo.write (90 + 15); } iba pa {error = paj7620ReadReg (0x43, 1, at data); // Basahin ang Bank_0_Reg_0x43 / 0x44 para sa resulta ng kilos. kung (! error) {switch (data) {case GES_CLOCKWISE_FLAG: Serial.println ("Clockwise"); myservo.write (90 - 20); pagkaantala (800); pahinga; case GES_COUNT_CLOCKWISE_FLAG: Serial.println ("anti-clockwise"); myservo.write (90 + 20); pagkaantala (800); pahinga; default: myservo.write (90); pahinga; }}}}

Hakbang 11: Pagpapatakbo

Pagpapatakbo
Pagpapatakbo

Nakakuha ako ng isang magandang swing ng dragonfly!

Inirerekumendang: