- 博客(154)
- 收藏
- 关注
转载 Ubuntu 共享打印机
CUPS(Common UNIX Printing System,通用Unix打印系统)是Fedora Core3中支持的打印系统,它主要是使用IPP(Internet Printing Protocol)来管理打印工作及队列,但同时也支持"LPD"(Line Printer Daemon)和"SMB"(Server Message Block)以及AppSocket等通信协议。简单来说它会给你的打印机添加网络控制协议,让它变成一个网络打印机。这样我们就可以在局域网内共享打印机了。
2023-07-11 09:04:29
1789
转载 pip sys.stderr.write(f“ERROR: {exc}“) 错误
在Ubuntu 16.04上使用pip安装python3的库时可能会报下面的错误。安装完成之后可以用下面的指令创建虚拟环境,这时候使用最新的pip就不会再报错了。解决方法就是安装新版本的python3。这是由于新版本的pip已经放弃了对。比如安装python3.8。
2023-07-10 09:23:21
724
转载 rust使用中的坑
虽然rust本身是可以平台编译使用的,但是具体的函数库在不同平台上的表现并不完全一致。这是由于Shutdown只是对系统的shutdown函数进行了封装调用,具体的表现就和系统的shutdown相关,而不同系统的shutdown表现并不一致。由于程序中使用了正则表达式,而rust的正则表达式库依赖了一个线程库。目前最新版本的正则表达式库已经移除了这个线程库依赖,不再有内存泄漏的问题。所以虽然rust本身是内存安全的,但是内存泄漏的情况还是会发生。rust目前还是比较新,比较重要的库还不是很稳定。
2023-07-10 09:22:17
137
转载 重定向时没有cookie的问题
SameSite Cookie 允许服务器要求某个 cookie 在跨站请求时不会被发送,(其中 Site (en-US) 由可注册域定义),从而可以阻止跨站请求伪造攻击(CSRF)。如果想要指定 Cookies 在同站、跨站请求都被发送,现在需要明确指定 SameSite 为 None。以前,如果 SameSite 属性没有设置,或者没有得到运行浏览器的支持,那么它的行为等同于 None,Cookies 会被包含在任何请求中——包括跨站请求。如果想要重定向时仍有cookie则应设置此属性为Lax。
2023-07-10 09:21:53
1311
转载 jetson nano升级遇到 Procedure for xusb firmware update FAILED错误解决办法
这个是python版本混乱引起的,更新程序默认是python2,系统如果把python版本默认为3.X后,就会触发这个问题。
2023-07-10 09:21:24
209
转载 树莓派4 将sd卡镜像拷贝到usb ssd后无法启动ubuntu
主要问题在于kernel启动文件没有解压,和启动文件设置问题。解决办法参考https://jamesachambers.com/raspberry-pi-4-ubuntu-20-04-usb-mass-storage-boot-guide。
2023-07-10 09:16:56
305
转载 ros中dynamic_reconfigure相关程序卡住和爆内存问题解决办法
如果在打开rqt 的dynamic_reconfigure界面,对某些node的参数进行配置时,触发了界面卡顿、死机情况。解决办法:将cmakelist文件中设置的优化级别降低,比如降低到-O2。如果是在catkin_make编译节点时设置的优化,可以删除build文件夹,同时去除-DCMAKE_BUILD_TYPE=Release 选项。可能的原因是:这些node编译时时开启了release优化即-O3级别优化,导致了dynamic_reconfigure的server库异常工作。
2023-07-10 09:16:19
284
转载 提高roslaunch和rosrun启动速度
1.对于rosrun主要是catkin_find函数太占用时间,可以去掉–share选项,同时把搜索share的过程去掉。最后把debug函数注释掉。2.对于roslaunch,可以将–skip-log-check选项默认值改成true,不检查log大小。3.如果执行下列语句发现numpy加载太慢,比如耗时2秒以上。可以重新升级安装numpy。
2023-07-10 09:15:23
176
转载 ROS 中 TF的方向性
因为TF是具有方向性的,而且一个frame可以有多个child_frame,但是一个child_frame只能有一个frame。对于odom,它的下一级frame正常应该是base_footprint,如果发布第二种TF变换,那么base_footprint和map的上一级frame就都是odom了,这是不允许的。虽然没有异常,但是在具体使用的时候有些情况下能正常获取到TF变换,有些时候就获取不到,非常难定位到这个问题。在发布tf的时候下面的消息是等效的吗, 假设T是一个变换, inv(T)是T的逆变换。
2023-07-10 09:14:51
84
转载 ros2 在win11 上的安装方法
在 Windows 11 上,可以使用 Windows 命令提示符或 PowerShell 运行 ROS 2 Galactic 发布器和订阅器。在 Windows 11 上安装 ROS 2 Galactic 有两种方式,一种是使用二进制安装包,另一种是从源代码构建 ROS 2 Galactic。安装 Git 时,请确保执行下面的命令,以在安装过程中选择“使用 Windows 命令提示符作为 Git Bash 终端”。至此,ROS 2 Galactic 已经在 Windows 11 上成功安装和运行。
2023-07-07 09:45:35
2008
1
转载 cuda error: an illegal memory access was encountered 解决办法
用cuda-memcheck工具获取进一步的错误信息,保证libcudnn库版本和cuda库版本一致。
2023-07-07 09:44:47
845
转载 ROS中的声音设置 audio_play
我们知道声音实际上是震动,声音文件就是把振幅按时间顺序记录下来的文件。sample_rate 是采样率,就是1秒记录多少个数据,采样率越高声音的质量也对应越高。对于wav文件,需要在这些数据的基础上增加文件头,说明当前的数据格式。设置完成后一般使用已经没有什么问题了,但是当我们把audio_play通过robot_upstart包作为开机启动服务时,有时会出现没有声音的情况。原因就是在启动过程中可能声音设备还没有准备好,这时候播放声音会导致程序错误,而audio_play没有正确的处理这个错误。
2023-07-07 09:41:41
408
转载 ubuntu录音开启噪声抑制
Ubuntu有时录音底噪非常大,有很多电流声。这个问题可以通过开启噪声抑制解决。修改 /etc/pulse/default.pa 文件,增加以下内容。在声音设置界面选择带噪声抑制的音频输入。重启pulseaudio。
2023-07-07 09:40:51
298
转载 Linux 的常见声音问题
Linux上播放声音有时会遇到没声音的问题。下面是我所遇到的问题的一些总结。以Ubuntu为例,其他系统可能会有所差别。Ubuntu的声音控制程序有两层。一个是pulseaudio,一个是alsa。其中pulseaudio是在alsa基础上建立的。pulseauido为了安全性会要求必须用户登录后才能播放声音。这样就会导致,我们使用robot_upstart软件包把把程序作为systemd 服务时有时候会没有声音。而且即使用户已经登录,当使用su切换用户之后也是无法发出声音的。
2023-07-07 09:40:00
3016
转载 22.04使能远程桌面,替代VNC
在之前版本的Ubuntu中系统自带的远程桌面一直不太好用,22.04由于采用了Wayland作为显示服务器,之前VNC作为远程桌面的方法反而不太好用了。还好这次系统自带的远程桌面功能好用了。我们可以用自带的远程桌面替代VNC。实测连接响应速度挺不错。但是没办法在没有插显示器的情况下进行连接。连接采用windows自带的远程桌面连接程序。使能远程桌面,设置好用户名密码就可以了。
2023-07-07 09:37:54
2606
转载 Ubuntu 22.04 ROS2 humble安装
22.04的setuptools版本过高,默认版本会在colcon build python包的时候产生各种warning。下面用apt-fast 安装,apt-fast的安装方法参考。在你的bashrc里面添加下面的内容。
2023-07-07 09:36:14
138
转载 ros2 中的 time消息类型
在ROS1中默认的消息类型中有time,用于表示时间信息。比如std_msgs/Header里面用于表示时间的就是这个类型。但是如果在ROS2中直接使用这个类型会报错误。因为ROS2的默认类型类型中取消了这个类型。
2023-07-07 09:35:37
389
转载 ROS2如何设置和获取其他节点的参数
可以看到设置其他节点的参数相对于ROS1要复杂了很多。在ROS2的设计文档中提到了要做一个类似参数服务器的东西。但是目前这个东西还没有实现。
2023-07-07 09:35:02
781
转载 Python setup.py 和 entry_points 详解
原文链接由于ROS2中的python包多了, 文件。所以在开发ROS2的软件有必要详细了解一下这些文件的作用。简而言之就是python的打包配置文件,类似和的作用。https://zhuanlan.zhihu.com/p/261579357https://zhuanlan.zhihu.com/p/261579357这两篇文章介绍的都十分直接。尤其第二篇对于entry_points的解释详细且直观。
2023-07-07 09:34:14
475
1
转载 python 读取和写入yaml配置文件
而写入示例将会将一个包含有数据库连接信息的字典写入到名为。然后就可以读取和写入yaml配置文件了。的yaml配置文件读取到一个字典中,并打印出其中名为。以上代码将会将一个名为。
2023-07-06 13:41:34
1336
转载 RTK3588 gstreamer mpp 图传显示错误问题
如果格式不在支持范围内,mpph264enc会自动尝试用rga去转换成支持的格式。rga是3588的图形加速器,可以转换格式或者裁剪拉伸旋转图像。但是默认的rga的驱动是有问题的。所以如果输入格式没法改可以在gstreamer的流水线里面加上videoconvert转换到支持的格式。更好的方式还是解决rga的驱动问题。不过目前还我还没找到很好的解决方法。使用RTK3588的mpp做GPU加速编码图传的时候,图像可能会出现分辨率不对,显示不正常的问题。这时候要检查自己输入的图像格式是否是其默认支持的格式。
2023-07-06 13:39:09
761
1
转载 新版本gsteamer mp4mux插件问题
这个工作流在20.04的gstreamer上是没问题,但是在22.04上就不能用了,会报NAL size错误。感觉应该是这个插件的bug。如果把mp4mux换成mkv的插件这个pipeline在22.04上也是可以用的。但是这样浏览器就没办法播放这个流了。目前也没找到很好的方法。在我们以前的程序中一直采用HTTP 传 MP4 包装的视频流的方式进行图传。
2023-07-06 13:37:50
493
转载 如何修改dd出的磁盘镜像里的文件
对于arm64的系统镜像一般都采用dd的方法进行备份。如果dd出的镜像中有个别的文件要改,重新dd就很麻烦。我们可以采用下面的方法进行操作直接修改。这我们就可以直接修改tmp文件夹的内容了。对应的磁盘镜像内部文件也会修改。创建一个loop设备,正常应该有下面的输出。
2023-07-06 13:31:21
155
转载 如何在Ubuntu 22.04上使用cv_bridge
ubuntu22.04并不支持直接用apt安装cv_bridge,需要从源码安装。cv_bridge的源码位于https://github.com/ros-perception/vision_opencv。注意需要使用其中的noetic分支。
2023-07-06 13:30:33
179
转载 gstreamer 简单debug方法
设置 GST_DEBUG=4 GST_DEBUG_FILE=gst.log 再执行指令。这个会有详细的执行信息被保存在log文件里面。
2023-07-06 13:25:14
239
转载 ffplay 超低延迟播放网络视频流指令
ffplay -fflags nobuffer -flags low_delay -framedrop -fflags discardcorrupt -preset ultrafast -tune zerolatency -fpsprobesize 1 -max_delay 1 -probesize 32 -analyzeduration 0 -sync ext “http://192.168.0.104:8080/stream?topic=/multi/front/image_raw&type=h26
2023-07-06 13:24:43
778
转载 如何删除rviz上单个marker
使用marker的ID进行删除:在发布marker消息时,为每个marker设置一个唯一的ID。要删除特定的marker,可以发布一个新的marker消息,将该marker的ID设置为之前发布的marker的ID,并将其颜色设置为透明(alpha=0)。使用marker数组进行删除:如果你在RViz中使用了marker数组,可以通过发布一个新的marker数组消息,将不需要的marker从数组中删除,并将其颜色设置为透明。在上面的示例中,首先发布一个marker消息来显示一个红色的球体。
2023-07-06 13:22:14
385
转载 GPS在ROS中的测试和使用
原链接通过GPS机器人可以获取定位信息。ROS中也提供了GPS的相关驱动包,可以方便的使用GPS的定位信息。下面以蓝鲸GPS模块为例演示如何在ROS中使用GPS传感器。其他的可以通过串口指令发布nmea语句的GPS模块都是通用的。蓝鲸GPS模块采用AGPS定位方式,即GPS加手机基站的定位方式。相对于一般的GPS模块具有定位更加迅速和准确的优点。可以在官方淘宝店咨询购买。首先在机器人上安装对应的软件包安装gpsdsudo apt-get install gpsd gpsd-clients设置模
2020-06-15 20:42:18
7004
1
转载 在ROS中使用UDP进行通信
原链接ROS的网络通信提供了两种方式,一种是TCP协议,一种是UDP协议。默认采用TCP进行通信。但是在实际的WIFI网络使用中发现用户经常反馈客户端和机器人连接中断且无法重新建立连接。在ROS wiki中官方也有说明,ROSTCP更适合有线网连接的网络,而ROSUDP更适合wifi等网络不可靠的无线网络。下面介绍一下如何在ROS中使用UDP连接。首先你的消息发布者必须是用roscpp写的。rospy不支持udp连接。然后在订阅的时候添加 ros::TransportHints指定连接方式。如下面的代码
2020-06-15 20:39:51
8770
转载 使用Galileo SDK跨局域网遥控机器人
原链接GalileoSDK是由我们开发的机器人导航系统SDK。通过SDK用户能够方便的操控机器人。现在小强用户已经可以免费体验到SDK的功能了。SDK内部集成了物联网连接功能。设置完成后用户能够通过SDK跨局域网遥控和获取机器人状态。下面介绍物联网功能的配置方法。首先获取自己机器人的ID在机器人上执行bwgetid会有如下输出这一长串字符串就是你的ID然后向 http://iot.bwbot.org/api/device发送post数据,内容为此ID。比如利用curlcurl -H "
2020-06-15 20:38:50
478
转载 如何在Ubuntu上安装CUDA
原链接在Ubuntu上安装CUDA一直是比较麻烦的事情。由于不同版本的CUDA对显卡驱动有着不同的需求。而在有些电脑上安装最新的Nvidia闭源显卡驱动会导致无法进入图形界面。CUDA中也自带了Nvidia的显卡驱动,但是如果采用默认安装,自动安装显卡驱动会导致电脑重启后无法进入图形界面。下面就说明一下在Ubuntu上如何安装CUDA首先安装Nvidia显卡驱动。这里采用ppa安装。sudo add-apt-repository ppa:graphics-drivers/ppasudo apt u
2020-06-15 20:37:18
813
转载 ROS 常用加速指令
原链接设置Ubuntu软件源为aliyun设置ROS软件源为清华sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'sudo apt-key adv --keyserver 'hkp://keyserver.ubunt
2020-06-15 20:36:16
1198
转载 降低windows系统里面usb转串口模块延时的办法
原链接在使用MTOOLs软件测试蓝鲸轮毂驱动器时,可能会遇到串口数据显示卡顿的问题,这是由usb转串口模块驱动参数的默认配置值不合适导致的。在设备管理器中将串口模块延时设置为1ms可以解决这个问题,参考下图红框...
2020-06-15 20:30:35
2152
1
转载 一个比make更好用的编译工具
原链接在进行源码编译的时候经常要执行cmake ..make为了提高编译速度我们经常会加上-j参数。让make去使用多线程编译。但是每个线程将消耗大量内存。一个不小心就死机。经过我的测试一个线程最多能使用4G内存。ninja是可以代替make的另一个编译工具。它具有更快的速度,编译时消耗更少的内存。使用也是非常方便。cmake -G Ninja ..ninja只要编译时把原来的make指令替换成ninja就行了。在ROS中编译软件使用catkin_make工具。这个工具也是支持ninj
2020-06-15 20:28:49
1452
转载 videoc_streamon error 28, NO space left on device解决办法
原链接解决办法:修改uvc默认带宽分配值#新建配置文件sudo gedit /etc/modprobe.d/uvcvideo.conf#添加内容后保存退出options uvcvideo quirks=640#重启生效
2020-06-15 20:25:09
1708
转载 Gitlab 更新后gitlab-ctl reconfigure 提示 can only have one web server puma unicorn 错误
原链接在更新从老版本更新到14.0版本后,自动更新失败,手动执行gitlab-ctl reconfigure后,程序提示can only have on web server puma unicorn的错误。此错误是由于新版本的gitlab默认使用puma代替unicorn。如果你的配置文件里面以前启动了uncorn的设置,那么就会出现puma和unicorn冲突的问题。解决方法就是把原来unicorn的配置改为puma。具体参数可以对照此表更改完成后再次执行gitlab-ctl reconfigure
2020-06-15 20:23:40
1443
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人