Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Overzicht

In deze tutorial bouw je een Arduino-hexapod (6 poten) die eruitziet als een mier: met staart, hoofd, antennes, kauwwerk en functionele ogen (ultrasonische sensor). De robot wordt bestuurd via een zelfgemaakte Android-app met Bluetooth. De app heeft knoppen voor vooruit, achteruit, links, rechts, en extra functies: hoofd/staart bewegen, bijten, grijpen, loslaten, aanvallen.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

De ogen zijn een HC-SR04 ultrasonische sensor. Als je je hand naderbrengt, bereidt de robot een aanval voor. Trek je terug, dan stopt hij. Blijf je naderkomen, dan valt hij aan en bijt.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

3D-model

Ontworpen in 3D-software. 6 poten × 3 gewrichten = 18 servos (MG996R). Staart: 1 MG996R. Hoofd: 2 vrijheidsgraden (rollen/kantelen) = 2 MG996R. Kauwwerk: 1 SG90 microservo. Totaal: 21 MG996R + 1 SG996R. Alle delen tussen twee platen, met een gebogen bovenplaat om elektronica te verbergen.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

STL-bestanden beschikbaar op Thangs.

3D-printen

Geprint op Creality CR-10. Het hoofd was lastig (één stuk, ondersteuningen 60°, ondersteuningsblokkers), maar is perfect uitgekomen.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Hexapod monteren

Poten: M3 bouten/moeren (16 mm), veerringen. Rondhorens van servos: 3 mm gaten boren of metalen horens met M3-gewinde gebruiken. Zorg dat servos in middenstand gemonteerd worden voor volle bereik. Driehoekste steuntje op servos afknippen (stanleymes). Voor de derde servo: M4 bout in het been voor bevestiging aan basisplaat.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

6 poten maken. Dan aan de twee platen bevestigen: rondhoren op bovenplaat, servos in middenstand, poten bevestigen. Achterkant: staartservo horen vastzetten.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Onderplaat: M4 bouten door poten, platte ringgen en zelfborgende moeren. Niet te vast: poten moeten kunnen draaien.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Hoofd mechanisme

Eerste servo (rollen) loodrecht op platen: twee kleine plaatjes als adapter. U-vormige beugel voor tweede servo (kantelen). M4 bout in beugel voor kopkoppeling. Servo in middenstand monteren.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Hoofd samenstellen

Kauwwerk: SG90 servo, M4 bout (gat in ooggebied voor schroevendraaier). Tweede kauwwerk: armhoorn op SG90, tanden paren, vastschroeven. Ultrasonische sensor in ooggatjes (AC-lijm). Antennes: 3 mm draad, 13 cm, gebogen, AC-lijm. Hoofd op rol/kantel mechanisme schroeven (4 bouten).

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Staart in staarthoren schuiven, gebogen hoes erover. Resultaat: blauw/wit mier-robot.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Schakelschema

22 servos, HC-05 Bluetooth, condensators, weerstanden. Arduino Mega (enige board dat >12 servos aan kan met Servo-bibliotheek). Voeding: 3S LiPo (12 V), DC-DC buck converter naar 5 V (servos 4,8-7,2 V). Buck converter minimaal 8 A, beter 10-15 A. Maximale stroom gemeten: ~6 A.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Componenten

  • MG996R Servomotor
  • SG90 Microservo
  • HC-05 Bluetooth-module
  • Arduino Mega
  • 3S LiPo accu
  • DC-DC Buck Converter (10-15 A)

PCB-ontwerp (Arduino Mega Shield)

Custom PCB in EasyEDA: fungeert als shield op de Mega. Servoaansluitingen gegroepeerd, grote condensators, NRF24L01-aansluiting voor radiobesturing, extra digitale/analoge pinnen, 2 LED-aansluitingen, batterijspanningsmonitoring via spanningsdeler (R1, R2) op analoog pin.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Besteld bij JLCPCB (blauw, passend bij Mega). Goede kwaliteit.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

PCB assembleren

Mannelijke pinheaders solderen (onderkant, omkeren op plaat). Servoaansluitingen (ook pinheaders), weerstanden, condensators, klemblokken. Shield op Mega prikken.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Buck converter op 5 V instellen (potentiometer). Stroomschakelaar in voeding. 12 V op PCB-pin voor batterijmonitoring. Elektronica tussen platen: batterij (tape), Mega+shield, Bluetooth/NRF24L01, LED (laagspanningswaarschuwing <11 V), alle servos aansluiten (pinnummers noteren!). Gebogen hoes erover. Klaar.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

Arduino Hexapod Code

Code in secties uitgelegd. Complete code aan het einde.

Bibliotheken: Servo.h, SoftwareSerial.h (Bluetooth). 22 servo-objecten definiëren, variabelen.

#include <Servo.h>
#include <SoftwareSerial.h>
#define trigPin 7
#define echoPin 6
#define ledB 10
SoftwareSerial Bluetooth(12, 9); // Arduino RX, TX - HC-05 TX, RX

// Servo objecten (s1...s24)
Servo s24; Servo s23; Servo s22; // ... etc.

setup(): Bluetooth 38400 baud, pinmodes, servo-pinnen koppelen (met min/max pulsen 600-2400 µs). Initiele posities instellen (kalibratie).

void setup() {
  Serial.begin(38400);
  Bluetooth.begin(38400);
  Bluetooth.setTimeout(1); delay(20);
  pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(ledB, OUTPUT);

  // Hoofd
  s15.attach(36, 600, 2400); s14.attach(35, 600, 2400); s13.attach(34, 600, 2400);
  // Kauwwerk
  s5.attach(26, 600, 2400);
  // Staart
  // Poot 4
  s10.attach(31, 600, 2400); s11.attach(32, 600, 2400); s12.attach(33, 600, 2400);
  // Poot 5
  s7.attach(28, 600, 2400); s8.attach(29, 600, 2400); s9.attach(30, 600, 2400);
  // Poot 6
  s1.attach(22, 600, 2400); s2.attach(23, 600, 2400); s3.attach(24, 600, 2400);
  // Poot 1
  s18.attach(39, 600, 2400); s17.attach(38, 600, 2400); s16.attach(37, 600, 2400);
  // Poot 2
  s21.attach(42, 600, 2400); s20.attach(41, 600, 2400); s19.attach(40, 600, 2400);
  // Poot 3
  s24.attach(45, 600, 2400); s23.attach(44, 600, 2400); s22.attach(43, 600, 2400);

  // Initiele posities (kalibratie)
  s15.write(72); s14.write(50); s13.write(90); // Hoofd
  s5.write(65); // Kauwwerk
  // Poot 4
  s10.write(65); s11.write(35); s12.write(40);
  // Poot 5
  s7.write(80); s8.write(50); s9.write(25);
  // Poot 6
  s1.write(90); s2.write(45); s3.write(60);
  // Poot 1
  s18.write(60); s17.write(90); s16.write(100);
  // Poot 2
  s21.write(50); s20.write(85); s19.write(75);
  // Poot 3
  s24.write(50); s23.write(80); s22.write(80);
}

Loopalgoritme

Geen inverse kinematica (servos te onprecies). Elke poot heeft een custom functie moveLegX() met tellers voor swing-fase (lucht) en stance-fase (grond). 3 poten tegelijk in swing, 3 in stance (tripod gait). Voor achteruit, links, rechts: tegenovergestelde functies.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
void moveLeg1() {
  // Swing fase
  if (i1L1 <= 10) { s18.write(60 - i1L1*2); s17.write(90 - i1L1*3); i1L1++; }
  if (i2L1 <= 30) { s16.write(100 - i2L1); i2L1++; }
  if (i2L1 > 20 && i3L1 <= 10) { s18.write(40 + i3L1*2); s17.write(60 + i3L1*3); i3L1++; }
  // Stance fase
  if (i2L1 >= 30) { s16.write(70 + i4L1); i4L1++; l1status = HIGH; }
  // Reset tellers
  if (i4L1 >= 30) { i1L1=0; i2L1=0; i3L1=0; i4L1=0; i5L1=0; }
}

Vooruit: roep moveLeg1(), moveLeg3(), moveLeg5() aan; als l1status HIGH, dan moveLeg2(), moveLeg4(), moveLeg6().

if (m == 2) { // Vooruit
  moveLeg1(); moveLeg3(); moveLeg5();
  if (l1status == HIGH) { moveLeg2(); moveLeg4(); moveLeg6(); }
}

Bluetooth-commando's: dataIn = Bluetooth.read(). App stuurt getallen (2=vooruit, 0=stop, etc.).

Android App (MIT App Inventor)

Afbeeldingen als knoppen. Snelheidsregelaar. Bluetooth-connectieknoppen. Blokken: bij "Vooruit" knop → stuur '2', verander afbeelding naar ingedrukte versie. Tweede druk → stuur '0', reset afbeelding. Hetzelfde voor andere knoppen.

Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding
Bouw een Arduino Mier Hexapod Robot – Stap-voor-Stap Handleiding

App-bestanden (project + APK) beschikbaar.

Batterijmonitor & Ultrasonische sensor

// Batterijspanning
int sensorValue = analogRead(A3);
float voltage = sensorValue * (5.00 / 1023.00) * 2.9;
Serial.println(voltage);
if (voltage < 11) digitalWrite(ledB, HIGH); else digitalWrite(ledB, LOW);

// Ultrasonische sensor
if (getDistance() > 40) att = 0;
if (getDistance() <= 40) { att = 1; dataIn = 99; }

Aanvalslogica: att==1 → voorbereiden; als afstand >30 cm → afwijzen (att=2); als afstand <30 cm → aanvallen (att=3). Tijdsvertragingen met while-lussen en delay(2000).

Complete code beschikbaar als download. Let op: goedkope MG996R servos kunnen problemen geven (kracht, nauwkeurigheid). Veel succes!

Productieproces

  1. Bouw een Bluetooth-gecontroleerde Raspberry Pi Robot met Audio Feedback
  2. Servo-gestuurde obstakelvermijdende robot: Bouw met Arduino & HC-SR04
  3. Bouw Een Autonome Lijnvolgende Robot Met Arduino UNO
  4. Bestuur Je Roomba Create 2 Met Arduino En Android: Stapsgewijze Handleiding
  5. Bouw een Stemgecontroleerde Robot met Arduino Nano
  6. PiBot: De Arduino-aangedreven pianorobot voor precisiemuziek
  7. LittleArm 2C: Bouw een Duurzame 3D-geprinte Arduino Robotarm voor STEM Onderwijs
  8. Bouw een Autonome Thuisassistent Robot: Complete Onderdelenlijst & Opzetgids
  9. Arduino robotarm besturen via speciale Android-app
  10. Slim Indoor Navigatie Robot Kit voor Arduino Projecten
  11. WiDC: Wi‑Fi FPV-robot – Externe bediening met live video