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. |