ros melodic控制真实机械臂之openmanipulator参考
目录
一、源码下载及编译
1、相关参考网站
2、创建工作空间及源码下载
二、对openmanipulator进行仿真
前面的一段时间,针对自己的机器人做了模型配置,moveit配置等,但想真正的实现真是机器人还有很远的举例,自己也没有成熟的经验,所以参考成熟的产品及相应源码,肯定会有所帮助,本文记录了编译openmanipulator相关源码的详细过程及注意事项。
一、源码下载及编译
1、相关参考网站
(1)、创客智造:https://www.ncnynl.com/archives/201903/2849.html
(2)、openmanipulator官网:https://emanual.robotis.com/docs/en/platform/openmanipulator_x/overview/#overview
2、创建工作空间及源码下载
(1)参考网站里面由详细介绍,但为了查阅方便,这里也简要记录以下。首先安装如下相关功能包:
sudo apt-get install ros-melodic-ros-controllers ros-melodic-gazebo* ros-melodic-moveit* ros-melodic-industrial-core
(2)然后用如下方式创建工作空间。
cd ~
mkdir -p catkin_ws/src
(3)按照如下方式下载源码并进行编译,注意下载源码时将https换为git速度可能会快一点。
cd ~/catkin_ws/src/
git clone git://github.com/ROBOTIS-GIT/DynamixelSDK.git
git clone git://github.com/ROBOTIS-GIT/dynamixel-workbench.git
git clone git://github.com/ROBOTIS-GIT/dynamixel-workbench-msgs.git
git clone git://github.com/ROBOTIS-GIT/open_manipulator.git
git clone git://github.com/ROBOTIS-GIT/open_manipulator_msgs.git
git clone git://github.com/ROBOTIS-GIT/open_manipulator_simulations.git
git clone git://github.com/ROBOTIS-GIT/robotis_manipulator.git
git clone git://github.com/ROBOTIS-GIT/open_manipulator_applications.git
git clone git://github.com/ROBOTIS-GIT/open_manipulator_controls.git
cd ~/catkin_ws && catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
(4)编译问题
如果能正常编译,那是最好,但如果安装了anoconda软件,又可能会存在报“uuid_generate@UUID_1.0”错误的情况,这里记录遇到这种问题时的解决办法,如下,其中,xxx表示用户名。具体可查看该博客,记录得比较详细。
sudo rm /home/xxx/anaconda3/lib/libuuid.so.1
sudo ln -s /lib/x86_64-linux-gnu/libuuid.so.1 /home/xxx/anaconda3/lib/libuuid.so.1
二、对openmanipulator进行仿真
由于是进行仿真,为了方便输入,这里将open_manipulator包下面的open_manipulator_controller文件夹下面的open_manipulator_controller.launch文件做了如下修改:
<launch><arg name="usb_port" default="/dev/ttyUSB0"/><arg name="baud_rate" default="1000000"/><arg name="control_period" default="0.010"/><arg name="use_platform" default="false"/> <!-- true for actual, false for simulation --><node name="open_manipulator_controller" pkg="open_manipulator_controller" type="open_manipulator_controller" output="screen" args="$(arg usb_port) $(arg baud_rate)"><param name="control_period" value="$(arg control_period)"/><param name="using_platform" value="$(arg use_platform)"/></node>
</launch>
然后在三个窗口中分别输入如下命令,即可通过其GUI控制gazebo中的机械臂。
第一个窗口:
roslaunch open_manipulator_controller open_manipulator_controller.launch
第二个窗口打开gazebo:
roslaunch open_manipulator_gazebo open_manipulator_gazebo.launch
第三个窗口打开控制界面:
roslaunch open_manipulator_control_gui open_manipulator_control_gui.launch
然后会由如下操作界面,完成图中标的两步后,所见及所得,通过该界面即可控制gazebo中的仿真模型运动:
openmanipulator的功能远不止这些,肯定还需要进一步探索,但通过学习该开源项目并灵活用到自己的项目中,才是最重要的,这里仅仅是记录,方便自己以后查阅,同时,如果对遇到相同问题的同志有所启发,那是更好,对文中提到的链接表示感谢。
ros melodic控制真实机械臂之openmanipulator参考相关推荐
- ros melodic控制真实机械臂之获取moveit规划插补点
关于该点可查看前辈博客.本文对其中不一致的地方进行记录,但为了查阅方便,该文也记录了完整的操作步骤. 1.demo.launch文件中参数fake_execution的值改为false <arg ...
- ros melodic控制真实机械臂之moveit_setup_assistant配置
一.通过moveit_setup_assistant进行配置 二.运行配置后的功能包 通过上一篇已经知道如何将三维模型导入到ros系统中,该篇主要记录通过moveit_setup_assistant为 ...
- ros melodic控制真实机械臂之urdf模型生成
目录 一.solidworks及sw_urdf_repoter插件安装 二.在solidworks中为机械臂模型加入坐标系 三.用插件导出urdf模型 四.在ros中验证导出的模型是否成功 如果需要控 ...
- ros melodic控制真实机械臂之等周期输出插补点
在上一节中,通过修改相关配置文件,使moveit能够输出真实的插补点,并可通过 control_msgs::FollowJointTrajectoryGoalConstPtr 获取轨迹信息,并将获取的 ...
- ros通过moveit控制真实机械臂
1.demo.launch文件 在生成的demo.launch文件中,参数fake_execution的值改为false <include file="$(find tk7arm_mo ...
- ros kinetic-moveit驱动ur3机械臂------控制真实机械臂并且能动
ros kinetic-moveit驱动ur3机械臂------控制真实机械臂并且能动 本文工作环境配置: ubuntu16.04.6 ros-kinetic ur3 已验证本教程代码在Ubuntu1 ...
- 机器人学习必看系列:如何使用moveit控制真实机械臂?
大家好,我是你们可爱的小鱼.最近关于moveit相关的问题感觉非常多,毕竟机械臂+视觉的应用的确是非常的火爆,小鱼都想直接开课教机械臂运动规划相关的了. 有的同学问小鱼,怎么使用moveit控制真实机 ...
- 通过ROS控制真实机械臂(15) --- 视觉抓取之手眼标定
通过视觉传感器赋予机械臂"眼睛"的功能,配合ATI力和力矩传感器,就可以完成机械臂"手眼"结合的能力,完成视觉抓取过程.目前测试的视觉传感器为 ZED mini ...
- 通过ROS控制真实机械臂(2)----单轴运动,手柄控制
创建ROS包,包名redwall_arm ,通过自定义的消息,将手柄的数据发布 msg/ joycontrol.msg,内容如下,分别对应罗技手柄的按钮和遥杆轴. int32 button1 int3 ...
最新文章
- c如何正常中断一个运行的线程
- TensorFlow介绍之TF数据流图
- python requests max retries_我可以为request.request设置max_retries吗?
- Python学习笔记 setdict
- java随机整数_java如何产生1-8的整数随机数?
- python安装jupyterlab_【python】jupyter lab安装与配置
- 08方法重载,覆写,多态
- 我是技术男,也曾创过业,也曾拿过风投...
- 用于存储过程的ASP.NET Core Blazor和EF Core原始SQL查询
- 征服 Redis + Jedis + Spring (一)—— 配置常规操作(GET SET DEL)
- go语言阶段综合练习--家庭收支软件的示例--过程版本
- windows启动winload.exe的数字签名错误问题
- 有哪些不错的查文献或查资料的网站或APP?
- python生成三维点云包围盒
- 别在为没有HDR贴图而烦恼了,30G 8K统统都白送!
- Pdf转Word用Python轻松实现
- ubuntu安装中文环境 zh_CN.GB2312 zh_CN.GBK
- wordpress文章页面添加字体增大减小链接
- shopnc 设置mysql_shopnc 数据库配置
- String Similarity
热门文章
- 从1.6W名面试者中收集的Java面试题精选汇总(内附知识脑图)
- SGU 231 Prime Sum 求lt;=n内有多少对素数(a,b)使得a+b也为素数 规律题
- winform 防止多開
- 隐马尔科夫模型(Hidden Markov Models) 系列之一
- 密码重置软件(Active@ Password Changer Professional)v4.0
- mysql dbversion_爱可生详解MySQL|不能从MySQL 8.0 复制到 5.8?一招教你解决
- python动态调用自定义模块_python importlib动态导入模块 reload重载模块
- python android自动化测试框架_appium+python搭建自动化测试框架_Tools安装(一)
- 小猿圈python之python期末考试测试题(二)_小猿圈python之练习题
- 1235813找规律第100个数_每日一课:奥数知识点 —— 找简单数列的规律