越疆魔术师DEBOT(magician)机械臂ROS、MoveIt!和Gazebo功能包与ROS-I教程(melodic)

网友投稿 1069 2022-05-30

原文地址:https://blog.csdn.net/qq_42145185/article/details/93501741

喜欢DEBOT的小伙伴,现在可以仿真玩耍机械臂啦,如果已经购买可以配合一起玩耍起来。

支持 Ubuntu 16.04 + ROS Kinetic 或 Ubuntu 18.04 + ROS Melodic。

不论是经典版本ROS1K还是最新版本ROS1M都完美支持!

效果如下,更多功能还在继续开发中,-参考本文第一行:

roslaunch magician_description gazebo.launch

roslaunch magician_moveit_config moveit_planning_execution.launch

动起来~

rviz+Gazebo同步执行:

更多功能参考和学习源码~

.

├── magician_background

│   ├── CMakeLists.txt

│   ├── include

│   │   └── magician_background

│   │   └── magician_teleop_background.h

│   ├── launch

│   │   └── magician_background.launch

│   ├── package.xml

│   ├── script

│   │   └── magician_panel.py

│   └── src

│   └── magician_teleop_background.cpp

├── magician_description

│   ├── CMakeLists.txt

│   ├── config

│   │   ├── gazebo_ros_control.yaml

│   │   ├── joint_state_controller.yaml

│   │   └── magician_arm_controller.yaml

│   ├── launch

│   │   ├── display.launch

│   │   └── gazebo.launch

│   ├── meshes

│   │   ├── magician_base.STL

│   │   ├── magician_base_surface.STL

│   │   ├── magician_link1.STL

│   │   ├── magician_link2.STL

│   │   ├── magician_link2_surface.STL

│   │   ├── magician_link3.STL

│   │   ├── magician_link3_surface.STL

│   │   ├── magician_link4.STL

│   │   └── magician_servos.STL

│   ├── package.xml

│   ├── urdf

│   │   ├── magician.gazebo

│   │   ├── magician_ikfast.urdf

│   │   ├── magician_open_chain.urdf.xacro

│   │   ├── magician_transmission.xacro

│   │   ├── magician.urdf

│   │   ├── magician.urdf.xacro

│   │   └── materials.xacro

│   └── urdf.rviz

├── magician_hardware

│   ├── CMakeLists.txt

│   ├── config

│   │   ├── joint_state_controller.yaml

│   │   └── magician_arm_controller.yaml

│   ├── include

│   │   └── magician_hardware

│   │   ├── magician_device.h

│   │   └── magician_hardware_interface.h

│   ├── launch

│   │   └── magician_bringup.launch

越疆魔术师DEBOT(magician)机械臂ROS、MoveIt!和Gazebo功能包与ROS-I教程(melodic)

│   ├── lib

│   │   ├── DobotDll_x64

│   │   │   ├── dobotdll_global.h

│   │   │   ├── DobotDll.h

│   │   │   ├── DobotType.h

│   │   │   ├── libDobotDll.so -> libDobotDll.so.1.0.0

│   │   │   ├── libDobotDll.so.1 -> libDobotDll.so.1.0.0

│   │   │   ├── libDobotDll.so.1.0 -> libDobotDll.so.1.0.0

│   │   │   ├── libDobotDll.so.1.0.0

│   │   │   ├── libicudata.so.53

│   │   │   ├── libicudata.so.53.1

│   │   │   ├── libicudata.so.56

│   │   │   ├── libicudata.so.56.1

│   │   │   ├── libicui18n.so.53

│   │   │   ├── libicui18n.so.53.1

│   │   │   ├── libicui18n.so.56

│   │   │   ├── libicui18n.so.56.1

│   │   │   ├── libicuuc.so.53

│   │   │   ├── libicuuc.so.53.1

│   │   │   ├── libicuuc.so.56

│   │   │   ├── libicuuc.so.56.1

│   │   │   ├── libQt5Core.la

│   │   │   ├── libQt5Core.prl

│   │   │   ├── libQt5Core.so

│   │   │   ├── libQt5Core.so.5

│   │   │   ├── libQt5Core.so.5.4 -> libQt5Core.so.5.4.0

│   │   │   ├── libQt5Core.so.5.4.0

│   │   │   ├── libQt5Core.so.5.6

│   │   │   ├── libQt5Core.so.5.6.0

│   │   │   ├── libQt5Network.la

│   │   │   ├── libQt5Network.prl

│   │   │   ├── libQt5Network.so

│   │   │   ├── libQt5Network.so.5

│   │   │   ├── libQt5Network.so.5.4 -> libQt5Network.so.5.4.0

│   │   │   ├── libQt5Network.so.5.4.0

│   │   │   ├── libQt5Network.so.5.6

│   │   │   ├── libQt5Network.so.5.6.0

│   │   │   ├── libQt5SerialPort.la

│   │   │   ├── libQt5SerialPort.prl

│   │   │   ├── libQt5SerialPort.so

│   │   │   ├── libQt5SerialPort.so.5

│   │   │   ├── libQt5SerialPort.so.5.4

│   │   │   ├── libQt5SerialPort.so.5.4.0

│   │   │   ├── libQt5SerialPort.so.5.6

│   │   │   └── libQt5SerialPort.so.5.6.0

│   │   └── DobotDll_x86

│   │   ├── dobotdll_global.h

│   │   ├── DobotDll.h

│   │   ├── DobotType.h

│   │   ├── libDobotDll.so -> libDobotDll.so.1.0.0

│   │   ├── libDobotDll.so.1 -> libDobotDll.so.1.0.0

│   │   ├── libDobotDll.so.1.0 -> libDobotDll.so.1.0.0

│   │   ├── libDobotDll.so.1.0.0

│   │   ├── libicudata.so.53 -> libicudata.so.53.1

│   │   ├── libicudata.so.53.1

│   │   ├── libicui18n.so.53 -> libicui18n.so.53.1

│   │   ├── libicui18n.so.53.1

│   │   ├── libicuuc.so.53 -> libicuuc.so.53.1

│   │   ├── libicuuc.so.53.1

│   │   ├── libQt5Core.so -> libQt5Core.so.5.4.0

│   │   ├── libQt5Core.so.5 -> libQt5Core.so.5.4.0

│   │   ├── libQt5Core.so.5.4 -> libQt5Core.so.5.4.0

│   │   ├── libQt5Core.so.5.4.0

│   │   ├── libQt5Network.so -> libQt5Network.so.5.4.0

│   │   ├── libQt5Network.so.5 -> libQt5Network.so.5.4.0

│   │   ├── libQt5Network.so.5.4 -> libQt5Network.so.5.4.0

│   │   ├── libQt5Network.so.5.4.0

│   │   ├── libQt5SerialPort.so -> libQt5SerialPort.so.5.4.0

│   │   ├── libQt5SerialPort.so.5 -> libQt5SerialPort.so.5.4.0

│   │   ├── libQt5SerialPort.so.5.4 -> libQt5SerialPort.so.5.4.0

│   │   └── libQt5SerialPort.so.5.4.0

│   ├── package.xml

│   └── src

│   ├── magician_device.cpp

│   ├── magician_hardware_interface.cpp

│   └── magician_hardware_node.cpp

├── magician_kinematics

│   ├── CMakeLists.txt

│   ├── include

│   │   └── magician_kinematics

│   │   └── magician_kinematics_end_adapter.h

│   ├── package.xml

│   └── src

│   └── magician_kinematics_end_adapter.cpp

├── magician_moveit_config

│   ├── CMakeLists.txt

│   ├── config

│   │   ├── chomp_planning.yaml

│   │   ├── fake_controllers.yaml

│   │   ├── joint_limits.yaml

│   │   ├── kinematics.yaml

│   │   ├── magician.srdf

│   │   ├── ompl_planning.yaml

│   │   ├── ros_controllers.yaml

│   │   └── sensors_3d.yaml

│   ├── launch

│   │   ├── chomp_planning_pipeline.launch.xml

│   │   ├── default_warehouse_db.launch

│   │   ├── demo_gazebo.launch

│   │   ├── demo.launch

│   │   ├── fake_moveit_controller_manager.launch.xml

│   │   ├── gazebo.launch

│   │   ├── joystick_control.launch

│   │   ├── magician_moveit_controller_manager.launch.xml

│   │   ├── magician_moveit_sensor_manager.launch.xml

│   │   ├── move_group.launch

│   │   ├── moveit_planning_execution.launch

│   │   ├── moveit.rviz

│   │   ├── moveit_rviz.launch

│   │   ├── ompl_planning_pipeline.launch.xml

│   │   ├── planning_context.launch

│   │   ├── planning_pipeline.launch.xml

│   │   ├── ros_controllers.launch

│   │   ├── run_benchmark_ompl.launch

│   │   ├── sensor_manager.launch.xml

│   │   ├── setup_assistant.launch

│   │   ├── trajectory_execution.launch.xml

│   │   ├── warehouse.launch

│   │   └── warehouse_settings.launch.xml

│   └── package.xml

├── magician_moveit_plugins

│   └── magician_arm_ikfast_plugin

│   ├── CMakeLists.txt

│   ├── include

│   │   └── ikfast.h

│   ├── magician_magician_arm_moveit_ikfast_plugin_description.xml

│   ├── package.xml

│   ├── src

│   │   ├── magician_magician_arm_ikfast_moveit_plugin.cpp

│   │   └── magician_magician_arm_ikfast_solver.cpp

│   └── update_ikfast_plugin.sh

├── magician_msgs

│   ├── CMakeLists.txt

│   ├── package.xml

│   └── srv

│   └── SetInt16.srv

└── roboticsgroup_gazebo_plugins

├── CMakeLists.txt

├── include

│   └── roboticsgroup_gazebo_plugins

│   ├── disable_link_plugin.h

│   └── mimic_joint_plugin.h

├── package.xml

├── README.md

└── src

├── disable_link_plugin.cpp

└── mimic_joint_plugin.cpp

37 directories, 162 files

如果想最快速入门ROS工业机器人,只推荐如下课程(支持indigo、kinetic和melodic),以m为例:

ROS工业机器人(Melodic)课程

设置

电脑设置

预备基础

C ++

麻省理工学院C ++课程简介

Bruce Eckel用C ++编程思考

Linux基础知识

Slides

练习0.1 - 介绍Ubuntu GUI

练习0.2 - Linux文件系统

启动终端

浏览目录和列表文件

修改文件

工作管理

基础内容

第1节 - ROS概念和基础

Slides

练习1.0 - ROS设置

练习1.1 - 创建工作区

练习1.2 - 安装包

练习1.3 - 包和节点

练习1.4 - 主题和消息

第2节 - 基本ROS应用

Slides

练习2.0 - 服务

练习2.1 - 行动

练习2.2 - 启动文件

练习2.3 - 参数

第3节 - 机械臂的运动控制

Slides

练习3.0 - URDF简介

练习3.1 - Workcell XACRO

练习3.2 - 使用TF进行变换

练习3.3 - 建立一个MoveIt!包

练习3.4 - 使用RViz进行运动规划

第四节 - 笛卡尔和感知

Slides

练习4.0 - 使用C ++进行运动规划

练习4.1 - 笛卡尔的介绍

练习4.2 - 感知介绍

应用程序演示1 - 感知驱动的操作

演示1 - 感知驱动的操作

应用程序演示2 - 笛卡尔计划和执行

演示2 - 笛卡尔的计划和执行

应用程序演示3 - 基于优化的路径规划

演示3 - 基于优化的路径规划

高级进阶内容

第5节 - 路径规划和构建感知管道

Slides

练习5.0 - 高级笛卡尔路径规划

练习5.1 - 构建感知管道

练习5.2 - STOMP简介

练习5.3 - Python的简单PCL接口

练习5.4 - OpenCV图像处理(Python)

第6节 - 文档、单元测试和ROS实用程序与调试

Slides

练习6.0 - 文档生成

练习6.1 - 单元测试

练习6.2 - 使用rqt工具进行分析

练习6.3 - ROS样式指南和ros_lint

练习6.4 - 使用Docker和Amazon Web Services(AWS)介绍ROS

Python

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微服务进阶(三):Dubbo服务治理
下一篇:C#记事本项目开发,一个可以实现批量操作的记事本!【附源码】
相关文章