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

Stap 33: Robot Motor Test - scheef gegaan

Dus Bekijk deze video en zie als u welke zeggen annuleerteken als fout gegaan...

Video - Probeer eerst -


1 - motoren worden uitgevoerd bij zeer snel
2 - brandwonden uit de beheersing van de taille-motor mosfet

Video 2 - probeer het uit en weer draaien

1 - motoren worden uitgevoerd bij zeer snel
Zie je waarom?

Ik heb alle de snelheden lopen als digitale uitgangen, dus we zijn net 0Volts of 18Volts naar de motor.

Zo waar is er zoiets als dit:

digitalWrite (RightArmSpeed, Fast);

het zou moeten zijn;

analogWrite (RightArmSpeed, Fast);

de analogWrite-opdracht stuurt wat is eigenlijk een variabele spanning tussen 0 en 5 v (met 0 = 0V; en 255 = 5V)-loopt dit via de mosfet geeft een output met 0 = 0V; en 255 = 18V.

Dus - hieronder de code is vastgesteld. De snelheid-waarden zijn nu in het bereik 0-255, en kunnen worden gewijzigd aan de bovenkant van de code.

2 - brandwonden uit de beheersing van de taille-motor mosfet

Twee problemen hier - de eerste is dat we zijn niet goed de controle macht aan de motor - maar dat moet nu worden vastgesteld. De andere kwestie is dat het echt moeilijk om het verheffen van de achterkant van de robot als dit - zodat de motor veel stroom loopt te krijgen van de robot om te buigen in de taille. We moeten zitten kundig voor positiebepaling zulks mechanisch door: bouwen van een betere koppeling; toevoegen van veren of gewichten aan evenwicht de bovenlichaam, of iets anders... Ik voel me alsof er een hele lange stap over de vaststelling van dit deel zal zijn. Voorlopig zal ik het probleem negeren.

Arduino Code controle snelheid met analogWrite functie / / /

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 = 500;
int t2 = 100;
int WheelSpeed = 120;

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);

Serial.begin(9600);
}

void loop {}

BASISTESTS / /
Serial.println ("BASISTESTS");
De rechterarm test
Serial.println ("rechterarm");
Rechterarm omhoog
Serial.println("up");
digitalWrite (RightArmDir, hoge);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite(RightArmSpeed,Fast);
vertraging (t2);
analogWrite(RightArmSpeed,Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(T1);
Rechterarm naar beneden
Serial.println("down");
digitalWrite (RightArmDir, laag);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite (RightArmSpeed, Fast);
vertraging (t2);
analogWrite (RightArmSpeed, Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(T1);
Test linkerarm
Serial.println ("linker Arm");
Linker Arm omhoog
Serial.println("up");
digitalWrite (LeftArmDir, hoge);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (t2);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, 0);
delay(T1);
Linkerarm naar beneden
Serial.println("down");
digitalWrite (LeftArmDir, laag);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (t2);
analogWrite(LeftArmSpeed,Slow);
delay(T1);
analogWrite (LeftArmSpeed, 0);
delay(T1);
Test taille
Serial.println("waist");
Bukken
Serial.println("down");
digitalWrite (WaistDir, hoge);
analogWrite (WaistSpeed, Slow);
vertraging (2 * t1);
analogWrite (WaistSpeed, Fast);
vertraging (4 * t2);
analogWrite (WaistSpeed, Slow);
delay(2 * T1);
analogWrite (WaistSpeed, 0);
delay(T1);
Buig omhoog
Serial.println("up");
digitalWrite (WaistDir, laag);
analogWrite (WaistSpeed, Slow);
vertraging (2 * t1);
analogWrite (WaistSpeed, Fast);
vertraging (4 * t2);
analogWrite (WaistSpeed, Slow);
delay(2 * T1);
analogWrite (WaistSpeed, 0);
delay(T1);
Het juiste wiel test
Serial.println ("juiste wiel");
Doorsturen van het juiste wiel '
Serial.println("foward");
digitalWrite (RightWheelDir, hoge);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (RightWheelSpeed, 0);
delay(T1);
Juiste wiel achteruit
Serial.println("backward");
digitalWrite (RightWheelDir, laag);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (RightWheelSpeed, 0);
delay(T2);
Test linker wiel
Serial.println ("linker wiel");
Linker wiel doorsturen
Serial.println("foward");
digitalWrite (LeftWheelDir, hoge);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
delay(T1);
Linker wiel terug
Serial.println("backward");
digitalWrite (LeftWheelDir, laag);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
delay(T1);
FANCY TESTS / /
Serial.println ("FANCY TESTS");
Raken vloer
Aanraking van de hemel
Uitgangspositie
Draai links
Draai rechts
Gaan doorsturen
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/2);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
Achterwaarts gaan
Robot dans
Serial.println("REPEAT...");
} / / 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 = 500;
int t2 = 100;
int WheelSpeed = 120;

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);

Serial.begin(9600);
}

void loop {}

BASISTESTS / /
Serial.println ("BASISTESTS");
De rechterarm test
Serial.println ("rechterarm");
Rechterarm omhoog
Serial.println("up");
digitalWrite (RightArmDir, hoge);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite(RightArmSpeed,Fast);
vertraging (t2);
analogWrite(RightArmSpeed,Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(T1);
Rechterarm naar beneden
Serial.println("down");
digitalWrite (RightArmDir, laag);
analogWrite (RightArmSpeed, Slow);
vertraging (t1);
analogWrite (RightArmSpeed, Fast);
vertraging (t2);
analogWrite (RightArmSpeed, Slow);
delay(T1);
analogWrite (RightArmSpeed, 0);
delay(T1);
Test linkerarm
Serial.println ("linker Arm");
Linker Arm omhoog
Serial.println("up");
digitalWrite (LeftArmDir, hoge);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (t2);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, 0);
delay(T1);
Linkerarm naar beneden
Serial.println("down");
digitalWrite (LeftArmDir, laag);
analogWrite (LeftArmSpeed, Slow);
vertraging (t1);
analogWrite (LeftArmSpeed, Fast);
vertraging (t2);
analogWrite(LeftArmSpeed,Slow);
delay(T1);
analogWrite (LeftArmSpeed, 0);
delay(T1);
Test taille
Serial.println("waist");
Bukken
Serial.println("down");
digitalWrite (WaistDir, hoge);
analogWrite (WaistSpeed, Slow);
vertraging (2 * t1);
analogWrite (WaistSpeed, Fast);
vertraging (4 * t2);
analogWrite (WaistSpeed, Slow);
delay(2 * T1);
analogWrite (WaistSpeed, 0);
delay(T1);
Buig omhoog
Serial.println("up");
digitalWrite (WaistDir, laag);
analogWrite (WaistSpeed, Slow);
vertraging (2 * t1);
analogWrite (WaistSpeed, Fast);
vertraging (4 * t2);
analogWrite (WaistSpeed, Slow);
delay(2 * T1);
analogWrite (WaistSpeed, 0);
delay(T1);
Het juiste wiel test
Serial.println ("juiste wiel");
Doorsturen van het juiste wiel '
Serial.println("foward");
digitalWrite (RightWheelDir, hoge);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (RightWheelSpeed, 0);
delay(T1);
Juiste wiel achteruit
Serial.println("backward");
digitalWrite (RightWheelDir, laag);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (RightWheelSpeed, 0);
delay(T2);
Test linker wiel
Serial.println ("linker wiel");
Linker wiel doorsturen
Serial.println("foward");
digitalWrite (LeftWheelDir, hoge);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
delay(T1);
Linker wiel terug
Serial.println("backward");
digitalWrite (LeftWheelDir, laag);
analogWrite (RightWheelSpeed, WheelSpeed/2);
vertraging (t1);
analogWrite (RightWheelSpeed, WheelSpeed);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
delay(T1);
FANCY TESTS / /
Serial.println ("FANCY TESTS");
Raken vloer
Aanraking van de hemel
Uitgangspositie
Draai links
Draai rechts
Gaan doorsturen
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/2);
vertraging (t2);
analogWrite (RightWheelSpeed, WheelSpeed/2);
analogWrite (LeftWheelSpeed, WheelSpeed/2);
delay(T1);
analogWrite (LeftWheelSpeed, 0);
analogWrite (RightWheelSpeed, 0);
delay(T1);
Achterwaarts gaan
Robot dans
Serial.println("REPEAT...");
}

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