• <nav id="ywcq2"><u id="ywcq2"></u></nav>
  • <object id="ywcq2"></object>
  • <nav id="ywcq2"><input id="ywcq2"></input></nav>
  • <xmp id="ywcq2"><button id="ywcq2"></button><tt id="ywcq2"></tt>
  • <kbd id="ywcq2"></kbd><tr id="ywcq2"></tr><menu id="ywcq2"><kbd id="ywcq2"></kbd></menu>

    API per functionality

    For a list of common ROS repositories, see the ROS GitHub Organizations.

    ROS supports several Client Libraries, though the main supported libraries are C++ roscpp and rospy. There are also numerous ROS stacks and packages that provide higher-level functionality. Support for higher-level functionality in various languages is summarized below.

    APIs

    • ROS: functionality available via ROS topics and services

    • C++: functionality available in C++ libraries

    • Python: functionality available in Python modules/packages

    API

    ROS

    C++

    Python

    ROS

    ROS

    roscpp

    rospy

    Basic Datatypes

    common_msgs

    common_msgs

    common_msgs

    Manipulating message streams

    topic_tools

    message_filters

    message_filters

    Drivers

    joystick_drivers, camera_drivers, laser_drivers, audio_common (aka sound_drivers), imu_drivers

    joystick_drivers, camera_drivers, laser_drivers, audio_common, imu_drivers

    Driver Implementation

    driver_common

    driver_common

    Filtering data

    filters

    3D processing

    laser_pipeline, perception_pcl

    laser_pipeline, perception_pcl

    Image processing

    image_common, image_pipeline, vision_opencv

    vision_opencv

    Transforms/Coordinates

    tf, tf_conversions, robot_state_publisher

    tf, tf_conversions

    Actions

    actionlib

    actionlib

    actionlib

    Executive/Task Manager

    executive_smach

    executive_smach

    Navigation

    navigation

    via actionlib

    via actionlib

    Simulation (2D)

    simulator_stage

    simulator_stage

    Simulation (3D)

    simulator_gazebo

    simulator_gazebo

    Robot Model

    robot_model

    Realtime Controllers

    pr2_controller_manager

    pr2_controller_interface, realtime_tools

    Motion planning (arms)

    ompl, chomp_motion_planner, sbpl

    actionlib through move_arm

    actionlib through move_arm

    Humanoid walk

    walk_msgs

    walk_interfaces

    Packages in Layered Layout

    More slide-friendly layout of ROS packages in a layered manner.

    https://docs.google.com/drawings/d/1N3skvSyzZj_dWzCqwEfsNd3gtwTNGFDwpm_TM__Vk2s/edit

    Note:

    • Packages are subjectively chosen from "Browsing packages for indigo" page. Original author has no intention to omit any packages due to his personal reason.

    • You can zoom this diagram, or edit on Google Drive.

    Improvements/corrections for the package grouping diagram

    Particularly following may require improvements/corrections (please remove the lines when addressed):

    • There should be so many more notable packages in the application layer.
    • Maybe too much focus put on navigation and MoveIt!?

    • Some pkgs in "Comm layer" are not really communication purpose.
    • RViz and rqt may better be drawn larger considering how well they are used?
    • Cosmetics (coloring?)

    Wiki: APIs (2016-03-22 18:09:26由IsaacSaito編輯)

    青青青免费视频在线-首页青青青免费视频在线观看