Logboek

Maandag

12:00 We zijn aangekomen op de UvA en beginnen met het bestuderen van wat we precies gaan doen. Het idee was al duidelijk, maar hoe pakken we het precies aan? Gijs maakt alvast de webpagina met de besturingselementen, Okke verdiept zich in Ruby voor de server. Ook overleggen we wat er met de webcam moet gebeuren, maar helemaal erover eens zijn we niet. Hoe sturen we de beelden naar de webpagina?

14:00 Ruby op de server gaat niet makkelijk voor ons. Daarom kiezen we toch maar voor PHP; in die taal kunnen we veel sneller werken. Gijs is klaar met de layout voor de website. Omdat we de server op de laptop van Okke niet kunnen bereiken via het interne netwerk proberen we een SSH tunnel op te zetten vanaf zijn laptop naar de thuisserver van Gijs. Dit werkt ook niet, mogelijk wegens de firewall van Gijs. Na enkele uren en pogingen (poorten veranderen, firewall instellingen veranderen etc) geven we op. We zullen ergens anders een server moeten draaien met de PHP.

16:00 Nog steeds bezig met de SSH tunnel. Het inlezen van de robots.txt file en het opnieuw wegschrijven van de aangepaste versie met PHP werkt. De AJAX aanroepen vanaf de browser naar de server werken nog niet, maar het voorbereidende werk is klaar aan beide kanten.

17:30 We geven de moed op om de SSH tunnel nog aan de praat te krijgen. Morgen zien we verder en beslissen we wat we gaan doen.

Dinsdag

10:00 We komen als eerste aan in het lokaal en beginnen na een kopje chocolademelk aan overleggen hoe we de server aanpakken. Gijs stelt voor om de student.science.uva.nl server te gebruiken, en we proberen het. Het lijkt erop dat daar inderdaad PHP op draait, dus dat is een probleem minder. Alleen de webcam stelt ons nog voor een probleem: op de linux computers kunnen we niet met de webcam werken, maar op de windows computer kunnen we hem niet zomaar toegankelijk maken.

12:00 We proberen een aantal programmas waarmee we snapshots kunnen maken uit. Eerst lijkt Fwink een goede keuze, maar dit werkt niet helemaal naar volle tevredenheid: voor ieder plaatje maakt het een nieuwe verbinding naar de FTP server. Als je 1 plaatje per minuut wilt is dat niet erg, maar wij willen iedere seconden een plaatje versturen! De FTP server vindt dat niet leuk en vindt dat we helemaal niet meer mogen connecten voor een poosje. We moeten dus een ander programma vinden. Het is uiteindelijk TinCam geworden. Dit programma laat de FTP verbinding naar de server gewoon open, waardoor we wél iedere seconde een nieuw beeld kunnen versturen.

14:00 De integratie tussen de AJAX requests en het PHP bestand is bijna voor elkaar. Het PHP bestand schrijft nu naar het robots.txt bestand weg hoe de robot moet komen te staan. Toch is er nog een probleempje met de XML die de PHP terugstuurt. JavaScript blijkt uiteindelijk de string "false" te interpreteren als 'waar', waardoor de besturingsknoppen ook aanbleven staan als ze al op hun maximale stand stonden.

15:30-17:15 Even een hamburger eten met Andy Smith van Flock.

17:15 We vinden het niet leuk dat we een realtime programma hebben wat draait op de website, terwijl er nog iemand bij de robot moet zitten die telkens via het programma umirtxsimulator de robot telkens groen licht moet geven om te kunnen bewegen. Daarom verdiepen we ons in C code om te kijken of we een C programma kunnen maken wat vanaf de PHP kan worden aangeroepen wat de server direct aanstuurt.

19:00 YES! De C code wou compileren! Alleen het aansturen van de file vanuit PHP wil niet. We krijgen geen errors, maar het lijkt erop dat we geen shell access krijgen met PHP. Morgen zien we verder.

Woensdag

10:15 Het lokaal zit zowaar redelijk vol! Vol frisse moed zetten we op waar we gister alles hebben achtergelaten. We beslissen dat we een BASH script gaan maken wat elke seconde de robots.txt uitleest en vervolgens de robot aanstuurt via het C programmaatje wat we al eerder hadden gemaakt.

11:15 De FTP server is er opeens mee gestopt! We kunnen geen verbinding meer maken met www.formsma.nl en ftp.formsma.nl, dus we hebben een probleempje. Okke heeft naar zijn hoster een mailtje gestuurd met een vraag om uitleg. Misschien vonden ze het niet tof dat we elke seconde een plaatje uploaden en dan 2 keer een request ernaar doen (2 computers waren aan het kijken op dat moment).

11:30 Het probleem is alweer voorbij. De server had een klein probleempje volgens mij hoster, maar hij is nu weer online.

11:30 We gaan nu de testen met de robot. Het eerste probleem is direct duidelijk: we kunnen de arm niet helemaal gestrekt houden! Als we dat doen gaat de webcam tegen een beschermpaaltje aan. We geven de arm daarom standaard een kleine draaiing, waardoor het niet meer mogelijk is om daar tegenaan te komen. Op een of andere manier gaat het uploaden van de plaatjes ook niet meer snel genoeg; als we de upload rate op 1 seconde zetten loopt het beeld na een paar minuten al een minuut achter! Daarom zette we de refreshrate van de webcam op 5 seconden in plaats van 1. Dit is natuurlijk erg jammer, maar op dit moment niets aan te doen. Als de upload-stap niet nodig zou zijn (bijvoorbeeld als we een server mochten installeren op school) was deze delay niet aanwezig geweest. Door de opzet van het netwerk kunnen we er echter niet onderuit. Jammer maar helaas.

12:00 Onze tests lijken te werken. Daarom gaan we nu het bash-script installeren wat de robotarm automatisch gaat instellen. Het script wil draaien, maar we hebben een probleem. Telkens voordat de robot zijn arm in een positie zet, wil hij zichzelf eerst calibreren! Het programma wordt dus veel te vaak aangeroepen. Daar moeten we nog iets aan doen voor vrijdag.

12:45 Okke moet weg naar Friesland, en gaat in de trein aan het logboek werken. Gijs gaat nog even proberen om het C programma zo te herschrijven dat het bash-script niet meer nodig is (en waardoor dus de robot zich niet voor elke beweging gaat calibreren.)

14:00 Gijs heeft het aangepaste C programma af. Als het goed is gaat de robot nu niet meer door de init-stappen, maar helemaal zeker weten we dat niet. Vrijdag voor de presentaties moeten we dat nog even testen.

Donderdag

We hebben een dag vrij genomen.

Vrijdag

Gijs gaat 's morgens vroeg voor de presentaties nog even testen met de robot. Okke komt uit Friesland om 10:15. Om 11:45 tot 12:15 moeten we presenteren.