Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
tutorials:advanced:unreal [2020/01/13 14:13] – [Importing new episode data into MongoDB and KnowRob(Additional information)] hawkintutorials:advanced:unreal [2020/01/13 14:18] – [Prerequisites] adding new Chapter which explains the core Idea better hawkin
Line 5: Line 5:
 This tutorial will introduce you to the ''cram_knowrob_vr (short: kvr)'' package, which uses the data recorded in the Virtual Reality environment using [[http://robcog.org/|RobCog]], extracts information from them using [[http://www.knowrob.org/|KnowRob]] and executes the CRAM high-level-plans based on this data either on the real robot or in the CRAM [[tutorials:advanced:bullet_world|bullet world]]. This tutorial will introduce you to the ''cram_knowrob_vr (short: kvr)'' package, which uses the data recorded in the Virtual Reality environment using [[http://robcog.org/|RobCog]], extracts information from them using [[http://www.knowrob.org/|KnowRob]] and executes the CRAM high-level-plans based on this data either on the real robot or in the CRAM [[tutorials:advanced:bullet_world|bullet world]].
  
 +==== Idea ====
 ==== Prerequisites ==== ==== Prerequisites ====
 This tutorial assumes that you've completed the [[tutorials:intermediate:json_prolog|Using JSON Prolog to communicate with KnowRob]] tutorial and therefore have ROS, CRAM, KnowRob and MongoDB installed. In order to be able to use the kvr package, a few specific changes have to be made. Within the ''knowrob_addons'' the ''knowrob_robcog'' package has to be replaced by this one [[https://github.com/robcog-iai/knowrob_robcog.git This tutorial assumes that you've completed the [[tutorials:intermediate:json_prolog|Using JSON Prolog to communicate with KnowRob]] tutorial and therefore have ROS, CRAM, KnowRob and MongoDB installed. In order to be able to use the kvr package, a few specific changes have to be made. Within the ''knowrob_addons'' the ''knowrob_robcog'' package has to be replaced by this one [[https://github.com/robcog-iai/knowrob_robcog.git
Line 137: Line 138:
  
 === Performance === === Performance ===
 +This step is also covered by the [[https://github.com/hawkina/useful_scripts | scripts]] mentioned above, but can also be executed manually. 
 +
 Depending on how many collections your database has, it can get slow when quering for information. One way to make it faster, is to include an index over timestamp for all collections. One way to add this, is to install [[https://www.mongodb.com/products/compass|compass]] for mongodb. Launch it, and connect it to your database. The defautl settings should be fine so just click ''ok'' when it launches. Then go to your collection -> indexes -> create index. Call the new index ''timestamp'', select the field ''timestamp'' and set the type to ''1 (asc)'', click create. Repeat for all the collections. It will improve the query speed greatly. Depending on how many collections your database has, it can get slow when quering for information. One way to make it faster, is to include an index over timestamp for all collections. One way to add this, is to install [[https://www.mongodb.com/products/compass|compass]] for mongodb. Launch it, and connect it to your database. The defautl settings should be fine so just click ''ok'' when it launches. Then go to your collection -> indexes -> create index. Call the new index ''timestamp'', select the field ''timestamp'' and set the type to ''1 (asc)'', click create. Repeat for all the collections. It will improve the query speed greatly.