CPCSensor
class uuv_plume_simulator::CPCSensor
¶
Summary¶
Members | Descriptions |
---|---|
public CPCSensor () |
Class constructor. |
public ~CPCSensor () |
Class destructor. |
protected bool updatingCloud |
Flag to ensure the cloud and measurement update don't coincide. |
protected double gamma |
Gamma velocity parameter for the smoothing function. |
protected double gain |
Sensor gain. |
protected double smoothingLength |
Radius of the kernel to identify particles that will be taken into account in the concentration computation. |
protected std::string salinityUnit |
Salinity unit to be used. Options are. |
protected double saturation |
Sensor saturation. |
protected bool useGeoCoordinates |
Flag that will allow storing the geodetic coordinates with the measurement message. |
protected bool publishSalinity |
Flag to activate publishing the simulated salinity. |
protected double referenceSalinityValue |
Default salinity value for the fluid e.g. sea water. |
protected double plumeSalinityValue |
Default salinity value for the plume. |
protected bool updateMeasurement |
Set to true to avoid particle update. |
protected double updateRate |
Output topic's update rate. |
protected std::string sensorFrameID |
Name of the sensor frame. |
protected bool areParticlesInit |
Flag set to true after the first set of plume particles is received. |
protected bool useOdom |
Flag set if the sensor position update must be read from the vehicle's odometry input topic. |
protected bool useGPS |
Flag set if the sensor position update must be read from the vehicle's GPS topic. |
protected bool useTFUpdate |
Flag set if the TF update wrt the sensor frame ID. |
protected geometry_msgs::Vector3 cartPos |
Measured Cartesian position. |
protected geographic_msgs::GeoPoint geoPos |
Measured geodetic position. |
protected ros::Subscriber particlesSub |
Subscriber for the plume particle point cloud. |
protected ros::Subscriber odometrySub |
Subscriber for odometry topic. |
protected ros::Subscriber gpsSub |
Subscriber to the GPS update topic. |
protected ros::Publisher concentrationPub |
Output topic for particle concentration. |
protected ros::Publisher salinityPub |
Output topic for salinity. |
protected std::shared_ptr< ros::NodeHandle > nodeHandle |
ROS node handle. |
protected tf2_ros::Buffer tfBuffer |
TF buffer instance. |
protected std::shared_ptr< tf2_ros::TransformListener > tfListener |
TF listener pointer. |
protected GeographicLib::LocalCartesian projection |
Local Cartesian projection. |
protected uuv_plume_msgs::ParticleConcentration concentrationMsg |
Plume concentration message. |
protected uuv_plume_msgs::Salinity salinityMsg |
Salinity message. |
protected ros::Timer updateTimer |
Sensor update timer. |
protected std::default_random_engine rndGen |
Pseudo random number generator. |
protected std::normal_distribution< double > noiseModel |
Normal distribution describing the noise model. |
protected double noiseAmp |
Noise amplitude. |
protected double noiseSigma |
Noise standard deviation. |
protected void OnSensorUpdate (const ros::TimerEvent &) |
Update the output concentration and salinity topics. |
protected void OnPlumeParticlesUpdate (const sensor_msgs::PointCloud::ConstPtr & _msg) |
Update callback from the plume particles. |
protected void OnOdometryUpdate (const nav_msgs::Odometry::ConstPtr & _msg) |
Update the odometry callback. |
protected void OnGPSUpdate (const sensor_msgs::NavSatFix::ConstPtr & _msg) |
Update the GPS update callback. |
Members¶
public
CPCSensor
()
¶
Class constructor.
public
~CPCSensor
()
¶
Class destructor.
protected bool
updatingCloud
¶
Flag to ensure the cloud and measurement update don't coincide.
protected double
gamma
¶
Gamma velocity parameter for the smoothing function.
protected double
gain
¶
Sensor gain.
protected double
smoothingLength
¶
Radius of the kernel to identify particles that will be taken into account in the concentration computation.
protected std::string
salinityUnit
¶
Salinity unit to be used. Options are.
-
ppt
(parts per thousand) -
ppm
(parts per million) -
psu
(practical salinity unit)
protected double
saturation
¶
Sensor saturation.
protected bool
useGeoCoordinates
¶
Flag that will allow storing the geodetic coordinates with the measurement message.
protected bool
publishSalinity
¶
Flag to activate publishing the simulated salinity.
protected double
referenceSalinityValue
¶
Default salinity value for the fluid e.g. sea water.
protected double
plumeSalinityValue
¶
Default salinity value for the plume.
protected bool
updateMeasurement
¶
Set to true to avoid particle update.
protected double
updateRate
¶
Output topic's update rate.
protected std::string
sensorFrameID
¶
Name of the sensor frame.
protected bool
areParticlesInit
¶
Flag set to true after the first set of plume particles is received.
protected bool
useOdom
¶
Flag set if the sensor position update must be read from the vehicle's odometry input topic.
protected bool
useGPS
¶
Flag set if the sensor position update must be read from the vehicle's GPS topic.
protected bool
useTFUpdate
¶
Flag set if the TF update wrt the sensor frame ID.
protected geometry_msgs::Vector3
cartPos
¶
Measured Cartesian position.
protected geographic_msgs::GeoPoint
geoPos
¶
Measured geodetic position.
protected ros::Subscriber
particlesSub
¶
Subscriber for the plume particle point cloud.
protected ros::Subscriber
odometrySub
¶
Subscriber for odometry topic.
protected ros::Subscriber
gpsSub
¶
Subscriber to the GPS update topic.
protected ros::Publisher
concentrationPub
¶
Output topic for particle concentration.
protected ros::Publisher
salinityPub
¶
Output topic for salinity.
protected std::shared_ptr< ros::NodeHandle >
nodeHandle
¶
ROS node handle.
protected tf2_ros::Buffer
tfBuffer
¶
TF buffer instance.
protected std::shared_ptr< tf2_ros::TransformListener >
tfListener
¶
TF listener pointer.
protected GeographicLib::LocalCartesian
projection
¶
Local Cartesian projection.
protected uuv_plume_msgs::ParticleConcentration
concentrationMsg
¶
Plume concentration message.
protected uuv_plume_msgs::Salinity
salinityMsg
¶
Salinity message.
protected ros::Timer
updateTimer
¶
Sensor update timer.
protected std::default_random_engine
rndGen
¶
Pseudo random number generator.
protected std::normal_distribution< double >
noiseModel
¶
Normal distribution describing the noise model.
protected double
noiseAmp
¶
Noise amplitude.
protected double
noiseSigma
¶
Noise standard deviation.
protected void
OnSensorUpdate
(const ros::TimerEvent &)
¶
Update the output concentration and salinity topics.
protected void
OnPlumeParticlesUpdate
(const sensor_msgs::PointCloud::ConstPtr & _msg)
¶
Update callback from the plume particles.
protected void
OnOdometryUpdate
(const nav_msgs::Odometry::ConstPtr & _msg)
¶
Update the odometry callback.
protected void
OnGPSUpdate
(const sensor_msgs::NavSatFix::ConstPtr & _msg)
¶
Update the GPS update callback.