Uživatelské nástroje

Nástroje pro tento web


cs:robozor:arom_webui

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
cs:robozor:arom_webui [2018/04/21 11:52]
cs:robozor:arom_webui [2018/04/21 11:52]
roman [Instalace]
Řádek 1: Řádek 1:
 +====== AROM, webUI ======
 +
 +AROM webUI je grafické rozhraní pro ovládání systémů postavených na ROS a [[cs:​robozor:​arom|AROM]]. Program využívá webový framework python-tornado.
 +
 +
 +{{youtube>​ETYMBkyXK5w?​medium}}
 +
 +Pro komunikaci s ROS nody jsou využity websokety a rosbridge server.
 +
 +=====Instalace=====
 +Instalace závislostí:​
 +  sudo apt install python-tornado python-psutil python-bson ros-kinetic-rosauth python-twisted
 +funkční [[cs:​ros|ROS]]
 +
 +
 +Stažení AROM_webUI z GitHub repozitáře:​
 +  mkdir ~/repos
 +  cd repos
 +  git clone git@github.com:​Robozor-network/​arom-web_ui.git
 +
 +Protože webové rozhraní obsahuje různé knihovny třetích stran, získáte je stažením git submodulů
 +  cd ~/​repos/​arom-web_ui
 +  git submodule init
 +  git submodule update
 +  ​
 +
 +<WRAP center round important 85%>
 +Rosbridge z oficiálního repozitáře obsahuje chybu, která se projevuje výrazným zpomalením přenosu zpráv. Tato chyba je opravena v jeho [[https://​github.com/​roman-dvorak/​rosbridge_suite.git|forku]].
 +</​WRAP>​
 +
 +Instalace RosBRIDGE s opravenou chybou:
 +  cd ~/​arom_ws/​src
 +  git clone git@github.com:​roman-dvorak/​rosbridge_suite.git
 +  cd ~/arom_ws
 +  catkin_make
 +
 +Webové rozhraní umožňuje zapínat a ukončovat nody. Pro správné fungování je potřeba nastavit globální zavádění cest projektu do terminálu
 +
 +Na konec souboru ''/​etc/​bash.bashrc''​ a ''​~/​.bashrc''​ je potřeba přidat a zrestartovat terminál (spustit nový)
 +
 +  . /​home/​odroid/​arom_ws/​devel/​setup.sh
 +
 +
 +Pro plné fungování celého rozhraní na jednom portu (80) je vhodné rozfungovat a nakonfigurovat [[cs:​robozor:​nginx|NGINX]] reverzní proxy server.
 +
 +Dále je potřeba mít připravený soubor ''​~/​robozor/​users.json'',​ ve kterém jsou uloženy uživatelské účty. Pro začátek vytvořte soubor s následujícím obsahem
 +
 +  {
 + "​guest":​{
 + "​login":​ "​guest",​
 + "​name":​ "​Guest",​
 + "​pass":​ "​084e0343a0486ff05530df6c705c8bb4",​
 + "​level":​ 0
 + },
 + "​admin":​{
 + "​login":​ "​admin",​
 + "​name":​ "Admin Admin",​
 + "​pass":​ "​21232f297a57a5a743894a0e4a801fc3",​
 + "​level":​ 10
 + }
 +  }
 +
 +Heslo je s výchozím nastavení zahashováno pomocí MD5.
 +===== Spuštění =====
 +Webový server se spustí skriptiem ''​web.py'',​ který je umístěn v ''​~/​repos/​arom-web_ui/​src/​aromweb''​. Výchozí port je 8888 a je ho možné upravit při spouštění parametrem ''​-p=8888''​. Před spuštěním samotného webového serveru je vhodné mít spuštěný ''​roscore''​ a rosbridge z upraveného repozitáře ​
 +
 +V jednom terminálu spusťte:
 +  roslaunch rosbridge_server rosbridge_websocket.launch
 +
 +a v dalším:
 +  cd ~/​repos/​arom-web_ui/​src/​aromweb
 +  python web.py
 +
 +Nyní by na portu 8888 mělo být vidět webové rozhraní AROMu. V případě rozfungovaného [[cs:​robozor:​nginx|NGINX]] serveru je to na portu 80.
 +
 +
 +===== Webové rozhraní pro nod =====
 +
 +Každý nod si může do "​rosparam"​ zaregistrovat svou "​feature",​ což je webový widget. Těchto widgetů může mít jeden nod více a je jsou na nodu nezávislé. Proto je možné jeden widget použít pro více různých nodů.
  
cs/robozor/arom_webui.txt · Poslední úprava: 2018/04/21 11:52 (upraveno mimo DokuWiki)