PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Roboter mit ROS



calis
27.01.2020, 14:34
Hallo,

ich möchte folgendes Buch empfehlen:

Roboter mit ROS

34774

Klappentext (Buchrückseite)

Beschreibung:

Bauen Sie Ihren Roboter – mit professionellen Tools
- Robotik praktisch erklärt
- Das Robot Operating System (ROS) kennen lernen und für eigene Prototypen einsetzen
- Alles über Simulation, Konstruktion und Programmierung
- Inklusive zwei Roboter-Selbstbauprojekten für Bots mit fortgeschrittenen Fähigkeiten

Murat Calis zeigt, wie Sie das Open-Source-Framework ROS (Robot Operating System) zur Steuerung und Programmierung eigener Bot-Konstruktionen einsetzen. Zwei Robotermodelle, die nachgebaut werden können, zeigen beispielhaft den Ablauf von der Idee zum Prototyp. Probieren Sie die Entwicklungsschritte von der Simulation bis zur Programmierung selbst aus und lernen Sie dabei, außergewöhnliche Bots für eigene Anwendungszwecke zu konstruieren.

Behandelt werden folgende Themen:
- Simulationen mit Gazebo und Blender
- Kartografierung und Kinematik mit RViz
- Autonome kollisionsfreie Navigation mit SLAM
- Gesichtserkennung mit OpenCV

Die Robotermodelle im Buch zeigen anschaulich das Publish-/Subscribe-Prinzip von ROS. Nachdem Sie das Zusammenspiel unabhängiger Software-Module innerhalb eines Roboters verstanden haben, geht es spielerisch weiter: Lassen Sie Roboter in einer Simulation starten oder eine virtuelle Welt kartografieren. Kommentierte Programmierbeispiele unterstützen Sie dabei, Ihre Roboter mit Python oder C++ zu steuern.

Zielgruppe:
- Informatik-Studierende
- Ingenieurinnen und Ingenieure im Bereich Automation
- Maker von 16 bis 106

Erschienen im Januar 2020, ca. 308 Seiten, komplett in Farbe, Broschur
dpunkt.verlag
Erhältlich bei dpunkt, amazon, beck-shop, lehmanns usw.
ISBN Print:978-3-86490-567-4
ISBN PDF: 978-3-96088-467-5
ISBN ePub: 978-3-96088-468-2
ISBN Mobi: 978-3-96088-469-9

Der Quellcode zum Buch ist unter einer BSD-Lizenz auf bitbucket veröffentlicht und enthält eine Einkaufsliste aller verwendeten Bauteile.

morob
09.04.2020, 15:25
ich habe noch nie einen wirklich mit ros funktionierenden roboter gesehen, alle tummeln sich in der simulation.

Holomino
10.04.2020, 14:09
Und ich habe jetzt erst die Namensgleichheit von User und Autor erkannt.
Schade, dass es noch keine Rezensionen zum Werk gibt.

morob
10.04.2020, 18:13
ich werde mir das buch trotzdem mal holen und ansehen.
ein paar sachen sind da schon wieder zu alt, die ros version läuft aus, ich bin schon dabei mich mal in die neue rein zuschauen.

calis
12.04.2020, 17:06
@morob, danke für Ihr Interesse! Ich habe bis kurz vor Veröffentlichung die Version melodic getestet und wegen Unvollständigkeit von gmapping nicht ins Buch übernommen.
Aktuell arbeiten ROS-Entwickler mehr an ROS2( Dashing, Focal...) als an ROS1(Kinetic, Melodic...).
Diese Übergangsphase kann man auch anhand der recht bunten Metrik ab 2018 auf metrics.ros.org/rosdistro_rosdistro.html erkennen.
An den Kernthemen von ROS wird sich aber nicht viel ändern, sodass das, was man in ROS1 gelernt hat, auch in ROS2 nützlich ist.

- - - Aktualisiert - - -

@Holomino, auf amazon gibt es bereits eine Rezension.

shedepe
12.04.2020, 17:33
Vllt möchtest du näher legen warum man sich zu ROS ein Buch kaufen sollten, wenn es doch mehr aus genug Online Resourcen dazu gibt?

@morob Im Forschungsumfeld wird ROS auf ziemlichen vielen Robotern auch recht erfolgreich eingesetzt. Wobei man da meistens noch custom Erweiterungen für "Echtzeitfähigkeit" hat.

morob
12.04.2020, 18:06
@morob, danke für Ihr Interesse! Ich habe bis kurz vor Veröffentlichung die Version melodic getestet und wegen Unvollständigkeit von gmapping nicht ins Buch übernommen.
Aktuell arbeiten ROS-Entwickler mehr an ROS2( Dashing, Focal...) als an ROS1(Kinetic, Melodic...).
Diese Übergangsphase kann man auch anhand der recht bunten Metrik ab 2018 auf metrics.ros.org/rosdistro_rosdistro.html erkennen.
An den Kernthemen von ROS wird sich aber nicht viel ändern, sodass das, was man in ROS1 gelernt hat, auch in ROS2 nützlich ist.

- - - Aktualisiert - - -



das problem ist das ich eine raspberry pi 4 64 bit nehme und da gibt es kein kinetic. ich habe dann mal nachgelesen und gesehen, das man nicht vor hat, kinetic für 64bit nach zu machen.
warum nehmen ich nicht 32bit, weil es da probleme mit dem 4gb gibt, das kommt mir bekannt vor, man kann nur bis jetzt 3gb nutzen ohne probleme zu riskieren.

Defiant
13.04.2020, 11:25
ich habe noch nie einen wirklich mit ros funktionierenden roboter gesehen, alle tummeln sich in der simulation.

Ich könnte meinen (https://www.roboternetz.de/community/threads/70677-Wild-Thumper-ROS-Roboter) anbieten.

morob
13.04.2020, 17:18
@defiant, sehe ich das richtig, du arbeitest nicht mit ubuntu sondern mit debian? ansonsten werde ich mir das mal in ruhe ansehen, danke.

Defiant
13.04.2020, 17:26
Ja, allerdings auf dem Desktop-Rechner derzeit das Docker Image, da ich keine Lust mehr auf selbstkompilieren hatte und es derzeit keine ROS-Binaries für Buster gibt. Für ROS-Empfänger kann ich selber kompilieren übrigens nicht empfehlen. Der Raspberry Pi soll ja auch virtualisieren können, vielleicht wäre das eine Variante? Habe ich allerdings keine Erfahrung mit.

morob
13.04.2020, 18:40
danke für die info mit buster, also doch ubuntu :( auf dem rpi und desktop, extra einen neue platte eingebaut in den laptop.

shedepe
13.04.2020, 19:46
Auf debian kann man zumindest Teile von ROS aus dem normalen Repo installieren

Defiant
13.04.2020, 20:06
Leider sind die Debian Pakete unvollständig (https://wiki.debian.org/DebianScience/Robotics/ROS/Packages)., so fehlt z.B. der komplette Navigation Stack. Es wird sogar empfohlen bei einer "normalen" Installation diese Pakete von Debian zu deinstallieren, da diese inkompatibel sind.

jmoors
18.04.2020, 13:20
Ich hatte mir das Buch bestellt und bin seit zwei Tagen am Querlesen. Das Buch macht einen recht guten Eindruck und die einzelnen Themen werden ausführlich erklärt. Man sollte allerdings LINUX-Grundkenntnisse haben. Für "Ich verstehe zwar nichts von Computer, aber baue mal einen Roboter"-Leute ist das Buch nicht geeignet. Das Buch enthält viel Text und ist angemessen mit Zeichnungen und Fotos illustriert. Mein erster Eindruck ist "empfehlenswert, sofern man sich in ROS einlesen möchte".

calis
19.04.2020, 19:55
[QUOTE=shedepe;659354]Vllt möchtest du näher legen warum man sich zu ROS ein Buch kaufen sollten, wenn es doch mehr aus genug Online Resourcen dazu gibt?

@shedepe, im Internet gibt es sicherlich viel Material, meist auf englisch, ohne Tipps oder Hinweise worauf es ankommt bei ROS, wenn etwas nicht funktioniert - sehr zeitaufwendig.
Das Buch ist auf deutsch und erklärt Zusammenhänge zwischen Konstruktion, Hardware sowie Programmierung mit ROS anhand praktischer Beispiele.
Es ist ein Leitfaden, mit dem man in kurzer Zeit einen komplexen Roboter realisieren kann.

HaWe
19.04.2020, 22:53
[QUOTE=shedepe;659354]Vllt möchtest du näher legen warum man sich zu ROS ein Buch kaufen sollten, wenn es doch mehr aus genug Online Resourcen dazu gibt?

@shedepe, im Internet gibt es sicherlich viel Material, meist auf englisch, ohne Tipps oder Hinweise worauf es ankommt bei ROS, wenn etwas nicht funktioniert - sehr zeitaufwendig.
Das Buch ist auf deutsch und erklärt Zusammenhänge zwischen Konstruktion, Hardware sowie Programmierung mit ROS anhand praktischer Beispiele.
Es ist ein Leitfaden, mit dem man in kurzer Zeit einen komplexen Roboter realisieren kann.

ich lerne auch lieber aus zusammenhängenden Texten in Büchern statt aus einzelnen Internet-Tutorials, und nicht immer haben Tutorials den Büchern die bessere Aktualität unbedingt vorraus. Das ist in der Tat bei den sich schnell ändernden packages für verschiedene sich schnell ändernde Linux-Releases und Boards (Stretch, Buster, für RPi 2v1.1, 2v2.0, Zero, 3B, 3B+, 4) ein großes Problem.
Ebenso und auch ganz besonders müssten am besten apt-packages verfügbar sein, die man dann wenigstens schnell und einfach nachinstallieren, updaten und upgraden kann, und die ganze Arbeit mit dem Zusammensuchen fehlender Pakete und Dependencies ist IMO ein unzumutbares Manko. (Das kennt man ja auch schon lange z.B. für gtk, openCV, Qt, LibCurl, LibVLC, openVG, wiringPi uvm, wo dann plötzlich irgendwas nicht mehr funktioniert was jahrelang lief, und das verdirbt einem wirklich den Spaß.) Für ein Buch ist das sicher doppelt schwierig, denn es lässt sich dann nicht ad hoc so schnell updaten, wie es theoretisch für einen Blog möglich wäre.
Wenn also ein Buch, dann müsste es sichergestellt sein, dass jederzeit alle Ressourcen für alle Boards, alle Betriebssysteme und alle passenden ROS Releases per Link bei Bedarf aktualisiert heruntergeladen werden können, damit man auch bei Software-Updates stets alle Lernprogramme und Example Codes weiterhin benutzen kann.
Auch die benutzte Roboterhardware müsste man stets fertig bzw. als Komplettbausatz beziehen können, um die Lernprogramme uneingeschränkt durchführen zu können.
Dann wäre ich auch jederzeit bei einem ROS Lehrbuch dabei.

morob
29.04.2020, 18:44
ist bestellt, ich melde mich wenn ich das buch gelesen habe.

jmoors
30.04.2020, 08:33
Ich habe das Buch jetzt fast durch und muss sagen, es gefällt mir sehr. Es werden sehr gezielte Hinweise und Einkaufstipps gegeben.
Von mir gibt es für das Buch einen "Daumen hoch"!

VG, Jürgen

jmoors
19.05.2020, 08:24
Informationen/Wissen ist immer gut. Ich würde mich darüber freuen.
Das Buch halte ich für sehr informativ, wie ich oben schon geschrieben habe. Der Einstiegs-Level ist relativ niedrig, aber man sollte schon einmal programmiert haben.

inka
07.06.2020, 17:12
beim versuch das ROS zu installieren hatte ich wenig glück, letztendlich wurde das paket "ros-kinetic-desktop-full" nicht gefunden...

Ich hoffe der buchautor liesst noch mit? Während der eingabe der befehle hat es keine (sichtbaren) fehlermeldungen gegeben...


georg@georg-pc:~$ #sudo sh -c '. /etc/lsb-release && echo "deb http://packages.ros.org.ros.informatik.uni-freiburg.de/ros/ubuntu $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

georg@georg-pc:~$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key
[sudo] Passwort für georg:

Executing: /tmp/apt-key-gpghome.ncKHremepC/gpg.1.sh --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key

georg@georg-pc:~$ sudo apt-get update
OK:1 http://ppa.launchpad.net/diesch/stable/ubuntu bionic InRelease
OK:2 http://de.archive.ubuntu.com/ubuntu bionic InRelease
Holen:3 http://de.archive.ubuntu.com/ubuntu bionic-updates InRelease [88,7 kB]
OK:4 http://ppa.launchpad.net/diesch/testing/ubuntu bionic InRelease
Holen:5 http://security.ubuntu.com/ubuntu bionic-security InRelease [88,7 kB]
OK:6 https://updates.signal.org/desktop/apt xenial InRelease
OK:7 http://ppa.launchpad.net/marko-preuss/hibiscus/ubuntu bionic InRelease
Holen:8 http://de.archive.ubuntu.com/ubuntu bionic-backports InRelease [74,6 kB]
OK:10 http://ppa.launchpad.net/sicklylife/gnucash/ubuntu bionic InRelease
Holen:11 http://de.archive.ubuntu.com/ubuntu bionic-updates/main amd64 DEP-11 Metadata [306 kB]
Holen:12 http://security.ubuntu.com/ubuntu bionic-security/main amd64 DEP-11 Metadata [43,7 kB]
Holen:13 http://de.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 DEP-11 Metadata [279 kB]
OK:9 https://jztkft.dl.sourceforge.net/project/ubuntuzilla/mozilla/apt all InRelease
Holen:14 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 DEP-11 Metadata [49,2 kB]
Holen:15 http://de.archive.ubuntu.com/ubuntu bionic-updates/universe DEP-11 64x64 Icons [462 kB]
Holen:16 http://security.ubuntu.com/ubuntu bionic-security/multiverse amd64 DEP-11 Metadata [2.464 B]
Holen:17 http://de.archive.ubuntu.com/ubuntu bionic-updates/multiverse amd64 DEP-11 Metadata [2.464 B]
Holen:18 http://de.archive.ubuntu.com/ubuntu bionic-backports/universe amd64 DEP-11 Metadata [7.972 B]
Es wurden 1.405 kB in 3 s geholt (549 kB/s).
Paketlisten werden gelesen... Fertig

georg@georg-pc:~$ sudo apt update
OK:1 http://security.ubuntu.com/ubuntu bionic-security InRelease
OK:2 https://updates.signal.org/desktop/apt xenial InRelease
OK:3 http://de.archive.ubuntu.com/ubuntu bionic InRelease
OK:4 http://ppa.launchpad.net/diesch/stable/ubuntu bionic InRelease
OK:5 http://de.archive.ubuntu.com/ubuntu bionic-updates InRelease
OK:6 http://de.archive.ubuntu.com/ubuntu bionic-backports InRelease
OK:7 http://ppa.launchpad.net/diesch/testing/ubuntu bionic InRelease
OK:8 http://ppa.launchpad.net/marko-preuss/hibiscus/ubuntu bionic InRelease
OK:10 http://ppa.launchpad.net/sicklylife/gnucash/ubuntu bionic InRelease
OK:9 https://netcologne.dl.sourceforge.net/project/ubuntuzilla/mozilla/apt all InRelease
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Aktualisierung für 2 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen.

georg@georg-pc:~$ sudo apt upgrade
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Paketaktualisierung (Upgrade) wird berechnet... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
gconf-service gconf-service-backend gconf2-common gnucash-common
gnucash-docs guile-2.0 guile-2.2-libs libalgorithm-c3-perl libaqbanking35
libaqbanking35-plugins libaqebics0 libaqhbci24 libaqofxconnect7
libb-hooks-endofscope-perl libb-hooks-op-check-perl libboost-regex1.65.1
libclass-c3-perl libclass-c3-xs-perl libclass-data-inheritable-perl
libclass-inspector-perl libclass-method-modifiers-perl
libclass-singleton-perl libcommon-sense-perl libdata-optlist-perl
libdate-manip-perl libdatetime-locale-perl libdatetime-perl
libdatetime-timezone-perl libdbi1 libdevel-callchecker-perl
libdevel-caller-perl libdevel-lexalias-perl libdevel-stacktrace-perl
libdynaloader-functions-perl libeval-closure-perl libexception-class-perl
libfile-sharedir-perl libfinance-quote-perl libgconf-2-4 libgnomecanvas2-0
libgnomecanvas2-common libgoffice-0.8-8 libgoffice-0.8-8-common libgsf-1-114
libgsf-1-common libgwengui-gtk2-0 libgwenhywfar60 libhtml-tableextract-perl
libjavascriptcoregtk-1.0-0 libjson-perl libjson-xs-perl libktoblzcheck1v5
libmodule-implementation-perl libmodule-runtime-perl libmro-compat-perl
libnamespace-autoclean-perl libnamespace-clean-perl libofx7 libosp5
libpackage-stash-perl libpackage-stash-xs-perl libpadwalker-perl
libparams-classify-perl libparams-util-perl
libparams-validationcompiler-perl libreadonly-perl libref-util-perl
libref-util-xs-perl librole-tiny-perl libspecio-perl libsub-exporter-perl
libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl
libsub-quote-perl libtypes-serialiser-perl libvariable-magic-perl
libwebkitgtk-1.0-0 python3-gnucash
Verwenden Sie »sudo apt autoremove«, um sie zu entfernen.
Die folgenden Pakete werden aktualisiert (Upgrade):
python-apt-common python3-apt
2 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 166 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 1.024 B Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] j

Holen:1 http://de.archive.ubuntu.com/ubuntu bionic-updates/main amd64 python-apt-common all 1.6.5ubuntu0.3 [16,8 kB]
Holen:2 http://de.archive.ubuntu.com/ubuntu bionic-updates/main amd64 python3-apt amd64 1.6.5ubuntu0.3 [149 kB]
Es wurden 166 kB in 0 s geholt (413 kB/s).
(Lese Datenbank ... 214331 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../python-apt-common_1.6.5ubuntu0.3_all.deb ...
Entpacken von python-apt-common (1.6.5ubuntu0.3) über (1.6.5ubuntu0.2) ...
Vorbereitung zum Entpacken von .../python3-apt_1.6.5ubuntu0.3_amd64.deb ...
Entpacken von python3-apt (1.6.5ubuntu0.3) über (1.6.5ubuntu0.2) ...
python-apt-common (1.6.5ubuntu0.3) wird eingerichtet ...
python3-apt (1.6.5ubuntu0.3) wird eingerichtet ...

georg@georg-pc:~$ sudo apt install ros-kinetic-desktop-full
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
E: Paket ros-kinetic-desktop-full kann nicht gefunden werden.

Defiant
07.06.2020, 17:22
bionic ist keine Plattform für kinetic: http://wiki.ros.org/kinetic/Installation

Stattdessen den Nachfolger melodic nehmen: http://wiki.ros.org/melodic/Installation/Ubuntu

calis
26.07.2020, 17:01
Irgendwie bekomme ich keine Updates vom Forum. Im September beginne ich auf der Website zum Buch mit den Anleitungen zur Installation/Migration nach Melodic und ggf. Noetic. Nächstes Jahr (2021) folgt die Migration nach ROS2.

morob
26.07.2020, 18:31
von welchem forum?
ich musste melodic verwenden, weil die im buch angegeben variante nicht für der rpi4 zur verfügung stand.

calis
26.07.2020, 19:23
von diesem Forum (roboternetz.de) habe ich seit Juni keine Benachrichtigungen erhalten. Erst jetzt, als ich wieder etwas geschrieben habe.

Gab es Probleme mit Melodic? Ich musste gmapping von Hand bauen.
Es gibt aber auch die (älteren) Ubuntu Server für rpi von http://cdimage.ubuntu.com/ubuntu/releases/16.04.5/release/. So wäre der Weg für Kinetic frei.
Leider habe ich kein rpi4 sonst hätte ich das mal ausprobiert.

morob
27.07.2020, 08:43
seit juni wurde auch nichts geschrieben in diesem thema

morob
23.10.2020, 15:13
so ich habe geschafft ros unter debian auf dem laptop zu installieren :) ich bin jetzt allerdings schon bei noetic.
ich werde den laptop als entwicklungsbasis nehmen und dann auf diverse rpi's ausrollen.

also das buch wird jetzt gelesen :)

morob
07.12.2020, 13:16
Hallo Calis,

wie hat sich eigentlich das mechanische Zeug gemacht, also die Profile, ich will jetzt die 15x15mm bestellen.

Ich werde ohne Lidar arbeiten, dafür mit einer D435.

Gruß
Stephan