Giter Site home page Giter Site logo

lbt0116 / quad-sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from robomechanics/quad-sdk

0.0 0.0 0.0 261.92 MB

Software tools for agile quadrupeds, developed by the Robomechanics Lab at Carnegie Mellon University.

Home Page: https://robomechanics.github.io/quad-sdk/

License: MIT License

Shell 0.12% C++ 96.29% Python 1.07% C 0.54% MATLAB 1.18% CMake 0.81%

quad-sdk's Introduction

CircleCI Example image

Overview

Quad-SDK is an open source, ROS-based full stack software framework for agile quadrupedal locomotion. The design of Quad-SDK is focused on the vertical integration of planning, control, estimation, communication, and development tools which enable agile quadrupedal locomotion in simulation and hardware with minimal user changes for multiple platforms. The modular software architecture allows researchers to experiment with their own implementations of different components while leveraging the existing framework. Quad-SDK also offers Gazebo simulation support and a suite of visualization and data-processing tools for rapid development. Refer to the paper for high-level details of the framework.

Keywords: Legged Robotics, Quadrupeds, Planning, Control, Leaping, ROS

License

The source code is released under a MIT License.

Authors: Joe Norby, Yanhao Yang, Ardalan Tajbakhsh, Jiming Ren, Justin K. Yim, Alexandra Stutt, Qishun Yu, Nikolai Flowers, and Aaron M. Johnson
Affiliation: The Robomechanics Lab at Carnegie Mellon University
Maintainer: Ardalan Tajbakhsh, [email protected]

The packages in Quad-SDK have been tested under ROS Melodic on Ubuntu 18.04. This is research code, expect that it changes often and any fitness for a particular purpose is disclaimed.

Publications

If you use this work in an academic context, please cite the following publications as relevant:

  • Repository: J. Norby, Y. Yang, A. Tajbakhsh, J. Ren, J. K. Yim, A. Stutt, Q. Yu, N. Flowers, and A. M. Johnson. Quad- SDK: Full stack software framework for agile quadrupedal locomotion. In ICRA Workshop on Legged Robots, May 2022. (paper)

      @inproceedings{abs:norby-quad-sdk-2022,
        author        = {Joseph Norby and Yanhao Yang and Ardalan Tajbakhsh and Jiming Ren and Justin K. Yim and Alexandra Stutt and Qishun Yu and Nikolai Flowers and Aaron M. Johnson},
        title         = {Quad-{SDK}: Full Stack Software Framework for Agile Quadrupedal Locomotion},
        booktitle     = {ICRA Workshop on Legged Robots},
        year          = {2022},
        month         = {May},
        type          = {workshop abstract},
        url_Info      = {https://leggedrobots.org/index.html},
        url_PDF       = {http://www.andrew.cmu.edu/user/amj1/papers/Quad_SDK_ICRA_Abstract.pdf},
        keywords      = {Control,Planning,Leaping}
      }
    
  • Global Planner: J. Norby and A. M. Johnson, “Fast global motion planning for dynamic legged robots,” in 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2020, pp. 3829–3836. (paper)

      @inproceedings{Norby2020,
    	title={Fast global motion planning for dynamic legged robots},
    	author={Norby, Joseph and Johnson, Aaron M},
    	booktitle={2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
    	pages={3829--3836},
    	year={2020},
    	organization={IEEE}
      }
    

Installation

Refer to the Quad-SDK Wiki for installation, dependency, and unit testing information. Currently Quad-SDK requires ROS Melodic on Ubuntu 18.04. All other dependencies are installed with the included setup script.

Usage

Launch the simulation with:

roslaunch quad_utils quad_gazebo.launch

Stand the robot with:

rostopic pub /robot_1/control/mode std_msgs/UInt8 "data: 1"

Run the stack with twist input:

roslaunch quad_utils quad_plan.launch reference:=twist logging:=true
rosrun teleop_twist_keyboard teleop_twist_keyboard.py cmd_vel:=/robot_1/cmd_vel

Run the stack with global planner:

roslaunch quad_utils quad_plan.launch reference:=gbpl logging:=true

Refer to the Wiki for more information on alternate usage.

Bugs & Feature Requests

Please report bugs and request features using the Issue Tracker.

quad-sdk's People

Contributors

jcnorby avatar nikolaif399 avatar justinyim avatar ardalantj avatar qishuny avatar kongx231 avatar yanhaoy avatar mturski avatar robomechanicslab avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.