neobotix mpo_500 gazebo 仿真模型建立

本文介绍如何使用 Neobotix 提供的 sim 包和 driver 包搭建机器人仿真实验环境。通过设置不同的参数,可以调整仿真模型的行为特性,并且能够选择使用键盘或手柄进行机器人控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sim 包:https://github.com/neobotix/neo_simulation
driver:https://github.com/neobotix/neo_driver
将simulation 和 cob_driver 下载在工作空间 src 中
编译
source devel/setup.bash

roslaunch neo_simulation simulation.

独立的仿真模型修改launch 文件即可
simple.launch

<?xml version="1.0" encoding="UTF-8"?>
<launch>

  <!--set to the required robot and world-->
  <arg name="robotname" value="mpo_500"/>
  <arg name="robotworld" value="neobotix_env2.world"/>

  <arg name="scanunifier" value="true"/>

  <!--To move robot using teleop_keyboard-->
  <arg name="teleop_keyboard" value="false"/>

  <!--To move robot using joystick-->
  <arg name="joystick" value="false"/>



<!---=================================================================================================================================================================-->

  <!--Gazebo Variables--> 
  <arg name="world" default="empty"/> 
  <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"/>

  <include file="$(find gazebo_ros)/launch/empty_world.launch">

    <arg name="world_name" value="$(find neo_simulation)/worlds/$(arg robotworld)"/>
    <arg name="paused" value="$(arg paused)"/>
    <arg name="use_sim_time" value="$(arg use_sim_time)"/>
    <arg name="gui" value="$(arg gui)"/>
    <arg name="headless" value="$(arg headless)"/>
    <arg name="debug" value="$(arg debug)"/>
  </include>
<!---=================================================================================================================================================================-->

  <!--Robot description to param server-->
  <param name="robot_description" command="$(find xacro)/xacro.py '$(find neo_simulation)/robots/$(arg robotname)/$(arg robotname).urdf.xacro'"/>

  <node name="$(arg robotname)_spawn" pkg="gazebo_ros" type="spawn_model" output="screen"
  args="-urdf -param robot_description -model $(arg robotname) " />

  <!-- For mmo_500 -->
  <include file="$(find neo_simulation)/config/controller/launch/controller_utils.launch"/>

  <rosparam file="$(find neo_simulation)/config/controller/arm_controller_ur10.yaml" command="load"/>
  <node name="arm_controller_spawner" pkg="controller_manager" type="controller_manager" args="spawn arm_controller" respawn="false" output="screen"/>

  <!--To publish Joint and Robot state-->
  <node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher">
    <param name="rate" value="20.0"/>
  </node>

  <node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher">
    <param name="publish_frequency" value="20.0"/>
  </node>

<!---=================================================================================================================================================================-->

  <!--if arg scan-unifier is set to true-->

 <group if="$(arg scanunifier)">
 <include file="$(find neo_simulation)/config/scan_unifier/cob_scan_unifier.launch"/>
 </group>   

<!---=================================================================================================================================================================-->

 <!--Neo control Package  **To use teleop-keyboard and joystick, neo_control package must be cloned to the workspace**--> 

 <!--if arg teleop-keyboard is set to true-->

 <group if="$(arg teleop_keyboard)">
   <node pkg="turtlebot_teleop" type="turtlebot_teleop_key" name="turtlebot_teleop_keyboard"  output="screen">
    <param name="scale_linear" value="0.5" type="double"/>
    <param name="scale_angular" value="1.5" type="double"/>
    <remap from="turtlebot_teleop_keyboard/cmd_vel" to="cmd_vel"/>
  </node>
 </group>

 <!--if arg joystick is set to true (default=false)-->

 <group if="$(arg joystick)">
 <include file="$(find neo_teleop)/ros/launch/teleop.launch"/>
 </group>


</launch>

启动roslaunch neo_simulation simple.launch

/calibrated
/clock
/cmd_vel
/cob_scan_unifier/scan_unified
/gazebo/link_states
/gazebo/model_states
/gazebo/parameter_descriptions
/gazebo/parameter_updates
/gazebo/set_link_state
/gazebo/set_model_state
/joint_states
/odom
/rosout
/rosout_agg
/sick_s300_back/scan
/sick_s300_front/scan
/tf
/tf_static
rostopic pub -r 3 /cmd_vel geometry_msgs/Twist '[1,0,0]' '[0,0,0.6]'

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值