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
doc:srdl2_tutorial [2014/11/27 16:44] – [Startup] admindoc:srdl2_tutorial [2014/11/27 17:00] – [Startup] admin
Line 28: Line 28:
 $ rosrun rosprolog rosprolog knowrob_srdl $ rosrun rosprolog rosprolog knowrob_srdl
  
-% Load SRDL model of the PR2 robot+% Load SRDL model of the PR2 and Baxter robots
 ?- owl_parse('package://knowrob_srdl/owl/PR2.owl'). ?- owl_parse('package://knowrob_srdl/owl/PR2.owl').
 +?- owl_parse('package://knowrob_srdl/owl/baxter.owl').
  
 % Load an example task description for serving a drink % Load an example task description for serving a drink
 +?- register_ros_package(knowrob_actions).
 ?- owl_parse('package://knowrob_actions/owl/serve_drink.owl'). ?- owl_parse('package://knowrob_actions/owl/serve_drink.owl').
 </code> </code>
Line 97: Line 99:
  
 Capabilities an action depends on: Capabilities an action depends on:
-  ?- srdl2:required_cap_for_action(tablesetting:'TableSetting', Cap). + 
-  Cap 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#PuttingDownAnObjectCapability' ; +<code prolog> 
-  Cap 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#PickingUpAnObjectCapability' ; +?- required_cap_for_action(serve_drink:'ServeADrink', C). 
-  Cap = 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#BaseMotionCapability' ; +srdl2cap:'BaseMotionCapability' ; 
-  Cap 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#ArmMotionCapability' ; +srdl2cap:'ArmMotionCapability' ; 
-  ...+srdl2cap:'GraspingCapability' ; 
 +srdl2cap:'GripperMotionCapability' 
 +[...
 +</code> 
 Components an action depends on (either directly or via required capabilities that depend on these components) Components an action depends on (either directly or via required capabilities that depend on these components)
-  ?- srdl2:required_comp_for_action(tablesetting:'TableSetting', Comp). +<code prolog> 
-  Comp = 'http://ias.cs.tum.edu/kb/srdl2-comp.owl#MobileBase'+?- required_comp_for_action(serve_drink:'ServeADrink', C). 
-  Comp = 'http://ias.cs.tum.edu/kb/srdl2-comp.owl#ArmMotionController'+srdl2comp:'MobileBase'
-  Comp = 'http://ias.cs.tum.edu/kb/srdl2-comp.owl#ArmComponent'+srdl2comp:'ArmMotionController'
-  ...+srdl2comp:'ArmComponent'
 +C = srdl2comp:'ManipulationEntity' 
 +[...
 +</code>
  
 ===== Missing components or capabilities ===== ===== Missing components or capabilities =====
  
-  ?- missing_cap_for_action(tablesetting:'TableSetting', tumrosie:'TUM_Rosie1', Cap). +<code prolog> 
-  Cap = 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#PuttingDownAnObjectCapability'+% No components nor capabilities are missing for the ServeADrink action on the PR2
-  Cap = 'http://ias.cs.tum.edu/kb/srdl2-cap.owl#PickingUpAnObjectCapability'+?- missing_comp_for_action(serve_drink:'ServeADrink', pr2:'PR2Robot1', C). 
- +false.
-  ?- missing_comp_for_action(tablesetting:'TableSetting', tumrosie:'TUM_Rosie1', Comp). +
-  false.+
  
 +?- missing_cap_for_action(serve_drink:'ServeADrink', pr2:'PR2Robot1', C).
 +false.
  
 +% The Baxter robot, in contrast, cannot perform the task due to lacking navigation abilities:
 +?- missing_cap_for_action(serve_drink:'ServeADrink', baxter:baxter_baxter1, C).
 +C = srdl2cap:'BaseMotionCapability'
 +</code>
 ===== Matching requirements to capabilities ===== ===== Matching requirements to capabilities =====