Utilisation du serveur de simulation (Serge) - vaul-ulaval/vaul-wiki GitHub Wiki
Grâce au Fond d'Investissement Étudiant (FIÉ), le VAUL a pu se procurer un serveur de simulation performant afin de pouvoir compétitionner et former la relève. La page qui suit expliquera comment y accéder et s'en servir. Par la suite, vous serez en mesure d'effectuer des laboratoires d'introduction à la robotique.
Spécifications du serveur
Pour les intéressés, voici un résumé des spécifications du serveur:
-
CPU: Intel Ultra 9 285K (24) @ 5.000GHz
-
GPU: NVIDIA RTX 5090
-
RAM: 192 Gb DDR5
-
Disque: 1 To NVME SSD
-
Avec un Network Accessible Storage (NAS) de 16 To.
Pour référence lors du séminaire 1, voici les slides présentés
Important
Connectez vous au réseau wifi vaul-router
ou vaul-router_5G
dans le local du VAUL. Ensuite, en fonction de votre système d'exploitation, allez à la section qui vous concerne.
MacOS (Cliquez pour dérouler)
- Télécharger et installer XQuartz
- Redémarrer votre ordinateur
- Ouvrir XQuartz
- Poursuivre les étapes de la section Linux
Windows (Cliquez pour dérouler)
- Télécharger et installer Git Bash
- Ensuite, télécharger et installer VcXSrv (X server pour Windows)
- Ouvrir un terminal
Git bash
et exécuter les commandes ci-dessous (Pour coller dans un terminalGit Bash
, il faut faireShift+Insert
, pour coller il faut faireCtrl+Shift+C
)
echo "export DISPLAY=localhost:0.0" >> ~/.bashrc
source ~/.bashrc
- Dans la barre de recherche windows, taper 'terminal'. Clique droit sur terminal et choisir "Exécuter en tant qu'administrateur")
setx DISPLAY "localhost:0.0" /M
- Redémarrer votre ordinateur
- Ouvrir VcXSrv et un terminal Git Bash. (Il est possible que VcXSrv démarre tout seul alors vous pouvez recevoir un message d'erreur disant qu'il est déjà démarré)
- Poursuivre les étapes de la section Linux en entrant les commandes dans le terminal
Git bash
(Pour coller dans un terminalGit Bash
, il faut faireShift+Insert
. Pour copier il faut faireCtrl+Shift+C
)
Linux (Cliquez pour dérouler)
- Créer vos clés ssh
ssh-keygen -f ~/.ssh/vaul -N ""
- Prendre connaissance de votre clé publique. Copier le résultat de cette commande
cat ~/.ssh/vaul.pub
- Remplir ce formulaire et demander à l'admin système (William Fecteau) de créer votre compte
- Créer la configuration SSH pour s'y connecter
nano ~/.ssh/config
Entrer le texte suivant (Prenez soin de remplacer le placeholder par votre idul en minuscule et bien retirer les <>). Pour sauvegarder, faire Ctrl+X
, puis y
, puis Enter
Host serge
HostName 192.168.1.69
User <idul>
IdentityFile ~/.ssh/vaul
ForwardX11 yes
ForwardX11Trusted yes
- Assurez vous d'être connecté au réseau wifi
vaul-router
ouvaul-router_5G
. - Tester la connexion (Pour que cela fonctionne, votre compte doit avoir été créé par l'admin système)
ssh serge
- Si la commande précédente c'est bien exécuté, vous devriez voir
idul@serge
apparaître dans votre terminal. - Changez le mot de passe. Par défaut votre mot de passe est votre type de pâte favori :)
passwd
- Dans le même terminal, on va tester une interface graphique. Vous devriez voir apparaître une fenêtre avec des yeux
xeyes
- Si tout se passe bien, vous pouvez ignorer la section problèmes fréquents et aller à Ouverture d'une session VSCode via SSH
Après la commande ssh serge
, si vous voyez xauth: (argv):1: bad "add" command line
, assurez vous que votre config ~/.ssh/config
contienne bien
ForwardX11 yes
ForwardX11Trusted yes
Après la commande ssh serge
, si vous voyez no such identity: <path>: No such file or directory
, assurez vous que le chemin vers votre clé SSH soit bon dans votre config ~/.ssh/config
IdentityFile ~/.ssh/vaul
Avec ces accès SSH, nous allons maintenant ouvrir une session VSCode via SSH sur le serveur.
- Télécharger VSCode sur votre poste
- Ourvrir VSCode
- Télécharger les extensions VSCode suivantes:
- Redémarrer VSCode
- Faire
Ctrl+Shift+P
et taper 'connect host'. Sélectionner 'Remote-SSH: Connect to host...':
- Dans le dialogue, sélectionner 'serge'. Si tout va bien, VSCode devrait ouvrir une session sur le serveur (Remarquer en bas en gauche SSH: serge):
Une fois VSCode ouvert sur le serveur, nous allons maintenant faire une inception 🤯. Nous allons ouvrir une autre session dans un devcontainer à partir de cette connexion. Gardez cette hiérarchie en-tête afin de bien exécuter vos commandes au bon endroit! Votre poste > VSCode SSH > VSCode Devcontainer via SSH
.
- Installer Foxglove Studio sur votre poste (Outil de visualisation ROS). Vous allez devoir vous créer un compte: Utilisez votre adresse ULaval.
- Ouvrir une session VSCode SSH sur serge
- File > Open Folder > Sélectionner "shared_ws/autodrive_roboracer_ws"
- Une fois ouvert, faire
Ctrl+Shift+P
et taper 'dev container rebuild'. Sélectionner 'Dev Containers: Rebuild and Reopen in devcontainer'.
- VSCode devrait vous connecter dans le devcontainer de simulation (Remarquer en bas à gauche Dev container):
- Ouvrir un terminal dans le devcontainer et faire cette commande pour obtenir le port de Foxglove (Prenez en note):
echo $FOXGLOVE_PORT
- Encore dans un terminal dans le devcontainer, démarrer un noeud de suivi de mur.
ros2 run reactive_control wall_follow_node
- Sur votre poste, ouvrir Foxglove et faire
Shift+Ctrl+O
. Ensuite, y entrer l'url suivant:ws://192.168.1.69:<VOTRE PORT FOXGLOVE>
.
- Afficher le scan lidar du topic '/autodrive/roboracer_1/lidar' et observer le véhicule bouger
- Vous êtes maintenant prêt à faire les Laboratoires Roboracer!