KARTON ROBOT---DANSEN, DANSEN, DANSEN! (48 / 54 stap)

Stap 48: MoveHead() toegevoegd aan de rest van de code van de serial test

Ik denk dat we moeten genoeg beweegt om aan de slag op iets anders.

seriële commando's toegevoegd:
"h" - verplaatst van het hoofd - loopt door volledige sweep
de '-spin unidirectioneel (functie was er al, maar heb niet een geval)
had'-draaien van de andere kant (functie was er al, maar heb niet een geval)

Deze code moet korter worden gemaakt, maar hier is het:

video
[allMoves

////////////////////////////////  ARDUINO CODE//////////////////////////////////

Robot test met weinig routines verfilmd functies / / /
toegevoegd hoofd bewegen / / /

motor variabelen / / /
Richting lage = naar lichaam of doorsturen
Richting hoog = uit de buurt van lichaam of achterwaarts
int RightArmDir = 2;
int RightArmSpeed = 3;
int LeftArmDir = 4;
int LeftArmSpeed = 5;
int WaistDir = 7;
int WaistSpeed = 6;
int RightWheelDir = 8;
int RightWheelSpeed = 9;
int LeftWheelDir = 12;
int LeftWheelSpeed = 10;

int Slow = 100;
int Fast = 200;
int t1 = 200;     tijd bij lage snelheid
int t2 = 1000;    tijd snelheid
int tBreak = 100; tijd om te stoppen de motor door het omkeren van dir
int WheelSpeed = 75;
int breakSpeed = 10;
int bendSpeed = 255;
int incomingByte;

hoofd variabelen
#include < Servo.h >
Servo myservo;  maken van servo-object om te bepalen van een servo
int pos = 80;
int posFront = 80;
///////// SETUP  /////////

VOID Setup {}
pinMode (RightArmDir, uitvoer);
pinMode (RightArmSpeed, uitvoer);
pinMode (LeftArmDir, uitvoer);
pinMode (LeftArmSpeed, uitvoer);
pinMode (WaistDir, uitvoer);
pinMode (WaistSpeed, uitvoer);
pinMode (RightWheelDir, uitvoer);
pinMode (RightWheelSpeed, uitvoer);
pinMode (LeftWheelDir, uitvoer);
pinMode (LeftWheelSpeed, uitvoer);

myservo.attach(11);  de servo op pin 11 hecht aan de servo-object

Serial.begin(9600);
}

MAIN LOOP / / /
void loop {}
Serial.println("...");
delay(400);
if(Serial.available() > 0) {}
incomingByte = Serial.read();
switch(incomingByte) {}
Case "f":
Foward();
breken;
Case "b":
Backward();
breken;
Case 'r':
RightArmUp();
breken;
't geval ':
RightArmDown();
breken;
Case 'w':
LeftArmUp();
breken;
Case "e":
LeftArmDown();
breken;
Case "z":
WaistBendDown();
breken;
Case 'x':
WaistBendUp();
breken;
Case "h":
MoveHead();
breken;
geval van ':
Spin();
breken;
geval zou ':
Spin2();
breken;
}
}
}

///////////////////////////////////////////////
BASISFUNCTIES / / /
///////////////////////////////////////////////

VOID RightArmUp() {}
De rechterarm test
Serial.println ("rechterarm");
Rechterarm omhoog
Serial.println("up");
digitalWrite (RightArmDir, hoge);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite(RightArmSpeed,Fast);
vertraging (1.8 * t2);
analogWrite(RightArmSpeed,Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(T1);
}

VOID RightArmDown() {}
Rechterarm naar beneden
Serial.println ("rechterarm naar beneden");
digitalWrite (RightArmDir, laag);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite (RightArmSpeed, Fast);
vertraging (1.8 * t2);
analogWrite (RightArmSpeed, Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(2*T1);
}

VOID LeftArmUp() {}
Test linkerarm
Serial.println ("linker Arm omhoog");
Linker Arm omhoog
digitalWrite (LeftArmDir, hoge);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (2 * t2);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, 0);
delay(T1);
}

VOID LeftArmDown() {}
Linkerarm naar beneden
Serial.println ("linker Arm omlaag");
digitalWrite (LeftArmDir, laag);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (2 * t2);
analogWrite(LeftArmSpeed,Slow);
delay(T1);
analogWrite (LeftArmSpeed, 0);
delay(2*T1);
}

VOID WaistBendDown() {}
Test taille
Serial.println ("taille bocht naar beneden");
digitalWrite (WaistDir, hoge);
analogWrite (WaistSpeed, Slow);
vertraging (t1);
analogWrite (WaistSpeed, bendSpeed);
vertraging (2 * t2);
analogWrite (WaistSpeed, Slow);
delay(T1);
analogWrite (WaistSpeed, 0);
delay(T1);
}

VOID WaistBendUp() {}
Buig omhoog
Serial.println("up");
digitalWrite (WaistDir, laag);
analogWrite (WaistSpeed, Slow);
vertraging (t1);
analogWrite (WaistSpeed, bendSpeed);
vertraging (2 * t2);
analogWrite (WaistSpeed, Slow);
delay(T1);
analogWrite (WaistSpeed, 0);
delay(2*T1);
}

VOID Spin() {}
Serial.println("spin");
digitalWrite (LeftWheelDir, laag);
digitalWrite(RightWheelDir,HIGH);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
analogWrite (LeftWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
digitalWrite (LeftWheelDir, hoge);
digitalWrite(RightWheelDir,LOW);
analogWrite (LeftWheelSpeed, breakSpeed);
analogWrite (RightWheelSpeed, breakSpeed);
delay(tBreak);
analogWrite (LeftWheelSpeed, 0);
analogWrite(RightWheelSpeed,0);
}

VOID Spin2() {}
Serial.println("SPIN2");
digitalWrite (LeftWheelDir, hoge);
digitalWrite(RightWheelDir,LOW);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
analogWrite (LeftWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
digitalWrite (LeftWheelDir, laag);
digitalWrite(RightWheelDir,HIGH);
analogWrite (LeftWheelSpeed, breakSpeed);
analogWrite(RightWheelSpeed,breakSpeed);
delay(tBreak);
analogWrite (LeftWheelSpeed, 0);
analogWrite(RightWheelSpeed,0);
}


VOID Foward() {}
Serial.println ("Ga doorsturen");
digitalWrite (LeftWheelDir, hoge);
digitalWrite(RightWheelDir,HIGH);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
analogWrite (LeftWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
digitalWrite (LeftWheelDir, laag);
digitalWrite(RightWheelDir,LOW);
analogWrite (LeftWheelSpeed, breakSpeed);
analogWrite(RightWheelSpeed,breakSpeed);
delay(tBreak);
analogWrite (LeftWheelSpeed, 0);
analogWrite(RightWheelSpeed,0);
}

VOID Backward() {}
Serial.println ("Ga naar achteren");
digitalWrite (LeftWheelDir, laag);
digitalWrite(RightWheelDir,LOW);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
analogWrite (LeftWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
digitalWrite (LeftWheelDir, hoge);
digitalWrite(RightWheelDir,HIGH);
analogWrite (LeftWheelSpeed, breakSpeed);
analogWrite(RightWheelSpeed,breakSpeed);
delay(tBreak);
analogWrite (LeftWheelSpeed, 0);
analogWrite(RightWheelSpeed,0);
}
verplaatsen hoofd / / /
VOID MoveHead() {//create functie Beweeg hoofd / / hoofd heen en weer gaan
voor (pos = 5; pos < 145; pos += 1) //goes van 5 naar 145degrees
{/ / in stappen van 1 graad
myservo.write(POS);              servo naar positie in de variabele 'pos' vertellen
Serial.println(POS);
delay(15);                       wacht 15ms voor de servo te bereiken de positie
if(POS == posFront) {}
delay(600);
}
}
voor (pos = 145; pos > posFront; = pos-= 1) / / goes van 145 graden naar voren
{
myservo.write(POS);              servo naar positie in de variabele 'pos' vertellen
delay(15);     wacht 15ms voor de servo te bereiken de positie
if(POS == posFront) {}
delay(600);
}
}
}

Gerelateerde Artikelen

Karton Robot Wasserij map!

Karton Robot Wasserij map!

Deze robot is geschikt voor het vouwen van overhemden en broek in minder dan 2 seconden! Deze robot het hele lichaam is gemaakt van cardboard.making die dit bot bestond uit karton knippen en het toevoegen van servo's aan elk kartonnen stuk opdrijven.
Karton Robot voor kleine kinderen

Karton Robot voor kleine kinderen

ik bday party 12 robot "kits" voor mijn dochters gemaakt.Als u wilt maken, moet u:2 dozen (een kleiner is dan de andere), zilverpapier lakens, lijmspray, xacto mes, plakband (zilver en rood), Wasserij kabelgoten, chip clip, garde, rond stuk kart
Karton Robot

Karton Robot

Deze robot is gebaseerd op verschillende "walker-robots" gevonden op het web, en het is een van de vele versies van een 2-servo wandelende robot. Ons idee achter deze robot was om te proberen te bouwen een goedkoop als mogelijk robot kit voor ki
Karton Robot hoofd

Karton Robot hoofd

heb je wilde maken van een eenvoudige robot helm voor de lol? Ook zal je deze tutorial over hoe te maken van een eenvoudig, goedkoop en leuk kartonnen robot helm!Stap 1: Lichaam van hoofd Moet u een kartonnen doos ongeveer 1 1/2 voet hoog, een diepte
DIY Karton Robot

DIY Karton Robot

Maak uw eigen kartonnen robot te gebruiken voor weergave, als float decoratie, of gewoon voor een leuke creatieve ambachtelijkeStap 1: Stap 1: verzamelen van materialen 2 verschillende grootte dozen (1 voor het hoofd) en 1 voor het lichaam.verschille
Karton robot baseren op Danboard

Karton robot baseren op Danboard

Van oorsprong uit Japan Danboard, is dit project voor DIY alleen, geen commerciële gebruik. Als u dat dit, koop een Danboard ter ondersteuning van de ontwikkelaar. U kunt download en print met 2 A4-formaat. Geniet van!Stap 1: samenstellen Volg de sta
Bowie dancing robot

Bowie dancing robot

Dit instructable is gebaseerd op http://www.thingiverse.com/thing:1274838 is een kloon van de Spaanse tv-clan robot die het origineel hebben meer opties en introduceert youngs en olds in robotica en nu kunt u uw eigen met dit hardnekkige met deze rob
Dancing, magnetische Robots

Dancing, magnetische Robots

maken een paar robots met behulp van magneten dansen!Terwijl het rommelen met enkele magneten die ik van Ebay gekocht ontdekte ik iets echt cool.  Als u een kleine wasmachine op een vlakke ondergrond en verplaatsen van een magneet in een cirkel beweg
IRobot Create persoonlijke Home Robot

IRobot Create persoonlijke Home Robot

de invoering van een persoonlijke home robot gebouwd rond de iRobot Create platform en een mini-itx-computersysteem.Het is nooit geweest gemakkelijker en betaalbaarder te ontwerpen en bouwen van robots door de benutting van de schaalvoordelen van de
Controle van de MIP Robot met Intel Edison

Controle van de MIP Robot met Intel Edison

Monteren van Edison bestuur, software installeren, schrijf een beetje JS code, dans robot, dans.Stap 1: Snap de Edison-bestuur samenRaad van bestuur uit pop in de chip vak halen.Stap 2: Test bord met Blinky demoBouwen en uitvoeren van Blinky demo die
De magnetische dansen Robots

De magnetische dansen Robots

Inleiding-hoe werkt het?De essentiële instellingen zullen een dikke hardcover boek. Onder de dekking, zullen er twee (of meer kan worden) ronddraaien. Op de cover, kunt u instellen met twee robots van het metaal-gebouwd, en zij zullen te bewegen vanw
Dance Dance Roverbot! Een licht geactiveerd dansen Snap Circuits programmeerbare Robot te bouwen.

Dance Dance Roverbot! Een licht geactiveerd dansen Snap Circuits programmeerbare Robot te bouwen.

In dit Instructable u hoe leert te bouwen een licht geactiveerd dansende Snap Circuits programmeerbare robot. Eerst leert u het installeren van de PICAXE programmering Editor (de PICAXE is de microcontroller, of computer hersenen voor uw dans dans Ro
DISCOBOT: Dansen, Robot stijl!

DISCOBOT: Dansen, Robot stijl!

Het begon allemaal toen ik ging om te zien van Star Wars: The Force ontwaakt en direct viel in liefde met BB-8. Ik besloot, recht toen en daar, dat ik wilde maken van een robot die mensen zou vallen in liefde met.EN SO... DISCOBOT was geboren! DISCOB
Van Sega Cartridge te gek dansen Robot!

Van Sega Cartridge te gek dansen Robot!

(Als je dit instructable, please vote voor mij. Bedankt!)Nu ik ben werkzaam in de Engineering voor Kids Azerbeidzjan, ten slotte heb ik de gelegenheid om kinderen te leren dat ze hun eigen uitvindingen, kunnen maken met behulp van gewone materialen d