Projekt

Ogólne

Profil

Lab2 » Historia » Wersja 6

« Poprzednie - Wersja 6/17 (diff) - Następne » - Obecna wersja
Dawid Seredyński, 2018-06-13 16:09


Lab 2: Modeling and visualization of manipulator

Scope

Zajęcia składają się z kilku części:

  • Krótkiego wprowadzenia do zajęć
  • Przejścia rozdziałów przewodnika URDF na stronie ROS http://wiki.ros.org/urdf/Tutorials
  • Napisania własnego pakietu ROS w ramach zadania,

Szczegółowe uwagi do korzystania z przewodnika URDF, z podziałem na rozdziały:

  • Building a Visual Robot Model with URDF from Scratch
    • dla wygody i porządku twórzcie pliki URDF w katalogu urdf pakietu beginners_tutorials, który tworzyliście na poprzednich zajęciach.
    • w kolejnych podrozdziałach twórzcie kolejne pliki URDF zgodnie z wywołaniami roslaunch
    • finalnemu r2d2, troszeczkę zmienił się chwytak ;)
  • Building a Movable Robot Model with URDF
    • kontynuujemy tworzenie kolejnych plików URDF
  • Adding Physical and Collision Properties to a URDF Model
    • ten rozdział można pominąć, bo na laboratorium nie zajmujemy się dynamiką i tarciem
  • Using Xacro to Clean Up a URDF File
    • praktyczny przykład nie uruchamia się poprawnie
  • Understanding the PR2 Robot Description
    • ten rozdział można pominąć,
  • Create your own urdf file
    • kontynuujemy tworzenie kolejnych plików URDF
    • wersja ROS: kinetic jest nowsza od hydro
  • Parse a urdf file
    • kopiujemy plik urdf z pakietu beginners_tutorials
  • Using the robot state publisher on your own robot
    • ten rozdział jest mało czytelny i proponuję go pominąć
  • Start using the KDL parser
    • ten rozdział można pominąć
  • Using urdf with robot_state_publisher
    • ten rozdział pokazuje jak na poruszać z programu robotem opisanym za pomocą pliku URDF

The task:

  • Tworzymy własny pakiet jako nowy pakiet w katalogu roboczym wykorzystywanym podczas przechodzenia poprzedniego przewodnika
  • Tworzymy program (może korzystać z ROS), w którym przeliczymy parametry DH na reprezentacje rotacji adekwatną dla URDF (RPY lub kwaternion)
  • Tworzymy plik URDF robota o zadanych parametrach w notacji Denavita-Hartenberga
    • Całego robota można umieścić na członie (podstawie) unoszącym go ponad poziom ziemi
    • Do robota dołączamy narzędzie w postaci członu bez wewnętrznych stopni swobody
    • Parametry takie jak długość członów powinny być wczytywane z serwera parametrów
  • W pierwszym podejściu traktujemy stawy jako zablokowane
  • Tworzymy plik roslaunch i wizualizujemy robota w RVIZ, z użyciem robot_state_publisher
    schemat a węzłów ROS ANRO laboratorium 2
  • Tworzymy drugi plik URDF z ruchomymi stawami
  • Tworzymy drugi plik roslauch, który uruchomi joint_state_publisher do poruszania stawami * Oba pliki roslaunch uruchamiamy w oddzielnych konsolach. Pierwszy uruchamia RVIZ i jest stale uruchomiony, o ile nie zmienia się plik URDF. Drugi uruchamia pozostałe części systemu.
    schemat b węzłów ROS ANRO laboratorium 2
  • Tradycyjnie efekty wrzucamy na GitHub
  • W ramach repozytorium na serwerze GitHub z własnym pakietem dodajemy wiki z opisem plików źródłowych, instrukcją jak uruchomić system opisany w pliku roslaunch oraz przebiegiem testów. * Dodatkowo tradycyjnie schemat i opis struktury systemu wraz z użytymi mechanizmami komunikacji oraz schemat struktury manipulatora zawartej w plikach URDF. * Dokumentację uzupełniamy opisem testów. Właściwe jest użycie m.in. narzędzi takich jak rqt_plot do utworzenia wykresów przebiegów zmiennych na kanałach komunikacyjnych np. JointState, czy też tf.
  • Testujemy system i przedstawiamy prowadzącemu do oceny

lab2-scheme-b.png (6,84 KB) Dawid Seredyński, 2018-06-13 21:53

lab2-scheme-a.png (4,68 KB) Dawid Seredyński, 2018-06-13 21:53

tutorial_urdf_1.pdf - URDF tutorial: Building a Visual Robot Model with URDF from Scratch (544 KB) Dawid Seredyński, 2019-07-24 16:08

tutorial_urdf_2.pdf - URDF tutorial: Building a Movable Robot Model with URDF (201 KB) Dawid Seredyński, 2019-07-24 16:11

tutorial_urdf_6.pdf - URDF tutorial: Create your own urdf file (230 KB) Dawid Seredyński, 2019-07-24 16:13