Innehållsförteckning:
- Steg 1: Konstitution
- Steg 2: Skapa Dragonfly - huvud 1 -
- Steg 3: Skapa Dragonfly - Head 2 -
- Steg 4: Skapa Dragonfly - Head 3 -
- Steg 5: Skapa Dragonfly - Body 1 -
- Steg 6: Skapa Dragonfly - Body 2 -
- Steg 7: Skapa Dragonfly - Body 3 -
- Steg 8: Skapa Dragonfly - Body 4 -
- Steg 9: 360 graders kontinuerlig rotationsservo
- Steg 10: Arduino -kod
- Steg 11: Drift
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Jag gjorde trollslända. Trollsländan svänger med en gestsensor och en servomotor.
komponenter
- Arduino UNO
- Seeed Grove - Gest
- FS90R Micro Continuous Rotation Servo
Steg 1: Konstitution
Upptäcker fingerrörelsen med gestsensorn och styr rotationsriktningen för 360 ° kontinuerlig rotationsservo med Arduino.
Steg 2: Skapa Dragonfly - huvud 1 -
Huvudet gjordes med en 12 mm lång M8 -skruv. När du roterar huvudet med servon, skär stickan för att stoppa i en fast vinkel, klipp av tråden till lämplig längd och löd den till skruven.
Steg 3: Skapa Dragonfly - Head 2 -
Ögon och mun gjordes med glittrande smycken. Jag skriver munnen med en penna.
Steg 4: Skapa Dragonfly - Head 3 -
Anslutningen mellan huvudet och bröstet (servo) består av en mutter. Fäst fjädrarna och muttrarna som är fästa på servon med omedelbart lim.
Steg 5: Skapa Dragonfly - Body 1 -
Dra servomotorn till trollsländans bröst. Fäst 60 mm lång M6 skruv som mage.
Steg 6: Skapa Dragonfly - Body 2 -
Skruva fast muttrarna som skapats tidigare på servon och binda fjädrarna på plattorna med trådens fötter.
Steg 7: Skapa Dragonfly - Body 3 -
Fäst en tjock tråd på servon så att den fastnar på huvudbytestången. Jag lödde den tunna trådens fötter till denna tjocka tråd (för rostfritt stål).
Steg 8: Skapa Dragonfly - Body 4 -
Skruva fast huvudet i muttern och trollsländan är klar. Aktivera servon och vrid den.
Steg 9: 360 graders kontinuerlig rotationsservo
Denna servo fungerar med Servobiblioteket som ursprungligen ingick i Arduino IDE, men något annorlunda än vanlig servomotor.
- Servostopp med 90 graders ingång
- Vrid medurs med 0 till 89 grader ingång. Rotationshastigheten ökar längre från 90 grader.
- Vrid moturs med ingång från 91 till 180 grader. Rotationshastigheten ökar längre från 90 grader.
Steg 10: Arduino -kod
Anslut servo- och gestsensorn till Arduino UNO.
Gestsensorbiblioteket använder följande.
Jag tittade på kodprovet paj7620_9gestures.ino.
Gesten gjorde att den kände igen medurs och fingrets riktning moturs.
Arduinos digitala 8 -stift är ansluten till GND så att servon roterar långsamt moturs så att huvudskruven kan vridas in i muttern.
Arduinos digitala 8 -stifts öppna släpper den normala driften och upptäckt av gestsensor startar. Upptäcker rotationen av fingerrörelsen och rör sig enligt servon.
#include #include "paj7620.h" #include Servo myservo; // skapa servoobjekt för att styra ett servo
void setup () {uint8_t error = 0; Serial.begin (9600); myservo.attach (A0); // fäster servon på stift 9 till servoobjektets pinMode (8, INPUT_PULLUP); fel = paj7620Init (); // initiera Paj7620 -register om (fel) {Serial.print ("INIT ERROR, CODE:"); Serial.println (fel); } annat {Serial.println ("INIT OK"); } Serial.println ("Ange dina gester: / n"); }
void loop () {uint8_t data = 0, data1 = 0, fel; if (digitalRead (8) == LOW) {myservo.write (90 + 15); } else {error = paj7620ReadReg (0x43, 1 och data); // Läs Bank_0_Reg_0x43/0x44 för gesteresultat. if (! error) {switch (data) {case GES_CLOCKWISE_FLAG: Serial.println ("medurs"); myservo.write (90 - 20); fördröjning (800); ha sönder; fall GES_COUNT_CLOCKWISE_FLAG: Serial.println ("moturs"); myservo.write (90 + 20); fördröjning (800); ha sönder; standard: myservo.write (90); ha sönder; }}}}
Steg 11: Drift
Jag har fått en snygg slingslända!