Projet

Général

Profil

Wiki » Historique » Version 20

Sebastien LENGAGNE, 12/07/2022 14:38

1 11 Sebastien LENGAGNE
h1. Introduction
2 2 Sebastien LENGAGNE
3
Le but de ce projet est de recenser les commandes de base pour mettre en place le robot limo dans le cadre des activités d'enseignement à Polytech Clermont.
4 1 Sebastien LENGAGNE
5 20 Sebastien LENGAGNE
Ceci concerne les robots qui ont été vendu via generationrobot. Le guide de démarrage rapide est disponible ici : https://forge.uca.fr/attachments/download/18337/1_Limo%20quick%20start%20guide-%20V1.2%20%E8%BD%AC%E6%9B%B2.pdf
6 1 Sebastien LENGAGNE
7 11 Sebastien LENGAGNE
h2. Informations générales
8 1 Sebastien LENGAGNE
9 18 Sebastien LENGAGNE
Une documentation très complète se trouve sur : https://github.com/agilexrobotics/limo-doc/blob/master/Limo%20user%20manual(EN).md
10
11 1 Sebastien LENGAGNE
Les robots sont dotés d'un compte utilsateur  : agilex dont le mot de passe est agx.
12 20 Sebastien LENGAGNE
13
h2. Quand on démarre un nouveau PC
14
15
Se connecte à un réseau avec internet pour passer le clavier en azerty
16 1 Sebastien LENGAGNE
17 11 Sebastien LENGAGNE
h2. Connexion sur le robot
18 1 Sebastien LENGAGNE
19 11 Sebastien LENGAGNE
Sur le côté du robot, on peut soulever les clapets qui donne accès à deux prises USB (pour clavier et souris).
20
Ceci peut permettre au robot de ce connecter à un réseau Wifi, puis de connaître l'adresse IP du robot via : 
21
22
* ifconfig
23
24
h2. Installation des choses utiles sur le robot
25
26
Tant que vous êtes connecté directement sur le robot et qu'il est connecté à un wifi, vous pouvez installer un outil utile pour y accéder à distance : 
27
28
* sudo apt install openssh-server
29
30
h2. Connexion à distance en SSH
31
32
On peut se connecter via ssh au robot avec la commande 
33
34
* ssh agilex@ADRESSEIP 
35
36
h1. Présentation des paquets de base
37
38 12 Sebastien LENGAGNE
Le robot dispose de paquets pré-installés qu'on peut retrouver sur : https://github.com/agilexrobotics/limo_ros 
39
40
Pour lancer l'interface de base du robot, il faut lancer : 
41
42
* roslaunch limo_bringup limo_start.launch 
43 18 Sebastien LENGAGNE
44
On peut lancer la caméra via : 
45
* roslaunch realsense2_camera rs_camera.launch
46 12 Sebastien LENGAGNE
47
Cette commande va donner accès aux topics : /cmd_vel, /imu, /limo_status, /odom, /rosout, /rosout_agg, /scan, /tf.
48
49 11 Sebastien LENGAGNE
h1. Lancement de noeuds ROS à distance
50
51 13 Sebastien LENGAGNE
On peut utiliser plusieurs systemes pour une seule application robotique. Ici on va en considérée 2
52
* nano avec l'adresse IP :  nano (192.168.0.39)
53
* Dell avec l'adresse IP : Dell (192.168.0.37), sur lequel nous allons lancé le roscore.
54
55
nano et Dell sont les hostnames des PCs (ce qui apparait comme user@hostname quand on ouvre un terminal)
56
57
Sur le limo et le pc, on va éditer le fichier /etc/hosts pour ajouter ces deux lignes : 
58
* 192.168.0.37    nano
59
* 192.168.0.39    Dell
60 1 Sebastien LENGAGNE
61
Pour vérifier on peut lancer un *ping nano* ou *ping Dell*.
62 19 Sebastien LENGAGNE
63
Il est temps de lancer le master sur le PC 
64
* roscore
65 13 Sebastien LENGAGNE
66
Ensuite on se loggue en ssh sur le pc limo et on peut lancer le launch file de son choix.
67
(A priori, il y a une méthode pour lancer le launch à distance depuis un launch file, mais pour l'instant ca bug)
68 1 Sebastien LENGAGNE
69 15 Sebastien LENGAGNE
Pour que le limo sache ou est le master il faut faire la commande (soit dans chaque terminal, soit l'ajouter à la fin du fichier ~.bashrc)
70
* export ROS_MASTER_URI= 192.168.0.37 (adresse IP du PC)
71 13 Sebastien LENGAGNE
72 16 Sebastien LENGAGNE
h1. Changement des roues
73
74
Le robot dispose de trois modes de contrôle différents
75
* ackermann (semblable à une voiture)
76
* différentiel (comme les robots aspirateurs)
77
* omni directionnel (le robot peut bouger en avant, de côté et tourner).
78
79
+*Le mode omni-directionnel nécessite de changer les roues du robot. Pour cela, il faut changer les roues en utilisant les petites vis mis à disposition.*+
80
Attention, les roues doivent être mis dans le bon sens, comme montré dans le guide de démarrage rapide (https://forge.uca.fr/attachments/download/18337/1_Limo%20quick%20start%20guide-%20V1.2%20%E8%BD%AC%E6%9B%B2.pdf ).
81
82 11 Sebastien LENGAGNE
h1. Exemples de programme
83 17 Sebastien LENGAGNE
84
A titre d'exemple, les paquets suivants sont disponibles dans le dépôt de ce projet.
85
86
h2. polytech-limo-samples
87
88
h3. launch : TurtlebotJoystick.launch 
89
90
Permet de lancer le noeud de commande du robot avec un joystick (Attention, les boutons et axes dépendent du Joystick utilisés). Le robot lit également l'information Lidar pour éviter de percuter (en marche avant uniquement) les obstacles.