4.9 movement, obstacle avoidance and navigation

  • Now there were two development model (framework)
    • The first, under the ROS for the robot body, a camera, a robotic arm and other development interface, the formation of many separate package
      • Such apparatus is to classify the packet, sub-module development
    • Second, the use of ROS MoveIt! Development kit, in this broad framework, developed for different robots and robotic functions
      • This is according to different functions, interface development!
    • The second seemingly coming into fashion! !
    • Interface development! !
  • Goal: to understand the principle, to see how to achieve movement and obstacle avoidance behavior without loading the map, the robot behavior design
    • Does that mean you can not load maps loaded an empty map? (If not empty, only to a global wall, like a rectangle-like), and then specify the initial coordinates manually, you can perform local path planning, because the global map is empty, not equivalent to a global plan, in fact, global planning semantic map in LV
  • Implementation: Given a virtual door position (position, distance and angle), the robot can walk, obstacle avoidance, adjust the position and attitude
  • Using the ROS MoveIt! and Navigation Stack
  • installation
    • sudo apt-get install python-wstool
    • STEP 2: Download the source code

      • source /opt/ros/indigo/setup.bash

        mkdir moveit

        cd moveit

        mkdir src

        cd src/

        wstool init .

        wstool go https://raw.github.com/ros-planning/moveit_docs/indigo-devel/moveit.rosinstall

        wstool update

        cd ..

    • STEP 3: Make sure MoveIt! dependencies are installed

      • rosdep install --from-paths src --ignore-src --rosdistro indigo -y

    • STEP 4: Build MoveIt!

      • Assuming you are in the moveit folder created above,
      • catkin_make
    • Such equipment is too slow
  • Recommend this installation? ?
    •  sudo apt-get install ros-indigo-moveit-full
  • Since this does not look at the source code, so uninstalled
  • According to the source, or to build it
    • Download and install dependencies
    • Copy the folder to the workspace, right next ROS
  • plan
    • The manual for your starting point
    • Semantic map as a global planner
    • To implement a manual robot teleoperation P3AT
    • Then complete semantic navigation robot
    • And then realized the door chase
  • Achieve P3AT manually on their computers and find vontrol base, the only way to use the navigation stack, using an analog mobilesim
  • View move_base code! Thinking improvement program, and ultimately on their computers to achieve, at a given point sequence, the robot can achieve local obstacle avoidance, and complete the path.
  • amcl node    
    • Look not start this node will not go wrong. If an error occurs, the transformation, so that the function of this node is positioned manually. zslocal
  • Have reviewed globleplanner, movebase, navcore completed
  • Continue to look at the code, analyze the need to modify where, and how to modify.
  • Why can not receive other messages ROSARIA it?
    • tf reasons and related research
  • Research navigation stack and code changes
    • Uninstall deb package, but want to return to install bfl third party dependencies, compile later found problems, or on all the dependencies installed it
      • sudo apt-get install ros-indigo-bfl libasound2-dev libavahi-client-dev libavahi-common-dev libcaca-dev libdbus-1-dev libpulse-dev libsdl-image1.2-dev libsdl1.2-dev libslang2-dev libwebp-dev libwebpdemux1 libasound2-doc
    • All relevant globalplanner and global costmap comments relevant code
      • Because of this global project planner (semantic navigation module) is not complete, so the recovery module also commented that this module is not loaded
      • FML, TM is too difficult, too much code Estimated build all pass, not to mention the debugging, but also quaternion! !
    • Method Two: Use the map blank map, using false positioning, design their own global planner
      • The above estimates and as difficult;
    • Method three: writing their own zsbase
      • But it also have to understand is okay on the basis movebase! !
    • FML, too hard, to spend a day or two to see code!

Guess you like

Origin www.cnblogs.com/lizhensheng/p/11117563.html