Sommario:

Roomblock: una piattaforma per l'apprendimento della navigazione ROS con Roomba, Raspberry Pi e RPLIDAR: 9 passaggi (con immagini)
Roomblock: una piattaforma per l'apprendimento della navigazione ROS con Roomba, Raspberry Pi e RPLIDAR: 9 passaggi (con immagini)

Video: Roomblock: una piattaforma per l'apprendimento della navigazione ROS con Roomba, Raspberry Pi e RPLIDAR: 9 passaggi (con immagini)

Video: Roomblock: una piattaforma per l'apprendimento della navigazione ROS con Roomba, Raspberry Pi e RPLIDAR: 9 passaggi (con immagini)
Video: OPERA PMS - Apprendimento Oracle Hospitality | 10 blocchi di gruppo 2024, Dicembre
Anonim
Image
Image
Quello di cui hai bisogno
Quello di cui hai bisogno

Cos'è questo?

"Roomblock" è una piattaforma robotica composta da un Roomba, un Raspberry Pi 2, un sensore laser (RPLIDAR) e una batteria mobile. Il telaio di montaggio può essere realizzato con stampanti 3D. Il sistema di navigazione ROS consente di creare una mappa delle stanze e utilizzarla per raggiungere l'obiettivo in autonomia.

Chi ha bisogno di questo?

Chiunque desideri apprendere le tecnologie all'avanguardia della navigazione robotica, della mappatura e della guida autonoma. Questo robot può essere costruito facilmente ea costi inferiori rispetto ad altre piattaforme commerciali. ROS è ora un sistema software standard de facto per il campo della ricerca robotica. Questo filmato mostra cosa è possibile fare con il sistema di navigazione ROS.

Passaggio 1: cosa ti serve

Quello di cui hai bisogno
Quello di cui hai bisogno
Quello di cui hai bisogno
Quello di cui hai bisogno
Crea un cavo seriale USB (opzionale)
Crea un cavo seriale USB (opzionale)
Crea un cavo seriale USB (opzionale)
Crea un cavo seriale USB (opzionale)

Cavo seriale USB

Se non disponi di un cavo seriale USB per Roomba, puoi costruirlo facilmente con questo prodotto.

  • FTDI: TTL-232R-5V
  • Akiduki Denshi: TTL-232R-5V

Notare che l'interfaccia di Roomba è TTL (5V).

Connettore

È necessario un connettore mini-DIN a 8 pin per l'interfaccia seriale di Roomba. In realtà il connettore di Roomba è mini-DIN 7 pin, tuttavia è molto più facile acquistare un connettore a 8 pin che a 7 pin.

  • Digikey: connettore mini-DIN a 8 pin
  • Kyoritsu: connettore mini-DIN 8pin

saldatura

Saldare il cavo seriale al connettore a 8 pin. Controllare la connessione tramite l'immagine allegata e il documento delle specifiche dell'interfaccia aperta di Roomba.

Specifiche dell'interfaccia aperta di Roomba

Si prega di notare che è sicuro collegare Vcc (rosso) e RTS (verde) per evitare il problema del flusso hardware.

Passaggio 4: configurazione del modulo fotocamera Raspberry Pi (opzionale)

Configurazione del modulo fotocamera Raspberry Pi (opzionale)
Configurazione del modulo fotocamera Raspberry Pi (opzionale)
Configurazione del modulo fotocamera Raspberry Pi (opzionale)
Configurazione del modulo fotocamera Raspberry Pi (opzionale)

Se disponi del modulo fotocamera Raspberry Pi, puoi collegarlo a Raspberry Pi. Questo è facoltativo per l'apprendimento della navigazione, tuttavia è divertente avere una vista dalla vista del robot.

La parte di montaggio della fotocamera è inclusa anche nei dati del telaio su Thingiverse. Il modulo telecamera può essere fissato con quattro viti M2.

Passaggio 5: configurazione del PC locale

Configurazione del PC locale
Configurazione del PC locale

Installa Ubuntu

Installa Ubuntu 16.04 desktop seguendo la pagina ufficiale

Pagina ufficiale di Ubuntu

Installa ROS

Si prega di consultare la pagina ufficiale del ROS. Installa i pacchetti completi del desktop Kinetic.

Istruzioni per l'installazione di ROS Kinetic

Installa il pacchetto Roomblock ROS

Il pacchetto per roomblock è già stato rilasciato in Kinetic. Puoi installarli con il comando apt.

$ sudo apt install ros-kinetic-roomblock

Questo è tutto.

Se vuoi modificare e compilare il pacchetto dal codice sorgente, puoi scaricarli da GitHub.

GitHub - roomblock

Si prega di seguire le istruzioni in README.md.

In caso di problemi o domande riguardanti il software, si prega di fare un problema su GitHub Issues in modo che possiamo monitorare i problemi in modo efficiente. Si prega di evitare di pubblicarli su Instructables.

Passaggio 6: configurare Raspberry Pi

Configura Raspberry Pi
Configura Raspberry Pi

Installa Ubuntu

Installa Ubuntu 16.04 sul Raspberry Pi seguendo la guida all'installazione:

Wiki di Ubuntu: RaspberryPi

Installa ROS

Installa ROS Kinetic seguendo la guida all'installazione:

Installazione Ubuntu di ROS Kinetic

Installa il pacchetto Roomblock ROS

Devi installare il pacchetto roomblock dal codice sorgente. Il codice sorgente del pacchetto è su GitHub.

GitHub - roomblock

Si prega di seguire le istruzioni in README.md.

In caso di problemi o domande relative al software, si prega di fare un problema su GitHub Issues, in modo che possiamo monitorare i problemi in modo efficiente. Si prega di evitare di pubblicarli su Instructables.

Modulo fotocamera Raspberry Pi (opzionale)

Se hai un modulo fotocamera Rasberry Pi, devi installare libraspberrypi-dev. Si prega di consultare README.md in Github.

Passaggio 7: teleoperazione

Tele-operazione
Tele-operazione
Tele-operazione
Tele-operazione

Avvia il sistema di base su Raspberry Pi

Prima di tutto, devi far apparire il sysem. Sul terminale Raspberry Pi, avvia il sistema di base come:

$ export IP_ROS=INDIRIZZO_IP_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

RPLIDAR inizia a girare, e ora puoi connetterti al robot ROS master dal tuo PC locale.

Telegestione da PC locale

Puoi usare un joypad per azionare il robot. Se hai un joypad di XBox, puoi usare questo file di avvio. In caso contrario, potrebbe essere necessario modificare il file di avvio per adattarlo al joy pad. Si prega di consultare le pagine wiki del ROS per i dettagli.

ROS wiki - teleop_twist_joy

$ export ROS_MASTER_URI=https://IP_ADDRESS_OF_RASPBERRY_PI:11311$ roslaunch roomblock_bringup teleop.launch

Ora puoi controllare Roomba con il joystick.

Invece, puoi usare una tastiera.

$ export ROS_MASTER_URI=https://IP_ADDRESS_OF_RASPBERRY_PI:11311$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Si prega di consultare le pagine wiki del ROS per i dettagli.

ROS wiki - teleop_twist_keyboard

Passaggio 8: avviare il software di mappatura

Avvia il software di mappatura
Avvia il software di mappatura
Avvia il software di mappatura
Avvia il software di mappatura

Avvia il software di mappatura sul PC locale

Apri il software di mappatura per creare la mappa attorno al robot.

$ export ROS_MASTER_URI=https://IP_ADDRESS_OF_RASPBERRY_PI:11311$ export ROS_IP=IP_ADDRESS_OF_LOCAL_PC $ roslaunch roomblock_mapping gmapping.launch

Ora puoi vedere Rviz (software di visualizzazione). Aziona il robot nella stanza per creare una mappa della stanza.

Puoi consultare la pagina wiki del ROS per il sistema di mappatura.

  • ROS wiki - gmapping
  • ROS wiki - map_server

Passaggio 9: avviare la navigazione autonoma

Avvia la navigazione autonoma
Avvia la navigazione autonoma
Avvia la navigazione autonoma
Avvia la navigazione autonoma

Attiva il software di navigazione autonomo

Ora puoi avviare il sistema di navigazione autonomo sul PC locale come:

$ export ROS_MASTER_URI=https://IP_ADDRESS_OF_RASPBERRY_PI:11311$ export ROS_IP=IP_ADDRESS_OF_LOCAL_PC $ roslaunch rolomblock_navigation amcl.launch

Puoi usare Rviz per specificare l'obiettivo. Il robot dovrebbe raggiungere l'obiettivo in modo autonomo.

Si prega di consultare la pagina wiki del ROS per il sistema autonomo.

  • ROS wiki - navigazione
  • ROS wiki - amcl

Divertiti

Se hai domande generali o problemi su ROS, consulta il wiki di ROS. Non possiamo rispondere a domande generali sui ROS.

ROS wiki - Supporto

In caso di problemi o domande riguardanti il software Roomblock, si prega di fare un problema su GitHub Issues in modo che possiamo monitorare i problemi in modo efficiente. Si prega di evitare di pubblicarli su Instructables.

Consigliato: