ROS e #IOTA, i Robot stanno per arrivare sul Tangle

31 ago 2018

Un saluto a tutti!

Per questo breve post sul blog presentiamo brevemente Michael Kuhlman. Lui sta studiando Ingegneria Elettrica. Negli ultimi mesi era molto impegnato a scrivere la tesi di laurea sull’implementazione di un autopilota per quadricotteri nel framework ROS. E in quel momento ha intravisto una possibile sinergia tra il framework ROS ed IOTA. Ma cos’è ROS e in che modo può essere utilizzato con IOTA? Questa è la domanda trattata in questo post.

Cos’è ROS?

ROS è l’abbreviazione di Robot Operating System. È un sistema meta-operativo open source ed è utilizzato per ogni tipo di robot (ad esempio un quadricottero, turtlebot, robot di servizio, …). In passato i robot dovevano essere programmati singolarmente. Più i robot diventavano complessi, più complicati diventavano i programmi che li guidavano. Un grosso svantaggio era che i programmi non potevano essere facilmente riutilizzati perché i programmi erano strettamente intrecciati con l’hardware. ROS è una soluzione per questo problema. Con ROS si è in grado di creare “programmi” indipendenti dall’hardware, chiamati pacchetti. Ciò lo rende molto modulare e facile da usare. Un altro vantaggio è che ROS è indipendente dal linguaggio di progammazione. È possibile creare i pacchetti per ROS nel linguaggio di programmazione preferito. Attualmente sono supportati Python, C ++ e Lisp. Le librerie Java e Java Script sono in fase sperimentale.

Per coloro che cercano una spiegazione più dettagliata consiglio vivamente il Wiki ROS: http://wiki.ros.org/ROS/Introduction (in inglese).

Per quale motivo ROS è perfetto per IOTA?

Negli ultimi giorni Michael Kuhlman ha cercato di integrare lo IOTA nel framework ROS, quindi hacreato un pacchetto ROS presentato qui.
Con questo pacchetto è possibile creare i cosiddetti “Nodi” (leggermente diversi da questi che gestiscono il Tangle di IOTA). Questi nodi vengono utilizzati per le attività (task) di elaborazione e sono in grado di creare argomenti (topics) in cui pubblicano dati o altre cose (n.d.t. credo un po’ come in mqtt). Altri nodi sono in grado di sottoscrivere a questi argomenti (topics) ed utilizzare i dati per altre attività di elaborazione. Questa è la parte in cui diventa interessante. Il nodo da questo pacchetto crea un argomento (topics in cui è possibile pubblicare tutti i dati necessari per una transazione.

Ogni volta che si pubblicano i dati nell’argomento (topics), il nodo crea automaticamente una transazione, indipendentemente dal valore della transazione. Ciò consente a qualsiasi programmatore ROS di inviare automaticamente transazioni al Tangle, indipendentemente dalla sua conoscenza di IOTA e dal suo linguaggio di programmazione preferito. Inoltre consentirà transazioni IOTA, da quasi tutti i tipi di robot, sia quadricotteri, servizi mobili o alcuni robot altamente specializzati. Grazie alle transazioni a valore zero è di conseguenza possibile la localizzazione con dati GPS e gemelli digitali (digital twin). Questo pacchetto è solo un piccolo programma, ma dovrebbe fornire una soluzione per aiutare il programmatore ROS ad integrare IOTA.

I piani futuri di Michael:

In futuro vuole continuare a sviluppare lo IOTA_ROS_PKG. Uno degli obiettivi è la creazione di un argomento (topic) per leggere ed analizzare facilmente i messaggi di una transazione. E vuole invitare chiunque conosca un po’ di ROS a contribuire allo sviluppo.

repository git: https://github.com/MichiKuhl/iota_ros_pkg


Con questo post vuole motivare la comunità a contribuire allo sviluppo, anche a chi non ha approfondite conoscente di programmazione. Ha creato quel pacchetto scritto in Python in pochi giorni senza competenze di programmazione in Python. Quindi vorrebbe dare un grande ringraziamento a John Grant per il suo fantastico tutorial. È stato un grande aiuto. https://medium.com/@johngrant/iota-python-a-beginning-8067f29a7e0https://medium.com/@johngrant/iota-python-a-beginning-8067f29a7e0


Se avete apprezzato questo articolo e desiderate donare a Michael Kuhlman

IOTA:
HOZZVNMVBFBBG9HPZBYOUELTFJBOIMQIDWPOJSJUOCURBZKPXOOPFWTGFIJDKNBKTKXC9UOIJEVHZSCSCS9NOXZZMA


Il testo originale in lingua inglese si trova qui: https://medium.com/@MichiKuhl/why-ros-is-perfect-for-iota-913b343526b4


Da oggi è possibile dare il vostro supporto su Patreon https://www.patreon.com/antonionardella

Per ulteriori informazioni in italiano o tedesco trovate i miei contatti a questa pagina.
Se avete trovato utile la mia libera traduzione, accetto volentieri delle donazioni 😉

IOTA:
iota1qrpakkq2uurgd8lyulcau3ntnwfwav64saakl20kz8pgu52tewn7gvr2aqr
BTC:
1BFgqtMC2nfRxPRge5Db3gkYK7kDwWRF79

Non garantisco nulla e mi libero da ogni responsabilità.

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.