Cos'è il Robot Operating System (ROS) in termini profani?
La domanda e il commento sono in contrasto tra loro.
Domanda: ROS in termini profani.
Commento: Dettagli di ROS. Tutorial per ROS. Attività/applicazioni con ROS.
Cercherò di rispondere da una posizione intermedia.
Layman's Insight
Considera lo scenario sopra. Il capo vuole pagare lo stipendio all'impiegata. Depositerà il denaro in una banca. L'impiegata ritirerà il suo stipendio dalla banca. Molto facile da concettualizzare, vero?
Questa in poche parole è l'architettura del ROS.
- Un editore ROS è il capo (arancione)
- Un sottoscrittore ROS è il dipendente (verde)
- Un argomento ROS è la banca (blu)
- Un messaggio ROS è il denaro (nero)
- I nodi ROS sono il capo e il dipendente.
In ROS, un editore pubblica il messaggio su un certo argomento. Il sottoscrittore si iscriverà all'argomento per ricevere quel messaggio. Un nodo è il pezzo di script scritto che ha al suo interno un processo publisher/subscriber. (continuate a leggere questo paragrafo e guardate la figura fino a quando non l'avrete capito completamente).
Quindi, la versione modificata dell'immagine sarà così.
Possono esserci più capi che danno stipendi a più banche che pagano più impiegati? Sì.
Similmente, all'interno di ROS si ha tipicamente una moltitudine di editori che pubblicano messaggi su vari argomenti. I sottoscrittori poi si abbonano a questi argomenti per ricevere i messaggi.
Intuizione tecnica
Questo è un modo estremamente comodo per suddividere operazioni robotiche complesse.
Per esempio, un robot terrestre autonomo può avere quanto segue:
- Una telecamera monoculare fornisce un'immagine 8 x 8.
- Un sensore LIDAR ottiene la posizione [x, y] degli ostacoli.
- Il controller principale del robot, basandosi sulla visione e sulla portata, genera velocità appropriate.
- I controllori dei motori danno velocità lineari e angolari alle ruote.
Ora, scomponiamolo sotto forma di editori, abbonati, argomenti e messaggi.
Nota: Questo è solo un modo di scomporlo.
- Nota che il nodo controllore agisce sia come editore che come sottoscrittore.
- Un nodo può sottoscrivere anche più argomenti.
- Inoltre, un messaggio ROS non è un messaggio come pensiamo noi. Può essere costituito da caratteri, stringhe, numeri, vettori o anche matrici (ad esempio l'immagine nel nostro esempio).
ROS è uno strumento estremamente utile per semplificare l'architettura del software per il funzionamento della robotica.
Spero che la vostra intelligenza aROSe!
Articoli simili
- How to install an Android operating system on my Lumia 520
- Which according to you is the best operating system in MI phones: MIUI or Google?
- Cos'è più difficile da creare/programmare: aspirapolvere robot o tosaerba robot?
- In termini profani, che cos'è HTTP/2 e come, esattamente, è diverso dall'attuale HTTP?