Table of Contents

Návody a inštalácie

Nachádzajú sa tu návody na inštaláciu a rozbehanie SimSparku, importovanie zdrojových kódov do IDE a na všetky základné kroky.

SimSpark

SimSpark je simulačným prostredím, ktorý slúži ako základný motor pre poháňanie simulácie robotického futbalu.

Inštalácia na Windows

Najnovšia inštalácia (2018) pre stiahnutie kliknite tu

Iné verzie inšalovania

*platné aj na Windows 10 !

*vo veľa prípadoch bolo nutné reinštalovať windows

Windows 7 x64

Testované na verziách:


Dostupné na stránkach:


Postup:

  1. Stiahnuť a nainštalovať exe súbory na systémový disk (inak to nepôjde) C:/Program Files (x86)/ v tomto poradí:
    1. MS Visual C++ 2008 Redistributable Package (x86) (nepovinné)
    2. simspark
    3. rcsserver3d
    4. Ruby
  2. Reštartovať počítač
  3. Spustiť server spustením rcssserver3d.cmd. Po spustení sa zobrazí príkazový riadok, v ktorom sa môžu objavovať informatívne chybové hlášky, no server je aj napriek tomu korektne spustený.
  4. Spustiť monitor spustením rcssmonitor3d.cmd. Po tomto kroku by sa malo zobraziť okno s ihriskom.
  5. Spustiť agenta na ihrisko spustením rcssagent3d.cmd. Po tomto kroku by sa mal v rohu ihriska objaviť hráč s názvom NaoRobot. Tento krok slúži len ako test, že všetko funguje správne.

Pozn.: Kroky číslo 3 a 4 je možné nahradiť spustením súboru rcsoccersim3d.cmd, ktorý vykoná spustenie servera a monitora.

Postup je približne rovnaký, ako v tomto videu, rozdiel je v odlišných verziách (pdporúčame ale postupovať podľa hore uvedeného písomného návodu):
http://www.youtube.com/watch?v=_gDrGoPQ35k

Oficiálny návod:
https://gitlab.com/robocup-sim/SimSpark/wikis/Installation-on-Windows

Záme problémy:

Windows 7 x86

Postup je rovnaký ako na 64-bitovú verziu. Samozrejme, v cestách sa používa C:\Program Files\.

  1. Stiahnutie MS Visual C++2008 Redistributable Package (x86)
    1. Otvorí sa stránka Microsoft Download Center s nápisom MS Visual C++2008 Redistributable Package (x86) s možnosťou stiahnutia „Download“.
    2. Kliknúť na „Download“ a tým stiahnuť súbor „vcredist_x86.exe“.
    3. Spustiť súbor a nainštalovať MS Visual C++2008 Redistributable Package (x86). Inštaláciu postačí vykonať štýlom klikania „Next“ a nakoniec „Finish“.
  2. Stiahnutie a nainštalovanie Simspark 0.2.2
    1. Kliknúť na „simspark-0.2.2-win32.exe“.
    2. Počkať 5 sekúnd a potom stiahnuť súbor „simspark-0.2.2-win32.exe“.
    3. Spustiť súbor „simspark-0.2.2-win32.exe“.
    4. Kliknúť: Next, I Agree, Next, Install, Finish. Ak by inštalácia padla alebo sa ukončila skôr než sa zobrazí obrazovka s tlačidlom „Finish“, je nutné inštaláciu zopakovať.
  3. Stiahnutie a nainštalovanie RoboCup servera 0.6.5
    1. Kliknúť na „rcssserver3d-0.6.5-win32.exe“.
    2. Počkať 5 sekúnd a potom stiahnuť súbor „rcssserver3d-0.6.5-win32.exe“.
    3. Spustiť súbor „rcssserver3d-0.6.5-win32.exe“.
    4. Kliknúť: Next, I Agree, Next, Install, Finish. Ak by inštalácia padla alebo sa ukončila skôr než sa zobrazí obrazovka s tlačidlom „Finish“, je nutné inštaláciu zopakovať.
  4. Stiahnutie a nainštalovanie Ruby 1.9.1
    1. Pokiaľ už máte nainštalované Ruby tejto verzie, tak nie je nutný tento krok. Pokiaľ máte nainštalované Ruby inej verzie, nie je zaručené že celý tento postup bude fungovať (treba skúsiť, možno to fungovať bude).
    2. Kliknúť na „Ruby 1.9.1-p378“.
    3. Stiahnuť súbor „rubyinstaller-1.9.1-p378.exe“.
    4. Spustiť súbor „rubyinstaller-1.9.1-p378.exe“.
    5. Kliknúť: Next, I accept the license, Next, zaškrtnúť „Add Ruby executables to your PATH“, Install, Finish. Ak by inštalácia padla alebo sa ukončila skôr než sa zobrazí obrazovka s tlačidlom „Finish“, je nutné inštaláciu zopakovať.
  5. Reštart systému Windows.
    1. Na prejavenie zmien spôsobených inštaláciami je nutné systém Windows reštartnúť.
  6. Upravenie „cmd“ súborov v RoboCup serveri
    1. Otvoriť v textovom editore (napríklad Notepad++) všetky súbory s príponou „cmd“, ktoré sa predvolene nachádzajú v priečinku
      1. C:\Program Files\rcssserver3d 0.6.5\bin“ alebo tam, kam ste RoboCup server nainštalovali. Sú to súbory:
        1. rcsoccersim3d.cmd
        2. rcssagent3d.cmd
        3. rcssmonitor3d.cmd
        4. rcssserver3d.cmd.
    2. Do každého súboru pridať 2 riadky, ktoré pri predvolených cestách vyzerajú takto:
      1. SET SPARK_DIR=C:\Program Files\simspark
      2. SET RCSSSERVER3D_DIR=C:\Program Files\rcssserver3d 0.6.5 6.3.
    3. Uložiť zmeny v súboroch.
  7. 7. Overenie funkčnosti inštalácií spustením predvoleného hráča
    1. Ísť do priečinka „C:\Program Files\rcssserver3d 0.6.5\bin“.
    2. Pre spustenie RoboCup servera je potrebné spustiť súbor „rcssserver3d.cmd“. Po spustení sa objaví konzolové okno s výpismi.
    3. Pre spustenie RoboCup monitora je potrebné spustiť súbor „rcssmonitor3d.cmd“. Po spustení sa objaví konzolové okno s výpismi a zároveň okno RoboCup monitora. RoboCup monitor a jeho okno slúži na zobrazenie futbalového ihriska a všetkého, čo sa na ňom viditeľne deje.
    4. Pre spustenie predvoleného hráča je potrebné spustiť súbor „rcssagent3d.cmd“. Po spustení sa objaví konzolové okno s výpismi a zároveň sa v okne RoboCup monitora na ihrisku objaví hráč. Pre nájdenie, či a kde sa hráč v monitore nachádza, je potrebné použiť šípky na klávesnici. Mal by sa nachádzať na ľavej strane ihriska ďalej od kamery.
  8. Spustenie hráča, ktorý je vyvíjaný našou fakultou, je popísané v časti „Pustenie agenta“.
  9. Užitočné zdroje
    1. https://gitlab.com/robocup-sim/SimSpark/wikis/Installation-on-Windows – oficiálny návod inštalácie simspark na Windows

- stránka tímu A55 Kickers

Inštalácia na Linux

Inštalácia je možná viacerými spôsobmi. V návodoch nájdete postupy pre najrýchlejší typ inštalácie a na najbezpečnejšiu (kompilácia)

LINUX rýchla inštalácia (bez kompilácie)

Pred inštaláciou updatujte celý OS a pustite príkaz sudo apt-get update

Inštalácia servera a simsparku (vždy najnovších verzií) na Kubuntu/Ubuntu 11 x64. Rýchlu inštaláciu spustíte príkazmi:

Testovacím agentom si overíte pripojiteľnosť k serveru. Keď vyjde nová verzia simsparku, update verzie prevediete príkazom:

LINUX - kompilácia

Pred inštaláciou potrebujete nainštalovať niekoľko rozšírení OS. Pred inštaláciou rozšírení určite pustite:

Aj počas inštalácie updatujte OS keď sa Vám hocijaký update ukáže! Povolte “multiverse” a “universe” v termináli:

Povolte logovanie terminálu:

Potrebné rozšírenia

  1. Cmake
    1. sudo apt-get install cake
  2. Ruby (gems, rails)
    1. Nezabudnite na to aby ste mali povolené “multiverse” a “universe”, a logovanie terminálu.
    2. Inštalácia Ruby s RVM postup na nete
      1. sudo apt-get install curl
      2. curl -L get.rvm.io | bash -s stable source ~/.rvm/scripts/rvm rvm requirements
      3. Ukážkový výpis “rvm requirements”:
        1. # For Ruby / Ruby HEAD (MRI, Rubinius, & REE), install the following:
          1. ruby: /usr/bin/apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
      4. Teraz pustite inštaláciu všetkých potrebných rozšírení, ktoré ruby žiada.
        1. Kopírujte text výpisu, všetko po “ruby: /usr/bin/apt-get install”
        2. Pustite “sudo apt-get install” s kopírovaným textom.
          1. Príklad: sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
          2. Prípadene: sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
      5. Keby problémy pretrvávali nezabudnite updateovať celý OS a pustite aj sudo apt-get update
      6. REŠTARTUJTE POČíTAČ Posledné kroky: rvm install 1.9.3 rvm use 1.9.3 –default rvm rubygems current gem install rails
  3. OpenGL
    1. sudo apt-get install build-essential
    2. sudo apt-get install freeglut3-dev
  4. The Open Dynamics Engine (ODE)
    1. Pred inštaláciou ODE je nutné mať nainštalované OpenGL. Pokiaľ už máte nainštalované OpenGL, stiahnite si najnovšiu verziu ODE (v tomto prípade ode-0.12.tar.bz2).
      1. cd ~/Downloads/ tar -xjvf ode-0.12.tar.bz2 cd ode-0.12/
      2. Príkazmi vyššie ste extractovali súbory a momentálne sa nachádzate v zložke s konfiguračnými súbormi. Teraz spustite príkaz na konfiguráciu.
        1. ./configure –enable-double-precision V prípade, že konfigurácia prebehla bez chýb stačí spustiť príkaz make. make
  5. The Boost C++ Libraries
    1. sudo apt-get install libboost-dev libboost-test-dev
  6. Freetype
    1. sudo apt-get install freetype*
  7. Developer Image Library (DevIL)
    1. sudo apt-get install libdevil1c2 libdevil-dev
  8. SDL
    1. sudo apt-get install libsdl1.2-dev libsdl1.2debian
  9. Optional:
    1. wxWidgets Library
    2. FMOD Sound Library
    3. Latex (pdflatex): to generate developers manual
    4. Doxygen: to generate API documentation
  10. Po inštalácií všetkých rozšírení si stiahnite najnovšiu verziu SimSpark-ku. Odporúčam sourceforge: http://sourceforge.net/projects/simspark/files/ Balík rozbalte a navigujte sa na miesto v termináli. Vytvorte tam priečinok build:
    1. mkdir build
    2. cd build
    3. cmake ..
    4. make make install
  11. Stiahnite si najnovsiu verziu rcssserver3d. Odporúčam sourceforge: http://sourceforge.net/projects/sserver/files/ Balík rozbalte a navigujte sa na miesto v termináli. Pustite:
    1. ./configure make
    2. make install

Inštalácia na Mac

Easy way

* tento návod sa mi nepodarilo rozbehať pomocou Virtual Boxu

* cez bootcamp sa to podarilo rozbehať dvom členom tímu BAREKO

Po pár neúspešných pokusov o inštaláciu RCserver3D, a jednom úspešnom pokuse som prišiel na to, že síce inštalácia bola úspešná, avšak niektoré funkcie FIIT projektu robotického hráča boli na OSX nefunkčné. Odporúčam pomocou DreamSparku a Virtual Boxu nainštalovať virtuálny windows a vyvíjať pod Windowsom.

Nefunkčné funkcie:

Návod:

Funkčný návod:

Hard way

Treba mať rozbehané:

Inštalácia knižníc

Inštalácia Simspark

  1. Z SVN Simsparku checkout-neme najnovšiu verziu:
  2. V súbore simspark/trunk/spark/lib/zeitgeist/scriptserver/scriptserver.cpp zmeníme riadok (asi 611)
    1. pkgdatadir += “Contents/Resources/”; na pkgdatadir += “../share/simspark/”;
  3. Skompilujeme a nainštalujeme:
    1. cd <path-to-simspark-dir>/simspark/trunk/spark
    2. mkdir build
    3. cd build
    4. cmake ..
    5. make
    6. sudo make install
    7. cd <path-to-simspark-dir>/simspark/trunk/rcssserver3d
    8. mkdir build
    9. cd build
    10. cmake ..
    11. make
    12. sudo make install

Spustenie Simspark

Pre zjednodušené spúšťanie simspark-u je dobré požiť tento skript:

Importovanie z BitBucketu

V nasledujúcich krokoch je opísaný postup pre importovanie projektu do Eclipse Luna, Mars:

  1. Spusťte Eclipse
  2. Vytvorte si pre projekt workspace
  3. V pravom hornom rohu sa prepnite do Git (musíte mať nainštalovaný plugin pre Git, alebo používať Eclipse Luna,Mars)
  4. Následne je potrebné si naklonovať repozitár z nášho Bitbucketu na váš lokálny disk. Na toto potrebujete prístup do nášho Bitbucketu. Ak ho nemáte ozvite sa nám na tímový mail teambender@gmail.com. Pre klonovanie stlačte vľavo hore ikonku „Clone a Git repository“
  5. Do poľa URI skopírujte nasledovný odkaz na branch nášho projektu (https://bitbucket.org/robocup_tp09/agent/branch), polia Host a Repository path sa vyplnia automaticky. Zadajte ešte do polí User a Password vaše meno a heslo, ktoré používate pri prihlasovaní na účet v Bitbucket-e, v ktorom máte prístup k nášmu projektu a kliknite na tlačidlo Next.
  6. V nasledovnom kroku stlačte tlačidlo Deselect All a následne zaškrtnite iba branch Master a stlačte tlačidlo Next.
  7. Zvoľte si cestu, kam sa vám branch má naklonovať. Stlačte tlačidlo Finish a počkajte kým sa branch naklonuje.
  8. Kliknete pravým tlačidlom na myši na naklonovaný branch vľavo hore a zvolíte Import Projects…
  9. Nechajte zvolené Import Existing Projecťs a stlačte tlačidlo Next.
  10. Mali by ste vidieť tri projekty a to Jim, RoboCupLibrary a TestFramework. Nechajte pri nich políčka zaškrtnuté a stlačte tlačidlo Finish.
  11. Projekty by sa vám mali naimportovať do eclipse. Teraz sa už len vpravo hore prepnite naspäť z Git na Java a mali by ste vidieť naimportované tri projekty.

Importovanie zdrojových kódov

Netbeans

Návod na inštaláciu 3 od seba závislých projektov RoboCupu v 3 priečinkoch (tak ako sme to stiahli z repozitára alebo CD).

Návod je pre Netbeans 7.2:

  1. File → New project → Choose project: Java: Java Project with Existing Sources Name and Location: Project Name napríklad Jim. Name and Location: Project Folder - vybrať priečinok kde sú v repozitári konkrétne zdrojové súbory k projektu. Klikneme Next.
  2. Pridáme zdrojové súbory projektu kliknutím na Source Package Folders: Add Folder a vyberieme src zložku v aktuálnom projekte.
  3. Kliknúť Finish.
  4. Takto vytvoríme všetky 3 projekty.
  5. Potom priradíme Libraries na každý projekt a závisiaci projekt na konkrétnom projekte. Klikneme pravým tlačítkom myši na priečinok Libraries a klikneme na Add JAR/Folder… a vyberieme všetky .jar súboru v projekte v priečinku /lib/. Tak isto pridáme aj kliknutím na Add Project závisiaci projekt. Projekt Jim závisí na projekte RoboCupLibrary a projekt TestFramework závisí na Jim a RoboCupLibrary projektoch.
  6. Ak ste dodržali poradie, malo by všetko fungovať.

Eclipse

Navod na instalaciu 3 od seba zavislych projektov RoboCupu v 3 priecinkoch v Eclipse IDE Juno Service Release 1:

  1. File→New→JavaProject, ale vo workspace-y musíme mať 3 priečinky Jim, RoboCupLibrary, TestFramework ako sme ich stiahli. Nasledujúce kroky vykonáme pre každý priečinok (projekt) zvlášť. Odporúčame začať RoboCupLibrary, potom Jim a nakoniec TestFramework.
  2. Project Name vložíme názov projektu, napr. RoboCupLibrary. Klikneme Next.
  3. Karta Libraries. Uistíme sa, že tam máme všetky knižnice z priečinku libs/ v zdrojovom priečinku projektu (napr. Jim/Libs/).
  4. Karta Projects. Uistíme sa, že tam máme všetky projekty, na ktorých vytváraný projekt závisí (pre Jim tam musí byť projekt RoboCupLibrary, a pre projekt TestFramework Jim a RoboCupLibrary).
  5. Karta Order and Export. Uistíme sa, že všetky checkboxy sú označené.
  6. Klikneme Finish.

Pustenie agenta

Na pustenie agenta je potrebné mať nainstalované simulačné prostredie.

Pustenie agenta z command line

  1. Pustite príkazový riadok a nastavte sa na adresu simulačného servera, do podadresára bin. Cesta môže byť napr.: “C:\Program Files (x86)\rcssserver3d 0.6.5\bin”
  2. Spustenie servera: Z príkazového riadku (konzoly) pustite príkaz: rcssserver3d.cmd
  3. Pustenie monitru: Z príkazového riadku (konzoly) pustite príkaz: rcssmonitor3d.cmd
  4. Pustenie hráča: Z príkazového riadku (konzoly) pustite príkaz: rcssagent3d.cmd

Spustenie agenta z IDE

NetBeans

  1. Importovať zdrojaky Jima a RoboCupLibrary do prostredia
  2. V projekte Jim v súbore script/config/settings.rb nastaviť VERSION_0_6_X na verziu podľa nainštalovaného servera
  3. Nájsť balíček sk.fiit.jim.init
  4. Rozbaliť balíček a nájsť triedu Main.java
  5. Spustiť rcssserver3d a rcssmonitor3d
  6. Spustiť triedu Main.java (kliknut pravym tlacidlom mysi a zvolit moznost run file)
  7. Pri vypísaní chyby java.io.FileNotFoundException: .\fixtures\test_log.txt (Prístup je odmietnutý) postupovať takto:
    1. V projekte Jim nájsť priečinok fixture a všetkým zložkám v ňom vo vlastnostiach odškrtnúť políčko Only read
  8. Po objavení sa agenta v ihrisku stlačiť na klávesnici písmeno B.
  9. Agent začne vykonávať pohyb v závislosti od zvoleného plánovača.

Eclipse

  1. Importovať projekty Jim, RoboCupLibrary, TestFramework
  2. V projekte Jim a v súbore scripts/config/settings.rb v riadku Communication.instance.server_ip potrebujeme zmeniť IP adresu podľa toho, kde beží simulačný server, na ktorý sa ideme pripojiť (napr: Communication.instance.server_ip = “localhost”)
  3. V tom istom súbore settings.rb je potrebné zmeniť VERSION_0_6_X (kde X treba nahradiť v závislosti od toho, na ktorom serveri akej verzie sa vykonávajú simulácie), napr: EnvironmentModel.version = EnvironmentModel::Version::VERSION_0_6_5 Poznámka 15.10.2013: Existujú nové verzie serverov 0.6.6 a 0.6.7. Pre tieto verzie momentálne nie je naplno implementovaná podpora, preto nechajte konštantu nastavenú na verzii VERSION_0_6_5, hoci používate novšiou verziu servera.
  4. Spustiť rcssserver3d a rcssmonitor3d
  5. Spustiť triedu Main.java, ktorá sa nachádza v projekte Jim a v balíčku sk.fiit.jim.init (kliknúť pravým tlačidlom myši a zvoliť možnosť Run As – Java Application)
  6. Po objavení sa agenta v ihrisku stlačiť na klávesnici písmeno b. Agent začne vykonávať pohyb v závislosti od zvoleného plánovača.

Pustenie agenta z TestFrameworku

Púšťanie agentov z Testframeworku je možné z 2. tabu Magane agents. Kde je potrebné zvoliť si tím a pustiť agenta na ihrisko.

Spustenie agenta z Editoru pohybov

Spustenie agenta z editoru pohybov je možné tromi spôsobmi:

DÔLEŽITÉ: Editor pohybov nie je plne kompatibilný s najnovšími verziami Windowsov ani simulačného prostredia a preto spúšťanie hráčov nefunguje spoľahlivo.

Vytvorenie elementov taktiky a pohybovania agentov

Low-skill pohyby

Manuálne vytvorenie pohybovŠtruktúra XML súborov pohybov a manuálne vytvorenie pohybou je opísané na stránke Low_skill Editor pohybov

Samotný produkt (Editor správania) sa spúšťa ako aplikácia pomocou súboru RobotBehaviourEditor.exe. Na spustenie editora je potrebné mať nainštalované prostredie Microsoft .NET Framework 3.5, ktorý obsahuje balík knižníc, ktoré sú potrebné k chodu produktu.

Editor pohybov je dostupný na adrese: http://robocup.psweb.sk/data/agenty-007-editor-pohybov.rar

Prípadne zo stránky A55 Kickers http://team15-12.ucebne.fiit.stuba.sk/sites/default/files//dokumenty/agenty-007-editor-pohybov.rar

Podrobné informácie k editoru pohybov nájdete v dokumentácií tímu Agenty 007: http://labss2.fiit.stuba.sk/TeamProject/2008/team07is-si/prirucka.pdf

High skill

Simulácia low-skill

Pre otestovanie pohybu je potrebne v priečinku ./scripts/plan zmeniť v pláne planZakladny.rb riadok @plan«LowSkill.new(“nazov xml suboru s pohybom”). Následne v spustiť hráča s planom planZakladny. Ako spustiť hráča s požadovaným plánom pozri kapitolu fungovanie v časti Planovac.

Simulácia high-skill

Pre otestovanie pohybu je potrebne v priečinku ./scripts/plan v pláne planZakladny.rb vložiť riadok @plan«MenoHS.new(parametre HS) Následne spustiť hráča s planom planZakladny. Ako spustiť hráča s požadovaným plánom pozri kapitolu fungovanie v časti Planovac.

TestFramework

Test Framework slúži na získanie spätnej väzby od hráča. Hlavným zámerom je zostrojiť robotického futbalového trénera, ktorý by dokázal učiť hráčov novým taktikám a pohybom automaticky.

Vytvorenie testCase

Modelovanie situácie je možné pomocou testcase. Podrobný návod na vytvorenie a pustenie testcase nájdete na Test Case.

Pustenie testCase

V grafickom rozhraní testovacieho frameworku sa ľahko zorientujete podľa GUI: Testovací framework. Je tam aj popis ako spustiť test case. V prípade, že niečo nefunguje skontrolujte či máte build-nutý celý projekt, či daný high skill je v priečinku, v ktorom má byť a či existujú low skill pohyby potrebné na vykonanie high skill pohybu.