我的学习笔记 9月6号

修改lasermapping.cpp后出现
我的学习笔记 9月6号_第1张图片不知道会不会对后面的运行有影响。先放着吧。

wireshark抓包新手使用教程
https://www.cnblogs.com/mq0036/p/11187138.html

RSview
RSView是以MFC(微软基础级),COM(元件对象)组件技术为基础的中文Microsoft Windows NT平台下的汉化MMI(人机接口)软件包。

一种对自动控制设备或生产过程进行高速与有效的监视和控制组态软件。
是第一个在图形显示中利用ActiveX TM,Visual Basic Application,OPC(面向过程控制的OLE)的MMI产品,提供了监视、控制及数据采集等必要的全部功能且使用方便、统一,是一个可扩展性强,监控性能高并有很高再利用性的监控组态软件包。此外,由于支持ODBC、OLE,勿需再购入其他图形数据接口功能或数据库存取功能的软件,可大大节约开发时间和费用。
弹出式图形工具提示
PLC数据库及OPC浏览器
开发过程中的快速测试
用Microsoft VBA检索对象模块
RSWho,Allen-Bradley 可编程序控制器及网络浏览器
支持NT安全机制
提供扩展功能的外持结构(AOA)

pcap文件转换成bag文件

第一步

安装velodyne_driver
安装ROS依赖

sudo apt install ros-kinetic-velodyne

设置成功
我的学习笔记 9月6号_第2张图片安装驱动

git clone https://github.com/ros-drivers/velodyne.git

克隆成功
我的学习笔记 9月6号_第3张图片默认克隆在家目录下,剪切到ros的工作区间,进入文件夹

cd velodyne

新建文件夹src,然后编译

hmm@hmm-ThinkCentre-M910t-N000:~/catkin_ws/velodyne$ catkin_make

编译成功
我的学习笔记 9月6号_第4张图片安装
YAML
YAML是一个可读性高,用来表达数据序列化的格式。YAML参考了其他多种语言,包括:C语言、Python、Perl,并从XML、电子邮件的数据格式(RFC 2822)中获得灵感。Clark Evans在2001年首次发表了这种语言,另外Ingy döt Net与Oren Ben-Kiki也是这语言的共同设计者。当前已经有数种编程语言或脚本语言支持这种语言。
数据结构可以用类似大纲的缩排方式呈现,结构通过缩进来表示,连续的项目通过减号“-”来表示,map结构里面的key/value对用冒号“:”来分隔。

我的学习笔记 9月6号_第5张图片
真的不知道为什么,yaml已经安好了啊
任务就是把vlp-16.yaml打开
报错

YAML Exception: yaml-cpp: error at line 0, column 0: invalid node; this may result from using a map iterator as a sequence iterator, or vice-versa

无效的节?因为您正在访问序列的映射迭代器,反之亦然:

三,nodelet的问题
四, 那个vlp-16.yaml不对 又找了另一个资源的,一模一样,所以我觉得这个文件是对的
那打不开就是软件的问题
vlp-16.yaml是一个单独的软件,不是软件包当中的
把厂家附赠U盘中提供的VLP-16.xml文件拷贝到catkin_velodyne目录下(VLP-16.xml)

[ 96%] Built target transform_nodelet
/home/hmm/catkin_ws/devel/lib/libvelodyne_rawdata.so:对‘vtable for YAML::BadConversion’未定义的引用
/home/hmm/catkin_ws/devel/lib/libvelodyne_rawdata.so:对‘typeinfo for YAML::BadConversion’未定义的引用
/home/hmm/catkin_ws/devel/lib/libvelodyne_rawdata.so:对‘YAML::BadConversion::~BadConversion()’未定义的引用
collect2: error: ld returned 1 exit status
velodyne/velodyne_pointcloud/src/conversions/CMakeFiles/transform_node.dir/build.make:175: recipe for target '/home/hmm/catkin_ws/devel/lib/velodyne_pointcloud/transform_node' failed
make[2]: *** [/home/hmm/catkin_ws/devel/lib/velodyne_pointcloud/transform_node] Error 1
CMakeFiles/Makefile2:6367: recipe for target 'velodyne/velodyne_pointcloud/src/conversions/CMakeFiles/transform_node.dir/all' failed
make[1]: *** [velodyne/velodyne_pointcloud/src/conversions/CMakeFiles/transform_node.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

出问题了
尝试1 yaml版本和ubuntu版本不对

  1. 准备工作
Linux Ubuntu :uubuntu-16.04.6-desktop-amd64,可在清华大学镜像站下载:ubuntu-16.04.6-desktop-amd64
ROS:ros-kinetic-desktop-full,安装参考:ros.wiki::kinetic.
yaml-cpp:yaml-cpp-yaml-cpp-0.6.0 **(注意:0.5.0以前版本不适用本文)**在GitHub下载: yaml-cpp-yaml-cpp-0.6.0.
一份好心情

由这里看来ubuntu16.04和yaml0.6.0是可以的
尝试2 yaml安装的位置不对

目标:把pcap文件转换为 bag文件
按照这个方法https://www.lizhongyi.com/archives/%E8%BD%AC%E6%8D%A2velodyne-pcap%E4%B8%BAbag%E6%96%87%E4%BB%B6/进行到第3步,出现错误

hmm@hmm-ThinkCentre-M910t-N000:~$ rosrun nodelet nodelet standalone velodyne_pointcloud/CloudNodelet _calibration:="/home/hmm/catkin_ws/path/to/VLP-16.yaml"
type is velodyne_pointcloud/CloudNodelet
[ INFO] [1662382239.890708851]: correction angles: /home/hmm/catkin_ws/path/to/VLP-16.yaml
YAML Exception: yaml-cpp: error at line 0, column 0: invalid node; this may result from using a map iterator as a sequence iterator, or vice-versa
[ERROR] [1662382239.893035971]: Unable to open calibration file: /home/hmm/catkin_ws/path/to/VLP-16.yaml
[ INFO] [1662382239.898485348]: Reconfigure Request

尝试1:百度搜索[ERROR] [1662382239.893035971]: Unable to open calibration file: /home/hmm/catkin_ws/path/to/VLP-16.yaml没有结果
尝试2:百度搜索YAML Exception: yaml-cpp: error at line 0, column 0: invalid node没有结果
尝试3:百度搜索YAML Exception: yaml-cpp: error at line 0, column 0: invalid node; this may result from using a map iterator as a sequence iterator, or vice-versa
参看帖子http://cn.voidcc.com/question/p-ysbmpmxj-gt.html得知,要使用yaml -cpp来读yaml文件需要写c++代码

理解:下载的yaml -cpp不行。放弃这个方法,换其他的教程

看帖子https://blog.csdn.net/jcsm__/article/details/105294467?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-105294467-blog-105529961.pc_relevant_multi_platform_whitelistv4&spm=1001.2101.3001.4242.1&utm_relevant_index=3

PCL起初就是ROS 下的一个开源项目,因而,在ROS中使用PCL处理外部信息是比较容易的。需要注意的就是数据格式之间的转换。
以激光雷达为例,雷达输出的初始数据为pcap格式文件,然后通过rosbag指令生成bag包,进一步将bag文件转换到pcd格式文件。每个pcd文件都是一帧数据,可以通过pcl_viewer命令查看pcd格式的文件

看帖子
pcap如何转换为pcd_激光雷达pcap包转换为bag包、pcd文件

2. ros 上回放 pcap 文件:

在速腾激光雷达的 ros 驱动上,修改 ros_rslidar 中的 rs_lidar_16.launch 文件,回放 pcap ,修改内容以下:spa

//your.pcap为第一步采集到的pcap包

而后,打开一个终端,输入以下命令,回放 pcap 数据:.net

第二步 ros_lidar_16.launch文件找不到,放弃

百度搜索 velodyne pcap文件转bag文件
看帖子velodyne:激光雷达pcap文件格式及写入、数据解析
博主提供了一大堆代码,不知到该怎么用,放弃

看帖子ROS之velodyne
这个yaml文件绕不过了,必须解决才可以啊

解决了。就是方法一中的方法不过,要在读取pcap文件的同时,新开终端,运行第二步,和第三步,感动啊

你可能感兴趣的:(学习,microsoft)