Linux和ROS
文章平均质量分 63
学习心得和调坑记录
zkk9527
机器人工程师,感知算法,决策控制算法,机器人操作系统
展开
-
GDB排查死锁问题
gdb排查死锁问题原创 2023-08-23 17:04:06 · 1424 阅读 · 0 评论 -
roslaunch 中的条件语句(字符串与bool类型)
工作原因,在配置机器人系统的时候为了统一管理,在roslaunch的启动脚本中经常需要根据不同的传入参数启动不同的launch文件。但是写法总是不记得,临时到处找以前的文件复制粘贴。如果是bool类型,就使用表示当xxx是false的时候执行,或表示xxx是true的时候执行。如果是字符串类型,就使用 表示mode原创 2023-03-23 10:38:26 · 2221 阅读 · 0 评论 -
Log4j和ROS_INFO把中文显示为乱码问号的问题解决方案
最近在调试代码,需要自己编写一个进程,把日志写到文件中并统一管理。因为是机器人工程师,所以采用了和ros一样实现的log4j工具。但是意外发现,中文无法写入到日志中,显示出来的全是问号。之类的完全没有用,就不要尝试了。可以说基本上是没有屁用。原创 2022-11-28 17:27:38 · 3512 阅读 · 0 评论 -
Ubuntu无法开机报错you are in emergency mode解决方法
Ubuntu无法开机报错you are in emergency mode解决方法原创 2022-09-05 18:01:50 · 10619 阅读 · 0 评论 -
Intel NUC11 在ubuntu系统下不能正常使用外接麦克风的问题解决方法
Intel NUC11 在ubuntu系统下不能正常使用外接麦克风的问题解决方法原创 2022-08-31 14:26:39 · 3420 阅读 · 0 评论 -
TensorRT 报错(Python):Error Code 1: Cuda Runtime (invalid resource handle) 解决方法
TensorRT 报错(Python):Error Code 1: Cuda Runtime (invalid resource handle) 解决方法原创 2022-08-29 20:37:12 · 7918 阅读 · 5 评论 -
Ubuntu20.04系统安装anaconda时ros编译报错Unable to find either executable ‘empy‘ or Python module ‘em‘...
Unable to find either executable 'empy' or Python module 'em'... try installing the package 'python3-empy'报错解决方案即可。原创 2022-07-01 14:42:35 · 5110 阅读 · 3 评论 -
Typora 下载方法(windows/ linux)
typora免费版下载方法原创 2022-02-23 18:20:35 · 10525 阅读 · 5 评论 -
Realsense in Tx2/ Xavier: uvc streamer watchdog triggered on endpoint:132 报错解决方案
realsense相机通过ros启动,命令为:roslaunch realsense2_camera rs_camera.launch但是如果想在rviz中查看pointcloud2格式的点云,需要加一个这个参数:roslaunch realsense2_camera rs_camera.launch filters:=pointcloud这种情况下,既可以生成图片topic,也可以生成pointcloud2格式的点云topic:/camera/depth/color/points。原创 2021-12-08 19:12:21 · 2543 阅读 · 4 评论 -
SLAM学习笔记(二十一)3D雷达与相机的标定方法详细教程
写在前面把3D雷达和相机进行外参标定使用的方法我们采取LiDAR-Camera Calibration using 3D-3D Point correspondences 方法。这里我使用的相机为realsense D435i 以及Velodyne16雷达。其实具体的细节github上面已经写过了,但是对于没有跑过的人来说,搞定这个东西还是有一定麻烦的。因此把细节记录在这里。希望涉及汇总方面的朋友们可以原文引用本链接,码字不易,谢谢!环境安装其实这块的内容原链接已经写的非常.原创 2021-11-15 15:16:01 · 4494 阅读 · 17 评论 -
如何可视化docker:以ROS环境为例(例如Gazebo,Rviz)
目录写在前面Windows系统准备工作使用样例Ubuntu系统准备工作使用样例总结写在前面这篇文章解决的重点是,如何通过windows,或者ubuntu,访问服务器,并且把服务器的docker容器里的内容远程可视化出来。(或者压根用的是自己的电脑上面装有docker)如果你不是这个目的,那就不需要往下看了。本身这个事情确实是比较麻烦,如果你的项目能不可视化,那最好。但如果非要可视化,可以参考一下我这篇文章的配置方法。当然,这只是其中一种配置方法,但并非唯一的配置方原创 2021-11-05 12:01:12 · 6453 阅读 · 4 评论 -
ffmpeg 常用指令记录
因为工作汇报原因总是需要ffmpeg来加减速视频,转换格式。但每次用的时候都记不住几个常用的指令,特此记录一下,方便下次再用:格式转换:(-i 输入)把2.wmv转换为exploration_2.mp4ffmpeg -i 2.wmv exploration_2.mp4时长截取:(-ss 开始时间,-t持续时长)把walk1.mp4从第二秒开始截取,向后截取8.5秒,输出为walk2.mp4ffmpeg -i walk1.mp4 -ss 00:00:02 -t 8.5 walk2原创 2021-09-29 11:05:41 · 478 阅读 · 0 评论 -
SLAM学习笔记(二十)LIO-SAM流程及代码详解(最全)
这篇文章的主要目的是理清LIO-SAM的流程,对其中的数据处理的思路、变量的存储等各方面做一个总结。代码的注释有我自己写的内容,还有就是参考了一些网络博客的内容,总之站在别人的肩膀上才能看的更高。...原创 2021-06-17 11:07:07 · 59996 阅读 · 98 评论 -
arm架构版本下误删apt,apt-get的解决方案(例如tx2)
最近装东西装不上,误打误撞装了aptitute,结果装的时候把apt-get给卸载了。然后用aptitute装,发现也没解决问题。然后顺手就把懵逼啊。原创 2021-06-08 20:12:43 · 3096 阅读 · 9 评论 -
根据进程名获取pid号
我不是运维,这块不是很熟,简单记录一下吧:ps aux|grep ppo_stage1.py |grep -v grep|awk '{print$2}'其中,ps aux|grep ppo_stage1.py意为显示名为ppo_stage1.py的后台进程:zhaokai 3861 0.0 0.0 16180 1060 pts/18 S+ 16:13 0:00 grep --color=auto ppo_stage1.pyzhaokai 12978 3...原创 2021-05-12 16:29:05 · 786 阅读 · 2 评论 -
Ubuntu开机自启动python程序中相关库导入失败,例如Tensorflow与rospy解决方案(rc.local)
Ubuntu开机自启动本身一个程序不是一个难事。本文要解决的不是这个问题,而是针对于python程序可以开机自启动,而其中的Tensorflow与rospy无法正常导入的问题。事情是这样的,机器人中有一个程序是基于Tensorflow的,为了避免每次都需要ssh进去远程打开程序,领导要求把它做成开机自启动的形式。于是我决定通过把脚本写进/etc/rc.local方式,让机器人开机自启动这个程序。然而,开机后通过ps|aux grep 指令却没能在后台发现我启动的程序进程号。于是测试了多台电脑,包原创 2020-12-18 10:53:22 · 1981 阅读 · 10 评论 -
Rplidar 报错提示:Error, operation time out. RESULT_OPERATION_TIMEOUT!
报错:报错:Error, operation time out. RESULT_OPERATION_TIMEOUT![rplidarNode-2] process has died [pid 22745, exit code 255, cmd /home/likeyu/catkin_ws/devel/lib/rplidar_ros/rplidarNode __name:=rplidarNode __log:=/home/zhaokai/.ros/log/2e561d84-4ae0-11e9-b7原创 2020-10-20 11:40:12 · 11014 阅读 · 8 评论 -
SLAM学习笔记(十七)激光SLAM——Cartographer配置文件参数解释及报错原因
运行 Cartographer的配置参数比较重要,稍微不注意就会报错,例如一个常见的错误类型:[ERROR] [1602741280.449037435, 153.231000000]: Ignoring transform from authority "unknown_publisher" with frame_id and child_frame_id "odom" because they are the same类似错误大多是因为配置文件设置的不正确。以turtlebot3配置文.原创 2020-10-15 15:11:02 · 4245 阅读 · 0 评论 -
Gazebo仿真环境报错Exception sending a message解决方法
当电脑或者服务器的网络出现问题时,启动Gazebo或正在运行的Gazebo程序就会报错:Exception sending a messageException sending a messageException sending a messageException sending a messageException sending a messageException sending a messageException sending a message如图所示:而..原创 2020-08-28 10:04:05 · 2607 阅读 · 0 评论 -
Realsense相机在linux下的配置使用,RGB与depth图像对齐
目录配置使用注意:配置要在linux下使用realsense相机,需要首先配置librealsense。我的环境是Ubuntu18.04,相机是D435i相机。librealsense的地址在点击这里。但是自己编译的时候发现太慢了,根本不知道是卡住了,还是正常进行但是时间比较漫长。很麻烦,建议不要自己编译,而是直接用apt install 的方式来装,这样装又快又省事,官方也给了相关的说明,点击这里。首先,加载key:sudo apt-key adv --keyserv原创 2020-08-25 17:17:26 · 11319 阅读 · 43 评论 -
Gazebo中Turtlebot3激光雷达最远距离调整后测距信息不正常问题解决方法
Turtlebot3的github地址是https://github.com/ROBOTIS-GIT/turtlebot3,其中激光雷达默认的最远测距是3.5m。当把3.5m修改为3.5m以上的数时,前方的激光发射会存在问题,如下图所示。总之会有许多测距的异常值,大概在0.1~0.2左右。(请无视我小车和车轮的颜色,这是我之后自己改过的,在这里我用的小车的型号是waffle)事先声明,这个问题应该是一个bug,但是我暂时不清楚是Gazebo的bug还是turtlebot3的bug,总之发现了在使原创 2020-07-16 18:33:54 · 2433 阅读 · 9 评论 -
如何在一台电脑(服务器)上运行多个不同的ROS和Gazebo环境及程序
最近在服务器上跑ROS仿真导航代码的时候,发现和别人的程序之间会存在冲突问题。我开着Gazebo仿真跑我的训练,当别人以他自己的账户登陆服务器的时候,roslaunch他自己的程序,会导致他打不开gazebo,而我开的Gazebo程序会突然报错。难道服务器上只能让一个人用来跑仿真代码?这还叫什么服务器呢?于是我在docker内部配了同样的环境,并且用xhost+ 远程显示出来。但是很不幸,docker容器虽然表面上看起来像是一个独立的主机,但是如果要想可视化出来,还是会导致冲突问题,要么显示不正原创 2020-06-29 17:26:18 · 2664 阅读 · 9 评论 -
linux 硬盘满了如何处理
本文为转载,通过这篇文章,清理出了快100个G的内存来。原文地址:ck3207的博客-linux 硬盘满了如何处理事件源于在服务器运行一个脚本程序…好好的脚本突然报错,还以为脚本出现问题了。细看报错原因(具体报错信息已经忘记了),是没有可用空间。从没遇见过这个情况,怎么办呢?一、确定是不是真的是磁盘空间不足输入命令:df –lh 查看磁盘信息很明显:Filesystem...转载 2020-01-16 21:53:02 · 1019 阅读 · 2 评论 -
docker快速使用指南(10条指令掌握docker的基本操作)
好久不使用服务器,docker的一些指令动不动就忘记了。因此今天特意抽点时间总结一下。大部分人使用docker只用到简单的功能,目的就是快速的统一开发环境,免去重复配环境的苦恼。对于镜像、容器、仓库的概念,就不啰嗦介绍了。本文用来讲解怎么样快速使用docker。1.首先,登录自己的账户,查看仓库中现有的镜像和其对应的环境说明,希望能找到一个自己需要的。sudo nvidia-...原创 2019-03-27 22:30:40 · 558 阅读 · 0 评论 -
Cuda in docker: nvcc command not found解决方法
今天想跑一个光流估计的代码,配置环境时从dockerhub直接拉了一个干净的cuda8.0镜像,配到最后才发现有一个脚本执行的时候提示:nvcc:command not found明明是从nvidia的官方dockerhub上拉的镜像,难道cuda没有装?开始怀疑是环境变量没有配置好,于是检查~/.bashrc:export LD_LIBRARY_PATH=$LD_LIBRAR...原创 2019-12-25 18:15:34 · 6993 阅读 · 4 评论 -
run_id on parameter server does not match declared run_id 解决方式
今天早上为单位配置SLAM算法库时,发现之前我已经调好的一个算法突然报错:run_id on parameter server does not match declared run_id: 2e04386e-22c8-11ea-accf-54bf64943d1c vs 2e043c60-22c8-11ea-accf-54bf64943d1cThe traceback for the ex...原创 2019-12-20 10:23:23 · 17379 阅读 · 2 评论