Package org.robwork.sdurw_models
Class MobileDevice
- java.lang.Object
-
- org.robwork.sdurw_kinematics.Stateless
-
- org.robwork.sdurw_models.Device
-
- org.robwork.sdurw_models.MobileDevice
-
public class MobileDevice extends Device
Provides a differential controlled mobile device
The MobileDevice class provides a differential controlled mobile device
with non-holonomic constraints. The x direction is defined as
straight forward and z vertically up. The wheels are assumed to be
positioned summetrically around the base and have 0 x
component.
When using setQ it takes 2 parameters, which corresponds to the distances
travelled by the wheels. Based on this input and the current pose of the
device it calcualtes a new pose as.
-
-
Constructor Summary
Constructors Constructor Description MobileDevice(long cPtr, boolean cMemoryOwn)
MobileDevice(MovableFrame base, RevoluteJoint wheel1, RevoluteJoint wheel2, State state, java.lang.String name)
Constructs a mobile device
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description JacobianCalculatorPtr
baseJCframes(FrameVector frames, State state)
Not implemented.Jacobian
baseJend(State state)
Jacobian
baseJframe(FramePtr frame, State state)
Not implemented.Jacobian
baseJframes(FrameVector frames, State state)
Not implemented.void
delete()
Q
getAccelerationLimits()
Returns the maximal acceleration of the joints
\mathbf{\ddot{q}}_{max}\in \mathbb{R}^n
It is assumed that \ddot{\mathbf{q}}_{min}=-\ddot{\mathbf{q}}_{max}
Frame
getBase()
a method to return the frame of the base of the device.PairQ
getBounds()
Returns the upper \mathbf{q}_{min} \in \mathbb{R}^n and
lower \mathbf{q}_{max} \in \mathbb{R}^n bounds of the joint space
static long
getCPtr(MobileDevice obj)
long
getDOF()
Returns number of active jointsFrame
getEnd()
a method to return the frame of the end of the deviceQ
getQ(State state)
Gets configuration vector \mathbf{q}\in \mathbb{R}^n
Q
getVelocityLimits()
Returns the maximal velocity of the joints
\mathbf{\dot{q}}_{max}\in \mathbb{R}^n
It is assumed that \dot{\mathbf{q}}_{min}=-\dot{\mathbf{q}}_{max}
void
setAccelerationLimits(Q acclimits)
Sets the maximal acceleration of the joints
\mathbf{\ddot{q}}_{max}\in \mathbb{R}^n
It is assumed that \ddot{\mathbf{q}}_{min}=-\ddot{\mathbf{q}}_{max}
void
setBounds(PairQ bounds)
Sets the upper \mathbf{q}_{min} \in \mathbb{R}^n and
lower \mathbf{q}_{max} \in \mathbb{R}^n bounds of the joint space
void
setDevicePose(Transform3D transform, State state)
Sets the position and orientation of the base
This operation moves the base of the robot, without considering
the non-holonomic constraints of the devicevoid
setQ(Q q, State state)
Sets configuration vector \mathbf{q} \in \mathbb{R}^n
void
setVelocityLimits(Q vellimits)
Sets the maximal velocity of the joints
\mathbf{\dot{q}}_{max}\in \mathbb{R}^n
It is assumed that \dot{\mathbf{q}}_{min}=-\dot{\mathbf{q}}_{max}
-
Methods inherited from class org.robwork.sdurw_models.Device
baseJCend, baseJCframe, baseJframe, baseTend, baseTframe, getCPtr, getName, getPropertyMap, setName, toString, worldTbase
-
Methods inherited from class org.robwork.sdurw_kinematics.Stateless
getCPtr, getStateStructure, isRegistered, registerIn, registerIn, unregister
-
-
-
-
Constructor Detail
-
MobileDevice
public MobileDevice(long cPtr, boolean cMemoryOwn)
-
MobileDevice
public MobileDevice(MovableFrame base, RevoluteJoint wheel1, RevoluteJoint wheel2, State state, java.lang.String name)
Constructs a mobile device- Parameters:
base
- [in] the base of the devicewheel1
- [in] the left wheelwheel2
- [in] the right wheelstate
- [in] the state of the devicename
- [in] name of device
-
-
Method Detail
-
getCPtr
public static long getCPtr(MobileDevice obj)
-
setDevicePose
public void setDevicePose(Transform3D transform, State state)
Sets the position and orientation of the base
This operation moves the base of the robot, without considering
the non-holonomic constraints of the device- Parameters:
transform
- [in] new base transformstate
- [in] state to write change to
-
setQ
public void setQ(Q q, State state)
Description copied from class:Device
Sets configuration vector \mathbf{q} \in \mathbb{R}^n
-
getQ
public Q getQ(State state)
Description copied from class:Device
Gets configuration vector \mathbf{q}\in \mathbb{R}^n
-
getBounds
public PairQ getBounds()
Description copied from class:Device
Returns the upper \mathbf{q}_{min} \in \mathbb{R}^n and
lower \mathbf{q}_{max} \in \mathbb{R}^n bounds of the joint space
-
setBounds
public void setBounds(PairQ bounds)
Description copied from class:Device
Sets the upper \mathbf{q}_{min} \in \mathbb{R}^n and
lower \mathbf{q}_{max} \in \mathbb{R}^n bounds of the joint space
-
getVelocityLimits
public Q getVelocityLimits()
Description copied from class:Device
Returns the maximal velocity of the joints
\mathbf{\dot{q}}_{max}\in \mathbb{R}^n
It is assumed that \dot{\mathbf{q}}_{min}=-\dot{\mathbf{q}}_{max}
- Overrides:
getVelocityLimits
in classDevice
- Returns:
- the maximal velocity
-
setVelocityLimits
public void setVelocityLimits(Q vellimits)
Description copied from class:Device
Sets the maximal velocity of the joints
\mathbf{\dot{q}}_{max}\in \mathbb{R}^n
It is assumed that \dot{\mathbf{q}}_{min}=-\dot{\mathbf{q}}_{max}
- Overrides:
setVelocityLimits
in classDevice
- Parameters:
vellimits
- [in] Q with the maximal velocity
-
getAccelerationLimits
public Q getAccelerationLimits()
Description copied from class:Device
Returns the maximal acceleration of the joints
\mathbf{\ddot{q}}_{max}\in \mathbb{R}^n
It is assumed that \ddot{\mathbf{q}}_{min}=-\ddot{\mathbf{q}}_{max}
- Overrides:
getAccelerationLimits
in classDevice
- Returns:
- the maximal acceleration
-
setAccelerationLimits
public void setAccelerationLimits(Q acclimits)
Description copied from class:Device
Sets the maximal acceleration of the joints
\mathbf{\ddot{q}}_{max}\in \mathbb{R}^n
It is assumed that \ddot{\mathbf{q}}_{min}=-\ddot{\mathbf{q}}_{max}
- Overrides:
setAccelerationLimits
in classDevice
- Parameters:
acclimits
- [in] the maximal acceleration
-
getDOF
public long getDOF()
Description copied from class:Device
Returns number of active joints
-
getBase
public Frame getBase()
Description copied from class:Device
a method to return the frame of the base of the device.
-
getEnd
public Frame getEnd()
Description copied from class:Device
a method to return the frame of the end of the device
-
baseJframes
public Jacobian baseJframes(FrameVector frames, State state)
Not implemented.- Overrides:
baseJframes
in classDevice
- Parameters:
frames
- [in] the frames to calculate the frames fromstate
- [in] the state to calculate in- Returns:
- the jacobian
-
baseJCframes
public JacobianCalculatorPtr baseJCframes(FrameVector frames, State state)
Not implemented.- Overrides:
baseJCframes
in classDevice
-
-