User talk:S152751: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Franka Emika Panda setup =  
= Franka Emika Panda setup =  
This page contains an overview of the steps taken in installing and configuring the franka emika panda robot.
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.


The Franka Emika Panda robot will be referred to as 'Panda'
== 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


Page is under construction.
== Installed system hardware ==
*Panda robot, serial: 289830-1326311
*Panda control box
*PC info to be added


== Installing from scratch ==
== Installed software ==
*Install ubuntu. Version used: 18.04 LTS
*Microsoft Windows 10
*Update ubuntu
*Ubuntu 18.04 LTS, realtime kernel: "5.0.21-rt16.signed" During boot, choose 'advanced ubuntu options' and select kernel
*Install VisualStudio Code (via ubuntu software)
*ROS Melodic desktop full
*Setup exstensions for VSCode
*ORCA  Optimization-based framework for Robotic Control Applications
**C/C++ for Visual Studio Code
*Franka-ros
**C++ Intellisense
*libfranka
**C/C++ Clang Command Adapter
*(ToBeInstalled) torque_qp
**CMake
*VSCode
**CMake Tools
*Others: CMAKE, catkin, gcc, clang, curl, git
*Install CMAKE (via ubuntu software. Version >3.1)
 
== Install manuals ==
=== Ubuntu real time kernel ===
Setting up the realtime kernel: [https://frankaemika.github.io/docs/installation_linux.html#setting-up-the-real-time-kernel]
If error regarding signature of kernel is thrown, use these extra steps to create a signed kernel: [https://askubuntu.com/a/1182830] + disable secure boot in BIOS
 
=== ORCA ===
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.
*<code>git clone https://github.com/syroco/orca</code>
*<code>cd orca</code>
*<code>mkdir build ; cd build</code>
*<code>cmake .. -DCMAKE_BUILD_TYPE=Release</code>
*<code>cmake --build .</code>
*<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:
*<code>sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen</code>
*<code>sudo ln -s /usr/include/eigen3/unsupported /usr/include/unsupported</code>
*<code>sudo ln -s /usr/include/gazebo-9/gazebo /usr/include/gazebo</code>
*<code>sudo ln -s /usr/include/sdformat-6.0/sdf /usr/include/sdf</code>
*<code>sudo ln -s /usr/include/ignition/common1/ignition/common /usr/include/ignition/common</code>
*<code>sudo ln -s /usr/include/ignition/common1/ignition/common.hh /usr/include/ignition/common.hh</code>
*<code>sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools /usr/include/ignition/fuel_tools</code>
*<code>sudo ln -s /usr/include/ignition/fuel_tools1/ignition/fuel_tools.hh /usr/include/ignition/fuel_tools.hh</code>
*<code>sudo ln -s /usr/include/ignition/math4/ignition/math /usr/include/ignition/math</code>
*<code>sudo ln -s /usr/include/ignition/math4/ignition/math.hh /usr/include/ignition/math.hh</code>
*<code>sudo ln -s /usr/include/ignition/msgs1/ignition/msgs /usr/include/ignition/msgs</code>
*<code>sudo ln -s /usr/include/ignition/msgs1/ignition/msgs.hh /usr/include/ignition/msgs.hh</code>
*<code>sudo ln -s /usr/include/ignition/transport4/ignition/transport /usr/include/ignition/transport</code>
*<code>sudo ln -s /usr/include/ignition/transport4/ignition/transport.hh /usr/include/ignition/transport.hh</code>
 
=== Libfranka / Franka-ros ===
https://frankaemika.github.io/docs/installation_linux.html#
 
=== torque_qp ===
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.
===Quick install===
<code>wget https://gitlab.inria.fr/auctus/panda/torque_qp/-/raw/master/torque_qp_install.sh</code>
 
<code>chmod +x torque_qp_install.sh</code>
 
<code>./torque_qp_install.sh</code>
 
 
====Detailed install====
*necessary packages
<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
 
<code>mkdir -p ~/franka_ros_ws</code>
 
<code>git clone --recursive https://github.com/frankaemika/libfranka ~/franka_ros_ws/libfranka</code>
 
<code>cd ~/franka_ros_ws/libfranka</code>
 
<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
 
<code>cd ~/franka_ros_ws</code>
 
<code>git clone --recursive https://github.com/frankaemika/franka_ros src/franka_ros</code>
 
<code>cd src/franka_ros</code>
 
<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
 
**configure a catkin workspace that extends the franka_ros_ws
 
<code>mkdir -p ~/auctus_ws/src</code>
 
<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
 
<code>cd ~/auctus_ws/src</code>
 
<code>git clone https://gitlab.inria.fr/auctus/panda/torque_qp.git</code>
 
<code>wstool init </code>
 
<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
 
**Add in your bashrc <code>source ~/catkin_ws/devel/setup.bash</code>
 
**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 ===
*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)
*Install catkin (-y checks for dependencies)
** sudo sudo apt-get update -y
** sudo sudo apt-get update -y
** sudo apt-get install -y catkin
** sudo apt-get install -y catkin
*Install gcc > 4.8
*Install gcc Version > 4.8
** sudo apt-get update
** sudo apt-get update
** sudo apt-get install gcc
** sudo apt-get install gcc
*Install clang
*Install clang Version >3.8
** sudo apt-get update
** sudo apt-get update
** sudo apt-get install clang
** sudo apt-get install clang
Line 36: Line 164:
** sudo apt-get update
** sudo apt-get update
** sudo apt-get install git
** sudo apt-get install git
*REBOOT SYSTEM
*Install ros-melodic-desctop-full
**http://wiki.ros.org/melodic/Installation/Ubuntu
**after install, rosdep might have to be installed manually (between step 14-1.5): sudo apt install python-rosdep2
*NOTE: not needed, gazebo ROS comes with gazebo.Install gazebo (command will install latest version. Currently 9)
** curl -ssL http://get.gazebosim.org | sh
*Install ORCA. Note this will also install iDynTree, qpOASES and Eigen3. Git clone will make a folder called 'orca'. alternatively you can instlall 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
*create symbolic links
**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
**install franka-ros and libfranka
*Windows 10, in dual boot system with Ubuntu (see below)
*Ubuntu 18.04 LTS
*Ubuntu 5.0.21-rt16 kernel. Note: use ubuntu 5.0.21-rt16.signed during boot
*CMake >3.1
*GCC >4.8
*Clang >3.8
*ORCAEditing User talk:S152751 (section) - Control Systems Technology Group
*iDYnTree (dependency of ORCA)
*qpOASES (dependency of ORCA)
*Eigen 3 (dependency of ORCA)
*Gazebo-9
*Libfranka
*ros-melodic
*FCI installed on robot control
sudo apt --fix-broken install


== Install manuals ==
===ROS Melodic===
Installation of ORCA and dependencies: [https://orca-controller.readthedocs.io/en/master/getting_started/install.html]
Install ros-melodic-desctop-full [http://wiki.ros.org/melodic/Installation/Ubuntu]. Note: after install, rosdep might have to be installed manually (between step 1.4-1.5): sudo apt install python-rosdep2


Installation of libfranka: [https://frankaemika.github.io/docs/installation_linux.html]
===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


Extra steps taken to achieve signed rt kernel: [https://askubuntu.com/a/1182830] + disable secure boot in BIOS


== Notes ==
== Notes ==
check_urdf /path/to/file.urdf can be used to check urdf file itself
*check and fix package installations: <code>sudo apt --fix-broken install</code>
 
*check if urdf works:  <code>check_urdf /path/to/file.urdf</code>
Simulating fixed based panda robot needs a intermediate link (e.g. a table) between robot base and world (workaround)
*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.