Robotics Library  0.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
rl::hal::SickLms200 Class Reference

#include <SickLms200.h>

Inheritance diagram for rl::hal::SickLms200:
Inheritance graph
[legend]
Collaboration diagram for rl::hal::SickLms200:
Collaboration graph
[legend]

Public Types

enum  BaudRate { BAUDRATE_9600BPS, BAUDRATE_19200BPS, BAUDRATE_38400BPS, BAUDRATE_500000BPS }
enum  Measuring {
  MEASURING_8M, MEASURING_16M, MEASURING_32M, MEASURING_80M,
  MEASURING_160M, MEASURING_320M
}
enum  Monitoring { MONITORING_CONTINUOUS, MONITORING_SINGLE }
enum  Variant {
  VARIANT_100_25, VARIANT_100_50, VARIANT_100_100, VARIANT_180_50,
  VARIANT_180_100
}

Public Member Functions

 SickLms200 (const ::std::string &device="/dev/ttyS0", const BaudRate &baudRate=BAUDRATE_9600BPS, const Monitoring &monitoring=MONITORING_SINGLE, const Variant &variant=VARIANT_180_50, const Measuring &measuring=MEASURING_8M, const ::std::string &password="SICK_LMS")
virtual ~SickLms200 ()
void close ()
void dumpConfiguration ()
void dumpStatus ()
BaudRate getBaudRate () const
void getDistances (::rl::math::Vector &distances) const
::std::size_t getDistancesCount () const
::rl::math::Real getDistancesMaximum (const ::std::size_t &i) const
::rl::math::Real getDistancesMinimum (const ::std::size_t &i) const
Measuring getMeasuring () const
Monitoring getMonitoring () const
::rl::math::Real getResolution () const
::rl::math::Real getStartAngle () const
::rl::math::Real getStopAngle () const
::std::string getType ()
Variant getVariant () const
void open ()
void reset ()
void setBaudRate (const BaudRate &baudRate)
void setMeasuring (const Measuring &measuring)
void setMonitoring (const Monitoring &monitoring)
void setVariant (const Variant &variant)
void start ()
void step ()
void stop ()
- Public Member Functions inherited from rl::hal::Lidar
 Lidar ()
virtual ~Lidar ()
- Public Member Functions inherited from rl::hal::RangeSensor
 RangeSensor ()
virtual ~RangeSensor ()
- Public Member Functions inherited from rl::hal::Device
 Device ()
virtual ~Device ()
bool isConnected () const
bool isRunning () const

Private Member Functions

uint16_t crc (const uint8_t *buf, const ::std::size_t &len) const
::std::size_t recv (uint8_t *buf, const ::std::size_t &len, const uint8_t &command)
void send (uint8_t *buf, const ::std::size_t &len)
bool waitAck ()

Private Attributes

BaudRate baudRate
uint8_t configuration
uint8_t data [812]
BaudRate desired
Measuring measuring
Monitoring monitoring
::std::string password
Serialserial
::rl::util::Timer timer
Variant variant

Additional Inherited Members

- Protected Member Functions inherited from rl::hal::Device
void setConnected (const bool &connected)
void setRunning (const bool &running)

Member Enumeration Documentation

Enumerator:
BAUDRATE_9600BPS 

9,600 bps.

BAUDRATE_19200BPS 

19,200 bps.

BAUDRATE_38400BPS 

38,400 bps.

BAUDRATE_500000BPS 

500,000 bps.

Enumerator:
MEASURING_8M 
MEASURING_16M 
MEASURING_32M 
MEASURING_80M 
MEASURING_160M 
MEASURING_320M 
Enumerator:
MONITORING_CONTINUOUS 
MONITORING_SINGLE 
Enumerator:
VARIANT_100_25 

Angle = 100 degrees, resolution = 0.25 degrees.

VARIANT_100_50 

Angle = 100 degrees, resolution = 0.5 degrees.

VARIANT_100_100 

Angle = 100 degrees, resolution = 1 degree.

VARIANT_180_50 

Angle = 180 degrees, resolution = 0.5 degrees.

VARIANT_180_100 

Angle = 180 degrees, resolution = 1 degree.

Constructor & Destructor Documentation

rl::hal::SickLms200::SickLms200 ( const ::std::string &  device = "/dev/ttyS0",
const BaudRate baudRate = BAUDRATE_9600BPS,
const Monitoring monitoring = MONITORING_SINGLE,
const Variant variant = VARIANT_180_50,
const Measuring measuring = MEASURING_8M,
const ::std::string &  password = "SICK_LMS" 
)
Parameters
passwordString with 8 characters comprising "0...9", "a...z", "A...Z", and "_".
rl::hal::SickLms200::~SickLms200 ( )
virtual

Member Function Documentation

void rl::hal::SickLms200::close ( )
virtual
Precondition
stop()

Implements rl::hal::Device.

uint16_t rl::hal::SickLms200::crc ( const uint8_t *  buf,
const ::std::size_t &  len 
) const
private
void rl::hal::SickLms200::dumpConfiguration ( )
void rl::hal::SickLms200::dumpStatus ( )
SickLms200::BaudRate rl::hal::SickLms200::getBaudRate ( ) const
void rl::hal::SickLms200::getDistances ( ::rl::math::Vector distances) const
virtual
Parameters
distances[m]

Implements rl::hal::RangeSensor.

std::size_t rl::hal::SickLms200::getDistancesCount ( ) const
virtual

Implements rl::hal::RangeSensor.

rl::math::Real rl::hal::SickLms200::getDistancesMaximum ( const ::std::size_t &  i) const
virtual
Returns
[m]

Implements rl::hal::RangeSensor.

rl::math::Real rl::hal::SickLms200::getDistancesMinimum ( const ::std::size_t &  i) const
virtual
Returns
[m]

Implements rl::hal::RangeSensor.

SickLms200::Measuring rl::hal::SickLms200::getMeasuring ( ) const
SickLms200::Monitoring rl::hal::SickLms200::getMonitoring ( ) const
rl::math::Real rl::hal::SickLms200::getResolution ( ) const
virtual

Implements rl::hal::Lidar.

rl::math::Real rl::hal::SickLms200::getStartAngle ( ) const
virtual

Implements rl::hal::Lidar.

rl::math::Real rl::hal::SickLms200::getStopAngle ( ) const
virtual

Implements rl::hal::Lidar.

std::string rl::hal::SickLms200::getType ( )
SickLms200::Variant rl::hal::SickLms200::getVariant ( ) const
void rl::hal::SickLms200::open ( )
virtual

Implements rl::hal::Device.

std::size_t rl::hal::SickLms200::recv ( uint8_t *  buf,
const ::std::size_t &  len,
const uint8_t &  command 
)
private
void rl::hal::SickLms200::reset ( )
void rl::hal::SickLms200::send ( uint8_t *  buf,
const ::std::size_t &  len 
)
private
void rl::hal::SickLms200::setBaudRate ( const BaudRate baudRate)
void rl::hal::SickLms200::setMeasuring ( const Measuring measuring)
void rl::hal::SickLms200::setMonitoring ( const Monitoring monitoring)
void rl::hal::SickLms200::setVariant ( const Variant variant)
void rl::hal::SickLms200::start ( )
virtual
Precondition
open()

Implements rl::hal::Device.

void rl::hal::SickLms200::step ( )
virtual
Precondition
start()

Implements rl::hal::Device.

void rl::hal::SickLms200::stop ( )
virtual
Precondition
open()

Implements rl::hal::Device.

bool rl::hal::SickLms200::waitAck ( )
private

Member Data Documentation

BaudRate rl::hal::SickLms200::baudRate
private
uint8_t rl::hal::SickLms200::configuration
private
uint8_t rl::hal::SickLms200::data[812]
private
BaudRate rl::hal::SickLms200::desired
private
Measuring rl::hal::SickLms200::measuring
private
Monitoring rl::hal::SickLms200::monitoring
private
::std::string rl::hal::SickLms200::password
private
Serial* rl::hal::SickLms200::serial
private
::rl::util::Timer rl::hal::SickLms200::timer
private
Variant rl::hal::SickLms200::variant
private

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