Autonoma AR papegoja Drone 2.0 flygande (7 / 8 steg)
Steg 7: funktioner
Nu har du allt du behöver för att självständigt flyga din drone. Du måste bara veta några funktioner som drone kan för att skriva mer komplicerade program. Nedan jag visar namnet och beskriva vad de gör. Du bör också kolla Felixge's README-filen som medföljer ar drone biblioteket som det har massor av bra information.
takeOFF() - har drone start och sväva över marken
land() - har drone mark
up(Speed) - har drone vinst höjden med en hastighet mellan 1 (max hastighet) och 0 (stilla).
Down(Speed) - gör drone minska höjd
Clockwise(Speed) - drone snurrar medurs
counterClockwise(speed) - drone snurrar motsols
Front(Speed)/back(Speed) - ändrar tonhöjd orsakar horisontell rörelse
Left(Speed)/Right(Speed) - ändrar den rullen orsakar horisontell rörelse
Stop() - håller drone svävar på plats
(för komplexa funktioner som volter och manuevers, kolla in filen README länkade ovan)
Alla dessa funktioner kan användas i en lång lista med en dedikerad tid mellan dem med hjälp av formatet:
klienten
efter (5000, function() {
This.Clockwise(0.5);
})
efter (3000, function() {
This.stop();
});
5000 är tid i millisekunder som drone stänger medurs för på 0,5 av dess topp roterande klassar (1 är max och 0 är fortfarande). För stopp-funktionen kan vi se att den inte har en hastighet eftersom det tar hand om det sig själv. Genom att göra en lång lista med kommandon som denna vi kan inrätta en autonom aktivitetslista att utföra. Jag har kopierat koden som min drone körde, i videon på den första sidan i nedan:
var arDrone = require('ar-drone');
var kund = arDrone.createClient();
client.takeOFF();
klienten
efter (2000, function() {
This.up(1);
})
efter (2000, function() {
This.Animate('flipAhead',500);
})
efter (1000, function() {
This.Animate ('flipBehind', 500);
})
efter (1000, function() {
This.Animate('flipLeft',500);
})
efter (1000, function() {
This.Animate ('flipRight', 500);
})
efter (5000, function() {
This.Front(1.0);
})
efter (2000, function() {
This.Clockwise(0.5);
})
efter (5000, function() {
This.Back(0.8);
})
efter (2000, function() {
This.land();
});
Förhoppningsvis kommer detta att ge dig en god uppfattning om hur dispositionen program ser ut.