RoboCup
Line 49: | Line 49: | ||
---- | ---- | ||
− | + | ===ROBOCUP Elektronisk tavle=== | |
Software består af to dele, en database-og-server-del og en klient-visningdel | Software består af to dele, en database-og-server-del og en klient-visningdel |
Revision as of 12:11, 1 December 2008
Denne side omhandler overvejelser om DTU RoboCup 2005 (og tavleændringer 2007)
Generelle forbedringer mm mm.
- Elektronisk tavle og projektor (se nederst for installation)
- Video streaming af event
- Webcam på forberedelserne
- Lyd i Pitten
Overordnede principper
- Alle skal kunne komme i mål selv med en ret simpel vogn
- RoboCup består af en Eventdel og en Workshopdel
- Eventdel skal kunne afvikles på max. 1,5 timer
- Forhindringerne skal være simple at drive for arrangørerne
- Forhindringerne skal få robotten til at gøre noget
- Interaktion mellem robot og forhindring er vigtig
- der bør være mulighed for 2 gennemløb til alle
Afviklingen
- På første dagen opstilles banen og salen åbnes, workshop aktiviteter
- På anden dagen holdes et kvalifikationsløb hvor det 15 bedste hold udskilles (skal der være wildcards?), Pitten ryddes for ekstra hold. Der kan evt. køres enkelt disiplin konkurrencer.
- På tredie dagen holdes selve RoboCup eventen. Der ryddes op
Oticon layout http://www.iau.dtu.dk/~or/oticon.png
Forhindringer (vedtaget)
- Gillotine
- Mur med variabel længde
- Fritstående port
- Tunnel
- Racerbane
- Rampe op (til 55cm)
- Trappe/Rampe ned
- Scor Mål (fodboldspil)
- Rød port giver minus-point
Nogle af portene bliver fastmonteret på forhindringerne, så de ikke ken flyttes af vognene. Øvrige porte stilles frit på banen (som hidtil), men man dickvalificeres ikke hvis man flytter portene (der gives dog kun point hvis man kommer helt igennem en port.
Forhindringer som favoriserer kamera ønskes. Banen skal være klar til workshoppen i november (Update: workshop aflyst). Der tænkes en periode hvor der samles input fra bl.a. www.robocup.dk
Forhindringer (nye forslag)
- Vippe
- Ballon-sprængning
- Lyssignal
- Fodboldspil hvor robotten ikke må køre gennem målet
ROBOCUP Elektronisk tavle
Software består af to dele, en database-og-server-del og en klient-visningdel
Begge dele er pakket sammen her http://www.iau.dtu.dk/~jca/robocup/roboscore2007.tar.gz og her http://www.iau.dtu.dk/~jca/robocup/roboscore-2008.tar.gz Disse programmer er kun testet på Linux (af christian), men burde kunne køre under Windows.
Udpak med
tar -xzf roboscore-2008.tar.gz cd roboscore
server
Databasen er en SQLITE database (version 2) i filen robocup.sqlite. Serverprogrammet er skrevet i TCL (og kræver derfor at TCL er installeret) Til at køre script (og pakke til exe-fil) kræves en version (fx 8.4.9) af tclkit-linux-x86.gz, f.eks. http://www.equi4.com/pub/tk/8.4.9/tclkit-linux-x86.gz .
Programmet skal rettes hvert år for at passe til nye forhindringer og ny deltagerliste. Det er derfor lettest at køre programmet direkte fra scriptet (og ikke fra en pakket exe-fil).
Pakning til exe kræver yderligere http://www.equi4.com/pub/sk/sdx.kit og pakkes med kommandoen:
./tclkit-linux-x86 sdx.kit wrap roboscores-1b -runtime roboscores-1.0
kør server med
./tclkit-linux-x86 roboscores-1b.vbs/main.tcl
eller
./server
Kan køres med en ekstra parameter
./tclkit-linux-x86 roboscores-1b.vbs/main.tcl server - direkte server ./tclkit-linux-x86 roboscores-1b.vbs/main.tcl client - Ian's oprindelige klient ./tclkit-linux-x86 roboscores-1b.vbs/main.tcl html - export af resultat som html-tabel
Hvis der ikke er en database-tabel bliver der oprettet en, d.v.s. database skal slettes inden nyt år
rm robocup.sqlite.
Database definitionen (og deltagerliste) er i filen:
roboscores-1b.vbs/lib/app-run/dbcreate.tcl - og den skal opdateres med - som minimum - nye deltagere.
Filen (dbcreate.tcl) kan genereres med et c++ program (kdevelop projekt med i bibliotek robocup2database:
robocup2database/debug/src/robocup2database frafil tilfil
frafil skal være en tekstfil taget med copy-paste fra Jan Jansens holdliste, tilfil bliver en TCL-fil, som skal omdøbes til dbcreate.tcl og flyttes til roboscores-1b.vbs/lib/app-run.
Specifikation af forhindringer er i
roboscores-1b.vbs/lib/app-run/edit.tcl
Resten af rettelser til en ny bane er ikke helt simpelt, men muligt funktionen proc edit_frame w { indeholder kontroller, og lidt nede bliver de pakker i en for each frame { sætning, der afgør den viste rækkefølge. I starten af filen er point-navne der skal matche databasefelter i dbcreate.tcl.
I 2007 er tilføjet et UDGÅET felt (for hver runde), som vises før holdnavn (for at undgå at rette i holdliste inden finale.
Serveren bruger port 24977
klient
klienten er skrevet i PYTHON og kræver at PYTHON og PYGAME er installeret, PYGAME kræver at SDL er installeret.
Klientern køres med
cd scoreboard python scoreboard.py
Se help option for at sætte host og port nummer
python scoreboard.py --help
fx:
python scoreboard.py -host localhost -port 24977