Libbarrett  1.2.4
Classes | Functions
include/barrett/cdlbt/profile.h File Reference
#include <gsl/gsl_vector.h>
#include <gsl/gsl_interp.h>

Go to the source code of this file.

Classes

struct  bt_profile

Functions

int bt_profile_create (struct bt_profile **profileptr, double vel, double acc, double v_init, double length)
int bt_profile_destroy (struct bt_profile *profile)
int bt_profile_get (struct bt_profile *profile, double *s, double t)

Detailed Description

Definition of bt_profile, a trapezoidal profile mapping from time to arc-length.

Author:
Christopher Dellin
Date:
2008-2009

Copyright 2009-2014 Barrett Technology <support@barrett.com>

This file is part of libbarrett.

This version of libbarrett is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This version of libbarrett is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this version of libbarrett. If not, see <http://www.gnu.org/licenses/>.

Barrett Technology Inc. 73 Chapel Street Newton, MA 02458 A profile is a mapping from elapsed time to location along an arc-length.

For now, there is only one kind of profile, which is a trapezoidal profile (in velocity), which accelerates with constant acceleration up to a given maximum velocity, and later deccelerates with the same acceleration. The profile supports starting at a non-zero velocity, but it always ends at zero velocity.

To create a profile, you pass the velocity and acceleration arguments, as well as the initial velocity and arc length.


Function Documentation

int bt_profile_create ( struct bt_profile **  profileptr,
double  vel,
double  acc,
double  v_init,
double  length 
)

bt_profile create function

Copyright 2009-2014 Barrett Technology <support@barrett.com>

This file is part of libbarrett.

This version of libbarrett is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This version of libbarrett is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this version of libbarrett. If not, see <http://www.gnu.org/licenses/>.

Barrett Technology Inc. 73 Chapel Street Newton, MA 02458

int bt_profile_destroy ( struct bt_profile profile)

bt_profile destroy function

int bt_profile_get ( struct bt_profile profile,
double *  s,
double  t 
)

Function to get the distance s at a given time t from a bt_profile

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Defines