Κοινή χρήση τεχνολογίας

ROS βασική εκμάθηση-Διαχείριση λειτουργίας ROS

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Διαχείριση λειτουργίας ROS

1. Σύντομη περιγραφή της διαχείρισης λειτουργίας ROS

Το ROS είναι ένα κατανεμημένο πλαίσιο πολλαπλών διεργασιών (κόμβος), μια ολοκληρωμένη υλοποίηση συστήματος ROS:

Μπορεί να περιλαμβάνει πολλούς κεντρικούς υπολογιστές.
Υπάρχουν πολλοί χώροι εργασίας σε κάθε κεντρικό υπολογιστή.
Κάθε χώρος εργασίας περιέχει πολλαπλά πακέτα λειτουργιών.
Κάθε πακέτο συναρτήσεων περιέχει πολλαπλούς κόμβους (Node) και διαφορετικοί κόμβοι έχουν τα δικά τους ονόματα κόμβων.
Κάθε κόμβος μπορεί επίσης να οριστεί με ένα ή περισσότερα θέματα...

Εισαγάγετε την περιγραφή της εικόνας εδώ
Σε ένα σύστημα ROS πολλαπλών επιπέδων, ενδέχεται να προκύψουν ορισμένα προβλήματα κατά την εφαρμογή και τη συντήρησή του, όπως:
1. Πώς να συσχετίσετε διαφορετικά πακέτα λειτουργιών----(πακέτο μετα-συναρτήσεων)
2. Πώς να ξεκινήσετε διάφορους κόμβους ROS----(αρχείο εκκίνησης)
3. Τρόπος αντιμετώπισης των διπλότυπων ονομάτων πακέτων συναρτήσεων, κόμβων, θεμάτων και παραμέτρων----(Επίλυση του προβλήματος των διπλότυπων ονομάτων)
4. Πώς επικοινωνούν οι κόμβοι σε διαφορετικούς κεντρικούς υπολογιστές----(κατανεμημένη επικοινωνία)

Το κύριο περιεχόμενο αυτού του κεφαλαίου εισάγει τις λύσεις στα παραπάνω προβλήματα στο ROS (δείτε τον πίνακα περιεχομένων αυτού του κεφαλαίου Οι αναμενόμενοι μαθησιακοί στόχοι αντιστοιχούν επίσης στα παραπάνω προβλήματα:

  • Κατακτήστε τη σύνταξη για τη χρήση πακέτων μετα-συναρτήσεων.
  • Κατακτήστε τη σύνταξη της χρήσης αρχείων εκκίνησης.
  • Κατανοήστε τι είναι η κάλυψη χώρου εργασίας ROS και ποιοι κίνδυνοι για την ασφάλεια υπάρχουν.
  • Κατανοήστε πώς να αντιμετωπίζετε τα διπλά ονόματα κόμβων.
  • Κατανοήστε πώς να χειρίζεστε θέματα με διπλά ονόματα.
  • Κατανοήστε πώς να χειρίζεστε τα διπλά ονόματα παραμέτρων.
  • Ικανότητα επίτευξης κατανεμημένης επικοινωνίας ROS.

2. Πακέτο μετα-λειτουργίας ROS

Σενάριο: Η ολοκλήρωση μιας συστηματικής λειτουργίας σε ROS μπορεί να περιλαμβάνει πολλαπλά λειτουργικά πακέτα, όπως η υλοποίηση μιας μονάδας πλοήγησης ρομπότ, η οποία έχει λειτουργικά πακέτα διαφορετικών υποεπίπεδων, όπως χάρτης, τοποθέτηση, σχεδιασμός διαδρομής κ.λπ. Επομένως, όταν ο καλών εγκαθιστά τη μονάδα, χρειάζεται να εγκαταστήσει κάθε πακέτο λειτουργιών ένα προς ένα;

Προφανώς, η εγκατάσταση πακέτων λειτουργιών ένα προς ένα είναι αναποτελεσματική .

2.1 Έννοια

Το MetaPackage είναι μια ιδέα συστήματος διαχείρισης αρχείων στο Linux. Είναι ένα εικονικό πακέτο στο ROS Δεν έχει ουσιαστικό περιεχόμενο, αλλά βασίζεται σε άλλα πακέτα λογισμικού. Με αυτόν τον τρόπο, μπορούμε να το σκεφτούμε ως ευρετήριο καταλόγου -τα πακέτα βρίσκονται στη συλλογή πακέτων και πού να τα κατεβάσετε.

Για παράδειγμα:

  • Η εντολή sudo apt install ros-noetic-desktop-full χρησιμοποιεί το πακέτο μετα-συναρτήσεων κατά την εγκατάσταση του πακέτου μετα-συναρτήσεων κατά την εγκατάσταση αυτού του πακέτου.
    Υπάρχουν επίσης μερικά κοινά MetaPackages: πλοήγηση turtlebot3…

2.2 Λειτουργία

Για να διευκολυνθεί η εγκατάσταση από τον χρήστη, χρειαζόμαστε μόνο αυτό το πακέτο για να οργανώσουμε και να εγκαταστήσουμε μαζί άλλα σχετικά πακέτα λογισμικού.

2.3 Εφαρμογή

Βήμα 1: Πρώτον: δημιουργήστε ένα νέο πακέτο λειτουργιών
βήμα 2: Στη συνέχεια: τροποποιήστε το πακέτο.xml, το περιεχόμενο έχει ως εξής:

<exec_depend>Ενσωματωμένα πακέτα δυνατοτήτων</exec_depend>

<export>
<metapackage />
</export>
Εισαγάγετε την περιγραφή της εικόνας εδώ

βήμα 3: Τέλος: τροποποιήστε το CMakeLists.txt, το περιεχόμενο έχει ως εξής:

cmake_minimum_required(VERSION 3.0.2)
έργο (επίδειξη)
find_package (ΑΠΑΙΤΕΙΤΑΙ γατούλα)
catkin_metapackage()

Απλώς κρατήστε τις παραπάνω τέσσερις γραμμές και διαγράψτε τις υπόλοιπες.

Ανατρέξτε επίσης στο:
http://wiki.ros.org/catkin/package.xml#Metapackages

3. Αρχείο εκκίνησης ROS

Δεν είμαστε πλέον άγνωστοι με τη χρήση των αρχείων εκκίνησης Στο πρώτο κεφάλαιο, παρουσιάσαμε:

Ένα πρόγραμμα μπορεί να χρειαστεί να ξεκινήσει πολλούς κόμβους, όπως η ενσωματωμένη θήκη μικρής χελώνας του ROS Εάν θέλετε να ελέγξετε την κίνηση της χελώνας, πρέπει να ξεκινήσετε πολλά παράθυρα, αρχικό roscore, κόμβο διεπαφής χελώνας και κόμβο ελέγχου πληκτρολογίου. αντίστοιχα. Εάν το rosrun καλείται κάθε φορά για να ξεκινήσει ένα προς ένα, είναι προφανώς αναποτελεσματικό.

Η στρατηγική βελτιστοποίησης που υιοθετήθηκε είναι η χρήση της εντολής roslaunch για τη συλλογή του αρχείου εκκίνησης για την εκκίνηση του κόμβου διαχείρισης και σε επόμενα σεμινάρια, το αρχείο εκκίνησης χρησιμοποιείται επίσης πολλές φορές.

3.1. Αρχείο εκκίνησης διαχείρισης κόμβων ROS

3.1.1 Έννοια

Το αρχείο εκκίνησης είναι ένα αρχείο μορφής XML που μπορεί να ξεκινήσει πολλούς τοπικούς και απομακρυσμένους κόμβους και να ορίσει παραμέτρους στον διακομιστή παραμέτρων.

3.1.2 Λειτουργία

Απλοποιήστε τη διαμόρφωση και την εκκίνηση των κόμβων και βελτιώστε την αποτελεσματικότητα εκκίνησης των προγραμμάτων ROS.

3.1.3 Χρήση

Πάρτε το turtlesim ως παράδειγμα για επίδειξη

Βήμα 1 Δημιουργήστε ένα νέο αρχείο εκκίνησης
Προσθέστε τον κατάλογο εκκίνησης κάτω από το πακέτο λειτουργιών, δημιουργήστε ένα νέο αρχείο xxxx.launch στον κατάλογο και επεξεργαστείτε το αρχείο εκκίνησης

<launch>
<node pkg=“turtlesim” type=“turtlesim_node” name=“myTurtle” output=“screen” />
<node pkg=“turtlesim” type=“turtle_teleop_key” name=“myTurtleContro” output=“screen” />
</launch>

Βήμα 2. Αρχείο εκκίνησης κλήσης

όνομα πακέτου roslaunch xxx.launch

Σημείωση: Όταν η εντολή roslaunch εκτελεί το αρχείο εκκίνησης, θα προσδιορίσει πρώτα εάν το roscore έχει ξεκινήσει, δεν θα ξεκινήσει ξανά.

Μπορεί να αναφέρεται σε:
http://wiki.ros.org/roslaunch/XML

3.2 εκκίνηση ετικέτας αρχείου

https://www.bilibili.com/video/BV1Ci4y1L7ZZ?p=150&spm_id_from=pageDriver&vd_source=15dd2e64f0499027ca66125b65dd2de9