![ROS MoveIt Robotic Arm: 4 ขั้นตอน ROS MoveIt Robotic Arm: 4 ขั้นตอน](https://i.howwhatproduce.com/images/006/image-15917-11-j.webp)
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
![Image Image](https://i.howwhatproduce.com/images/006/image-15917-13-j.webp)
![](https://i.ytimg.com/vi/d7CA0JLIH9Y/hqdefault.jpg)
นี่จะเป็นชุดบทความเกี่ยวกับการสร้างแขนหุ่นยนต์ที่ควบคุมด้วย ROS (ระบบปฏิบัติการหุ่นยนต์) และ MoveIt หากคุณชอบหุ่นยนต์ ROS เป็นเฟรมเวิร์กที่ยอดเยี่ยมที่จะช่วยให้คุณสร้างหุ่นยนต์ที่ดีขึ้นได้เร็วยิ่งขึ้น ช่วยให้คุณสามารถนำแพ็คเกจกลับมาใช้ใหม่สำหรับระบบหุ่นยนต์ต่างๆ (คอมพิวเตอร์วิทัศน์ จลนศาสตร์ การวางแผนเส้นทาง สแลม ฯลฯ) ที่ผู้อื่นสร้างขึ้น ROS นั้นยอดเยี่ยม แต่น่าเสียดายที่มีช่วงการเรียนรู้ที่สูงชัน
ดังนั้นบทช่วยสอนนี้เป็นคำแนะนำทีละขั้นตอนในการสร้างแขนหุ่นยนต์ตัวแรกของคุณด้วยการวางแผนการเคลื่อนไหว โดยมุ่งเป้าไปที่ระดับเริ่มต้นและระดับกลาง ฉันคิดว่าคุณไม่มีความรู้เกี่ยวกับ ROS แต่มีความรู้พื้นฐานเกี่ยวกับ Linux และ Python, ทักษะการเขียนโปรแกรม Arduino
ขั้นตอนที่ 1: เตรียมสภาพแวดล้อมของคุณ
สภาพแวดล้อมของฉันสำหรับการพัฒนาคือ Ubuntu 16.04 LTS ที่ทำงานใน Virtual Box (เครื่องโฮสต์ Windows 10) หากคุณต้องการเรียกใช้ Ubuntu บน VM ก็ไม่เป็นไร ฉันสามารถยืนยันได้ว่า ROS Kinetic ใช้งานได้ แม้ว่าจะมีความไม่ชอบมาพากลบางอย่าง (โดยเฉพาะการเร่งความเร็ว 3 มิติและการรองรับ USB) หากคุณมีการติดตั้ง Ubuntu เป็นประจำ มันจะทำงานได้ดีขึ้น
หมายเหตุ: คุณสามารถติดตั้ง ROS บน Raspberry Pi ได้ แต่น่าเสียดายที่มันไม่มีประสิทธิภาพเพียงพอที่จะเรียกใช้การจำลองใน Rviz นับประสา Gazebo
1) ติดตั้ง ROS Kinetic ทำตามคำแนะนำนี้เกี่ยวกับวิธีการติดตั้ง ROS Kinetic บน Ubuntu 16.04
2) ติดตั้ง 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](https://i.howwhatproduce.com/images/006/image-15917-14-j.webp)
![สร้างไฟล์ Urdf สร้างไฟล์ Urdf](https://i.howwhatproduce.com/images/006/image-15917-15-j.webp)
หากคุณทำตามบทแนะนำการเริ่มต้นอย่างรวดเร็วของ MoveIt คุณควรสร้างพื้นที่ทำงาน catkin ในโฮมไดเร็กตอรี่ของคุณ (ชื่อของพื้นที่ทำงานอาจแตกต่างกัน ค่าเริ่มต้นจากการสอน moveit คือ ws_moveit) ไปที่ ~ws_moveit/src และโคลน github repo ของฉันที่นั่น
github.com/AIWintermuteAI/ros-moveit-arm.git
หากคุณกำลังใช้แขนกลแบบเดียวกับที่ฉันทำหรือเพียงแค่ต้องการฝึกฝน คุณสามารถปล่อยให้ไฟล์ urdf ไม่เปลี่ยนแปลง ไม่เช่นนั้นคุณจะต้องเปลี่ยนมันเพื่อให้สอดคล้องกับโมเดลแขนที่คุณมี
นี่คือคำอธิบายสั้น ๆ ของไฟล์ urdf การดูตัวอย่างของฉันและโมเดลหุ่นยนต์ใน rviz จะช่วยให้คุณเข้าใจได้ดีขึ้นและสมัครเพื่อเขียนไฟล์ urdf ของคุณเอง
ข้อต่อคือส่วนต่างๆ ของหุ่นยนต์ เช่น ข้อมือหรือแท่น พวกเขามีคุณสมบัติดังต่อไปนี้:
ใช้สำหรับการแสดงภาพใน rviz และศาลา ใช้ตาข่ายคุณภาพสูง
ใช้สำหรับตรวจสอบการชนกันระหว่างการวางแผนเส้นทาง แนะนำให้ใช้เมชคุณภาพต่ำ แต่สำหรับการสอนฉันก็ใช้แบบเดียวกับวิชวล
ข้อต่อใน urdf คือการเชื่อมต่อระหว่างลิงก์ที่อธิบายว่าตำแหน่งมีความสัมพันธ์กันอย่างไรและเคลื่อนไหวอย่างไร พวกเขามีคุณสมบัติดังต่อไปนี้:
ทิศทางการหมุนของข้อต่อ (ตามแกน x, y หรือ z)
ระดับต่ำสุดและสูงสุดของข้อต่อเป็นเรเดียน ใช้ได้กับข้อต่อประเภท "หมุนวน" เท่านั้น (ข้อต่อ "ต่อเนื่อง" ไม่มีข้อ จำกัด เนื่องจากหมุนอย่างต่อเนื่อง)
ตำแหน่งของข้อต่อที่สัมพันธ์กับแหล่งกำเนิด
อธิบายว่าสองลิงค์ใดที่เชื่อมต่อกับข้อต่อ
หากคุณกำลังใช้แขนหุ่นยนต์แบบเดียวกับฉัน คุณจะต้องคัดลอกตาข่าย 3 มิติของแขนไปยังโฟลเดอร์แพ็คเกจ urdf_tutorial ทำตามคำสั่งนี้
sudo cp /opt/ros/kinetic/share/urdf_tutorial/meshes/
หากคุณกำลังใช้เมชของคุณเอง ตรวจสอบให้แน่ใจว่าเมชอยู่กึ่งกลางที่จุดกำเนิด (xyz 000 ในซอฟต์แวร์การสร้างแบบจำลอง 3 มิติที่คุณชื่นชอบ) ก่อนที่คุณจะส่งออกไปยังรูปแบบไบนารี (!) stl
ตอนนี้คุณสามารถเปิด rviz เพื่อแสดงผลลัพธ์ด้วยคำสั่งนี้
roslaunch urdf_tutorial display.launch รุ่น:=arm.urdf
(เปิดจากโฟลเดอร์ที่มีไฟล์ urdf ที่คุณสร้างขึ้นเมื่อครู่นี้)
ตรวจสอบข้อต่อและข้อต่อ ตรวจสอบให้แน่ใจว่าได้หมุนและจัดตำแหน่งตามที่ควรจะเป็น หากทุกอย่างเรียบร้อย ให้ไปยังขั้นตอนถัดไป
ขั้นตอนที่ 3: สร้างการกำหนดค่าหุ่นยนต์ด้วย MoveIt Setup Assistant
![สร้างการกำหนดค่าหุ่นยนต์ด้วย MoveIt Setup Assistant สร้างการกำหนดค่าหุ่นยนต์ด้วย MoveIt Setup Assistant](https://i.howwhatproduce.com/images/006/image-15917-16-j.webp)
ตอนนี้เมื่อไฟล์ urdf ของคุณพร้อม ก็ถึงเวลาแปลงเป็นแพ็คเกจการกำหนดค่าหุ่นยนต์
เรียกใช้ MoveIt Setup Assistant ด้วยคำสั่งต่อไปนี้
roslaunch moveit_setup_assistant setup_assistant.launch
กระบวนการนี้อธิบายไว้อย่างดีในบทช่วยสอนอย่างเป็นทางการของ MoveIt ซึ่งคุณสามารถหาได้ที่นี่
หลังจากที่คุณสร้างแพ็คเกจการกำหนดค่าแล้ว ให้ไปที่โฟลเดอร์พื้นที่ทำงาน catkin ของคุณและดำเนินการ
ทำแมว
เพื่อสร้างแพ็คเกจ ตอนนี้คุณสามารถเปิดใช้งานได้ด้วยคำสั่งต่อไปนี้
roslaunch my_arm_xacro demo.launch rviz_tutorial:=true
โดยคุณจะต้องเปลี่ยน "my_arm_xacro" เป็นชื่อแพ็คเกจของคุณ
ขั้นตอนที่ 4: เสร็จแล้ว
![เสร็จแล้ว! เสร็จแล้ว!](https://i.howwhatproduce.com/images/006/image-15917-17-j.webp)
![เสร็จแล้ว! เสร็จแล้ว!](https://i.howwhatproduce.com/images/006/image-15917-18-j.webp)
หากคุณเปิดตัวแพ็คเกจสำเร็จ คุณจะเห็นโมเดลหุ่นยนต์ของคุณพร้อมเครื่องหมายแบบโต้ตอบ คุณจะสามารถควบคุมมันได้ในการจำลอง โดยใช้มาร์กเกอร์ จากนั้นกด "วางแผนและดำเนินการ" เพื่อให้โปรแกรมแก้ปัญหาไคเนมาติกค้นหาเส้นทางที่ถูกต้องไปยังสถานะที่ต้องการ
นั่นคือขั้นตอนที่หนึ่ง เราได้สร้างแบบจำลองแขนหุ่นยนต์ของเรา และสามารถเก็บเกี่ยวพลังของ ROS เพื่อคำนวณและดำเนินการเคลื่อนไหวในการจำลองได้! ขั้นตอนต่อไป - ทำกับหุ่นยนต์จริง เพื่อที่เราจะต้องเขียนตัวควบคุมหุ่นยนต์อย่างง่าย…
แนะนำ:
เกม Robotic Arm - ตัวควบคุมสมาร์ทโฟน: 6 ขั้นตอน
![เกม Robotic Arm - ตัวควบคุมสมาร์ทโฟน: 6 ขั้นตอน เกม Robotic Arm - ตัวควบคุมสมาร์ทโฟน: 6 ขั้นตอน](https://i.howwhatproduce.com/images/010/image-28794-j.webp)
เกม Robotic Arm - ตัวควบคุมสมาร์ทโฟน: สวัสดี ! นี่คือเกมฤดูร้อนแสนสนุก: แขนกลที่ควบคุมโดยสมาร์ทโฟน !!ดังที่คุณเห็นในวิดีโอ คุณสามารถควบคุม Arm ด้วยจอยสติ๊กบนสมาร์ทโฟนของคุณ คุณยังสามารถบันทึกรูปแบบ ที่หุ่นยนต์จะทำซ้ำแบบวนซ้ำเพื่อ
Arduino Robotic Arm: 12 ขั้นตอน
![Arduino Robotic Arm: 12 ขั้นตอน Arduino Robotic Arm: 12 ขั้นตอน](https://i.howwhatproduce.com/images/011/image-30232-j.webp)
Arduino Robotic Arm: คำแนะนำนี้ถูกสร้างขึ้นเพื่อตอบสนองความต้องการของโครงการของ Makecourse ที่มหาวิทยาลัยเซาท์ฟลอริดา เหล่านี้เป็นส่วนประกอบพื้นฐานที่จำเป็นในการประกอบโครงการนี้
ROS Robotic Controller ที่ใช้ Matlab: 9 ขั้นตอน
![ROS Robotic Controller ที่ใช้ Matlab: 9 ขั้นตอน ROS Robotic Controller ที่ใช้ Matlab: 9 ขั้นตอน](https://i.howwhatproduce.com/images/011/image-31405-j.webp)
ROS Robotic Controller ที่ใช้ Matlab: ตั้งแต่ฉันยังเป็นเด็ก ฉันใฝ่ฝันที่จะเป็น Iron Man และยังคงทำเช่นนั้น Iron Man เป็นหนึ่งในตัวละครเหล่านั้นซึ่งเป็นไปได้อย่างสมจริง และเพียงแค่ทำให้ฉันปรารถนาที่จะเป็น Iron Man สักวันหนึ่ง แม้ว่าผู้คนจะหัวเราะเยาะฉันหรือบอกว่ามันเป็นไปไม่ได้
Robotic Arm Gripper: 3 ขั้นตอน (พร้อมรูปภาพ)
![Robotic Arm Gripper: 3 ขั้นตอน (พร้อมรูปภาพ) Robotic Arm Gripper: 3 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/011/image-31508-j.webp)
Robotic Arm Gripper: กริปเปอร์หุ่นยนต์ที่ผลิตโดยเครื่องพิมพ์ 3 มิตินี้สามารถควบคุมได้ด้วยเซอร์โวราคาไม่แพงสองตัว (MG90 หรือ SG90) เราใช้เครื่องป้องกันสมอง (+Arduino) เพื่อควบคุมแคลมป์และแอปควบคุม jjRobots เพื่อย้ายทุกอย่างจากระยะไกลผ่าน WIFI แต่คุณสามารถใช้
ROS MoveIt Robotic Arm Part 2: Robot Controller: 6 ขั้นตอน
![ROS MoveIt Robotic Arm Part 2: Robot Controller: 6 ขั้นตอน ROS MoveIt Robotic Arm Part 2: Robot Controller: 6 ขั้นตอน](https://i.howwhatproduce.com/images/006/image-15880-23-j.webp)
ROS MoveIt Robotic Arm ตอนที่ 2: Robot Controller: https://github.com/AIWintermuteAI/ros-moveit-arm.gitในส่วนก่อนหน้าของบทความ เราได้สร้างไฟล์ URDF และ XACRO สำหรับแขนหุ่นยนต์ของเรา และเปิดตัว RVIZ เพื่อควบคุมของเรา แขนกลหุ่นยนต์ในสภาพแวดล้อมจำลอง ครั้งนี้เราจะทำกับเรีย