Logboek

= Logboek =

__13 juli 2011__
toc
 * Besturen van de AR Drone via laptop geslaagd.
 * Planning voor de maand juli-augustus-september bespreken.
 * Proberen compileren van de AR Drone libraries

__14 juli 2011__
We zijn er in geslaagd om een basis testprogramma te kunnen compileren via de ARDrone SDK. Dit was niet vanzelfsprekend aangezien er nog heel wat aanpassingen gedaan moesten worden. Hier vind je de benodigde informatie terug voor het compileren van het basisprogramma. Het programma is een open source basis app (gemaakt door parrot zelf) die via cmd venster navigatiedata weergeeft. In een tweede venster is de live videostream te zien van de camera vooraan. Met behulp van een game controller of het computer keyboard wordt de drone bestuurd. De basis app is een deel van een basisprogramma (SDK). De SDK bevat basiscode waarop we kunnen verderbouwen om onze eigen apps te gaan maken.


 * Alle errors uit de code gehaald
 * Gecompileerd en getest
 * Handleiding geschreven hoe de code te repareren en te compileren + alle benodigde libraries
 * Handleiding tweede maal vanaf begin gevolgd om fouten uit de handleiding te halen

__15 juli 2011__

 * Warnings oplossen

__16 juli 2011__

 * Microsoft Robotics Developer Studio 2008 R3 gedownloaded
 * Voorbeeldprogramma's compileren om tutorial te beginnen

We kunnen Microsoft Robotics Developer Studio 2008 misschien gebruiken om de AR Drone te simuleren. Dit gaan we later verder uitzoeken of het nodig is de AR Drone te simuleren en of dit gaat met Microsoft Robotics Developer Studio 2008.

__23 juli 2011__
Vandaag zijn we bij elkaar gekomen om nog een aantal kleine problemen op te lossen met het voorbeeld programma van drone. Ook hebben we volgende punten besproken:


 * Laatste problemen opgelost om voorbeeld programma op alle PC's te laten draaien
 * Stroom gemeten die de drone maximaal verbruikt
 * Voeding ontworpen (nog niet gemaakt) 12V/8A om de drone te voeden zodat we de batterij niet hoeven te gebruiken
 * Statief ontworpen (nog niet gemaakt) waaraan de drone kan bevestigd worden

Vanaf nu gaan we de code proberen te begrijpen en zelf wat bijkomende code schrijven (die later zal vervangen worden door de beeldverwerkingscode), om te kijken of we deze parallel kunnen laten draaien met de voorbeeld code van drone.

__28 juli 2011__

 * Heel SDK doornemen
 * Code herschreven om Drone te besturen met andere toetsen van het toetsenbord om zo de code geleidelijk aan te begrijpen
 * Geprobeerd om de Drone een effect laten uit te voeren door middel van het indrukken van een toets (nog niet gelukt, oorzaak aan het zoeken)
 * Wikipagina gemaakt waar we de code die we al begrijpen uitleggen

__6 augustus 2011__

 * Opzoekwerk Pthreads
 * Onderzoeken hoe Pthreads te gebruiken

__7 augustus 2011__
Statief gemaakt voor de AR Drone. Zo kan hij vliegen en blijft hij altijd ter plaatse hangen. Dit is gemakkelijk voor software snel te testen zonder dat je naar buiten moet om met de drone te vliegen. Hiermee kan hij ook niet op de grond vallen want de staaf die op de drone bevestigd is komt niet tot aan de grond. Nog op te lossen problemen: De staaf die op de drone is bevestigd gaat wat stroef omhoog en omlaag. Dit kan misschien opgelost worden door de houder waar de staaf in glijdt te lageren.



Filmpje van de test:

media type="youtube" key="6pMO_MPHyPw" height="349" width="425"

__10 augustus 2011__
Na een hele tijd te werken aan de voeding voor de ARdrone is deze eindelijk klaar. De voeding werkt en is vandaag getest met de ARdrone met succes. Het verbruik van de ARdrone vertoont een piek van ongeveer 8Ampère bij het opstijgen. Bij het hooveren valt het verbruik terug naar een slordige 4Ampère. Als de motoren niet draaien (standby) is het stroomverbruik slechts 200mA. Over de voeding:

De voeding is een eenvoudige analoge gestabiliseerde voeding waarvan de uitgangsspanning regelbaar is tussen 8V en 13,8V en is gebaseerd op een LM317 regelaar in combinatie met een hoog vermogen transistor. De voeding kan een stroom leveren van 10A en is hier ook op afgezekerd (aangezien ze is niet kortsluitvast is). Een paar foto's:



Voor schema's en uitleg over de voeding zie ARDrone test voeding

__14 augustus 2011__

 * Vandaag hebben we een grote mijlpaal bereikt! We hebben nu een aparte thread aangemaakt die parallel draait met de threads van Parrot. In deze Thread wordt er voorlopig een string geprint, maar later zal in deze thread het beeldverwerkingsalgoritme draaien. Uiteindelijk was het niet heel moeilijk om dit te realiseren, maar vooral veel zoekwerk. De code hiervoor is geschreven in het bestand: "custom_code.c" en is hier te vinden onder de code AU14. De volgende stap is om de Drone een manoeuvre laten uit te voeren vanuit de nieuwe thread.


 * EDIT: ipv een manoeuvre te laten uitvoeren hebben we de led's van de AR Drone een annimatie laten uitvoeren. Dit was veiliger dan de Drone een vaste sequentie te laten vliegen.
 * Statief aangepast. Langere buis op het statief gelast. Hierdoor kan de Drone minder naar links en rechts bewegen, waardoor het geheel minder stroef beweegt.
 * Bevestiging van Drone op carbon buis aangepast voor snel te kunnen monteren en demonteren.



__4 september 2011__
Informatie lezen over Pattern recognition.( [] )

__13 september 2011__
Vandaag zijn we samengekomen om een aantal zaken te bespreken zoals:
 * Welke thread dient voor wat
 * Handler functies bespreken
 * Bestaande code en nieuw geschreven code (AU14) in het algemeen bespreken zodat we beide op de hoogte zijn van alles
 * Plan van aanpak beginnen maken zodat we dit aan het begin van het schooljaar kunnen overhandigen aan onze promotor
 * Bespreken wat we tegen eind december al willen gerealiseerd hebben (Wanneer we hierover zeker zijn komt het op de wiki)

__30 september 2011__
Vandaag hebben we de SDK voor het eerst op een Linux machine gecompileerd omdat we dit gewoon eens wilden proberen. Dit bleek een stuk eenvoudiger te zijn dan op windows xp, in tegenstelling tot onze vermoedens. Het Linux voorbeeld bleek ook veel uitgebreider te zijn en beschikte over een GUI die ook de onderste camera kon uitlezen. Tot hiertoe hadden we nooit gedacht dat dit laatste ook effectief kon zonder de firmware van de drone te modificeren. We denken erover na om vanaf nu de ontwikkeling van de software voort te zetten in een Linux omgeving.

Compileren van ARDrone SDK example voor linux

__2 oktober 2011__
De camera langs de onderkant van de drone hebben we vandaag op windows ook aan de praat gekregen. Door bij het toetsenbord de letter "c" in te duwen komt er een 2de klein scherm in de linkerbovenhoek van het beeld, die dan de beelden van de onderste camera weergeeft. Het commando waarmee dit gebeurt kan je terugvinden bij de codepagina onder okt2. Waarschijnlijk zullen we vanaf nu verder werken op Linux omdat we hierbij gemerkt hebben dat het programma beter loopt.

__5 oktober 2011__
Naar aanleiding van een filmpje dat we gevonden hadden over een ball tracking systeem, zijn we onderzoek gaan doen naar het robot software platform Urbi. Dit syteem is script gebaseerd en kan UObjects aanroepen. UObjecten zijn gecompileerde C++ libraries die op lager (harware) niveau kunnen werken. De scripttaal fungeert als een soort lijm om alle library objecten samen te brengen tot een geheel. Het mooie aan dit systeem is dat de mogelijkheid bestaat om het op de drone zelf te laten draaien. Urbi communiceert dan met de drone via AT commando's op het juiste UDP/TCP poort. Zelf hebben we ook het platform geïnstalleerd en een demo applicatie uitgetest (balltracking algoritme). Zie hier voor meer informatie rond de installatie van het platform en het uitvoeren van de demo applicatie.

__7 oktober 2011__
2 nieuwe logboeken aangemaakt, één voor Maarten en één voor Dries. Omdat we met verschillende technieken van beeldverwerking bezig zijn kan het verwarrend zijn dat alles door elkaar beschreven wordt in het algemeen logboek. Maarten -> logboek Dries -> logboek

__21 oktober 2011__
Vandaag hebben we nog een paar filmpjes gaan maken in een boomgaard. Hier hebben we gemerkt dat de drone zijn hoogte zelf regeld wanneer dat hij te laag tegen de grond vliegt. Dit is voor ons een nadeel, omdat wanneer we wat lager vliegen en het gras wat hoger staat de drone zelf omhoof of omlaag vliegt. Hiervoor moeten we een oplossing vinden.