User talk:S152751: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Franka Emika Panda setup =  
= Franka Emika Panda setup =  
This page contains information regarding the Franka Emika "Panda" robotic system at Eindhoven University of Technologies.  
This page contains information regarding the Franka Emika "Panda" robotic system at Eindhoven University of Technologies.  
The page stages the hardware information, (to be) installed software and their respective installation manuals. (last updated 14-8-2020)
The page stages the hardware information, (to be) installed software and their respective installation manuals. (last updated 14-8-2020). Author: Remco van Doorn. Supervisor: Alessandro Saccon.


== System hardware ==
== System hardware ==
Line 18: Line 18:
*(ToBeInstalled) torque_qp
*(ToBeInstalled) torque_qp
*VSCode
*VSCode
*Others
*Others: CMAKE, catkin, gcc, clang, curl, git
CMAKE, catkin, gcc, clang, curl, git


== Install manuals ==
== Install manuals ==
Line 29: Line 28:
Installation of ORCA and dependencies: [https://orca-controller.readthedocs.io/en/master/getting_started/install.html]
Installation of ORCA and dependencies: [https://orca-controller.readthedocs.io/en/master/getting_started/install.html]
Note, installation of ORCA will also install iDynTree, qpOASES and Eigen3. Alternatively one could install the dependencies manually.  
Note, installation of ORCA will also install iDynTree, qpOASES and Eigen3. Alternatively one could install the dependencies manually.  
*git clone https://github.com/syroco/orca
*<code>git clone https://github.com/syroco/orca</code>
*cd orca
*<code>cd orca</code>
*mkdir build ; cd build
*<code>mkdir build ; cd build</code>
*cmake .. -DCMAKE_BUILD_TYPE=Release
*<code>cmake .. -DCMAKE_BUILD_TYPE=Release</code>
*cmake --build .
*<code>cmake --build .</code>
*sudo cmake --build . --target install
*<code>sudo cmake --build . --target install</code>
Depending on the installation, libaries and header files in subdirectories named with a version number may not be found. Symbolic links may be required for the package to work:
Depending on the installation, libaries and header files in subdirectories named with a version number may not be found. Symbolic links may be required for the package to work:
*sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen
*<code>sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen</code>
*sudo ln -s /usr/include/eigen3/unsupported /usr/include/unsupported
*<code>sudo ln -s /usr/include/eigen3/unsupported /usr/include/unsupported</code>
*sudo ln -s /usr/include/gazebo-9/gazebo /usr/include/gazebo
*<code>sudo ln -s /usr/include/gazebo-9/gazebo /usr/include/gazebo</code>
*sudo ln -s /usr/include/sdformat-6.0/sdf /usr/include/sdf
*<code>sudo ln -s /usr/include/sdformat-6.0/sdf /usr/include/sdf</code>
*sudo ln -s /usr/include/ignition/common1/ignition/common /usr/include/ignition/common
*<code>sudo ln -s /usr/include/ignition/common1/ignition/common /usr/include/ignition/common</code>
*sudo ln -s /usr/include/ignition/common1/ignition/common.hh /usr/include/ignition/common.hh
*<code>sudo ln -s /usr/include/ignition/common1/ignition/common.hh /usr/include/ignition/common.hh</code>
*sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools /usr/include/ignition/fuel_tools
*<code>sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools /usr/include/ignition/fuel_tools</code>
*sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools.hh /usr/include/ignition/fuel_tools.hh
*<code>sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools.hh /usr/include/ignition/fuel_tools.hh</code>
*sudo ln -s /usr/include/ignition/math4/ignition/math /usr/include/ignition/math
*<code>sudo ln -s /usr/include/ignition/math4/ignition/math /usr/include/ignition/math</code>
*sudo ln -s /usr/include/ignition/math4/ignition/math.hh /usr/include/ignition/math.hh
*<code>sudo ln -s /usr/include/ignition/math4/ignition/math.hh /usr/include/ignition/math.hh</code>
*sudo ln -s /usr/include/ignition/msgs1/ignition/msgs /usr/include/ignition/msgs
*<code>sudo ln -s /usr/include/ignition/msgs1/ignition/msgs /usr/include/ignition/msgs</code>
*sudo ln -s /usr/include/ignition/msgs1/ignition/msgs.hh /usr/include/ignition/msgs.hh
*<code>sudo ln -s /usr/include/ignition/msgs1/ignition/msgs.hh /usr/include/ignition/msgs.hh</code>
*sudo ln -s /usr/include/ignition/transport4/ignition/transport /usr/include/ignition/transport
*<code>sudo ln -s /usr/include/ignition/transport4/ignition/transport /usr/include/ignition/transport</code>
*sudo ln -s /usr/include/ignition/transport4/ignition/transport.hh /usr/include/ignition/transport.hh
*<code>sudo ln -s /usr/include/ignition/transport4/ignition/transport.hh /usr/include/ignition/transport.hh</code>


=== Libfranka / Franka-ros ===
=== Libfranka / Franka-ros ===
Line 57: Line 56:
Wiki page [https://gitlab.inria.fr/auctus/panda/torque_qp/-/wikis/Installation]
Wiki page [https://gitlab.inria.fr/auctus/panda/torque_qp/-/wikis/Installation]
Package is in development, contact Lucas <lucas.joseph@inria.fr> for latest updates.
Package is in development, contact Lucas <lucas.joseph@inria.fr> for latest updates.
===Quick install====
===Quick install===
wget https://gitlab.inria.fr/auctus/panda/torque_qp/-/raw/master/torque_qp_install.sh
<code>wget https://gitlab.inria.fr/auctus/panda/torque_qp/-/raw/master/torque_qp_install.sh</code>
chmod +x torque_qp_install.sh
 
./torque_qp_install.sh
<code>chmod +x torque_qp_install.sh</code>
 
<code>./torque_qp_install.sh</code>
 


====Detailed install====
====Detailed install====
*necessary packages
*necessary packages
sudo apt install python-rosdep python-catkin-tools python-wstool python-vcstool build-essential cmake git libpoco-dev libeigen3-dev ros-melodic-combined-robot-h
<code>sudo apt install python-rosdep python-catkin-tools python-wstool python-vcstool build-essential cmake git libpoco-dev libeigen3-dev ros-melodic-combined-robot-h</code>
 
*libfranka
*libfranka
mkdir -p ~/franka_ros_ws
 
git clone --recursive https://github.com/frankaemika/libfranka ~/franka_ros_ws/libfranka
<code>mkdir -p ~/franka_ros_ws</code>
cd ~/franka_ros_ws/libfranka
 
git checkout 0.7.1
<code>git clone --recursive https://github.com/frankaemika/libfranka ~/franka_ros_ws/libfranka</code>
git submodule update
 
mkdir build; cd build
<code>cd ~/franka_ros_ws/libfranka</code>
cmake -DCMAKE_BUILD_TYPE=Release ..
 
cmake --build .
<code>git checkout 0.7.1</code>
 
<code>git submodule update</code>
 
<code>mkdir build; cd build</code>
 
<code>cmake -DCMAKE_BUILD_TYPE=Release ..</code>
 
<code>cmake --build .</code>
 
*franka_ros
*franka_ros
cd ~/franka_ros_ws
 
git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros
<code>cd ~/franka_ros_ws</code>
cd src/franka_ros
 
git checkout melodic-devel
<code>git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros</code>
cd ~/franka_ros_ws
 
catkin config --init --extend /opt/ros/melodic --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build
<code>cd src/franka_ros</code>
catkin build
 
source ~/franka_ros_ws/devel/setup.bas
<code>git checkout melodic-devel</code>
 
<code>cd ~/franka_ros_ws</code>
 
<code>catkin config --init --extend /opt/ros/melodic --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build</code>
 
<code>catkin build</code>
 
<code>source ~/franka_ros_ws/devel/setup.bas</code>
 
*torque_qp
*torque_qp
**configure a catkin workspace that extends the franka_ros_ws
**configure a catkin workspace that extends the franka_ros_ws
Configure a catkin workspace that extends the franka_ros_ws.
 
mkdir -p ~/auctus_ws/src
<code>mkdir -p ~/auctus_ws/src</code>
cd ~/auctus_ws
 
catkin config --init --extend ~/franka_ros_ws/devel --cmake-args -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build -DCMAKE_CXX_FLAGS=-std=c++11
<code>cd ~/auctus_ws</code>
 
<code>catkin config --init --extend ~/franka_ros_ws/devel --cmake-args -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build -DCMAKE_CXX_FLAGS=-std=c++11</code>
 
**install torque_qp
**install torque_qp
cd ~/auctus_ws/src
 
git clone https://gitlab.inria.fr/auctus/panda/torque_qp.git
<code>cd ~/auctus_ws/src</code>
wstool init  
 
wstool merge torque_qp/torque_qp.rosinstall
<code>git clone https://gitlab.inria.fr/auctus/panda/torque_qp.git</code>
wstool update
 
cd ..
<code>wstool init </code>
rosdep install --from-paths src --ignore-src -r -y
 
catkin build
<code>wstool merge torque_qp/torque_qp.rosinstall</code>
 
<code>wstool update</code>
 
<code>cd ..</code>
 
<code>rosdep install --from-paths src --ignore-src -r -y</code>
 
<code>catkin build</code>
 
*change envirionment variables
*change envirionment variables
**Add in your bashrc source ~/catkin_ws/devel/setup.bash
 
**Add in your bashrc export GAZEBO_RESOURCE_PATH=/usr/share/gazebo-9:~/auctus_ws/src/franka_description/worlds and export GAZEBO_MODEL_PATH=~/auctus_ws/src/franka_description/robots
**Add in your bashrc <code>source ~/catkin_ws/devel/setup.bash</code>
**If its the first you install gazebo launch it: gazebo. Wait for it to launch then close it.
 
**Add in your bashrc <code>export GAZEBO_RESOURCE_PATH=/usr/share/gazebo-9:~/auctus_ws/src/franka_description/worlds and export GAZEBO_MODEL_PATH=~/auctus_ws/src/franka_description/robots</code>
 
**If its the first you install gazebo launch it: <code>gazebo</code>. Wait for it to launch then close it.


=== VSCode extensions ===
=== VSCode extensions ===
Line 136: Line 173:


== Notes ==
== Notes ==
*check and fix package installations:
*check and fix package installations: <code>sudo apt --fix-broken install</code>
sudo apt --fix-broken install
*check if urdf works:  <code>check_urdf /path/to/file.urdf</code>
*check if urdf works check_urdf /path/to/file.urdf
*use static transform publisher and different namespaces to have multiple robots in one envirionment visualized in rviz.
*use static transform publisher and different namespaces to have multiple robots in one envirionment visualized in rviz.

Latest revision as of 13:11, 14 August 2020

Franka Emika Panda setup

This page contains information regarding the Franka Emika "Panda" robotic system at Eindhoven University of Technologies. The page stages the hardware information, (to be) installed software and their respective installation manuals. (last updated 14-8-2020). Author: Remco van Doorn. Supervisor: Alessandro Saccon.

System hardware

  • Panda robot, serial: 289830-1326311
  • Panda control box, FCI installed
  • Tower PC, dual boot windows 10 - ubuntu 18.04 LTS. Detailed hardware info to be added


Installed software

  • Microsoft Windows 10
  • Ubuntu 18.04 LTS, realtime kernel: "5.0.21-rt16.signed" During boot, choose 'advanced ubuntu options' and select kernel
  • ROS Melodic desktop full
  • ORCA Optimization-based framework for Robotic Control Applications
  • Franka-ros
  • libfranka
  • (ToBeInstalled) torque_qp
  • VSCode
  • Others: CMAKE, catkin, gcc, clang, curl, git

Install manuals

Ubuntu real time kernel

Setting up the realtime kernel: [1] If error regarding signature of kernel is thrown, use these extra steps to create a signed kernel: [2] + disable secure boot in BIOS

ORCA

Installation of ORCA and dependencies: [3] Note, installation of ORCA will also install iDynTree, qpOASES and Eigen3. Alternatively one could install the dependencies manually.

  • git clone https://github.com/syroco/orca
  • cd orca
  • mkdir build ; cd build
  • cmake .. -DCMAKE_BUILD_TYPE=Release
  • cmake --build .
  • sudo cmake --build . --target install

Depending on the installation, libaries and header files in subdirectories named with a version number may not be found. Symbolic links may be required for the package to work:

  • sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen
  • sudo ln -s /usr/include/eigen3/unsupported /usr/include/unsupported
  • sudo ln -s /usr/include/gazebo-9/gazebo /usr/include/gazebo
  • sudo ln -s /usr/include/sdformat-6.0/sdf /usr/include/sdf
  • sudo ln -s /usr/include/ignition/common1/ignition/common /usr/include/ignition/common
  • sudo ln -s /usr/include/ignition/common1/ignition/common.hh /usr/include/ignition/common.hh
  • sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools /usr/include/ignition/fuel_tools
  • sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools.hh /usr/include/ignition/fuel_tools.hh
  • sudo ln -s /usr/include/ignition/math4/ignition/math /usr/include/ignition/math
  • sudo ln -s /usr/include/ignition/math4/ignition/math.hh /usr/include/ignition/math.hh
  • sudo ln -s /usr/include/ignition/msgs1/ignition/msgs /usr/include/ignition/msgs
  • sudo ln -s /usr/include/ignition/msgs1/ignition/msgs.hh /usr/include/ignition/msgs.hh
  • sudo ln -s /usr/include/ignition/transport4/ignition/transport /usr/include/ignition/transport
  • sudo ln -s /usr/include/ignition/transport4/ignition/transport.hh /usr/include/ignition/transport.hh

Libfranka / Franka-ros

https://frankaemika.github.io/docs/installation_linux.html#

torque_qp

Wiki page [4] Package is in development, contact Lucas <lucas.joseph@inria.fr> for latest updates.

Quick install

wget https://gitlab.inria.fr/auctus/panda/torque_qp/-/raw/master/torque_qp_install.sh

chmod +x torque_qp_install.sh

./torque_qp_install.sh


Detailed install

  • necessary packages

sudo apt install python-rosdep python-catkin-tools python-wstool python-vcstool build-essential cmake git libpoco-dev libeigen3-dev ros-melodic-combined-robot-h

  • libfranka

mkdir -p ~/franka_ros_ws

git clone --recursive https://github.com/frankaemika/libfranka ~/franka_ros_ws/libfranka

cd ~/franka_ros_ws/libfranka

git checkout 0.7.1

git submodule update

mkdir build; cd build

cmake -DCMAKE_BUILD_TYPE=Release ..

cmake --build .

  • franka_ros

cd ~/franka_ros_ws

git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros

cd src/franka_ros

git checkout melodic-devel

cd ~/franka_ros_ws

catkin config --init --extend /opt/ros/melodic --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build

catkin build

source ~/franka_ros_ws/devel/setup.bas

  • torque_qp
    • configure a catkin workspace that extends the franka_ros_ws

mkdir -p ~/auctus_ws/src

cd ~/auctus_ws

catkin config --init --extend ~/franka_ros_ws/devel --cmake-args -DCMAKE_BUILD_TYPE=Release -DFranka_DIR:PATH=~/franka_ros_ws/libfranka/build -DCMAKE_CXX_FLAGS=-std=c++11

    • install torque_qp

cd ~/auctus_ws/src

git clone https://gitlab.inria.fr/auctus/panda/torque_qp.git

wstool init

wstool merge torque_qp/torque_qp.rosinstall

wstool update

cd ..

rosdep install --from-paths src --ignore-src -r -y

catkin build

  • change envirionment variables
    • Add in your bashrc source ~/catkin_ws/devel/setup.bash
    • Add in your bashrc export GAZEBO_RESOURCE_PATH=/usr/share/gazebo-9:~/auctus_ws/src/franka_description/worlds and export GAZEBO_MODEL_PATH=~/auctus_ws/src/franka_description/robots
    • If its the first you install gazebo launch it: gazebo. Wait for it to launch then close it.

VSCode extensions

  • C/C++ for Visual Studio Code
  • C++ Intellisense
  • C/C++ Clang Command Adapter
  • CMake
  • CMake Tools

others

  • CMAKE. Installed via ubuntu software. Version > 3.1
  • Install catkin (-y checks for dependencies)
    • sudo sudo apt-get update -y
    • sudo apt-get install -y catkin
  • Install gcc Version > 4.8
    • sudo apt-get update
    • sudo apt-get install gcc
  • Install clang Version >3.8
    • sudo apt-get update
    • sudo apt-get install clang
  • Install curl
    • sudo apt-get update
    • sudo apt-get install curl
  • Install git
    • sudo apt-get update
    • sudo apt-get install git

ROS Melodic

Install ros-melodic-desctop-full [5]. Note: after install, rosdep might have to be installed manually (between step 1.4-1.5): sudo apt install python-rosdep2

Gazebo

Gazebo-ros installed with ros melodic, thus manual install currently not needed. Manual install can be done via: curl -ssL http://get.gazebosim.org | sh


Notes

  • check and fix package installations: sudo apt --fix-broken install
  • check if urdf works: check_urdf /path/to/file.urdf
  • use static transform publisher and different namespaces to have multiple robots in one envirionment visualized in rviz.