越疆科技dobot(magician)机械臂在ROS moveit下gazebo仿真控制和真实控制功能包 有兴趣的可以下载来玩

16 篇文章 10 订阅
3 篇文章 3 订阅

 功能包下载链接:https://download.csdn.net/download/qq_42145185/11256475

 

 

 

Magician Robotarm
======
本文件夹中包含了多个为Magician机械臂提供ROS支持的软件包。推荐的运行环境为 Ubuntu 16.04 + ROS Kinetic 或 Ubuntu 18.04 + ROS Melodic,其他环境下的运行情况没有测试过。

#### Ubuntu 16.04 + ROS Kinetic

**安装一些重要的依赖包**
```sh
$ sudo apt-get install ros-kinetic-gazebo-ros-control ros-kinetic-ros-control ros-kinetic-ros-controllers
```
**安装和升级MoveIt!** 

```sh
$ sudo apt-get update
$ sudo apt-get install ros-kinetic-moveit
```

**安装本软件包**

首先创建catkin工作空间 ([教程](http://wiki.ros.org/catkin/Tutorials))。 然后将本文件夹放到src/目录下,之后用catkin_make来编译。假设你的工作空间是~/catkin_ws,你需要运行的命令如下:
```sh
$ cd ~/catkin_ws/src
$ git clone -b kinetic-devel http://192.168.0.11:10080/ros/magician_robot.git
$ cd ..
$ catkin_make
$ source devel/setup.bash
```

#### Ubuntu 18.04 + ROS Melodic

**安装一些重要的依赖包**
```sh
$ sudo apt-get install ros-melodic-gazebo-ros-control ros-melodic-ros-control ros-melodic-ros-controllers
```
**安装和升级MoveIt!** 

```sh
$ sudo apt-get update
$ sudo apt-get install ros-melodic-moveit
```

**安装本软件包**

首先创建catkin工作空间 ([教程](http://wiki.ros.org/catkin/Tutorials))。 然后将本文件夹放到src/目录下,之后用catkin_make来编译。假设你的工作空间是~/catkin_ws,你需要运行的命令如下:
```sh
$ cd ~/catkin_ws/src
$ git clone -b melodic-devel http://192.168.0.11:10080/ros/magician_robot.git
$ cd ..
$ catkin_make
$ source devel/setup.bash
```

---

### 使用仿真模型

用Gazebo仿真请运行:
```sh
$ roslaunch magician_description gazebo.launch
```

运行MoveIt!模块, RViz界面:
```sh
$ roslaunch magician_moveit_config moveit_planning_execution.launch
```

运行后台程序及Magician Control Panel界面:
```sh
$ roslaunch magician_background magician_background.launch
```

> 关于MoveIt!的使用方法可以参考[docs/moveit_plugin_tutorial.md](docs/moveit_plugin_tutorial.md)  
Tips:  
每次规划路径时,都要设置初始位置为当前位置。

### 使用真实机械臂
将Magician通过USB线连接到电脑。用以下命令可以查到当前电脑连接的USB设备的编号:
```sh
$ ls /dev/ttyUSB*
```
本软件包默认的编号是ttyUSB0 。假如当前编号不是0的话,请对magician_hardware/launch/magician_bringup.launch的相应部分进行修改。
```
  <node name="magician_hardware" pkg="magician_hardware" type="magician_hardware_node" args="ttyUSB0" output="screen"/>
```
现假设设备编号是ttyUSB0,运行以下指令来启动驱动:
```sh
$ sudo chmod 777 /dev/ttyUSB0
$ roslaunch magician_hardware magician_bringup.launch
```
运行MoveIt!模块和RViz界面:
```sh
$ roslaunch magician_moveit_config moveit_planning_execution.launch
```
> 关于MoveIt!的使用方法可以参考[docs/moveit_plugin_tutorial.md](docs/moveit_plugin_tutorial.md)  
Tips:  
1.每次规划路径时,都要设置初始位置为当前位置。  
2.Magician各轴运动角度范围为 J1: [-125°~125°]; J2: [20°~90°]; J3: [35°~90°]。在此范围外时MoveIt!无法进行规划。

运行后台程序及Magician Control Panel界面:
```sh
$ roslaunch magician_background magician_background.launch
```

  • 7
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 35
    评论
要在ROS中使用Python控制越疆科技的魔术师机械臂,可以使用以下步骤: 1. 安装机械臂驱动程序和ROS 可以从越疆科技官网下载机械臂驱动程序和ROS,并按照说明进行安装。 2. 创建ROS工作空间 可以使用以下命令创建ROS工作空间: ``` mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ catkin_make ``` 3. 将机械臂ROS复制到工作空间中 可以使用以下命令将机械臂ROS复制到工作空间的src目录中: ``` cp -r /path/to/magician_ros_package ~/catkin_ws/src/ ``` 4. 构建ROS 可以使用以下命令构建ROS: ``` cd ~/catkin_ws/ catkin_make ``` 5. 启动ROS节点 可以使用以下命令启动ROS节点: ``` roslaunch magician_ros_package magician.launch ``` 6. 使用Python控制机械臂 可以使用Python编写ROS节点,通过调用机械臂ROS中提供的服务或话题实现机械臂控制。例如,可以使用以下代码发布机械臂的目标关节角度: ``` #!/usr/bin/env python import rospy from std_msgs.msg import Float64 rospy.init_node('magician_control') # Create publishers to control the joints joint1_pub = rospy.Publisher('/magician/joint1_position_controller/command', Float64, queue_size=10) joint2_pub = rospy.Publisher('/magician/joint2_position_controller/command', Float64, queue_size=10) joint3_pub = rospy.Publisher('/magician/joint3_position_controller/command', Float64, queue_size=10) joint4_pub = rospy.Publisher('/magician/joint4_position_controller/command', Float64, queue_size=10) joint5_pub = rospy.Publisher('/magician/joint5_position_controller/command', Float64, queue_size=10) joint6_pub = rospy.Publisher('/magician/joint6_position_controller/command', Float64, queue_size=10) # Set the target joint angles joint1_angle = 0 joint2_angle = 0 joint3_angle = 0 joint4_angle = 0 joint5_angle = 0 joint6_angle = 0 # Publish the target joint angles joint1_pub.publish(joint1_angle) joint2_pub.publish(joint2_angle) joint3_pub.publish(joint3_angle) joint4_pub.publish(joint4_angle) joint5_pub.publish(joint5_angle) joint6_pub.publish(joint6_angle) # Wait for the joint angles to be reached rospy.sleep(1) ``` 这段代码会将机械臂的六个关节角度设置为0,可以根据需要修改目标角度。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值