|
APM:Libraries
|
< for UARTDriver More...
#include <AP_Proximity_RPLidarA2.h>
Classes | |
| struct | _sensor_health |
| struct | _sensor_scan |
| union | PACKED |
Public Member Functions | |
| AP_Proximity_RPLidarA2 (AP_Proximity &_frontend, AP_Proximity::Proximity_State &_state, AP_SerialManager &serial_manager) | |
| void | update (void) |
| float | distance_max () const |
| float | distance_min () const |
Public Member Functions inherited from AP_Proximity_Backend | |
| AP_Proximity_Backend (AP_Proximity &_frontend, AP_Proximity::Proximity_State &_state) | |
| virtual | ~AP_Proximity_Backend (void) |
| virtual bool | get_upward_distance (float &distance) const |
| virtual void | handle_msg (mavlink_message_t *msg) |
| bool | get_horizontal_distance (float angle_deg, float &distance) const |
| const Vector2f * | get_boundary_points (uint16_t &num_points) const |
| bool | get_closest_object (float &angle_deg, float &distance) const |
| uint8_t | get_object_count () const |
| bool | get_object_angle_and_distance (uint8_t object_number, float &angle_deg, float &distance) const |
| bool | get_horizontal_distances (AP_Proximity::Proximity_Distance_Array &prx_dist_array) const |
Static Public Member Functions | |
| static bool | detect (AP_SerialManager &serial_manager) |
Private Types | |
| enum | rp_state { rp_unknown = 0, rp_resetted, rp_responding, rp_measurements, rp_health } |
| enum | ResponseType { ResponseType_Descriptor = 0, ResponseType_SCAN, ResponseType_EXPRESS, ResponseType_Health } |
Private Member Functions | |
| bool | initialise () |
| void | init_sectors () |
| void | set_scan_mode () |
| void | send_request_for_health () |
| void | parse_response_data () |
| void | parse_response_descriptor () |
| void | get_readings () |
| void | reset_rplidar () |
Private Attributes | |
| AP_HAL::UARTDriver * | _uart |
| uint8_t | _descriptor [7] |
| char | _rp_systeminfo [63] |
| bool | _descriptor_data |
| bool | _information_data |
| bool | _resetted |
| bool | _initialised |
| bool | _sector_initialised |
| uint8_t | _payload_length |
| uint8_t | _cnt |
| uint8_t | _sync_error |
| uint16_t | _byte_count |
| enum ResponseType | _response_type |
| response from the lidar More... | |
| enum rp_state | _rp_state |
| uint8_t | _last_sector |
| last sector requested More... | |
| uint32_t | _last_request_ms |
| system time of last request More... | |
| uint32_t | _last_distance_received_ms |
| system time of last distance measurement received from sensor More... | |
| uint32_t | _last_reset_ms |
| float | _angle_deg_last |
| float | _distance_m_last |
| union AP_Proximity_RPLidarA2::PACKED | payload |
< for UARTDriver
Definition at line 37 of file AP_Proximity_RPLidarA2.h.
|
private |
| Enumerator | |
|---|---|
| ResponseType_Descriptor | |
| ResponseType_SCAN | |
| ResponseType_EXPRESS | |
| ResponseType_Health | |
Definition at line 63 of file AP_Proximity_RPLidarA2.h.
|
private |
| Enumerator | |
|---|---|
| rp_unknown | |
| rp_resetted | |
| rp_responding | |
| rp_measurements | |
| rp_health | |
Definition at line 55 of file AP_Proximity_RPLidarA2.h.
| AP_Proximity_RPLidarA2::AP_Proximity_RPLidarA2 | ( | AP_Proximity & | _frontend, |
| AP_Proximity::Proximity_State & | _state, | ||
| AP_SerialManager & | serial_manager | ||
| ) |
|
static |
Definition at line 87 of file AP_Proximity_RPLidarA2.cpp.
Referenced by AP_Proximity::detect_instance().
|
virtual |
Implements AP_Proximity_Backend.
Definition at line 119 of file AP_Proximity_RPLidarA2.cpp.
|
virtual |
Implements AP_Proximity_Backend.
Definition at line 125 of file AP_Proximity_RPLidarA2.cpp.
Referenced by parse_response_data().
|
private |
Definition at line 245 of file AP_Proximity_RPLidarA2.cpp.
Referenced by update().
|
private |
Definition at line 162 of file AP_Proximity_RPLidarA2.cpp.
Referenced by initialise().
|
private |
Definition at line 130 of file AP_Proximity_RPLidarA2.cpp.
Referenced by update().
|
private |
Definition at line 390 of file AP_Proximity_RPLidarA2.cpp.
Referenced by get_readings().
|
private |
Definition at line 362 of file AP_Proximity_RPLidarA2.cpp.
Referenced by get_readings().
|
private |
< be aware of extra 63 bytes coming after reset containing FW information
Definition at line 146 of file AP_Proximity_RPLidarA2.cpp.
Referenced by get_readings(), and initialise().
|
private |
Definition at line 234 of file AP_Proximity_RPLidarA2.cpp.
|
private |
Definition at line 221 of file AP_Proximity_RPLidarA2.cpp.
Referenced by get_readings().
|
virtual |
Implements AP_Proximity_Backend.
Definition at line 93 of file AP_Proximity_RPLidarA2.cpp.
|
private |
Definition at line 106 of file AP_Proximity_RPLidarA2.h.
Referenced by parse_response_data().
|
private |
Definition at line 95 of file AP_Proximity_RPLidarA2.h.
Referenced by AP_Proximity_RPLidarA2(), and get_readings().
|
private |
Definition at line 93 of file AP_Proximity_RPLidarA2.h.
Referenced by AP_Proximity_RPLidarA2(), and get_readings().
|
private |
Definition at line 84 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings(), and parse_response_descriptor().
|
private |
Definition at line 86 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings().
|
private |
Definition at line 107 of file AP_Proximity_RPLidarA2.h.
Referenced by parse_response_data().
|
private |
Definition at line 87 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings().
|
private |
Definition at line 89 of file AP_Proximity_RPLidarA2.h.
Referenced by initialise(), and update().
|
private |
system time of last distance measurement received from sensor
Definition at line 102 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings(), parse_response_data(), parse_response_descriptor(), and update().
|
private |
system time of last request
Definition at line 101 of file AP_Proximity_RPLidarA2.h.
Referenced by send_request_for_health(), and set_scan_mode().
|
private |
Definition at line 103 of file AP_Proximity_RPLidarA2.h.
Referenced by reset_rplidar().
|
private |
last sector requested
Definition at line 100 of file AP_Proximity_RPLidarA2.h.
Referenced by parse_response_data().
|
private |
Definition at line 92 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings(), and parse_response_descriptor().
|
private |
Definition at line 88 of file AP_Proximity_RPLidarA2.h.
Referenced by reset_rplidar().
|
private |
response from the lidar
Definition at line 98 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings(), parse_response_data(), and parse_response_descriptor().
|
private |
Definition at line 99 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings(), parse_response_descriptor(), reset_rplidar(), send_request_for_health(), and set_scan_mode().
|
private |
Definition at line 85 of file AP_Proximity_RPLidarA2.h.
Referenced by get_readings().
|
private |
Definition at line 90 of file AP_Proximity_RPLidarA2.h.
Referenced by init_sectors(), and initialise().
|
private |
Definition at line 94 of file AP_Proximity_RPLidarA2.h.
Referenced by AP_Proximity_RPLidarA2(), get_readings(), and parse_response_data().
|
private |
Definition at line 83 of file AP_Proximity_RPLidarA2.h.
Referenced by AP_Proximity_RPLidarA2(), get_readings(), reset_rplidar(), send_request_for_health(), set_scan_mode(), and update().
|
private |
Referenced by get_readings(), parse_response_data(), and parse_response_descriptor().
1.8.13