Main MRPT website > C++ reference for MRPT 1.3.2
CRaePID.h
Go to the documentation of this file.
1 /* +---------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2015, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +---------------------------------------------------------------------------+ */
9 #ifndef CRaePID_H
10 #define CRaePID_H
11 
16 
17 namespace mrpt
18 {
19  namespace hwdrivers
20  {
21  /** This class implements a driver for the RAE Systems gas PhotoIonization Detector (PID) (Tested on a MiniRAE Lite)
22  * The sensor is accessed via a standard (or USB) serial port.
23  *
24  * Refer to the manufacturer website for details on this sensor: http://www.raesystems.com/products/minirae-lite
25  *
26  * \sa mrpt::obs::CObservationGasSensors
27  * \ingroup mrpt_hwdrivers_grp
28  */
30  {
32 
33  private:
34  /** COM port name
35  */
36  std::string com_port;
37  int com_bauds;
38 
39  /** COM port
40  */
42 
43  /** Poses
44  */
45  float pose_x, pose_y, pose_z, pose_yaw, pose_pitch, pose_roll;
46 
47  /** Returns true if the COM port is already open, or try to open it in other case.
48  * \return true if everything goes OK, or false if there are problems opening the port.
49  */
50  bool tryToOpenTheCOM();
51 
52  public:
53  /** Default constructor.
54  */
55  CRaePID();
56  /** Default destructor.
57  */
58  virtual ~CRaePID(){COM.close();};
59 
60  void doProcess();
61 
62  void loadConfig_sensorSpecific(
63  const mrpt::utils::CConfigFileBase &configSource,
64  const std::string &section);
65 
66  /** Get firmware version string.
67  */
68  std::string getFirmware();
69 
70  /** Get model string.
71  */
72  std::string getModel();
73 
74  /** Get serial number as a string.
75  */
76  std::string getSerialNumber();
77 
78  /** Get name string.
79  */
80  std::string getName();
81 
82  /** Switch power on or off (returns true if turned on).
83  */
84  bool switchPower();
85 
86  /** Get full reading (see PID documentation). In the returned observation, each reding is saved as a separate e-nose
87  */
89 
90  /** Get error status (true if an error was found). errorString shows the error code (see PID documentation)
91  */
92  bool errorStatus(std::string &errorString);
93 
94  /** Get alarm limits
95  */
96  void getLimits(float &min, float &max);
97 
98 
99  }; // End of class def.
100 
101  } // End of namespace
102 } // End of namespace
103 #endif
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
A communications serial port built as an implementation of a utils::CStream.
Definition: CSerialPort.h:43
std::string com_port
COM port name.
Definition: CRaePID.h:36
This class implements a driver for the RAE Systems gas PhotoIonization Detector (PID) (Tested on a Mi...
Definition: CRaePID.h:29
This class allows loading and storing values and vectors of different types from a configuration text...
Declares a class derived from "CObservation" that represents a set of readings from gas sensors...
CSerialPort COM
COM port.
Definition: CRaePID.h:41
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void close()
Close the port.
#define HWDRIVERS_IMPEXP
virtual ~CRaePID()
Default destructor.
Definition: CRaePID.h:58



Page generated by Doxygen 1.8.11 for MRPT 1.3.2 SVN: at Mon May 9 06:50:38 UTC 2016