Talaan ng mga Nilalaman:

Roomblock: isang Platform para sa Pag-aaral ng Pag-navigate sa ROS Sa Roomba, Raspberry Pi at RPLIDAR: 9 Mga Hakbang (na may Mga Larawan)
Roomblock: isang Platform para sa Pag-aaral ng Pag-navigate sa ROS Sa Roomba, Raspberry Pi at RPLIDAR: 9 Mga Hakbang (na may Mga Larawan)

Video: Roomblock: isang Platform para sa Pag-aaral ng Pag-navigate sa ROS Sa Roomba, Raspberry Pi at RPLIDAR: 9 Mga Hakbang (na may Mga Larawan)

Video: Roomblock: isang Platform para sa Pag-aaral ng Pag-navigate sa ROS Sa Roomba, Raspberry Pi at RPLIDAR: 9 Mga Hakbang (na may Mga Larawan)
Video: Hev Abi - Para Sa Streets (Official Lyric Video) (Prod. Noane) 2024, Hulyo
Anonim
Image
Image
Ang iyong kailangan
Ang iyong kailangan

Ano ito?

Ang "Roomblock" ay isang platform ng robot na binubuo ng isang Roomba, isang Raspberry Pi 2, isang laser sensor (RPLIDAR) at isang mobile na baterya. Ang mounting frame ay maaaring gawin ng mga 3D printer. Pinapayagan ang sistema ng nabigasyon ng ROS na gumawa ng isang mapa ng mga silid at gamitin ito upang maabot ang layunin nang autonomiya.

Sino ang nangangailangan nito?

Sinumang nais na malaman ang mga teknolohiyang may katamtaman ng robotic nabigasyon, pagmamapa, at autonomous na pagmamaneho. Ang robot na ito ay maaaring maitayo nang madali at mas mababang gastos kaysa sa iba pang mga komersyal na platform. Ang ROS ay de facto standard na system ng software ngayon para sa robotic na larangan ng pagsasaliksik. Ipinapakita ng pelikulang ito kung ano ang posible sa nabigasyon ng ROS system.

Hakbang 1: Ano ang Kailangan Mo

Ang iyong kailangan
Ang iyong kailangan
Ang iyong kailangan
Ang iyong kailangan
Bumuo ng isang USB-serial Cable (Opsyonal)
Bumuo ng isang USB-serial Cable (Opsyonal)
Bumuo ng isang USB-serial Cable (Opsyonal)
Bumuo ng isang USB-serial Cable (Opsyonal)

USB-serial cable

Kung wala kang USB-serial cable para sa Roomba, madali mo itong mabubuo sa produktong ito.

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

Pansinin na ang nasa unahan ng Roomba ay TTL (5V).

Konektor

Kailangan mo ng isang konektor ng mini-DIN 8 pin para sa serial interface ng Roomba. Sa totoo lang ang konektor ng Roomba ay mini-DIN 7 pin, subalit, mas madaling bumili ng 8 pin kaysa sa 7 pin na konektor.

  • Digikey: konektor ng mini-DIN 8pin
  • Kyoritsu: mini-DIN 8pin na konektor

Paghihinang

Paghinang ng serial cable sa konektor ng 8 pin. Suriin ang koneksyon sa pamamagitan ng nakalakip na larawan, at ang dokumento ng Roomba bukas na pagtutukoy ng interface.

Pagtutukoy ng Roomba Open Interface

Mangyaring tandaan, ligtas na ikonekta ang Vcc (Red) at RTS (Green) para sa pag-iwas sa isyu ng daloy ng hardware.

Hakbang 4: I-setup ang Raspberry Pi Camera Module (Opsyonal)

I-setup ang Raspberry Pi Camera Module (Opsyonal)
I-setup ang Raspberry Pi Camera Module (Opsyonal)
I-setup ang Raspberry Pi Camera Module (Opsyonal)
I-setup ang Raspberry Pi Camera Module (Opsyonal)

Kung mayroon kang module ng Raspberry Pi camera, maaari mo itong ikabit sa Raspberry Pi. Opsyonal ito para sa pag-aaral ng nabigasyon, gayunpaman, nakakatuwang makakuha ng isang pagtingin mula sa paningin ng robot.

Ang bahagi ng mount ng camera ay kasama rin sa data ng frame sa Thingiverse. Ang module ng camera ay maaaring maayos sa apat na M2 screws.

Hakbang 5: I-setup ang Lokal na PC

I-setup ang Lokal na PC
I-setup ang Lokal na PC

I-install ang Ubuntu

I-install ang desktop ng Ubuntu 16.04 na sumusunod sa opisyal na pahina

Opisyal na pahina ng Ubuntu

I-install ang ROS

Plase kumunsulta sa opisyal na pahina ng ROS. I-install ang Kinetic desktop buong mga pakete.

Mga tagubilin sa pag-install ng ROS Kinetic

I-install ang Roomblock ROS package

Ang pakete para sa roomblock ay inilabas na sa Kinetic. Maaari mong i-install ang mga ito sa pamamagitan ng apt na utos.

$ sudo apt i-install ang ros-kinetic-roomblock

Ayan yun.

Kung nais mong baguhin at buuin ang package mula sa source code, makukuha mo sila mula sa GitHub.

GitHub - roomblock

Mangyaring sundin ang tagubilin sa README.md.

Kung mayroon kang anumang problema o katanungan tungkol sa software, mangyaring gumawa ng isang isyu sa Mga Isyu sa GitHub upang masusubaybayan namin nang maayos ang mga problema. Mangyaring iwasan na mai-post ang mga ito sa Mga Instructable.

Hakbang 6: I-setup ang Raspberry Pi

I-setup ang Raspberry Pi
I-setup ang Raspberry Pi

I-install ang Ubuntu

I-install ang Ubuntu 16.04 sa Raspberry Pi sumusunod sa gabay sa pag-install:

Ubuntu Wiki: RaspberryPi

I-install ang ROS

I-install ang ROS Kinetic sumusunod sa gabay sa pag-install:

Pag-install ng Ubuntu ng ROS Kinetic

I-install ang Roomblock ROS package

Kailangan mong mag-install ng roomblock package mula sa source code. Ang source code ng package ay nasa GitHub.

GitHub - roomblock

Mangyaring sundin ang tagubilin sa README.md.

Kung mayroon kang anumang problema o katanungan tungkol sa software, mangyaring gumawa ng isang isyu sa Mga Isyu sa GitHub, upang masusubaybayan namin nang maayos ang mga problema. Mangyaring iwasan na mai-post ang mga ito sa Mga Instructable.

Module ng Raspberry Pi camera (Opsyonal)

Kung mayroon kang isang module ng Rasberry Pi camera, kailangan mong mag-install ng libraspberrypi-dev. Mangyaring kumunsulta sa README.md sa Github.

Hakbang 7: Tele-operasyon

Tele-operasyon
Tele-operasyon
Tele-operasyon
Tele-operasyon

Dalhin ang base system sa Raspberry Pi

Una sa lahat, kailangan mong ilabas ang sysem. Sa terminal ng Raspberry Pi, ilunsad ang pangunahing sistema bilang:

$ export ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

Magsimula ang RPLIDAR upang paikutin, at ngayon ay makakonekta ka sa robot na ROS master mula sa iyong lokal na PC.

Tele-operasyon mula sa lokal na PC

Maaari kang gumamit ng isang Joy Pad upang mapatakbo ang robot. Kung mayroon kang isang Joy Pad ng XBox, maaari mong gamitin ang paglulunsad na file na ito. Kung hindi man, maaaring kailanganin mong baguhin ang file ng paglulunsad upang magkasya ang iyong joy pad. Plase kumunsulta sa mga pahina ng wiki ng ROS para sa detalye.

ROS wiki - teleop_twist_joy

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

Ngayon ay makokontrol mo ang Roomba gamit ang joystick.

Sa halip, maaari kang gumamit ng isang keyboard.

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

Mangyaring kumunsulta sa mga pahina ng wiki ng ROS para sa detalye.

ROS wiki - teleop_twist_keyboard

Hakbang 8: Ilunsad ang Mapping Software

Ilunsad ang Mapping Software
Ilunsad ang Mapping Software
Ilunsad ang Mapping Software
Ilunsad ang Mapping Software

Dalhin ang software ng pagmamapa sa lokal na PC

Dalhin ang software ng pagmamapa upang likhain ang mapa sa paligid ng 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

Maaari mo na ngayong makita ang Rviz (visualization software). Patakbuhin ang robot sa paligid ng silid upang lumikha ng isang mapa ng silid.

Maaari kang kumunsulta sa pahina ng wiki ng ROS para sa sistema ng pagmamapa.

  • ROS wiki - gmapping
  • ROS wiki - map_server

Hakbang 9: Ilunsad ang Autonomous Navigation

Ilunsad ang Autonomous Navigation
Ilunsad ang Autonomous Navigation
Ilunsad ang Autonomous Navigation
Ilunsad ang Autonomous Navigation

Magdala ng autonomous na software ng pag-navigate

Ngayon ay maaari mong simulan ang autonomous na sistema ng nabigasyon sa lokal na PC bilang:

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

Maaari mong gamitin ang Rviz upang tukuyin ang layunin. Ang robot ay dapat na pumunta sa layunin autonomous.

Mangyaring kumunsulta sa pahina ng wiki ng ROS para sa sistemang autonomous.

  • ROS wiki - nabigasyon
  • ROS wiki - amcl

Magsaya ka

Kung mayroon kang mga pangkalahatang katanungan o problema tungkol sa ROS, mangyaring kumunsulta sa wiki ng ROS. Hindi namin masasagot ang mga pangkalahatang katanungan sa ROS.

ROS wiki - Suporta

Kung mayroon kang anumang problema o katanungan tungkol sa Roomblock software, mangyaring gumawa ng isang isyu sa Mga Isyu sa GitHub upang masusubaybayan namin nang maayos ang mga problema. Mangyaring iwasan na mai-post ang mga ito sa Mga Instructable.

Inirerekumendang: