Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision |
doc:web_visualization:architecture [2014/11/28 16:57] – created admin | doc:web_visualization:architecture [2014/12/07 07:17] (current) – admin |
---|
====== System architecture ====== | ====== System architecture ====== |
| |
| \\ |
| ^ This page describes the 'catkinized' version of KnowRob that uses the [[http://wiki.ros.org/catkin/|catkin buildsystem]] and the pure Java-based [[http://wiki.ros.org/rosjava|rosjava]]. The older version, which was based on the rosbuild buildsystem and rosjava_jni, used a [[http://wiki.ros.org/mod_vis|local visualization canvas implemented in Java]].^ |
| \\ |
| |
| KnowRob communicates with the browser-based visualizations via ROS topics (e.g. for the //visualization_marker// messages) and the //json_prolog// ROS service. The //rosbridge// node forwards messages from the ROS environment via a WebSocket to the user's browser and thus translates between the "ROS world" and the "Web world". |
| |
{{ :doc:web-visualization-architecture.png?nolink |}} | {{ :doc:web-visualization-architecture.png?nolink |}} |
| |
**Note:** Though the visualization appears to be a standard web page, it's more similar to a web-based rviz. This means that there is still a single ROS graph and a single KnowRob instance in the background that is shared among all website visitors. | Although the visualization appears to be a standard web page, it's important to keep in mind that it is indeed more similar to a web-based rviz. This means that there is only a single ROS graph and a single KnowRob instance in the background that is shared among all website visitors. If this creates a problem for your use case, you may consider setting up the KnowRob/Docker modules described [[/doc/docker|here]] that allow the creation of one KnowRob instance per website user. |
| |
| |
| |