#!/usr/bin/env python
# coding:utf-8
import rospy
from sensor_msgs.msg import LaserScan
def scancallback(scan_data, file_handle):
timestamp = scan_data.header.stamp # 获取时间戳
distance = scan_data.ranges[0]
# 将时间戳和距离以制表符分隔写入文件
file_handle.write("{0}.{1}\t{2}\n".format(timestamp.secs, timestamp.nsecs, distance))
def GetSDMData():
# 替换为你的绝对路径
file_path = "/home/tfc/ydlidar_ws/src/ydlidar_ros_driver/scripts/scan_data.txt"
rospy.init_node('获取SDM数据', anonymous=True) # ROS节点初始化
rospy.Subscriber('/scan', LaserScan, scancallback, callback_args=open(file_path, "a"), queue_size=1000)
rospy.spin()
if __name__ == '__main__':
GetSDMData()
自用qqqq
于 2024-01-19 11:39:47 首次发布