Enki  1.9
Public Member Functions | Protected Attributes | List of all members
Enki::FourWayMic Class Reference

A generic sound sensor/microphone. More...

#include <Microphone.h>

Inheritance diagram for Enki::FourWayMic:
Enki::LocalInteraction Enki::SbotMicrophone

Public Member Functions

 FourWayMic (Robot *owner, double micDist, double range, MicrophoneResponseModel micModel, unsigned channels)
 Constructor e.g. More...
 
 ~FourWayMic (void)
 Destructor.
 
void init ()
 Reset distance values, called every w->step()
 
virtual void objectStep (double dt, PhysicalObject *po, World *w)
 Check for local interactions with other physical objects.
 
void resetSound (void)
 Reset sound buffer to 0 after one time-step in experiment.
 
double * getAcquiredSound (unsigned micNo)
 Return frequencies of input sound.
 
void getMaxChannel (unsigned micNo, double *intensity, int *channel)
 Find frequency with maximum intensity.
 
Vector getMicAbsPos (unsigned micNo)
 Get absolute position of microphone.
 
- Public Member Functions inherited from Enki::LocalInteraction
 LocalInteraction ()
 Constructor.
 
 LocalInteraction (double range, Robot *owner)
 Constructor.
 
virtual ~LocalInteraction ()
 Destructor.
 
virtual void init (double dt, World *w)
 Init at each step.
 
virtual void objectStep (double dt, World *w, PhysicalObject *po)
 Interact with object. More...
 
virtual void wallsStep (double dt, World *w)
 Interact with walls. More...
 
virtual void finalize (double dt, World *w)
 Finalize at each step.
 
double getRange () const
 Return the range of the interaction.
 

Protected Attributes

PhysicalObjectowner
 Robot/object with the microphone.
 
Vector allMicAbsPos [4]
 Absolute position in the world, updated on init()
 
double micDist
 Distance of the mics from centre of object.
 
MicrophoneResponseModel micModel
 Microphone frequency response model.
 
double range
 Actual detection range.
 
unsigned noOfChannels
 No of frequency channels distinguished in input.
 
double * acquiredSound [4]
 Microphone input signal (array of size noOfChannels for 4 mics)
 
- Protected Attributes inherited from Enki::LocalInteraction
double r
 Radius of the local interaction.
 
Robotowner
 The physical object that owns the interaction.
 

Detailed Description

A generic sound sensor/microphone.

Constructor & Destructor Documentation

Enki::FourWayMic::FourWayMic ( Robot owner,
double  micDist,
double  range,
MicrophoneResponseModel  micModel,
unsigned  channels 
)

Constructor e.g.

: FourWayMic(this, 0.5, 5, micStepModel, 20); meaning: each of the 4 mics is 0.5 away from robot center, can hear sounds up to 5 units away, uses a step model to detect sounds and can distinguish 20 frequencies

References Enki::Microphone::acquiredSound, Enki::PhysicalObject::angle, Enki::Microphone::micModel, Enki::Microphone::noOfChannels, Enki::Microphone::owner, Enki::PhysicalObject::pos, Enki::LocalInteraction::r, and Enki::Microphone::range.


The documentation for this class was generated from the following files: