|
@@ -95,7 +95,7 @@ Error_manager Velodyne_lidar_device::init(velodyne::velodyneLidarParams params)
|
|
|
m_communication_data_queue.wake_queue();
|
|
|
|
|
|
//初始化通信协议
|
|
|
- t_error = m_protocol.setup(params.ip(), params.calibrationfile(), params.max_range(), params.min_range(), params.min_angle(), params.max_angle()) == true ? SUCCESS : Error_manager(PARAMETER_ERROR, MINOR_ERROR, "protocol parameter error");
|
|
|
+ t_error = m_protocol.setup(params.model(), params.calibrationfile(), params.max_range(), params.min_range(), params.min_angle(), params.max_angle()) == true ? SUCCESS : Error_manager(PARAMETER_ERROR, MINOR_ERROR, "protocol parameter error");
|
|
|
if (t_error != SUCCESS)
|
|
|
{
|
|
|
return t_error;
|
|
@@ -417,7 +417,7 @@ Error_manager Velodyne_lidar_device::get_last_cloud(std::mutex *p_mutex, pcl::Po
|
|
|
return Error_manager(Error_code::POINTER_IS_NULL, Error_level::MINOR_ERROR,
|
|
|
" POINTER IS NULL ");
|
|
|
}
|
|
|
- if (m_parse_ring_time > command_time - std::chrono::milliseconds(m_params.rpm()/60))
|
|
|
+ if (m_parse_ring_time > command_time - std::chrono::milliseconds(int(60000.0/m_params.rpm())))
|
|
|
{
|
|
|
std::unique_lock<std::mutex> lck(*p_mutex);
|
|
|
{
|
|
@@ -448,7 +448,7 @@ Error_manager Velodyne_lidar_device::get_last_cloud(pcl::PointCloud<pcl::PointXY
|
|
|
return Error_manager(Error_code::POINTER_IS_NULL, Error_level::MINOR_ERROR,
|
|
|
" POINTER IS NULL ");
|
|
|
}
|
|
|
- if (m_parse_ring_time > command_time - std::chrono::milliseconds(m_params.rpm()/60))
|
|
|
+ if (m_parse_ring_time > command_time - std::chrono::milliseconds(int(60000.0/m_params.rpm())))
|
|
|
{
|
|
|
std::lock_guard<std::mutex> lck(m_cloud_mutex);
|
|
|
if (m_ring_cloud.size() <= 0)
|