asamblarea hexapod
11 (poate fi modificat)
La Servo Shield are doua surse de alimentare: o parte logica alimentat de Arduino, prin terminale de 5V (poate fi schimbat la 3V3) și GND, iar partea de alimentare Servo Shield alimentate separat, prin terminalele V + și GND tensiuni DC 5V la 2A (terminale verzi). Deoarece puterea Servo Shield consumă curenți mari, este nevoie de o sursă de alimentare separată. Nu putere puterea Servo Shield de ieșire 5V Arduino.
hexapod recomandat alimentarea de la o sursă de alimentare 7. 12B conectarea Arduino direct la sursă (de ieșire Vin), un scut servo unitate de putere prin 3A downconverter 5B.
Codul programului:
funcții de bibliotecă iarduino_Hexapod:
începe funcția ();
- Scop: inițializarea hexapod.
- Sintaxa: începe (tip_servoprivodov);
- Parametri: SERVO_SG90, sau SERVO_MG90 sau SERVO_MG996R sau SERVO_FutabaS3003
- Întoarcere Valori: Nici una.
- Notă: Chemat 1 ori în codul de configurare.
- exemplu:
go Funcția ();
- Scop: Mișcarea hexapod.
- sintaxa:
- Opțiunea 1: du-te (X Y. Z.);
- Opțiunea 2: du-te; (comanda parametr_komandy.)
- Opțiuni:
- X: -10 (stânga) la 10 (dreapta).
- Y: -10 (înapoi) la 10 (înainte). - opțional
- Z: -10 (în jos) la 10 (în sus). - opțional
- echipa:
- GO_ON - merge mai departe.
- GO_BACK - mișcarea înapoi.
- GO_LEFT - virați la stânga.
- GO_RIGHT - rândul său, la dreapta.
- GO_ON_LEFT - merge mai departe și virează la stânga.
- GO_ON_RIGHT - merge mai departe și la dreapta.
- GO_BACK_LEFT - mișcarea înapoi și la stânga.
- GO_BACK_RIGHT - mișcarea înapoi și virați la dreapta.
- COM_STOP - Stop.
- COM_SIT - sta echipa.
- COM_NOD - arcul echipa.
- COM_UP - echipa în sus.
- COM_LAY - minciună echipa.
- COM_TEST - test de echipa.
- COM_SLEEP - somn echipa.
- COM_EMPTY - echipa martor.
- parametr_komandy: la 0 la 10, care determină viteza sau nivelul. - opțional
- Întoarcere Valori: Nici una.
- exemplu:
) Funcția (set_motion;
- Scop: Mișcarea membrelor hexapod.
- Sintaxa: set_motion (№_konechnosti №_sustava polozhenie_sustava ..);
- Opțiuni:
- №_konechnosti: 1 până la 6 sau SERVO_ALL pentru toate membrele direct.
- №_sustava: 1 (vertical) sau 2 (orizontal).
- polozhenie_sustava: 0 (partea de jos sau din spate) la 100 (de sus sau din față) sau SERVO_FREE (deconectare servomotor).
- Întoarcere Valori: Nici una.
- exemplu:
) Funcția (set_motionA;
- Scop: Mișcarea membrelor HEXAPODAL de grade.
- Sintaxa: set_motionA; (№_konechnosti gradus_dvizheniya.)
- Opțiuni:
- №_konechnosti: 1 până la 6 sau SERVO_ALL pentru toate membrele imediat
- gradus_dvizheniya :. 1 până la 360 cm Observatii
- Întoarcere Valori: Nici una.
- Notă: Imaginați-vă în mișcare un membru? Se repetă aceeași mișcare (uneori cu o scară diferită) se extinde în jos din față spre spate, merge în sus de sus rapid merge înainte, merge în jos, și totul se repetă. Dacă ne imaginăm întregul cerc de 360 °, poziția fiecărui membru, puteți trimite un număr 1-360, acest lucru este gradus_dvizheniya.
- exemplu:
) Funcția (calibrare;
- Scop: îmbinări de calibrare HEXAPODAL ale membrelor.
- Sintaxa: calibrare ();
- Parametri: Nici unul.
- Întoarcere Valori: Nici una.
- Notă: Un apel 1 la fiecare cod de buclă. Ea intercepteaza apasă butoanele A și B
- exemplu:
Biblioteca este disponibil pentru o variabilă: mersul pe jos uint8_t. specifică tipul de mers (implicit = 2).
- 0 - toate membrele se mișcă în același mod, cum ar fi înot bras
- 1 - picioare care se deplasează cu o întârziere de 1/6, în această ordine: 1,2,3,4,5,6
- 2 - picioare care se deplasează cu o întârziere de 1/6, în această ordine: 1,3,5,2,4,6
- 3 - picioare care se deplasează cu o întârziere de 1/6, în această ordine: 1,4,5,2,3,6
calibrare:
Deoarece este imposibil să se stabilească perfect Servomecanismele în articulațiile de mijloc ale extremităților, biblioteca are o calibrare iarduino_Hexapod funcție (), care este indicat în codul buclă. Această caracteristică intercepteaza apăsarea butoanelor A și B, și efectuează procesul de calibrare, permițându-vă să salvați poziția centrală reală a articulațiilor în EEPROM de memorie non-volatilă.
În cazul în care calibrarea nu este niciodată făcută, HEXAPODAL nu va răspunde la comenzi, iar LED-ul se va aprinde continuu.
- Apăsați și mențineți apăsate ambele butoane A și B:
-
HEXAPODAL intră în modul de setare a rosturilor verticale:
- Toate articulațiile sunt dezactivate (orizontală și verticală).
(LED-ul clipește uniform de 1 ori pe secundă) - Prin apăsarea butonului A va ridica toate rosturile verticale.
(LED-ul clipește adus la viață) - Prin apăsarea butonului B va dezactiva toate rosturile verticale.
(LED-ul clipește uniform de 1 ori pe secundă) - Apăsând și menținând atât butoanele A și B duce la ieșirea din acest mod.
-
HEXAPODAL va trece la modul de centrare articulațiilor verticale:
(LED-ul se aprinde pentru scurt timp, după o pauză lungă)
(LED-ul se aprinde pentru scurt timp după o pauză scurtă)
(LED-ul se aprinde pentru scurt timp după o pauză scurtă)
-
HEXAPODAL va intra în modul de centrare rosturi orizontale:
(LED-ul este aprins pentru o lungă perioadă de timp, cu pauze scurte)
(lumini cu LED-uri, cu pauze scurte)
(lumini cu LED-uri, cu pauze scurte)
-
HEXAPODAL va intra în modul de testare:
(LED-ul este aprins continuu)
(LED-ul este oprit)