Robotics Library
0.7.0
|
Schmersal LSS 300 safety laser scanner. More...
#include <SchmersalLss300.h>
Public Types | |
enum | BaudRate { BAUDRATE_9600BPS, BAUDRATE_19200BPS, BAUDRATE_38400BPS, BAUDRATE_57600BPS } |
enum | Monitoring { MONITORING_CONTINUOUS, MONITORING_SINGLE } |
Public Member Functions | |
SchmersalLss300 (const ::std::string &device="/dev/ttyS0", const BaudRate &baudRate=BAUDRATE_9600BPS, const Monitoring &monitoring=MONITORING_SINGLE, const ::std::string &password="PASS_LSS") | |
virtual | ~SchmersalLss300 () |
void | close () |
BaudRate | getBaudRate () const |
::rl::math::Vector | getDistances () 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 |
Monitoring | getMonitoring () const |
::rl::math::Real | getResolution () const |
::rl::math::Real | getStartAngle () const |
::rl::math::Real | getStopAngle () const |
::std::string | getType () |
void | open () |
void | reset () |
void | setBaudRate (const BaudRate &baudRate) |
void | setMonitoring (const Monitoring &monitoring) |
void | start () |
void | step () |
void | stop () |
Public Member Functions inherited from rl::hal::CyclicDevice | |
CyclicDevice (const ::std::chrono::nanoseconds &updateRate) | |
virtual | ~CyclicDevice () |
virtual ::std::chrono::nanoseconds | getUpdateRate () const |
Public Member Functions inherited from rl::hal::Device | |
Device () | |
virtual | ~Device () |
bool | isConnected () const |
bool | isRunning () const |
Public Member Functions inherited from rl::hal::Lidar | |
Lidar () | |
virtual | ~Lidar () |
Public Member Functions inherited from rl::hal::RangeSensor | |
RangeSensor () | |
virtual | ~RangeSensor () |
Private Member Functions | |
::std::uint16_t | crc (const ::std::uint8_t *buf, const ::std::size_t &len) const |
::std::size_t | recv (::std::uint8_t *buf, const ::std::size_t &len, const ::std::uint8_t &command) |
void | send (::std::uint8_t *buf, const ::std::size_t &len) |
bool | waitAck () |
Private Attributes | |
BaudRate | baudRate |
::std::array< ::std::uint8_t, 1013 > | data |
BaudRate | desired |
Monitoring | monitoring |
::std::string | password |
Serial | serial |
Additional Inherited Members | |
Protected Member Functions inherited from rl::hal::Device | |
void | setConnected (const bool &connected) |
void | setRunning (const bool &running) |
Schmersal LSS 300 safety laser scanner.
rl::hal::SchmersalLss300::SchmersalLss300 | ( | const ::std::string & | device = "/dev/ttyS0" , |
const BaudRate & | baudRate = BAUDRATE_9600BPS , |
||
const Monitoring & | monitoring = MONITORING_SINGLE , |
||
const ::std::string & | password = "PASS_LSS" |
||
) |
[in] | password | String with 8 characters comprising "0...9", "a...z", "A...Z", and "_". |
|
virtual |
|
virtual |
Implements rl::hal::Device.
|
private |
SchmersalLss300::BaudRate rl::hal::SchmersalLss300::getBaudRate | ( | ) | const |
|
virtual |
[out] | distances | [m] |
Implements rl::hal::RangeSensor.
|
virtual |
Implements rl::hal::RangeSensor.
|
virtual |
Implements rl::hal::RangeSensor.
|
virtual |
Implements rl::hal::RangeSensor.
SchmersalLss300::Monitoring rl::hal::SchmersalLss300::getMonitoring | ( | ) | const |
|
virtual |
Implements rl::hal::Lidar.
|
virtual |
Implements rl::hal::Lidar.
|
virtual |
Implements rl::hal::Lidar.
std::string rl::hal::SchmersalLss300::getType | ( | ) |
|
virtual |
Implements rl::hal::Device.
|
private |
void rl::hal::SchmersalLss300::reset | ( | ) |
|
private |
void rl::hal::SchmersalLss300::setBaudRate | ( | const BaudRate & | baudRate | ) |
void rl::hal::SchmersalLss300::setMonitoring | ( | const Monitoring & | monitoring | ) |
|
virtual |
Implements rl::hal::Device.
|
virtual |
Implements rl::hal::CyclicDevice.
|
virtual |
Implements rl::hal::Device.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |