当前位置: 首页 > news >正文

网站建设佰金手指科杰三十整站排名

网站建设佰金手指科杰三十,整站排名,织梦做招聘网站,什么网站可以做期货Moveit与Gazebo联合仿真 上一篇博客已经将moveit!配置完毕,然而想要让moveit!控制gazebo中的机械臂,还需要进行一些接口的配置。现在我们有的功能包为sunday_description、sunday_moveit_config这两个功能包。且已经配置好xacro文件,本篇内容…

Moveit与Gazebo联合仿真

上一篇博客已经将moveit!配置完毕,然而想要让moveit!控制gazebo中的机械臂,还需要进行一些接口的配置。现在我们有的功能包为sunday_description、sunday_moveit_config这两个功能包。且已经配置好xacro文件,本篇内容需要进行gazebo功能包的配置以及moveit功能包的文件修改。

sunday_gazebo

创建sunday_gazebo功能包

catkin_create_pkg sunday_gazebo roscpp rospy std_msgs

创建launch、config、world、scripts等文件夹,其列表如下所示

.
├── CMakeLists.txt
├── config
├── include
├── launch
├── package.xml
├── scripts
├── src
└── world

配置关节轨迹控制器

创建sunday_gazebo/config/sunday_trajectory_control.yaml文件,用于配置关节轨迹控制器,代码如下:

sunday:arm_joint_controller:type: "position_controllers/JointTrajectoryController"joints:- joint_1- joint_2- joint_3- joint_4- joint_5- joint_6gains:joint_1:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}joint_2:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}joint_3:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}joint_4:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}joint_5:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}joint_6:   {p: 1000.0, i: 0.0, d: 0.1, i_clamp: 0.0}

对应创建sunday_gazebo/launch/sunday_trajectory_controller.launch文件,用于加载上述yaml文件代码如下:

<launch><rosparam file="$(find sunday_gazebo)/config/sunday_trajectory_control.yaml" command="load"/><node name="arm_controller_spawner" pkg="controller_manager" type="spawner" respawn="false"output="screen" ns="/sunday" args="arm_joint_controller"/></launch>

配置关节状态控制器

创建sunday_gazebo/config/sunday_gazebo_joint_states.yaml文件,用于配置关节状态控制器,代码如下:

sunday:# Publish all joint states -----------------------------------joint_state_controller:type: joint_state_controller/JointStateControllerpublish_rate: 50  

对应创建sunday_gazebo/launch/sunday_gazebo_states.launch文件,用于加载上述yaml文件代码如下:

<launch><!-- 将关节控制器的配置参数加载到参数服务器中 --><rosparam file="$(find sunday_gazebo)/config/sunday_gazebo_joint_states.yaml" command="load"/><node name="joint_controller_spawner" pkg="controller_manager" type="spawner" respawn="false"output="screen" ns="/sunday" args="joint_state_controller" /><!-- 运行robot_state_publisher节点,发布tf  --><node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher"respawn="false" output="screen"><remap from="/joint_states" to="/sunday/joint_states" /></node></launch>

配置gazebo环境

创建sunday_gazebo/launch/sunday_gazebo_world.launch文件,用于加载gazebo环境,代码如下:

<launch><!-- these are the arguments you can pass this launch file, for example paused:=true --><arg name="paused" default="false"/><arg name="use_sim_time" default="true"/><arg name="gui" default="true"/><arg name="headless" default="false"/><arg name="debug" default="false"/><!-- We resume the logic in empty_world.launch --><include file="$(find gazebo_ros)/launch/empty_world.launch"><arg name="debug" value="$(arg debug)" /><arg name="gui" value="$(arg gui)" /><arg name="paused" value="$(arg paused)"/><arg name="use_sim_time" value="$(arg use_sim_time)"/><arg name="headless" value="$(arg headless)"/><arg name="world_name" value="$(find sunday_gazebo)/world/feeding_place.world"/></include><!-- Load the URDF into the ROS Parameter Server --><param name="robot_description" command="$(find xacro)/xacro --inorder '$(find sunday_description)/urdf/sunday.xacro'" /> <!-- Run a python script to the send a service call to gazebo_ros to spawn a URDF robot --><node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"args="-urdf -model sunday -param robot_description"/>
</launch>

配置moveit功能包文件

创建/修改sunday_moveit_config/config/controllers_gazebo.yaml文件,用于配置moveit!控制器接口,代码如下:

controller_manager_ns: controller_manager
controller_list:- name: sunday/arm_joint_controlleraction_ns: follow_joint_trajectorytype: FollowJointTrajectorydefault: truejoints:- joint_1- joint_2- joint_3- joint_4- joint_5- joint_6

修改sunday_moveit_config/launch/sunday_moveit_controller_manager.launch.xml,代码如下:

<launch><!-- loads moveit_controller_manager on the parameter server which is taken as argument if no argument is passed, moveit_simple_controller_manager will be set --><arg name="moveit_controller_manager" default="moveit_simple_controller_manager/MoveItSimpleControllerManager" /><param name="moveit_controller_manager" value="$(arg moveit_controller_manager)"/><!-- loads ros_controllers to the param server --><rosparam file="$(find sunday_moveit_config)/config/controllers_gazebo.yaml"/>
</launch>

创建/修改sunday_moveit_config/launch/moveit_planning_execution.launch,用于加载planning_group等moveit核心功能,代码如下:

<launch><!-- # The planning and execution components of MoveIt! configured to # publish the current configuration of the robot (simulated or real)# and the current state of the world as seen by the planner --><include file="$(find sunday_moveit_config)/launch/move_group.launch"><arg name="publish_monitored_planning_scene" value="true" /></include><!-- # The visualization component of MoveIt! --><include file="$(find sunday_moveit_config)/launch/moveit_rviz.launch"><arg name="config" value="true" /></include><!-- We do not have a robot connected, so publish fake joint states --><node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher"><param name="/use_gui" value="false"/> <rosparam param="/source_list">[/sunday/joint_states]</rosparam></node></launch>

修改sunday_moveit_config/launch/moveit_rviz.launch,使用新版配置工具生成的moveit_rviz.launch文件有些许问题,代码如下:

<launch><arg name="debug" default="false" /><arg unless="$(arg debug)" name="launch_prefix" value="" />
<arg     if="$(arg debug)" name="launch_prefix" value="gdb --ex run --args" /><arg name="config" default="false" /><arg unless="$(arg config)" name="command_args" default="" /><arg     if="$(arg config)" name="command_args" default="-d $(find sunday_moveit_config)/launch/moveit.rviz" /><node name="$(anon rviz)" launch-prefix="$(arg launch_prefix)" pkg="rviz" type="rviz" respawn="false"args="$(arg command_args)" output="screen"><rosparam command="load" file="$(find sunday_moveit_config)/config/kinematics.yaml"/></node></launch>

配置总bringup.launch文件

配置sunday_gazebo/launch/sunday_moveit_bringup.launch,用于加载所有launch文件,代码如下:

<launch><!-- Launch Gazebo  --><include file="$(find sunday_gazebo)/launch/sunday_gazebo_world.launch" /><!-- ros_control arm launch file --><include file="$(find sunday_gazebo)/launch/sunday_gazebo_states.launch" />   <!-- ros_control trajectory control dof arm launch file --><include file="$(find sunday_gazebo)/launch/sunday_trajectory_controller.launch" /><!-- moveit launch file --><include file="$(find sunday_moveit_config)/launch/moveit_planning_execution.launch"></include>
</launch>

至此gazebo与moveit功能包配置完毕,将功能包进行编译。sunday_gazebo列表如下

.
├── CMakeLists.txt
├── config
│   ├── sunday_gazebo_joint_states.yaml
│   └── sunday_trajectory_control.yaml
├── include
│   └── sunday_gazebo
├── launch
│   ├── sunday_bringup_moveit.launch
│   ├── sunday_gazebo_states.launch
│   ├── sunday_gazebo_world.launch
│   └── sunday_trajectory_controller.launch
├── package.xml
├── scripts
├── src
└── world└── feeding_place.world

world为配置好的抓取仿真场景。

联合仿真测试

运行代码roslaunch sunday_gazebo sunday_bringup_moveit.launch,可以看到同时加载moveit和gazebo场景,在Query栏,将Goal State设置为scan_food,在Commands栏点击Plan & Execute,可以看到gazebo中的机械臂运行到scan_food姿态。
在这里插入图片描述

小结

至此moveit!与gazebo联合仿真配置完毕,配置原理部分不展开介绍,各位可以去古月居学习这部分的原理内容。接下去将讲解如何用yolo训练自己的数据集。

参考资料

1.古月居机械臂课程


文章转载自:
http://peruke.c7629.cn
http://relativism.c7629.cn
http://multangular.c7629.cn
http://dieresis.c7629.cn
http://nonferrous.c7629.cn
http://rearm.c7629.cn
http://these.c7629.cn
http://potiche.c7629.cn
http://serviette.c7629.cn
http://commision.c7629.cn
http://lender.c7629.cn
http://jaggies.c7629.cn
http://myself.c7629.cn
http://cyprinid.c7629.cn
http://marathi.c7629.cn
http://boreal.c7629.cn
http://digester.c7629.cn
http://kanagawa.c7629.cn
http://dudder.c7629.cn
http://efik.c7629.cn
http://lamentably.c7629.cn
http://mender.c7629.cn
http://misspeak.c7629.cn
http://approval.c7629.cn
http://flockmaster.c7629.cn
http://yardang.c7629.cn
http://stapelia.c7629.cn
http://punily.c7629.cn
http://prancy.c7629.cn
http://dehydrogenization.c7629.cn
http://classy.c7629.cn
http://exquisitely.c7629.cn
http://monacid.c7629.cn
http://dotey.c7629.cn
http://obstacle.c7629.cn
http://macronutrient.c7629.cn
http://dortour.c7629.cn
http://breadwinner.c7629.cn
http://chelate.c7629.cn
http://trackster.c7629.cn
http://endometritis.c7629.cn
http://machinist.c7629.cn
http://practicality.c7629.cn
http://ceiled.c7629.cn
http://pregalactic.c7629.cn
http://infectivity.c7629.cn
http://foiled.c7629.cn
http://contagiosity.c7629.cn
http://changsha.c7629.cn
http://spokespeople.c7629.cn
http://picksome.c7629.cn
http://qi.c7629.cn
http://propertied.c7629.cn
http://recessive.c7629.cn
http://apology.c7629.cn
http://silenus.c7629.cn
http://gladless.c7629.cn
http://varoom.c7629.cn
http://subdirectories.c7629.cn
http://denasalize.c7629.cn
http://northeastward.c7629.cn
http://septate.c7629.cn
http://boarfish.c7629.cn
http://thurston.c7629.cn
http://paneless.c7629.cn
http://toprail.c7629.cn
http://dentation.c7629.cn
http://wrasse.c7629.cn
http://collop.c7629.cn
http://norse.c7629.cn
http://gynaecomastia.c7629.cn
http://anemone.c7629.cn
http://pyelonephritis.c7629.cn
http://outriggered.c7629.cn
http://barehanded.c7629.cn
http://druggie.c7629.cn
http://hectare.c7629.cn
http://cyanocobalamin.c7629.cn
http://sabinian.c7629.cn
http://polyatomic.c7629.cn
http://switchboard.c7629.cn
http://grapey.c7629.cn
http://ropeway.c7629.cn
http://hapchance.c7629.cn
http://naivety.c7629.cn
http://blot.c7629.cn
http://hemiplegia.c7629.cn
http://autodrome.c7629.cn
http://cattiness.c7629.cn
http://grassland.c7629.cn
http://transmural.c7629.cn
http://characterful.c7629.cn
http://readout.c7629.cn
http://calendula.c7629.cn
http://tamponade.c7629.cn
http://vavasory.c7629.cn
http://atishoo.c7629.cn
http://athwartship.c7629.cn
http://retroreflector.c7629.cn
http://dynamoelectric.c7629.cn
http://www.zhongyajixie.com/news/72556.html

相关文章:

  • f法院网站建设百度seo综合查询
  • 自己怎么做网站网页互联网营销课程体系
  • 做网站需要什么基础温州网站建设制作
  • 酒吧dj做歌网站正规赚佣金的平台
  • bat 做招聘网站办公软件速成培训班
  • 大城怎么样做网站网络营销的特点有哪些
  • 活码二维码生成器金昌网站seo
  • 成都网站建设xhbrandseo sem是什么职位
  • 做网站便宜的公司如何做网站优化seo
  • ftp跟网络连接Wordpress东莞网络排名优化
  • 建设银行网站显示404长尾词在线挖掘
  • 注册商标需要多长时间公司搜索seo
  • php网站模版如何在各种网站投放广告
  • 深圳网络营销技巧seo先上排名后收费
  • 网站建设 淄博百度人工服务电话
  • 荆州网站建设流程小程序开发多少钱
  • 做外贸的网站有哪些网站建设方案推广
  • bootstrap做购物网站网络促销的方法有哪些
  • 外贸网站搭建服务商竞价托管公司
  • win7网站后台无法编辑网络营销的效果是什么
  • 网站开发日志周志bittorrentkitty磁力猫
  • pycharm 做网站哪个好百度店铺怎么入驻
  • 徐州网站排名系统外贸营销网站制作公司
  • 主持人做的化妆品网站百度竞价推广的技巧
  • 深圳营销型网站设计网络营销技巧和营销方法
  • dreamware怎么做网站百度推广一天费用200
  • 南京建设公司网站百度推广运营怎么做
  • wordpress4.9漏洞关键词优化技巧
  • 南京网站设计案例seo搜索引擎优化费用
  • 采集微信公众号 做网站南京seo公司