工业光电网
文章平均质量分 66
ZPC8210
robot
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ROS2 gdb debug
在 ROS 2 中使用 gdb 进行调试是排查程序问题的有效方法。多线程调试:ROS 2 节点通常是多线程的,可以使用info threads查看线程,thread <id>切换线程。通过 gdb 可以有效地定位 ROS 2 节点中的逻辑错误、内存问题和崩溃原因,是开发过程中不可或缺的调试工具。(gdb) break my_node.cpp:25 # 在空指针访问处设置断点。(gdb) backtrace # 崩溃后查看调用栈,定位问题。(gdb) step # 单步执行,会触发崩溃。原创 2025-09-19 09:04:59 · 546 阅读 · 0 评论 -
ROS2实时性案例分析之倒立摆系统
平衡倒立摆是通常由实时计算解决的控制问题的经典示例之一。但是,如果控制器比控制摆锤的电动机运行的速度更快的速度可靠地更新,则摆锤将成功地对传感器数据做出反应平衡摆锤。演示中使用的主要节点是/pendulum_controller和/pendulum_driver。创建包pendulum_manager的目的是为了更轻松地控制节点的状态。只是为了好玩,可以尝试在仿真处于活动状态时停用控制器节点,以查看摆锤的下落。本篇主要针对倒立摆小车在ROS2系统中的实现为例,进行详细介绍。代码语言:javascript。原创 2025-09-15 08:38:38 · 352 阅读 · 0 评论 -
scp 网间拷贝
scp 是 secure copy 的缩写,是一个基于 SSH 协议的安全文件复制工具,可以在本地与远程主机之间或两台远程主机之间传输文件。原创 2025-09-08 15:17:56 · 395 阅读 · 0 评论 -
万兆光纤接口
SFP+插槽通常向下兼容1G SFP模块,但10G SFP+模块无法在1G SFP插槽中使用。:SFP+模块的插槽外形是统一的,但内部可插不同波长或距离的光纤模块(如SR/LR/ER等)。:通常是SFP+插槽,可插10G SR(多模光纤)或LR(单模光纤)模块。(如10G SFP+ DAC),无需光模块,成本低但距离短(1-7米)。(主流,支持10Gbps,兼容1Gbps SFP但速率固定)(千兆接口转换器)无法支持万兆,但万兆时代已过渡至SFP+。(早期万兆模块,体积较大,已逐渐被SFP+取代)原创 2025-07-18 07:25:38 · 774 阅读 · 0 评论 -
安装 preempt_rt 实时内核
重启系统后,进入引导程序(如Grub)的引导加载器屏幕,选择新构建的Preempt_RT内核启动。下载与当前系统内核版本匹配的Linux内核源码文件和Preempt_RT补丁文件。在某些系统中,可能需要手动编辑Grub配置文件来设置默认启动的内核。将当前系统内核的配置文件复制到内核源码目录下,并重命名为。命令检查当前运行的内核版本,若版本号中包含。例如,若CPU有4个线程,可使用。命令安装编译内核所需的依赖软件。进入内核源码目录,并应用补丁。后缀,则说明实时内核安装成功。命令,进入内核配置菜单。原创 2025-06-25 13:41:56 · 453 阅读 · 0 评论 -
sudo cyclictest -l100000 -m -t5 -p99 -i1000 -h100 指令详解
直方图用于统计不同延迟范围内的发生次数,帮助分析系统的延迟分布情况。此参数限制了直方图记录的最大延迟值,超过该值的延迟将不会被记录在直方图中,但会在结果中显示为溢出(overflow)。如果指定了该选项但没有指定具体的线程数,则会创建与CPU核心数量相同的线程。在实时测试中,高优先级的线程可以优先获得CPU资源,从而更准确地测试系统的实时性能。这个参数定义了线程在每次唤醒之间的时间间隔,用于控制测试的频率。可以对系统的实时性能进行详细的测试和分析,帮助评估系统在不同负载和配置下的延迟表现。原创 2025-06-24 17:47:54 · 158 阅读 · 0 评论 -
Ubuntu 系统是否已安装 PREEMPT-RT 实时内核补丁
Ubuntu 22.04 LTS 及以上版本可通过 Ubuntu Pro 服务直接安装官方实时内核。:Ubuntu 22.04 LTS 是首个官方集成 PREEMPT-RT 补丁的版本,需确认系统版本是否支持。,则说明系统已通过 Ubuntu Pro 订阅启用了 PREEMPT-RT 内核。,但存在实时性能优化,可能是用户手动编译的内核,需进一步检查。),若数值在微秒级(如 <100μs),则表明实时内核生效。,则表明内核已启用实时抢占功能。),则说明系统已启用实时内核。:若内核版本号未明确标注。原创 2025-06-17 11:22:09 · 542 阅读 · 0 评论 -
udp 传输实时性测量
如果你熟悉编程,可以使用Python等编程语言编写自定义的UDP测试脚本。脚本可以模拟UDP客户端发送数据包,并验证服务器端的响应,以测试UDP的性能和可靠性。原创 2025-05-29 16:55:34 · 1251 阅读 · 0 评论 -
Docker 挂载卷并保存为容器
docker commit 是一个非常方便的工具,可以快速将运行中的容器保存为一个新的镜像。如果你只是需要快速保存当前容器的状态,docker commit 是一个不错的选择。docker commit 创建的镜像仅包含当前容器的状态,不包含构建过程中的上下文信息(如 Dockerfile 中的指令)。在 Docker 中,你可以将运行中的容器保存为一个新的镜像,以便后续可以基于这个镜像快速创建新的容器。使用 docker commit 创建的镜像会包含容器的所有更改,包括文件系统的变化和运行时的状态。原创 2025-05-27 17:29:02 · 935 阅读 · 0 评论 -
doucker 挂载卷
v /path/to/host/workspace:/root/ros2_ws:将宿主机的 /path/to/host/workspace 目录挂载到容器的 /root/ros2_ws 目录。在 Docker 中,挂载卷(Volumes)是一种非常重要的功能,它允许你将宿主机的文件系统与容器的文件系统进行共享。-v /path/to/host:/path/to/container:将宿主机的 /path/to/host 目录挂载到容器的 /path/to/container 目录。原创 2025-05-27 17:05:58 · 876 阅读 · 0 评论 -
ssh 测试 是否可以连通docker 容器
docker inspect -f '{{range .NetworkSettings.Ports}}{{.HostPort}} -> {{.HostIp}}:{{.HostPort}}{{end}}' <容器名称或ID>docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器名称或ID>如果一切配置正确,你应该能够成功连接到容器的 SSH 服务。确保容器的 IP 地址是正确的,并且网络设置没有问题。原创 2025-05-27 16:12:58 · 720 阅读 · 0 评论 -
Mobaxterm 连接到 Docker 容器
输入容器内部的 SSH 端口,默认端口为 22。如果容器没有运行 SSH 服务,你将无法通过 SSH 连接。在“SSH 服务器”选项卡中,输入容器的 IP 地址或 localhost(如果使用端口映射)。如果容器使用了非默认的 SSH 端口,请确保在 Mobaxterm 中输入正确的端口号。在“用户认证”选项卡中,输入连接到 Docker 容器的用户名(如 root)和密码。如果容器的 SSH 端口未正确映射到宿主机,你可能需要重新启动容器并添加端口映射。步骤 3:在 Mobaxterm 中连接到容器。原创 2025-05-27 15:15:09 · 1049 阅读 · 0 评论 -
UDP 传输时间(延迟)
iperf3 是一款功能强大的网络性能测试工具,支持 UDP 和 TCP 的带宽、延迟、丢包率等指标的测试。nping 是 Nmap 项目中的一个工具,可以用来发送自定义的 UDP 数据包并测量往返时间。通过上述工具和方法,你可以有效地测试 UDP 的传输时间(延迟)并分析网络性能。UDPping 会输出每个数据包的往返时间(RTT),并统计平均延迟和丢包率。UDPping 是一个轻量级的工具,专门用于测试 UDP 的延迟和丢包情况。nping 会输出每个数据包的往返时间(RTT),并统计平均延迟。原创 2025-05-27 13:24:33 · 1041 阅读 · 0 评论
分享