Ambiente di compilazione

confrontare con ros catkin

Albero delle cartelle

workspace_folder/        -- WORKSPACE
  src/                   -- SOURCE SPACE
    CMakeLists.txt       -- 'Toplevel' CMake file, provided by catkin
    package_1/
      CMakeLists.txt     -- CMakeLists.txt file for package_1
      package.xml        -- Package manifest for package_1
    ...
    package_n/
      CMakeLists.txt     -- CMakeLists.txt file for package_n
      package.xml        -- Package manifest for package_n

Cartella workspace: “prova”

mkdir ~/prova
mkdir ~/prova/src
source /opt/ros/indigo/setup.bash

Inizializzazione

cd ~/prova/src
catkin_init_workspace
catkin_create_pkg husky_driver roscpp std_msgs

Salvare il sorgente driver.cpp in ./src/husky_driver

ros esempio nodo cpp che riceve da joy e trasmette ad husky

Modificare ros CMakeLists.txt in ./src/husky_driver

add_executable(driver driver.cpp)
target_link_libraries(driver ${catkin_LIBRARIES})

compilare

cd ~/prova
catkin_make
source ~/prova/devel/setup.bash

Il codice nella cartella src sarà compilato nella cartella build, mentre le librerie saranno poste nella cartella devel… (spostare qualcosa?)

roslaunch husky_gazebo husky_empty_world.launch
rosrun husky_driver driver

Codice

ros esempio nodo cpp