解决aubo_i5+ag95抓手rviz问题

博客探讨了在机器人臂aubo上配置Octomap避障时遇到的问题。首先尝试通过添加urdf模型解决,但导致规划显示异常。随后提出替代方案,通过调整wrist3_joint的坐标,模拟抓手影响,成功使避障功能恢复正常。

由于实际场景中aubo配置了抓手,而在实现Octomap避障中没有抓手,首选方法是urdf加上ag95,然后配置各种bug,rviz能出现,moveit能规划,但Octomap没了。

替代方法:将y从-0.094加上抓手长度,改为-0.344。

WRIST3_JOINT ////////////////////////////////////-->
  <joint name="wrist3_joint" type="revolute">
    <origin xyz="0 -0.344 0" rpy="1.5708 0 1.7907E-15" />
    <parent link="wrist2_Link" />
    <child link="wrist3_Link" />
    <axis xyz="0 0 1" />
    <limit lower="-3.05" upper="3.05" effort="300" velocity="100" />
  </joint>

cmake_minimum_required(VERSION 3.4) project(ssp_gripper) set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON) find_package(catkin REQUIRED COMPONENTS roscpp message_generation control_msgs actionlib sensor_msgs xmlrpcpp actionlib_msgs serial ) find_package(Franka 0.9.0 QUIET) if(NOT Franka_FOUND) find_package(Franka 0.8.0 REQUIRED) endif() # find_package(aubo_sdk REQUIRED # PATHS /home/robot-nanjing/aubo_sdk-0.26.0-rc.1-Linux_x86_64+ce93216/lib/cmake/aubo_sdk # NO_DEFAULT_PATH # ) add_action_files( DIRECTORY action FILES Grasp.action Homing.action Stop.action Move.action ) add_message_files( DIRECTORY msg FILES GraspEpsilon.msg ) generate_messages(DEPENDENCIES actionlib_msgs) catkin_package( INCLUDE_DIRS include LIBRARIES ssp_gripper CATKIN_DEPENDS roscpp message_runtime control_msgs actionlib sensor_msgs xmlrpcpp actionlib_msgs serial DEPENDS Franka ) add_library(jodellTool2 SHARED IMPORTED) set_target_properties(jodellTool2 PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/lib/libjodellTool2.so INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR}/include INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_CURRENT_SOURCE_DIR}/include/dh ) add_library(zgGripperV6 SHARED IMPORTED) set_target_properties(zgGripperV6 PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/lib/libzgGripperV6.so INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR}/include;${CMAKE_CURRENT_SOURCE_DIR}/include/zgv6" ) add_library(ssp_gripper src/ssp_gripper.cpp src/jodellgripper.cpp src/dh_device.cpp src/dh_gripper.cpp src/dh_modbus_gripper.cpp src/zg_gripper_v6.cpp src/dh_gripper_ag95.cpp src/dh_ag95/hand_controller.cpp src/dh_ag95/hand_driver.cpp src/dh_ag95/DH_datastream.cpp ) add_dependencies(ssp_gripper ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS} ${PROJECT_NAME}_generate_messages_cpp ) target_link_libraries(ssp_gripper ${Franka_LIBRARIES} ${catkin_LIBRARIES} jodellTool2 zgGripperV6 ) target_include_directories(ssp_gripper SYSTEM PUBLIC ${Franka_INCLUDE_DIRS} ${catkin_INCLUDE_DIRS} ) target_include_directories(ssp_gripper PUBLIC include ) ## XSJ set(AUBO_SDK_ROOT "/home/robot-nanjing/aubo_sdk-0.26.0-rc.1-Linux_x86_64+ce93216") include_directories( ${AUBO_SDK_ROOT}/include ) message(STATUS "=== ENTER add example_state ===") add_executable(example_state src/example_state.cpp ) message(STATUS "=== LEAVE add example_state ===") target_link_libraries(example_state ${AUBO_SDK_ROOT}/lib Threads::Threads) set_target_properties(example_state PROPERTIES BUILD_RPATH "${AUBO_SDK_ROOT}/lib" INSTALL_RPATH "${AUBO_SDK_ROOT}/lib" ) install(TARGETS example_state RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} ) ## XSJ add_executable(ssp_gripper_node src/ssp_gripper_node.cpp ) add_dependencies(ssp_gripper_node ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS} ssp_gripper ) target_link_libraries(ssp_gripper_node ${catkin_LIBRARIES} ssp_gripper ) target_include_directories(ssp_gripper_node SYSTEM PUBLIC ${catkin_INCLUDE_DIRS} ) ## Installation install(TARGETS ssp_gripper ssp_gripper_node ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} ) install(DIRECTORY include/${PROJECT_NAME}/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} ) install(DIRECTORY launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} ) install(DIRECTORY config DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} ) install(FILES lib/libjodellTool2.so lib/libzgGripperV6.so DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}) ## Tools include(${CMAKE_CURRENT_LIST_DIR}/../cmake/ClangTools.cmake OPTIONAL RESULT_VARIABLE CLANG_TOOLS ) if(CLANG_TOOLS) file(GLOB_RECURSE SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp) file(GLOB_RECURSE HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.h ${CMAKE_CURRENT_SOURCE_DIR}/src/*.h ) add_format_target(ssp_gripper FILES ${SOURCES} ${HEADERS}) add_tidy_target(ssp_gripper FILES ${SOURCES} DEPENDS ssp_gripper ssp_gripper_node ) endif() #set(CMAKE_INSTALL_RPATH "${CATKIN_PACKAGE_LIB_DESTINATION}") # 测试支持 if(CATKIN_ENABLE_TESTING) find_package(rostest REQUIRED) find_package(GTest REQUIRED) # 包含测试目录 add_subdirectory(ut) endif() 完整的cmakelist文件如上,请依据报错信息,优化该文件
最新发布
09-09
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值