Բովանդակություն:

ROS MoveIt Robotic Arm: 4 քայլ
ROS MoveIt Robotic Arm: 4 քայլ

Video: ROS MoveIt Robotic Arm: 4 քայլ

Video: ROS MoveIt Robotic Arm: 4 քայլ
Video: Hiwonder ArmPi Pro Raspberry Pi ROS Robotic Arm Developer Kit with 4WD Chassis Open Source Robot Car 2024, Հուլիսի
Anonim
Image
Image

Սա լինելու է հոդվածների շարք ՝ ROS- ով (Robotic Operating System) և MoveIt- ով կառավարվող ռոբոտային թև պատրաստելու մասին: Եթե դուք զբաղվում եք ռոբոտաշինությամբ, ROS- ը հիանալի շրջանակ է, որը կօգնի ձեզ ավելի արագ կառուցել ավելի լավ ռոբոտներ: Այն թույլ է տալիս կրկին օգտագործել տարբեր ռոբոտային համակարգերի փաթեթներ (համակարգչային տեսողություն, կինեմատիկա, ճանապարհների պլանավորում, SLAM և այլն), որոնք ստեղծել են այլ մարդիկ: ROS- ը հիանալի է, բայց, ցավոք, այն ունի ուսուցման կտրուկ կոր:

Այսպիսով, այս ձեռնարկը քայլ առ քայլ ուղեցույց է ՝ ձեր առաջին ռոբոտացված ձեռքը շարժման պլանավորմամբ պատրաստելու համար ՝ ուղղված սկսնակ և միջին մակարդակներին: Ենթադրում եմ, որ դուք ROS- ի իմացություն չունեք, բայց ունեք որոշ հիմնական գիտելիքներ Linux և Python, Arduino ծրագրավորման հմտություններ:

Քայլ 1: Պատրաստեք ձեր միջավայրը

Myարգացման իմ միջավայրը Ubuntu 16.04 LTS- ն է, որն աշխատում է Վիրտուալ արկղում (Windows 10 ընդունող մեքենա): Եթե ցանկանում եք Ubuntu- ն VM- ով գործարկել, ապա դա լավ է, ես կարող եմ հաստատել ROS Kinetic- ի աշխատանքները, չնայած որոշ տարօրինակություններով (մասնավորապես ՝ 3D արագացում և USB աջակցություն): Եթե դուք ունեք կանոնավոր Ubuntu տեղադրում, ապա այն ավելի լավ կաշխատի:

Նշում. Դուք կարող եք տեղադրել ROS- ը Raspberry Pi- ի վրա, բայց, ցավոք, այն բավական հզոր չէ Rviz- ում մոդելավորումները գործարկելու համար, առավել ևս `Gazebo- ի:

1) Տեղադրեք ROS կինետիկան: Հետևեք այս ուղեցույցին, թե ինչպես տեղադրել ROS Kinetic- ը Ubuntu 16.04 -ում:

2) Տեղադրեք MoveIt- ը: MoveIt! փաթեթ է բջջային շահարկումների համար ROS- ի համար, այսինքն ՝ ռոբոտային զենք:

3) Ստուգեք, արդյոք ամեն ինչ աշխատում է: Վազիր

roslaunch panda_moveit_config demo.launch rviz_tutorial: = true

եթե ցանկանում եք, անցեք moveit հիմնական ձեռնարկը

4) Դուք նույնպես պետք է տեղադրեք urdf_tutorial փաթեթը, մենք այն կօգտագործենք ընթացիկ մեր աշխատանքը պատկերացնելու համար:

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

Քայլ 2: Ստեղծեք Urdf ֆայլ

Ստեղծեք Urdf ֆայլ
Ստեղծեք Urdf ֆայլ
Ստեղծեք Urdf ֆայլ
Ստեղծեք Urdf ֆայլ

Եթե դուք հետևում եք MoveIt Quickstart ձեռնարկին, ապա պետք է ստեղծեիք catkin աշխատանքային տարածք ձեր տնային գրացուցակում (աշխատանքային տարածքի անունը կարող է տարբեր լինել, moveit- ի ձեռնարկից կանխադրվածը ws_moveit է): Գնացեք ~ ws_moveit/src և այնտեղ կլոնավորեք իմ github ռեպոն:

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

Եթե դուք օգտագործում եք նույն ռոբոտային ձեռքը, ինչ ես եմ անում կամ պարզապես ցանկանում եք զբաղվել, կարող եք թողնել urdf ֆայլը անփոփոխ, հակառակ դեպքում այն պետք է փոխեք `ձեր ձեռքի մոդելի համապատասխանեցման համար:

Ահա urdf ֆայլի համառոտ բացատրությունը, նայելով իմ օրինակին և rviz- ի ռոբոտի մոդելին, որը կօգնի ձեզ ավելի լավ հասկանալ այն և դիմել ձեր սեփական urdf ֆայլը գրելու համար:

հղումները ռոբոտի մասերն են ՝ դաստակի կամ հարթակի նման: Նրանք ունեն հետևյալ հատկությունները.

օգտագործվում է rviz- ում և gazebo- ում տեսողական ներկայացման համար: Օգտագործում է բարձրորակ ցանցեր

օգտագործվում է ճանապարհների պլանավորման ժամանակ բախումների ստուգման համար: Խորհուրդ է տրվում օգտագործել ցածրորակ ցանցեր, բայց ուսուցման համար ես օգտագործում եմ նույնը, ինչ տեսողականի համար:

urdf- ի հոդերը կապերի միջև եղած կապերն են, որոնք նկարագրում են, թե ինչպես են դրանք տեղակայված միմյանց նկատմամբ և ինչպես են դրանք շարժվում: Նրանք ունեն հետևյալ հատկությունները.

հոդի պտույտի ուղղությունը (x, y կամ z առանցքի երկայնքով)

հոդի նվազագույն և առավելագույն աստիճանը ռադիաններում: Կիրառելի է միայն «պտտվող» տիպի հոդերի համար («շարունակական» հոդերը սահմաններ չունեն, քանի որ նրանք, լավ, անընդհատ պտտվում են)

հոդի դիրքը ծագման հետ կապված

նկարագրում է, թե որ երկու օղակները կապված են հոդի հետ

Եթե դուք օգտագործում եք նույն ռոբոտային ձեռքը, ինչ ես, ապա ձեզ հարկավոր է պատճենել ձեռքի 3D ցանցերը urdf_tutorial փաթեթի թղթապանակում: Դա արեք այս հրամանով

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

Եթե դուք օգտագործում եք ձեր սեփական ցանցերը, համոզվեք, որ դրանք կենտրոնացած են ծագման շուրջ (xyz 000 ձեր նախընտրած 3D մոդելավորման ծրագրակազմում) նախքան դրանք երկուական (!) Stl ձևաչափով արտահանելը:

Այժմ կարող եք գործարկել rviz ՝ արդյունքները պատկերացնելու համար այս հրամանով

roslaunch urdf_tutorial display.launch model: = arm.urdf

(գործարկեք այն ձեր ստեղծած urdf ֆայլով թղթապանակից)

Ստուգեք հոդերը և կապերը, համոզվեք, որ դրանք պտտվում և տեղադրվում են ճիշտ այնպես, ինչպես պետք է: Եթե ամեն ինչ կարգին է, անցեք հաջորդ քայլին:

Քայլ 3. Ստեղծեք ռոբոտի կազմաձևում MoveIt Setup Assistant- ի միջոցով

Ստեղծեք ռոբոտի կազմաձևում MoveIt Setup Assistant- ի միջոցով
Ստեղծեք ռոբոտի կազմաձևում MoveIt Setup Assistant- ի միջոցով

Այժմ, երբ ձեր urdf ֆայլը պատրաստ է, ժամանակն է այն վերածել ռոբոտի կազմաձևման փաթեթի:

Գործարկեք MoveIt Setup Assistant- ը հետևյալ հրամանով

roslaunch moveit_setup_assistant setup_assistant.launch

Գործընթացը շատ լավ նկարագրված է MoveIt պաշտոնական ձեռնարկում, որը կարող եք գտնել այստեղ

Կազմաձևման փաթեթը ստեղծելուց հետո գնացեք ձեր catkin աշխատանքային տարածքի թղթապանակ և կատարեք

կատվի պատրաստում

փաթեթը կառուցելու համար: Այժմ կարող եք այն գործարկել հետևյալ հրամանով

roslaunch my_arm_xacro demo.launch rviz_tutorial: = ճշմարիտ

որտեղ դուք պետք է փոխեք «my_arm_xacro» - ը ձեր փաթեթի անվան:

Քայլ 4: Կատարված է:

Կատարած!
Կատարած!
Կատարած!
Կատարած!

Եթե փաթեթը հաջողությամբ գործարկեք, կտեսնեք ձեր ռոբոտի մոդելը ինտերակտիվ մարկերներով: Դուք կկարողանաք վերահսկել այն սիմուլյացիայի միջոցով `օգտագործելով մարկերները, այնուհետև սեղմել« Պլանավորել և կատարել »կինեմատիկական լուծիչի համար` ցանկալի վիճակի ճիշտ ուղին գտնելու համար:

Դա առաջին քայլն էր, մենք ստեղծեցինք մեր ռոբոտացված թևի մոդելը և կարող ենք քաղել ROS- ի ուժը ՝ մոդելավորման շարժումը հաշվարկելու և իրականացնելու համար: Հաջորդ քայլը `դա արեք իրական ռոբոտի հետ, դրա համար մեզ հարկավոր է գրել պարզ ռոբոտների վերահսկիչ…

Խորհուրդ ենք տալիս: