Innehållsförteckning:

ROS MoveIt robotarm: 4 steg
ROS MoveIt robotarm: 4 steg

Video: ROS MoveIt robotarm: 4 steg

Video: ROS MoveIt robotarm: 4 steg
Video: ROS2 Moveit 2 Control of XArm 1S robot arm 2024, Juli
Anonim
Image
Image

Detta kommer att bli en serie artiklar om hur man gör en robotarm som styrs med ROS (Robotic Operating System) och MoveIt. Om du är i robotik är ROS en bra ram som hjälper dig att bygga bättre robotar snabbare. Det låter dig återanvända paket för olika robotsystem (datorsyn, kinematik, vägplanering, SLAM, etc.) som andra människor skapade. ROS är bra, men tyvärr har den en brant inlärningskurva.

Så denna handledning är en steg-för-steg-guide för att göra din första robotarm med rörelseplanering, riktad till övre nybörjare och mellanliggande nivåer. Jag antar att du inte har någon kunskap om ROS, men har viss grundläggande kunskap om Linux och Python, Arduino -programmeringskunskaper.

Steg 1: Förbered din miljö

Min miljö för utveckling är Ubuntu 16.04 LTS som körs i en virtuell låda (Windows 10 värdmaskin). Om du vill köra Ubuntu på VM är det bra, jag kan bekräfta att ROS Kinetic fungerar, om än med några finesser (särskilt 3D -acceleration och USB -stöd). Om du har en vanlig Ubuntu -installation skulle det fungera bättre.

Obs: Du kan installera ROS på Raspberry Pi, men tyvärr är det inte tillräckligt kraftfullt för att köra simuleringarna i Rviz, än mindre Gazebo.

1) Installera ROS Kinetic. Följ den här guiden för hur du installerar ROS Kinetic på Ubuntu 16.04.

2) Installera MoveIt. Flytta den! är ett paket för ROS för mobil manipulation, dvs. robotarmar.

3) Kontrollera om allt fungerar. Springa

roslaunch panda_moveit_config demo.launch rviz_tutorial: = true

om du vill, gå igenom moveit basic tutorial

4) Du måste också installera urdf_tutorial -paketet, vi använder det för att visualisera vårt pågående arbete.

sudo apt-get install ros-kinetic-urdf-tutorial

Steg 2: Skapa Urdf -fil

Skapa Urdf -fil
Skapa Urdf -fil
Skapa Urdf -fil
Skapa Urdf -fil

Om du följde MoveIt -snabbstartguiden borde du ha skapat catkin -arbetsytan i din hemkatalog (namnet på arbetsytan kan vara annorlunda, standard från moveit -handledning är ws_moveit). Gå till ~ ws_moveit/src och klona mitt github -repo där.

github.com/AIWintermuteAI/ros-moveit-arm.git

Om du använder samma robotarm som jag eller bara vill öva kan du lämna urdf -filen oförändrad, annars måste du ändra den för att motsvara den armmodell du har.

Här är en kort förklaring av urdf -fil, titta på mitt exempel och robotmodellen i rviz hjälper dig att förstå det bättre och ansöka om att skriva din egen urdf -fil

länkar är robotens delar, som en handled eller en plattform. De har följande egenskaper:

används för visuell representation i rviz och lusthus. Använder högkvalitativa maskor

används för kollisionskontroll vid banplanering. Rekommenderas att använda maskor av låg kvalitet, men för handledningens skull använder jag samma som för visuellt.

leder i urdf är kopplingar mellan länkar som beskriver hur de är placerade i förhållande till varandra och hur de rör sig. De har följande egenskaper:

fogens rotationsriktning (längs x-, y- eller z -axeln)

minsta och högsta grad av fogen i radianer. Gäller endast fogar av "roterande" typ ("kontinuerliga" skarvar har inga gränser, eftersom de, väl, roterar kontinuerligt)

fogens position i förhållande till ursprunget

beskriver vilka två länkar som är anslutna till leden

Om du använder samma robotarm som jag, måste du kopiera 3D -maskor av armen till urdf_tutorial -paketmappen. Gör det med det här kommandot

sudo cp/opt/ros/kinetic/share/urdf_tutorial/meshes/

Om du använder dina egna maskor, se till att de är centrerade kring ursprunget (xyz 000 i din favorit 3D -modelleringsprogramvara) innan du exporterar dem till binärt (!) Stl -format.

Nu kan du starta rviz för att visualisera resultaten med det här kommandot

roslaunch urdf_tutorial display.launch model: = arm.urdf

(starta den från mappen med urdf -filen du skapade just nu)

Kontrollera lederna och länkarna, se till att de roterar och placeras exakt som de ska. Om allt är okej, gå vidare till nästa steg.

Steg 3: Skapa robotkonfiguration med MoveIt Setup Assistant

Skapa robotkonfiguration med MoveIt Setup Assistant
Skapa robotkonfiguration med MoveIt Setup Assistant

Nu när din urdf -fil är klar är det dags att konvertera den till robotkonfigurationspaket.

Starta MoveIt Setup Assistant med följande kommando

roslaunch moveit_setup_assistant setup_assistant.launch

Processen beskrivs mycket väl i MoveIt officiella handledning, som du hittar här

När du har skapat konfigurationspaketet går du till din catkin -arbetsytemapp och kör

catkin make

för att bygga paketet. Nu kan du starta den med följande kommando

roslaunch my_arm_xacro demo.launch rviz_tutorial: = true

där du kommer att behöva ändra "my_arm_xacro" till namnet på ditt paket.

Steg 4: Klar

Gjort!
Gjort!
Gjort!
Gjort!

Om du lyckades lansera paketet ser du din robotmodell med interaktiva markörer. Du kommer att kunna styra det i simulering med markörerna och sedan trycka på "Planera och utföra" för den kinematiska lösaren för att hitta rätt väg till önskat tillstånd.

Det var steg ett, vi skapade en modell av vår robotarm och kan skörda kraften hos ROS för att beräkna och utföra rörelse i simuleringen! Nästa steg - gör det med den riktiga roboten, för det måste vi skriva en enkel robotstyrenhet …

Rekommenderad: