Giter Site home page Giter Site logo

turtlesim-waypoints's Introduction

Turtlesim Waypoints ROS Package

First assignment for ME 495: Embedded Systems in Robotics, Northwestern University, Fall 2020.

Overview

This package contains nodes that cause a simulated turtle (from the package turtlesim) to move through a series of waypoints. The turtle uses feedback control to correct its position throughout the trajectory between waypoints. After reaching a waypoint, the turtle turns until it faces directly at the next waypoint.

A second turtle is used to mark the locations of the waypoints prior to the main turtle moving.

The package contains a custom velocity message containing only the planar forward and planar rotational velocities of the turtle, which are the two components of a 6D twist that a differential drive robot can control.

Demo

https://youtu.be/OozKJdEjlns

Usage Instructions

  1. Create a new workspace and clone the demonstration code.
# Create a new workspace
mkdir -p ws/src

# clone the demonstration code
cd ws/src
git clone https://github.com/ctsaitsao/turtlesim-waypoints.git turtlesim-waypoints

# return to ws root
cd ../
  1. Build the workspace and activate it.
catkin_make install
. devel/setup.bash
  1. Launch the nodes.
roslaunch turtlesim-waypoints waypoint_follow.launch

Configuration Options

To change the locations of the waypoints, edit the config/waypoint.yaml file.

The waypoint node has configurable private parameters, which can be edited in the launch/waypoint_follow.launch file. See node docstring for parameter descriptions.

<node name="waypoint" pkg="turtlesim-waypoints" type="waypoint">
    <param name="~kp_linear" value="1.5"/>  
    <param name="~kp_rotational" value="6"/>  
    <param name="~dist_thresh" value="0.01"/>  
    <param name="~angle_thresh" value="0.05"/>  
</node>

turtlesim-waypoints's People

Contributors

ctsaitsao avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

aleenalentin

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.