Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tutorials:advanced:bullet_world_robot [2015/09/17 15:11] – [Robot URDF description] gkazhoya | tutorials:advanced:bullet_world_robot [2015/09/17 15:54] (current) – [Boxy Prolog description] gkazhoya | ||
---|---|---|---|
Line 64: | Line 64: | ||
===== Directory / file setup ===== | ===== Directory / file setup ===== | ||
- | Now let's setup a directory structure for our own packages: a directory (repo) and the metapackage inside: in the '' | + | Now let's setup a directory structure for our own packages: a directory (repo) and the metapackage inside: in the '' |
<code bash> | <code bash> | ||
- | mkdir cram_boxy | + | mkdir cram_quadrotor |
- | catkin_create_pkg | + | catkin_create_pkg |
</ | </ | ||
Line 75: | Line 75: | ||
<code cmake> | <code cmake> | ||
cmake_minimum_required(VERSION 2.8.3) | cmake_minimum_required(VERSION 2.8.3) | ||
- | project(cram_boxy) | + | project(cram_quadrotor) |
find_package(catkin REQUIRED) | find_package(catkin REQUIRED) | ||
catkin_metapackage() | catkin_metapackage() | ||
</ | </ | ||
- | The first ROS package we will create will be the Prolog description of our robot. We will call it '' | + | The first ROS package we will create will be the Prolog description of our robot. We will call it '' |
- | Go back to the root of your '' | + | Go back to the root of your '' |
<code bash> | <code bash> | ||
cd .. | cd .. | ||
- | catkin_create_pkg | + | catkin_create_pkg |
</ | </ | ||
- | Now let's create the corresponding ASDF file called '' | + | Now let's create the corresponding ASDF file called '' |
<code lisp> | <code lisp> | ||
;;; You might want to add a license header first | ;;; You might want to add a license header first | ||
- | (defsystem cram-boxy-knowledge | + | (defsystem cram-quadrotor-knowledge |
:author "Your Name" | :author "Your Name" | ||
:license " | :license " | ||
Line 102: | Line 102: | ||
:components | :components | ||
((:file " | ((:file " | ||
- | | + | |
</ | </ | ||
- | Now create the corresponding '' | + | Now create the corresponding '' |
<code lisp> | <code lisp> | ||
Line 112: | Line 112: | ||
(in-package :cl-user) | (in-package :cl-user) | ||
- | (defpackage cram-boxy-knowledge | + | (defpackage cram-quadrotor-knowledge |
(:use #: | (:use #: | ||
#: | #: | ||
Line 118: | Line 118: | ||
</ | </ | ||
- | Also, an empty '' | + | Also, an empty '' |
- | Now, let's compile our new packages and load them through the REPL: | + | Now, let's compile our new packages |
<code lisp> | <code lisp> | ||
CL-USER> , | CL-USER> , | ||
ros-load-system | ros-load-system | ||
- | cram_boxy_knowledge | + | cram_quadrotor_knowledge |
- | cram-boxy-knowledge | + | cram-quadrotor-knowledge |
</ | </ | ||
Line 134: | Line 134: | ||
Now, let's describe our robot in Prolog, such that we could do some reasoning with it. | Now, let's describe our robot in Prolog, such that we could do some reasoning with it. | ||
- | We fill in the file '' | + | We fill in the file '' |
As can be seen from the TF tree, our robot has 3 camera frames, 1 depth and 1 RGB frame from a Kinect camera, and an RGB frame from a Kinect2 camera. | As can be seen from the TF tree, our robot has 3 camera frames, 1 depth and 1 RGB frame from a Kinect camera, and an RGB frame from a Kinect2 camera. |