your_first_drive - autonohm/georg_at_home GitHub Wiki


In diesem Tutorial wird schritt für schritt das drive Paket gestartet

Es wird davon ausgegangen, dass eine Linux-Umgebung (zb Ubuntu oder WSL) mit funktionierender Docker Installation verwendet wird.
Zudem werden diese Pakete gebraucht sudo apt install nano make git tree

00 Setup

Zunächst holen wir uns das Repo:

cd gerne zuvor in einen beliebigen Ordner, je nach deiner Organisationsweise.

git clone https://github.com/autonohm/georg_at_home.git
cd georg_at_home

(optional) Dann richten wir autocomplete für das projectctl.bash Skript ein.

./projectctl.bash install_completion
source ~/.bashrc

Als letztes builden wir das base Image für alle Container.
Dieses Image baut auf das offizielle ROS Image auf, und enthält häufig gebrauchte Software für alle unserer Pakete.

./projectctl.bash build_base_image

01 Nur drive Paket verwenden

Nun sagen wir der ./projectctl.bash alle anderen Pakete zu ignorieren.

Zunächst alle Pakete auflisten

./projectctl.bash check_pkgs
image

Alle von diesen Paketen, bis auf drive wollen wir ignorieren, also konfigurieren wir die ./projectctl.bash:

nano projectctl.bash

Jetzt in SKIP_PACKAGES=( ) alle Pakete eintragen, bei mir schaut das dann wie folgt aus:
image
wird zu
image

Speichern, und danach zur überprüfung nochmal:

./projectctl.bash check_pkgs

Diesmal sollte es so ausschauen. Schau ob alle anderen Pakete geskippt werden.
image

02 Container bauen und starten

Um das Image für den Container zu bauen:

./projectctl.bash build

Um den container zu starten:

./projectctl.bash up

(Für später) Um den container zu stoppen:

./projectctl.bash down

Um den container zu restarten danach nochmal den up command machen.

03 Probleme Debuggen

Um die Logs anzuzeigen:

./projectctl.bash logs drive
Problem Nachricht Lösung
Nutzer hat keine Docker Permission (nicht im container log)
docker: Got permission denied while trying to connect to the Docker daemon...
sudo usermod -aG docker $USER;
newgrp docker oder rebooten
EduArt base Netzwerkfehler (zb verbindungs-lag) terminate called after throwing an instance of 'eduart::robot::HardwareError'
what(): Request Timeout!.
Bist du im Roboter WLAN?
Teste die Verbindung mit ping 192.168.2.20
Joystick nicht gefunden [georg.joy_node]: Couldn't open joystick /dev/georg_controller. Will retry every second. Joystick nicht eingesteckt oder nicht mit udev eingerichtet.
Ohne udev provisorisch mit sudo ln -sf /dev/input/jsX /dev/georg_controller einrichten (X ist ne Zahl)
⚠️ **GitHub.com Fallback** ⚠️