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 JacobianCalculatorPtrbaseJCframes(FrameVector frames, State state)
Not implemented.JacobianbaseJend(State state)JacobianbaseJframe(FramePtr frame, State state)
Not implemented.JacobianbaseJframes(FrameVector frames, State state)
Not implemented.voiddelete()QgetAccelerationLimits()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}
FramegetBase()a method to return the frame of the base of the device.PairQgetBounds()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 longgetCPtr(MobileDevice obj)longgetDOF()Returns number of active jointsFramegetEnd()a method to return the frame of the end of the deviceQgetQ(State state)Gets configuration vector \mathbf{q}\in \mathbb{R}^n
QgetVelocityLimits()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}
voidsetAccelerationLimits(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}
voidsetBounds(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
voidsetDevicePose(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 devicevoidsetQ(Q q, State state)Sets configuration vector \mathbf{q} \in \mathbb{R}^n
voidsetVelocityLimits(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:DeviceSets configuration vector \mathbf{q} \in \mathbb{R}^n
-
getQ
public Q getQ(State state)
Description copied from class:DeviceGets configuration vector \mathbf{q}\in \mathbb{R}^n
-
getBounds
public PairQ getBounds()
Description copied from class:DeviceReturns 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:DeviceSets 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:DeviceReturns 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:
getVelocityLimitsin classDevice- Returns:
- the maximal velocity
-
setVelocityLimits
public void setVelocityLimits(Q vellimits)
Description copied from class:DeviceSets 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:
setVelocityLimitsin classDevice- Parameters:
vellimits- [in] Q with the maximal velocity
-
getAccelerationLimits
public Q getAccelerationLimits()
Description copied from class:DeviceReturns 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:
getAccelerationLimitsin classDevice- Returns:
- the maximal acceleration
-
setAccelerationLimits
public void setAccelerationLimits(Q acclimits)
Description copied from class:DeviceSets 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:
setAccelerationLimitsin classDevice- Parameters:
acclimits- [in] the maximal acceleration
-
getDOF
public long getDOF()
Description copied from class:DeviceReturns number of active joints
-
getBase
public Frame getBase()
Description copied from class:Devicea method to return the frame of the base of the device.
-
getEnd
public Frame getEnd()
Description copied from class:Devicea method to return the frame of the end of the device
-
baseJframes
public Jacobian baseJframes(FrameVector frames, State state)
Not implemented.- Overrides:
baseJframesin 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:
baseJCframesin classDevice
-
-