思岚S2激光雷达5-雷达数据实时保存

依旧是参照这位大神的代码:
[https://blog.csdn.net/alsj123456/article/details/109411413?spm=1001.2014.3001.5502]

在这里插入图片描述

对应思岚S2激光雷达4-rplidar_ros-master修改保存csv格式数据里面的步骤,其余都不变,只改client.cpp里面的代码:

#include "ros/ros.h"
#include "sensor_msgs/LaserScan.h"
/**/#include "fstream"
/**/#include "string"
/**/#include <stdio.h> 
/**/#include <time.h>
/**/#include <unistd.h>
#define RAD2DEG(x) ((x)*180./M_PI)

/**/using namespace std;

void scanCallback(const sensor_msgs::LaserScan::ConstPtr& scan)
{
    int count = scan->scan_time / scan->time_increment;
    ROS_INFO("I heard a laser scan %s[%d]:", scan->header.frame_id.c_str(), count);
    ROS_INFO("angle_range, %f, %f", RAD2DEG(scan->angle_min), RAD2DEG(scan->angle_max));
    /**/time_t timep;
    /**/struct tm*p;
    /**/char name[256]={0};
    /**/time(&timep);	
    /**/p = localtime(&timep);
    /**/sprintf(name, "%d.%d.%d %d:%02d:%02d.csv",1900+p->tm_year,1+p->tm_mon,p->tm_mday,p->tm_hour,p->tm_min,p->tm_sec);
    /**/ofstream oFile;
    /**/oFile.open(name,ios::out|ios::trunc);
    for(int i = 0; i < count; i++) {
        float degree = RAD2DEG(scan->angle_min + scan->angle_increment * i);
        ROS_INFO(": [%f, %f]", degree, scan->ranges[i]);
	/**/oFile<< degree <<","<< scan->ranges[i] <<endl;
    }
    oFile.close();
}

int main(int argc, char **argv)
{
    ros::init(argc, argv, "rplidar_node_client");
    ros::NodeHandle n;
    ros::Subscriber sub = n.subscribe<sensor_msgs::LaserScan>("/scan", 1000, scanCallback);
    ros::spin();
    return 0;
}
————————————————
版权声明:本文为CSDN博主「子佩_zxt」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/alsj123456/article/details/109411413

我这里client_1.cpp是思岚S2激光雷达4里面的代码
client_yuanshi.cpp是官方给的原始代码
client.cpp是按照上面修改的代码
在这里插入图片描述
重新编译之后主文件夹里面多了三个文件:
2022.6.18 17:12:46.csv
2022.6.18 17:12:47.csv
2022.6.18 17:12:48.csv
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值