hand_control/README.md
Louis-Guillaume DUBOIS 9785db47af test
2015-06-08 16:39:08 +02:00

92 lines
3.1 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Installation #
## Installation des dépendances ##
```
#!sh
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu trusty main" > /etc/apt/sources.list.d/ros-latest.list'
wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install ros-indigo-desktop-full ros-indigo-freenect-stack ros-indigo-ardrone-autonomy libncursesw5-dev
```
## Utilisation du dépôt ##
### Création dun espace de travail catkin ###
```
#!sh
source /opt/ros/indigo/setup.bash
mkdir -p ~/hand_control_ws/src
cd ~/hand_control_ws/src
catkin_init_workspace
```
### Clonage du dépôt ###
Clonage de telle sorte que le dossier `hand_control` se situe dans le dossier `~/hand_control_ws/src/`, par exemple :
```
#!sh
cd ~/hand_control_ws/src
git clone git@bitbucket.org:_Luc_/hand_control.git
# ou bien : git clone https://username@bitbucket.org/_Luc_/hand_control.git # (changer username)
```
Le contenu du dépôt se trouve alors dans `~/hand_control_ws/src`.
## Compilation ##
Il est ensuite possible de compiler :
```
#!sh
cd ~/hand_control_ws
catkin_make
```
Puis pour pouvoir utiliser les commoandes ROS :
```
#!sh
source /opt/ros/indigo/setup.bash
source ~/hand_control_ws/devel/setup.bash
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
echo "source ~/hand_control_ws/devel/setup.bash" >> ~/.bashrc
```
# Utilisation #
## Branchement de la Kinect et paramétrage ##
1. Brancher la Kinect (sous tension) à lordinateur par USB ;
2. Poser la Kinect sur le sol, pointant le plafond ;
2. Lancer le "launchfile" `kinect_commander.launch`: `roslaunch hand_control kinect_commander.launch` ;
3. Vérifier les paramètres du filtre :
- lancer rviz :
```
rosrun rqt_rviz rqt_rviz
```
- visualiser la sortie du filtrage (topic : `/filter/output` ; frame : `/camera_depth_optical_frame`) et repérer la main ;
- lancer `rqt_reconfigure` : `rosrun rqt_reconfigure rqt_reconfigure` pour :
- modifier les paramètres du filtre jusquà ne voir que les points de la main/gant/pancarte sur rviz (voir ci-dessous).
- modifier le paramètre `neutral_alt` du nœud `commander` à la hauteur souhaitée (en mètres). Cest la hauteur de la main qui correspondra à limmobilité de laltitude.
### Paramètres du filtre ###
Les paramètres du filtre (modifiables avec `dynamic_reconfigure` et en particulier `rqt_reconfigure`) sont :
* `z_max` : en mètres, altitude maximale de la main, doit être inférieure à la hauteur du plafond.
* pour un gant ou un carton *coloré* (vert, bleu etc.), on a généralement :
- `hue` : par exemple 220 (bleu ciel) ou 150 (vert) ou 0 (rose/rouge) ;
- `delta_hue` : 10-20 ;
- `sat/val_min` : 0.0 ;
- `sat/val_max` : 1.0 ;
* pour un gant *noir* :
- `hue` : 0 ;
- `delta_hue` : 180 ;
- `sat_min` : 0.0 ;
- `sat_max` : 1.0 ;
- `val_min` : 0.0 ;
- `val_max` : 0.3 (à modifier à votre convenance);
## Connexion au drone et pilotage ##
* Connecter lordinateur au réseau wifi du drone ;
* Lancer