A sensor registering contacts with the iCub palm. More...
Classes | |
struct | Triangle |
The structure representing a triangle. More... | |
Public Member Functions | |
iCubPalmPatchesTouchSensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor. | |
~iCubPalmPatchesTouchSensor () | |
Destructor. | |
virtual void | save (ConfigurationParameters ¶ms, QString prefix) |
Saves current parameters into the given ConfigurationParameters object. | |
virtual int | size () |
Returns the number of neurons required by this sensor. | |
virtual void | update () |
Performs the sensor update. This also modifies the activation of input neurons. | |
Public Member Functions inherited from iCubSensor | |
iCubSensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor. | |
virtual | ~iCubSensor () |
Destructor. | |
Public Member Functions inherited from Sensor | |
Sensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor and Configure. | |
~Sensor () | |
Destructor. | |
QString | name () |
Return the name of the Sensor. | |
void | save (ConfigurationParameters ¶ms, QString prefix) |
Save the parameters into the ConfigurationParameters. | |
void | setName (QString name) |
Use this method for changing the name of the Sensor. | |
Public Member Functions inherited from ParameterSettableInConstructor | |
ParameterSettableInConstructor (ConfigurationParameters &, QString) | |
void | addObserver (RuntimeParameterObserver *obs) |
T | getRuntimeParameter (QString paramName) |
virtual ParameterSettableUI * | getUIManager () |
ParameterSettable () | |
virtual void | postConfigureInitialization () |
void | removeObserver (RuntimeParameterObserver *obs) |
void | setRuntimeParameter (QString paramName, T newvalue) |
QString | typeName () const |
Public Member Functions inherited from ParameterSettable | |
void | addObserver (RuntimeParameterObserver *obs) |
T | getRuntimeParameter (QString paramName) |
void | removeObserver (RuntimeParameterObserver *obs) |
void | setRuntimeParameter (QString paramName, T newvalue) |
QString | typeName () const |
Public Member Functions inherited from ConcurrentResourcesUser | |
void | addUsableResource (QString resource) |
void | addUsableResources (QStringList resources) |
void | declareResource (QString name, T *resource, QString lockBuddy="") |
void | deleteResource (QString name) |
T * | getResource (QString name, bool *resourceExists=NULL) |
bool | hasResource (QString name) const |
void | removeAllUsableResources () |
void | removeUsableResource (QString resource) |
void | removeUsableResources (QStringList resources) |
virtual void | shareResourcesWith (ResourcesUser *buddy) |
void | usableResources (QStringList resources) |
bool | usedResourcesExist (QStringList *nonExistingResources=NULL) const |
Static Public Member Functions | |
static void | describe (QString type) |
Generates a description of this class and its parameters. | |
Static Public Member Functions inherited from iCubSensor | |
static void | describe (QString type) |
Describes all the parameters for this sensor. | |
Static Public Member Functions inherited from Sensor | |
static void | describe (QString type) |
Describe all the parameter for configuring the Sensor. | |
Static Public Member Functions inherited from ParameterSettableInConstructor | |
static void | describe (QString type) |
static QString | fullParameterDescriptionPath (QString type, QString param) |
static QString | fullSubgroupDescriptionPath (QString type, QString sub) |
Static Public Member Functions inherited from ParameterSettable | |
static void | describe (QString type) |
static QString | fullParameterDescriptionPath (QString type, QString param) |
static QString | fullSubgroupDescriptionPath (QString type, QString sub) |
Additional Inherited Members | |
Public Types inherited from ParameterSettableInConstructor | |
enum | Property |
Public Types inherited from ConcurrentResourcesUser | |
typedef Resource::ResourceChangeType | ResourceChangeType |
Public Attributes inherited from ParameterSettableInConstructor | |
AllowMultiple | |
Default | |
IsList | |
IsMandatory | |
Static Public Attributes inherited from ParameterSettableInConstructor | |
static const double | Infinity |
static const int | MaxInteger |
static const int | MinInteger |
Protected Member Functions inherited from Sensor | |
QString | actualResourceNameForMultirobot (QString resourceName) const |
Returns the actual resource name to use. | |
void | checkAllNeededResourcesExist () |
Checks whether all resources we need are existing and throws an exception if they aren't. | |
void | resetNeededResourcesCheck () |
Resets the check on needed resources so that the next call to checkAllNeededResourcesExist() will perform the full check and not the quick one. | |
Static Protected Member Functions inherited from ParameterSettableInConstructor | |
static Descriptor | addTypeDescription (QString type, QString shortHelp, QString longHelp=QString("")) |
static void | setGraphicalEditor (QString type) |
Protected Attributes inherited from iCubSensor | |
QString | icubResource |
The name of the resource associated with the iCub robot. | |
QString | neuronsIteratorResource |
The name of th resource associated with the neural network iterator. | |
Detailed Description
A sensor registering contacts with the iCub palm.
The touch sensor of the iCub palm (this doesn't check contacts with fingertips). There are four sensors corresponding to the four patches of touch sensors on the real iCub hand. This sensor works both when the iCub is dynamic and when it is kinematic, as it uses Wolrd::smartCheckContacts. The neuron corresponding to each touch sensor is set to either 0 or 1 depending on whether the sensor is active (i.e. is in touch with something) or not. When the iCub is dynamic, it is also possible to specify whether contacts with all objects in the world should be registered or only with objects defined by the experiment using the "checkAllObjects" parameter. When the iCub is kinematic only collisions with objects defined by the experiment are checked. The position of the four sensors is roughly corresponding to the position of the four patches on the real robot hand palm.
In addition to all parameters defined by the parent class (Sensor), this class also defines the following parameters:
- icub: the name of the resource associated with the iCub robot to use
- hand: the hand to use. Choose between "right" and "left"
- checkAllObjects: a boolean value specifying whether to check collisions with all objects or not (see the class description for more information)
- drawSensor: if true the location of the touch sensors is drawn
The resources required by this Sensor are:
- evonetIterator: the object to iterate over neurons of the neural network
- world: the simulated physical world
- icub: the simulated physical iCub robot
- evorobotexperiment: the pointer to the current experiment, which must be a subclass of EvoRobotExperiment. This is needed to get the list of objects defined by the experiment
Definition at line 849 of file icubsensors.h.
Constructor & Destructor Documentation
iCubPalmPatchesTouchSensor | ( | ConfigurationParameters & | params, |
QString | prefix | ||
) |
Constructor.
Creates and configures the sensor
- Parameters
-
params the ConfigurationParameters containing the parameters prefix the path prefix to the paramters for this Sensor
Definition at line 1831 of file icubsensors.cpp.
References ConfigurationHelper::getBool(), ConfigurationHelper::getString(), iCubSensor::icubResource, iCubSensor::neuronsIteratorResource, ConfigurationHelper::throwUserConfigError(), and ConcurrentResourcesUser::usableResources().
Destructor.
Definition at line 1860 of file icubsensors.cpp.
Member Function Documentation
|
static |
Generates a description of this class and its parameters.
- Parameters
-
type the string representation of this class name
Definition at line 1874 of file icubsensors.cpp.
References ParameterSettableInConstructor::addTypeDescription(), ParameterSettable::EnumDescriptor::def(), ParameterSettable::BoolDescriptor::def(), iCubSensor::describe(), ParameterSettable::Descriptor::describeBool(), ParameterSettable::Descriptor::describeEnum(), ParameterSettable::EnumDescriptor::help(), ParameterSettable::BoolDescriptor::help(), ParameterSettableInConstructor::IsMandatory, ParameterSettable::EnumDescriptor::props(), and ParameterSettable::EnumDescriptor::values().
|
virtual |
Saves current parameters into the given ConfigurationParameters object.
- Parameters
-
params the ConfigurationParameters object in which parameters should be saved prefix the name and path of the group where to save parametrs
Reimplemented from iCubSensor.
Definition at line 1865 of file icubsensors.cpp.
References ConfigurationParameters::createParameter(), iCubSensor::save(), and ConfigurationParameters::startObjectParameters().
|
virtual |
Returns the number of neurons required by this sensor.
- Returns
- the number of neurons required by this sensor
Implements Sensor.
Definition at line 1940 of file icubsensors.cpp.
|
virtual |
Performs the sensor update. This also modifies the activation of input neurons.
Implements Sensor.
Definition at line 1883 of file icubsensors.cpp.
References Sensor::checkAllNeededResourcesExist(), World::contacts(), PhyiCub::isKinematic(), Sensor::name(), iCubSensor::neuronsIteratorResource, EvonetIterator::nextNeuron(), PalmPatchesTouchSensorGraphic::setActivations(), EvonetIterator::setCurrentBlock(), EvonetIterator::setInput(), and World::smartCheckContacts().
The documentation for this class was generated from the following files:
- experiments/include/icubsensors.h
- experiments/src/icubsensors.cpp