Classes | |
class | BuildROSMessageException |
class | CoherentMonitoringFramesException |
class | DecryptPasswordException |
class | Degree |
Class to model angles in degrees from user's perspective. More... | |
struct | DiagnosticArea |
DiagnosticArea Field for MonitoringFrame. More... | |
struct | DiagnosticInformation |
DiagnosticInformation Bitfield for DiagnosticArea. More... | |
class | DiagnosticInformationException |
class | FetchMonitoringFrameException |
class | GetROSParameterException |
struct | InputStateArea |
InputStateArea Field for MonitoringFrame. More... | |
struct | LaserScan |
Class to hold the data for one laserscan without depencies to ROS. More... | |
struct | LogicalInputs |
Logical Inputs Field for InputStateArea. More... | |
struct | MonitoringFrame |
MonitoringFrame as coming from Laserscanner. More... | |
struct | OutputStateArea |
OutputStateArea Field for MonitoringFrame. More... | |
class | ParseMonitoringFrameException |
struct | PhysicalInputs |
Physical Inputs Field for InputStateArea. More... | |
class | PSENScanFatalException |
class | PSENscanInternalAngle |
Class to model angles in PSENscan internal format (tenth of degrees) More... | |
class | PSENscanUDPInterface |
Class for the UDP communication with the scanner. More... | |
class | RosParameterHandler |
Class for getting ROS-Parameters from the parameter-server. More... | |
class | ROSScannerNode |
Class implements a ROS-Node for the PSENscan safety laser scanner. More... | |
class | Scanner |
Class for Modeling a PSENscan safety laser scanner. More... | |
class | ScannerCloseFailed |
class | ScannerCommunicationInterface |
Abstract base class for the communication interface with the PSENscan scanner. More... | |
class | ScannerOpenFailed |
class | ScannerReadFailed |
class | ScannerReadTimeout |
class | ScannerWriteFailed |
struct | StartMonitoringFrame |
Frame containing all necessary fields for a Start Monitoring Command. More... | |
struct | StopMonitoringFrame |
Frame containing all necessary fields for a Stop Monitoring Command. More... | |
class | UDPReadTimeoutException |
class | vScanner |
Functions | |
static const PSENscanInternalAngle | DEFAULT_ANGLE_END (2750) |
static const PSENscanInternalAngle | DEFAULT_ANGLE_START (0) |
static const Degree | DEFAULT_X_AXIS_ROTATION (137.5) |
double | degToRad (const Degree °) |
Convert angle in deg to rad. More... | |
bool | isValidIpAddress (const char *ipAddress) |
PSENscanInternalAngle const | MAX_SCAN_ANGLE (2750) |
static const Degree | MAX_X_AXIS_ROTATION (360.0) |
PSENscanInternalAngle const | MIN_SCAN_ANGLE (0) |
static const Degree | MIN_X_AXIS_ROTATION (-360.0) |
std::ostream & | operator<< (std::ostream &os, const Degree °) |
Define how Degree should behave with stream operator. More... | |
std::ostream & | operator<< (std::ostream &os, const PSENscanInternalAngle °) |
Define how PSENscanInternalAngle should behave with stream operator. More... | |
Variables | |
static const std::string | DEFAULT_FRAME_ID = "scanner" |
static const std::string | DEFAULT_PUBLISH_TOPIC = "scan" |
static const uint16_t | DEFAULT_SKIP = 0 |
uint16_t const | MAX_NUMBER_OF_SAMPLES = 550 |
constexpr std::chrono::seconds | MIN_FETCH_FRAME_TIMEOUT { std::chrono::seconds(1) } |
uint32_t const | MONITORING_FRAME_OPCODE = 0xC9 |
uint16_t const | NUMBER_OF_SAMPLES_FULL_SCAN_MASTER = 2750 |
unsigned short const | PSEN_SCAN_PORT_READ = 2000 |
unsigned short const | PSEN_SCAN_PORT_WRITE = 3000 |
double const | SCAN_TIME = 0.03 |
uint64_t const | START_MONITORING_FIXED_SEQUENCE = 0x0000000100000001 |
Fixed sequence for StartMonitoring Frame. More... | |
uint32_t const | START_MONITORING_OPCODE = htole32(9) |
Opcode for StartMonitoring Frame. More... | |
uint32_t const | STOP_MONITORING_OPCODE = htole32(18) |
Opcode for StopMonitoring Frame. More... | |
static const uint64_t | TIMEOUT_LOOP_SLEEP_DURATION_MS = 5 |
typedef struct psen_scan::DiagnosticArea psen_scan::DiagnosticArea |
DiagnosticArea Field for MonitoringFrame.
typedef struct psen_scan::DiagnosticInformation psen_scan::DiagnosticInformation |
DiagnosticInformation Bitfield for DiagnosticArea.
typedef struct psen_scan::InputStateArea psen_scan::InputStateArea |
InputStateArea Field for MonitoringFrame.
typedef struct psen_scan::LaserScan psen_scan::LaserScan |
Class to hold the data for one laserscan without depencies to ROS.
typedef struct psen_scan::LogicalInputs psen_scan::LogicalInputs |
Logical Inputs Field for InputStateArea.
typedef struct psen_scan::MonitoringFrame psen_scan::MonitoringFrame |
MonitoringFrame as coming from Laserscanner.
typedef struct psen_scan::OutputStateArea psen_scan::OutputStateArea |
OutputStateArea Field for MonitoringFrame.
typedef struct psen_scan::PhysicalInputs psen_scan::PhysicalInputs |
Physical Inputs Field for InputStateArea.
typedef struct psen_scan::StartMonitoringFrame psen_scan::StartMonitoringFrame |
Frame containing all necessary fields for a Start Monitoring Command.
typedef struct psen_scan::StopMonitoringFrame psen_scan::StopMonitoringFrame |
Frame containing all necessary fields for a Stop Monitoring Command.
|
static |
End angle of measurement
|
static |
Start angle of measurement
|
static |
Rotation of x-axis around the center.
double psen_scan::degToRad | ( | const Degree & | deg | ) |
Convert angle in deg to rad.
deg | angle in degree |
Definition at line 58 of file ros_scanner_node.cpp.
bool psen_scan::isValidIpAddress | ( | const char * | ipAddress | ) |
Definition at line 33 of file scanner.cpp.
PSENscanInternalAngle const psen_scan::MAX_SCAN_ANGLE | ( | 2750 | ) |
Highest scan angle in tenth of degree
|
static |
Maximum value for x-axis-rotation parameter
PSENscanInternalAngle const psen_scan::MIN_SCAN_ANGLE | ( | 0 | ) |
Lowest scan angle in tenth of degree
|
static |
Minimum value for x-axis-rotation parameter
std::ostream& psen_scan::operator<< | ( | std::ostream & | os, |
const Degree & | deg | ||
) |
Define how Degree should behave with stream operator.
os | Output Stream |
deg | Degree |
Definition at line 160 of file psen_scan_internal_angle.cpp.
std::ostream& psen_scan::operator<< | ( | std::ostream & | os, |
const PSENscanInternalAngle & | deg | ||
) |
Define how PSENscanInternalAngle should behave with stream operator.
os | Output Stream |
deg | PSENscanInternalAngle |
Definition at line 342 of file psen_scan_internal_angle.cpp.
|
static |
ROS Frame ID
Definition at line 25 of file default_parameters.h.
|
static |
Topic to publish LaserScan data on
Definition at line 32 of file default_parameters.h.
|
static |
How many incoming frames should be skipped (reduces publish rate)
Definition at line 26 of file default_parameters.h.
uint16_t const psen_scan::MAX_NUMBER_OF_SAMPLES = 550 |
Maximum number of samples per UDP message from Laserscanner
Definition at line 51 of file scanner_data.h.
constexpr std::chrono::seconds psen_scan::MIN_FETCH_FRAME_TIMEOUT { std::chrono::seconds(1) } |
Definition at line 31 of file scanner.cpp.
uint32_t const psen_scan::MONITORING_FRAME_OPCODE = 0xC9 |
Constant 0xC9. Byte order: little endian
Definition at line 50 of file scanner_data.h.
uint16_t const psen_scan::NUMBER_OF_SAMPLES_FULL_SCAN_MASTER = 2750 |
Number of samples for complete scan for master scanner
Definition at line 56 of file scanner_data.h.
unsigned short const psen_scan::PSEN_SCAN_PORT_READ = 2000 |
Port from which Laserscanner sends messages
Definition at line 53 of file scanner_data.h.
unsigned short const psen_scan::PSEN_SCAN_PORT_WRITE = 3000 |
Port on which Laserscanner expects messages
Definition at line 52 of file scanner_data.h.
double const psen_scan::SCAN_TIME = 0.03 |
Time per scan in seconds
Definition at line 57 of file scanner_data.h.
uint64_t const psen_scan::START_MONITORING_FIXED_SEQUENCE = 0x0000000100000001 |
Fixed sequence for StartMonitoring Frame.
Byte sequence 1-0-0-0-1-0-0-0
Definition at line 40 of file scanner_data.h.
uint32_t const psen_scan::START_MONITORING_OPCODE = htole32(9) |
Opcode for StartMonitoring Frame.
0x09 as 32bit Little Endian
Definition at line 32 of file scanner_data.h.
uint32_t const psen_scan::STOP_MONITORING_OPCODE = htole32(18) |
Opcode for StopMonitoring Frame.
0x12 as 32bit Little Endian
Definition at line 48 of file scanner_data.h.
|
static |
Definition at line 26 of file psen_scan_udp_interface.cpp.