The sampled proximity infrared sensors of the MarXbot. More...

Public Member Functions | |
MarXbotSampledProximityIRSensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor. More... | |
virtual | ~MarXbotSampledProximityIRSensor () |
Destructor. More... | |
const QVector< bool > & | getActiveSensors () const |
int | getAverageNum () const |
int | getNumActiveSensors () const |
const SampledIRDataLoader & | getRoundSamples () const |
const SampledIRDataLoader & | getSmallSamples () const |
virtual void | save (ConfigurationParameters ¶ms, QString prefix) |
Saves current parameters into the given ConfigurationParameters object. More... | |
virtual int | size () |
Returns the number of neurons required by this sensor. More... | |
virtual void | update () |
Performs the sensor update. This also modifies the activation of input neurons. More... | |
![]() | |
MarXbotSensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor. More... | |
virtual | ~MarXbotSensor () |
Destructor. More... | |
![]() | |
Sensor (ConfigurationParameters ¶ms, QString prefix) | |
Constructor and Configure. More... | |
~Sensor () | |
Destructor. More... | |
QString | name () |
Return the name of the Sensor. More... | |
void | save (ConfigurationParameters ¶ms, QString prefix) |
Save the parameters into the ConfigurationParameters. More... | |
void | setName (QString name) |
Use this method for changing the name of the Sensor. More... | |
![]() | |
NoisyDevice (ConfigurationParameters ¶ms, QString prefix) | |
Constructor and Configure. More... | |
~NoisyDevice () | |
Destructor. More... | |
![]() | |
ParameterSettableInConstructor (ConfigurationParameters &, QString) | |
![]() | |
void | addObserver (RuntimeParameterObserver *obs) |
T | getRuntimeParameter (QString paramName) |
virtual ParameterSettableUI * | getUIManager () |
virtual void | postConfigureInitialization () |
void | removeObserver (RuntimeParameterObserver *obs) |
void | setRuntimeParameter (QString paramName, T newvalue) |
QString | typeName () const |
![]() | |
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. More... | |
![]() | |
static void | describe (QString type) |
Describes all the parameters for this sensor. More... | |
![]() | |
static void | describe (QString type) |
Describe all the parameter for configuring the Sensor. More... | |
![]() | |
static void | describe (QString type) |
Describe all the parameter for configuring the Sensor. More... | |
![]() | |
static void | describe (QString type) |
static QString | fullParameterDescriptionPath (QString type, QString param) |
static QString | fullSubgroupDescriptionPath (QString type, QString sub) |
Additional Inherited Members | |
![]() | |
enum | Property |
![]() | |
typedef Resource::ResourceChangeType | ResourceChangeType |
![]() | |
enum | ResourceChangeType |
![]() | |
AllowMultiple | |
Default | |
IsList | |
IsMandatory | |
![]() | |
static const double | Infinity |
static const int | MaxInteger |
static const int | MinInteger |
![]() | |
QString | actualResourceNameForMultirobot (QString resourceName) const |
Returns the actual resource name to use. More... | |
void | checkAllNeededResourcesExist () |
Checks whether all resources we need are existing and throws an exception if they aren't. More... | |
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. More... | |
![]() | |
double | applyNoise (double v, double minValue, double maxValue) const |
Adds noise to the value. More... | |
![]() | |
void | notifyChangesToParam (QString paramName) |
![]() | |
T * | getResource () |
![]() | |
ResourcesUser (const ResourcesUser &other) | |
virtual void | notifyResourceChange (ResourceHandler *resource, ResourceChangeType changeType)=0 |
ResourcesUser & | operator= (const ResourcesUser &other) |
![]() | |
static Descriptor | addTypeDescription (QString type, QString shortHelp, QString longHelp=QString("")) |
static void | setGraphicalEditor (QString type) |
![]() | |
QString | m_marxbotResource |
The name of the resource associated with the MarXbot robot. More... | |
QString | m_neuronsIteratorResource |
The name of th resource associated with the neural network iterator. More... | |
![]() | |
ResourceCollectionHolder | m_resources |
Detailed Description
The sampled proximity infrared sensors of the MarXbot.
The sampled proximity infrared sensors of the MarXbot. This version of the infrared proximity sensors is based on data sampled from the real robot. It is fast but only works with objects created using the Arena. This sensor applies noise if requested
In addition to all parameters defined by the parent class (MarXbotSensor), this class also defines the following parameters:
- activeSensors: Which IR sensors of the robot are actually enabled. This is a string of exactly 24 elements. Each element can be either "0" or "1" to respectively disable/enable the corresponding proximity IR sensor. The first sensor is the one on the left side of the robot and the others follow counterclockwise (i.e. left, back, right, front). If averageNum is not zero, this parameter is ignored.
- averageNum: how many sensors should be averaged. This can only be 0, 2, 3, 4 or 6. If 2, for each couple of consecutive sensors the average is returned, if 3 for each triplet of consecutive sensors the average is returned and so on. If this is zero, no average is computed and the activeSensors parameter is used. The default value is 0
- roundSamples: the file with samples for big round objects
- smallSamples: the file with samples for small round objects
- wallSamples: the file with samples for walls
The resources required by this Sensor are the same as those of the parent class plus:
- arena: the instance of the Arena object where the robot lives
Definition at line 913 of file marxbotsensors.h.
Constructor & Destructor Documentation
MarXbotSampledProximityIRSensor | ( | 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 1083 of file marxbotsensors.cpp.
References ConcurrentResourcesUser::addUsableResource(), SampledIRDataLoader::filename(), ConfigurationParameters::getValue(), SampledIRDataLoader::numIR(), and ConfigurationHelper::throwUserConfigError().
|
virtual |
Destructor.
Definition at line 1118 of file marxbotsensors.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 1141 of file marxbotsensors.cpp.
References ParameterSettable::addTypeDescription(), and MarXbotSensor::describe().
|
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 MarXbotSensor.
Definition at line 1123 of file marxbotsensors.cpp.
References ConfigurationParameters::createParameter(), SampledIRDataLoader::filename(), MarXbotSensor::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 1235 of file marxbotsensors.cpp.
|
virtual |
Performs the sensor update. This also modifies the activation of input neurons.
Implements Sensor.
Definition at line 1155 of file marxbotsensors.cpp.
References NoisyDevice::applyNoise(), Sensor::checkAllNeededResourcesExist(), PhyObject2DWrapper::computeDistanceAndOrientationFromRobot(), SampledIRDataLoader::getActivation(), Arena::getObjects(), Arena::getRobotWrapper(), MarXbotSensor::m_marxbotResource, farsa::min(), Sensor::name(), NeuronsIterator::nextNeuron(), NeuronsIterator::setCurrentBlock(), NeuronsIterator::setInput(), and PhyObject2DWrapper::type().
The documentation for this class was generated from the following files:
- experiments/include/marxbotsensors.h
- experiments/src/marxbotsensors.cpp