Public Member Functions | List of all members
rp::standalone::rplidar::RPlidarDriverSerial Class Reference

#include <rplidar_driver_serial.h>

Inheritance diagram for rp::standalone::rplidar::RPlidarDriverSerial:
Inheritance graph
[legend]

Public Member Functions

virtual u_result connect (const char *port_path, _u32 baudrate, _u32 flag=0)
 
virtual void disconnect ()
 Disconnect with the RPLIDAR and close the serial port. More...
 
 RPlidarDriverSerial ()
 
virtual ~RPlidarDriverSerial ()
 
- Public Member Functions inherited from rp::standalone::rplidar::RPlidarDriverImplCommon
virtual u_result ascendScanData (rplidar_response_measurement_node_t *nodebuffer, size_t count)
 
virtual u_result ascendScanData (rplidar_response_measurement_node_hq_t *nodebuffer, size_t count)
 
virtual u_result checkExpressScanSupported (bool &support, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result checkIfTofLidar (bool &isTofLidar, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result checkMotorCtrlSupport (bool &support, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result checkSupportConfigCommands (bool &outSupport, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result clearNetSerialRxCache ()
 
virtual u_result getAllSupportedScanModes (std::vector< RplidarScanMode > &outModes, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 Get all scan modes that supported by lidar. More...
 
virtual u_result getDeviceInfo (rplidar_response_device_info_t &info, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result getFrequency (bool inExpressMode, size_t count, float &frequency, bool &is4kmode)
 
virtual u_result getFrequency (const RplidarScanMode &scanMode, size_t count, float &frequency)
 
virtual u_result getHealth (rplidar_response_device_health_t &health, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result getLidarConf (_u32 type, std::vector< _u8 > &outputBuf, const std::vector< _u8 > &reserve=std::vector< _u8 >(), _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result getLidarSampleDuration (float &sampleDurationRes, _u16 scanModeID, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result getMaxDistance (float &maxDistance, _u16 scanModeID, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result getSampleDuration_uS (rplidar_response_sample_rate_t &rateInfo, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result getScanDataWithInterval (rplidar_response_measurement_node_t *nodebuffer, size_t &count)
 
virtual u_result getScanDataWithIntervalHq (rplidar_response_measurement_node_hq_t *nodebuffer, size_t &count)
 
virtual u_result getScanModeAnsType (_u8 &ansType, _u16 scanModeID, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result getScanModeCount (_u16 &modeCount, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result getScanModeName (char *modeName, _u16 scanModeID, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 
virtual u_result getTypicalScanMode (_u16 &outMode, _u32 timeoutInMs=DEFAULT_TIMEOUT)
 Get typical scan mode of lidar. More...
 
virtual u_result grabScanData (rplidar_response_measurement_node_t *nodebuffer, size_t &count, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result grabScanDataHq (rplidar_response_measurement_node_hq_t *nodebuffer, size_t &count, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual bool isConnected ()
 Returns TRUE when the connection has been established. More...
 
virtual u_result reset (_u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result setLidarSpinSpeed (_u16 rpm, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result setMotorPWM (_u16 pwm)
 
virtual u_result startMotor ()
 Start RPLIDAR's motor when using accessory board. More...
 
virtual u_result startScan (bool force, bool useTypicalScan, _u32 options=0, RplidarScanMode *outUsedScanMode=NULL)
 
virtual u_result startScanExpress (bool force, _u16 scanMode, _u32 options=0, RplidarScanMode *outUsedScanMode=NULL, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result startScanNormal (bool force, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result stop (_u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result stopMotor ()
 Stop RPLIDAR's motor when using accessory board. More...
 
- Public Member Functions inherited from rp::standalone::rplidar::RPlidarDriver
 DEPRECATED (virtual u_result getSampleDuration_uS(rplidar_response_sample_rate_t &rateInfo, _u32 timeout=DEFAULT_TIMEOUT))=0
 
 DEPRECATED (virtual u_result getFrequency(bool inExpressMode, size_t count, float &frequency, bool &is4kmode))=0
 
 DEPRECATED (virtual u_result checkExpressScanSupported(bool &support, _u32 timeout=DEFAULT_TIMEOUT))=0
 
 DEPRECATED (virtual u_result grabScanData(rplidar_response_measurement_node_t *nodebuffer, size_t &count, _u32 timeout=DEFAULT_TIMEOUT))=0
 
 DEPRECATED (virtual u_result ascendScanData(rplidar_response_measurement_node_t *nodebuffer, size_t count))=0
 
 DEPRECATED (virtual u_result getScanDataWithInterval(rplidar_response_measurement_node_t *nodebuffer, size_t &count))=0
 
virtual ~RPlidarDriver ()
 

Additional Inherited Members

- Public Types inherited from rp::standalone::rplidar::RPlidarDriverImplCommon
enum  { RPLIDAR_TOF_MINUM_MAJOR_ID = 5 }
 
- Public Types inherited from rp::standalone::rplidar::RPlidarDriver
enum  { DEFAULT_TIMEOUT = 2000 }
 
enum  { MAX_SCAN_NODES = 8192 }
 
enum  { LEGACY_SAMPLE_DURATION = 476 }
 
- Static Public Member Functions inherited from rp::standalone::rplidar::RPlidarDriver
static RPlidarDriverCreateDriver (_u32 drivertype=DRIVER_TYPE_SERIALPORT)
 
static void DisposeDriver (RPlidarDriver *drv)
 
- Public Attributes inherited from rp::standalone::rplidar::RPlidarDriver
ChannelDevice_chanDev
 
- Protected Member Functions inherited from rp::standalone::rplidar::RPlidarDriverImplCommon
virtual u_result _cacheCapsuledScanData ()
 
virtual u_result _cacheHqScanData ()
 
virtual u_result _cacheScanData ()
 
virtual u_result _cacheUltraCapsuledScanData ()
 
virtual void _capsuleToNormal (const rplidar_response_capsule_measurement_nodes_t &capsule, rplidar_response_measurement_node_hq_t *nodebuffer, size_t &nodeCount)
 
virtual void _dense_capsuleToNormal (const rplidar_response_capsule_measurement_nodes_t &capsule, rplidar_response_measurement_node_hq_t *nodebuffer, size_t &nodeCount)
 
void _disableDataGrabbing ()
 
virtual void _HqToNormal (const rplidar_response_hq_capsule_measurement_nodes_t &node_hq, rplidar_response_measurement_node_hq_t *nodebuffer, size_t &nodeCount)
 
virtual u_result _sendCommand (_u8 cmd, const void *payload=NULL, size_t payloadsize=0)
 
virtual void _ultraCapsuleToNormal (const rplidar_response_ultra_capsule_measurement_nodes_t &capsule, rplidar_response_measurement_node_hq_t *nodebuffer, size_t &nodeCount)
 
virtual u_result _waitCapsuledNode (rplidar_response_capsule_measurement_nodes_t &node, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result _waitHqNode (rplidar_response_hq_capsule_measurement_nodes_t &node, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result _waitNode (rplidar_response_measurement_node_t *node, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result _waitResponseHeader (rplidar_ans_header_t *header, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result _waitScanData (rplidar_response_measurement_node_t *nodebuffer, size_t &count, _u32 timeout=DEFAULT_TIMEOUT)
 
virtual u_result _waitUltraCapsuledNode (rplidar_response_ultra_capsule_measurement_nodes_t &node, _u32 timeout=DEFAULT_TIMEOUT)
 
 RPlidarDriverImplCommon ()
 
virtual ~RPlidarDriverImplCommon ()
 
- Protected Member Functions inherited from rp::standalone::rplidar::RPlidarDriver
 RPlidarDriver ()
 
- Protected Attributes inherited from rp::standalone::rplidar::RPlidarDriverImplCommon
_u8 _cached_express_flag
 
rplidar_response_capsule_measurement_nodes_t _cached_previous_capsuledata
 
rplidar_response_dense_capsule_measurement_nodes_t _cached_previous_dense_capsuledata
 
rplidar_response_hq_capsule_measurement_nodes_t _cached_previous_Hqdata
 
rplidar_response_ultra_capsule_measurement_nodes_t _cached_previous_ultracapsuledata
 
_u16 _cached_sampleduration_express
 
_u16 _cached_sampleduration_std
 
rplidar_response_measurement_node_hq_t _cached_scan_node_hq_buf [8192]
 
rplidar_response_measurement_node_hq_t _cached_scan_node_hq_buf_for_interval_retrieve [8192]
 
size_t _cached_scan_node_hq_count
 
size_t _cached_scan_node_hq_count_for_interval_retrieve
 
rp::hal::Thread _cachethread
 
rp::hal::Event _dataEvt
 
bool _is_previous_capsuledataRdy
 
bool _is_previous_HqdataRdy
 
bool _isConnected
 
bool _isScanning
 
bool _isSupportingMotorCtrl
 
bool _isTofLidar
 
rp::hal::Locker _lock
 

Detailed Description

Definition at line 95 of file rplidar_driver_serial.h.

Constructor & Destructor Documentation

rp::standalone::rplidar::RPlidarDriverSerial::RPlidarDriverSerial ( )

Definition at line 2220 of file rplidar_driver.cpp.

rp::standalone::rplidar::RPlidarDriverSerial::~RPlidarDriverSerial ( )
virtual

Definition at line 2225 of file rplidar_driver.cpp.

Member Function Documentation

u_result rp::standalone::rplidar::RPlidarDriverSerial::connect ( const char *  ,
_u32  ,
_u32  flag = 0 
)
virtual

Open the specified serial port and connect to a target RPLIDAR device

Parameters
port_paththe device path of the serial port e.g. on Windows, it may be com3 or \. on Unix-Like OS, it may be /dev/ttyS1, /dev/ttyUSB2, etc
baudratethe baudrate used For most RPLIDAR models, the baudrate should be set to 115200
flagother flags Reserved for future use, always set to Zero

Implements rp::standalone::rplidar::RPlidarDriver.

Definition at line 2240 of file rplidar_driver.cpp.

void rp::standalone::rplidar::RPlidarDriverSerial::disconnect ( )
virtual

Disconnect with the RPLIDAR and close the serial port.

Implements rp::standalone::rplidar::RPlidarDriver.

Definition at line 2234 of file rplidar_driver.cpp.


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


rplidar_ros
Author(s):
autogenerated on Wed Jan 1 2020 04:01:40