自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(145)
  • 问答 (2)
  • 收藏
  • 关注

原创 鹈鹕的骑行日。想试试antigravity gemini flash 3.8 hight

<think>我们根据内容生成摘要:用户提到“鹈鹕的骑行日”,尝试使用antigravity gemini 3.8 hight版本,第一次做的不好,反馈后出了结果。摘要应概括这一点,字数≤150字。我们输出中文摘要。</think>今天尝试用 Antigravity Gemini 3.8 Hight 生成“鹈鹕的骑行日”页面,第一版效果不理想,反馈后得到改进结果。最终实现了带有科技感 UI 的骑行主题页面,包含时间氛围切换、遥测数据面板等视觉元素。

2026-09-07 20:51:08 7

原创 中国移动家庭云电脑window关闭所有安全脚本

内容是关于关闭Windows安全功能以便执行dd脚本刷磁盘的PowerShell脚本描述。摘要应概括内容要点。</think>该PowerShell脚本用于关闭Windows全部安全功能,以便执行dd脚本刷磁盘。脚本以管理员权限运行,主要操作包括:禁用Windows Defender及实时防护、关闭防火墙、停止相关服务,并修改注册表强制生效,同时避开保护关键进程和日志记录。

2026-09-01 14:20:05 60

原创 Linux 串口编程与 termios:二进制协议的 Raw 模式配置指南

linux termios 结构体参数讲解

2026-08-28 14:16:24 320

原创 代码和QoS全对,ROS 2 话题死活收不到?聊聊系统时钟跳变把 DDS 搞瘫的底层原因

时间是分布式中间件的基石:在 ROS 2 / DDS 体系中,时钟跳变不仅影响打打 log,更能直接搞瘫底层的协议握手和租约机制;代码无错不等于系统无错:遇到 Reliable 话题依然收不到时,先查查系统日志看看时间有没有跳过;架构要有自愈能力:任何状态量通信,永远不要假设网络和时间 100% 绝对平稳,加上低频保底广播能帮你省掉无数莫名其妙的排查时间。

2026-08-27 17:03:50 325

原创 sudo btmon 抓的数据参数解释

这篇蓝牙监控日志显示了一个LE(低功耗)蓝牙连接过程。主要事件包括: 设备成功建立LE增强连接(从设备角色),连接间隔48.75ms 记录到设备地址52:E1:F4:4A:A2:D0的连接事件 执行了远程功能读取命令并成功返回 系统尝试加载设备缓存失败(/var/lib/bluetooth目录下不存在对应缓存文件) 日志显示了完整的连接参数协商过程和特征交换,最后因缺少设备缓存文件而无法加载GATT数据库。整个过程耗时约9.16秒,连接状态正常(Status: Success)。

2026-07-14 10:08:19 344

原创 # ROS 2 Diagnostics 教程与实战

这篇教程详细介绍了如何在ROS 2中使用Diagnostics诊断系统监控机器人硬件状态。通过创建一个虚拟温度传感器节点,演示了如何: 创建包含diagnostic_updater依赖的功能包 使用C++编写诊断节点核心代码 通过diagnostic_updater设置硬件ID和状态检查回调 根据不同条件设置OK/WARN/ERROR状态并添加详细指标 编译运行节点并通过命令行或rqt_robot_monitor查看诊断结果 重点解析了诊断系统的底层机制:Updater自动管理发布者和定时器,每次检查都会生

2026-07-13 16:32:59 261

原创 大白话彻底搞懂 D-Bus

D-Bus简明实战指南 本文从新手视角用通俗语言解析D-Bus核心概念: 总线名:进程在总线上的唯一标识符,格式受限(如com.example.MultiService) 路径对象:类似文件路径的字符串(如/com/example/Manager),可包含多个接口。高级框架会自动添加标准接口org.freedesktop.DBus.Properties,提供属性管理功能。 接口:包含方法(可调用函数)、属性(变量)和信号(事件通知)。开发者需特别注意: 属性修改后是否发送信号完全由代码决定 可能使用自定义信

2026-07-05 17:34:43 164

原创 dbus的如何使用教程以及相关概念

本文是一份D-Bus进程间通信的实用指南,通过快递公司类比解释D-Bus作为Linux IPC机制的作用。文章首先介绍D-Bus的两类总线(系统总线和会话总线),然后详细解析D-Bus的5大命名规则(总线名、对象路径、接口名等)。核心部分通过Python代码演示如何创建包含多种交互方式(方法调用、属性读写和信号)的服务端,并给出客户端调用示例和命令行调试技巧。文中特别强调D-Bus接口设计规范,包括命名限制和交互类型,帮助开发者避开常见陷阱。最后还提及如何利用D-Spy等工具进行底层调试,为Linux开发者

2026-07-05 16:42:40 263

原创 信号强度RSSI,dbm 解释,信号表达与强度解析

本文深入浅出地解析了信号表达的基本原理和信号强度的量化方法。信号在数学上可用正弦波表达,其强度主要由振幅、频率和相位决定。重点介绍了信号强度的不同衡量维度,包括振幅电平、功率能量以及无线通信中的dBm和RSSI指标。特别对dBm的数值范围进行了详细说明,解释了负值的物理意义,并列举了从极弱信号(-130dBm)到强发射信号(80dBm)的实际应用场景。文章通过生动的例子和直观的对比,帮助读者理解信号强度的对数表达方式和工程应用中的实际限制。

2026-06-11 10:56:50 241

原创 红米redmi k90 pro max alsc 冠军版刷TWRP

摘要:用户分享了一个名为"Myron_TWRP一键入包.zip"的刷机工具包(提取码:TY60),适用于海外版小米ROM系统。该工具已在红米K90 Pro Max国行版本上成功刷机。下载链接来自123云盘​链接:https://1818907613.share.123865.com/123pan/Ny6Hjv-cfLrh?pwd=TY60#提取码:TY60文件可供其他用户参考使用。注意:刷机存在风险,需谨慎操作

2026-05-30 19:49:44 233

原创 redmi k90 pro max 强解BL,刷海外rom, 并刷入sukisu ultra

redmi k90 pro max 冠军版本,漏洞秒解Bl,并刷入海外poco f8 ultra 系统。并刷入sukisu ultra root

2026-05-30 15:47:24 605

原创 linux 蓝牙BLE 服务命令行测试

摘要:本文展示了使用bluetoothctl工具(版本5.64)配置Jetson设备的蓝牙低功耗(BLE)服务的命令序列。操作包括开启蓝牙电源、进入GATT菜单、注册0xFFFF服务、添加具有读写通知功能的0xAAAA特征值、设置应用并返回,然后配置名称为"Jetson-BLE-Tool"的广播服务,最后启用广播功能。这些命令通过管道传递给sudo bluetoothctl执行,用于快速建立BLE服务连接。

2026-04-15 18:14:47 103

原创 ros日志及时输出到日志文件里面

本文详细解释了ROS系统中日志输出的缓冲机制及解决方案。主要分为两条路径:ROS日志系统(rosconsole/rospy)和标准流(stdout/stderr)。关键环境变量包括: ROSCONSOLE_STDOUT_LINE_BUFFERED=1:确保rospy.loginfo/ROS_INFO立即写入.log文件 PYTHONUNBUFFERED=1:解决Python print()的缓冲问题 C++的printf/cout默认行缓冲无需处理。只需设置这两个变量即可覆盖大多数场景,特殊情况如glog库

2026-04-15 15:06:43 383

原创 ros设置中文cpp节点中文字符生输出

Linux Locale机制解析 Linux Locale用于定义系统的语言、地域及文化规则,包含字符编码、数字/货币/时间格式等。通过setlocale()函数和LC_*环境变量(如LC_CTYPE控制字符编码,LC_TIME控制时间格式)进行配置。ros cpp节点输出中文

2026-04-02 17:00:10 379

原创 ros1 neotic 的通信机制是什么

ROS 1 Noetic采用分布式图架构,核心通信机制分为控制流(XML-RPC协议)和数据流(TCPROS/UDPROS协议)。roscore启动三个组件:ROS Master(节点注册中心)、Parameter Server和rosout节点。节点间通信通过7步握手完成:1)订阅者注册;2)发布者注册;3)Master通知订阅者;4-5)节点间协商连接方式;6)建立TCPROS连接;7)开始数据传输。roscpp节点内部通过多线程管理XML-RPC、连接、数据队列和回调。该架构具有解耦优势,但存在单点故

2026-04-01 11:55:04 444

原创 linux.service 自起文件want和After意思

本文对比了 systemd 服务配置中 Wants 与 Requires、After 与 Before 的区别,解析了它们分别解决的依赖和顺序问题。通过 ROS Core 与 NetworkManager 的四种典型配置组合,说明仅使用 Wants 会导致竞争条件,仅使用 After 会造成孤立启动,而组合使用才能确保服务按需启动并按序执行。特别强调 ROS 服务需要等待网络、时间同步等基础服务就绪,解释了配置中多个 After 依赖的必要性。最终结论指出:Wants 解决服务触发问题,After 解决启动

2026-03-31 09:36:38 307

原创 ubuntu linux DNS 系统流程逻辑

本文分析了Ubuntu系统中DNS架构的工作原理和配置流程。系统采用多级代理模式:应用程序通过glibc查询DNS时,首先访问/etc/resolv.conf指向的本地systemd-resolved服务(127.0.0.53),该服务作为智能路由器,根据网卡优先级将请求转发至ISP分配的DNS服务器(如中国电信的240e:5a::6666)。系统运行两个主要DNS进程:systemd-resolved处理本地解析和缓存,dnsmasq为热点设备提供代理服务。用户可通过resolvectl查询实时DNS选择

2026-03-27 10:06:38 392 1

原创 EasyTier 免费自建自用5$每个月的服务器

自建easytier 免费服务器:本文介绍了一种通过酷安获取的私人网络连接方法,仅限个人使用,禁止大规模共享以避免容器被官方删除。操作步骤包括:1)在easytier/easytier中填写自定义网络名称和密钥(如test_0001/test_0002);2)设置私有模式并配置网络参数;3)通过拼接域名和端口号(如tcp://sjc1.clusters.zeabur.com:11111)完成连接。注意需保护自定义的隐私信息,避免泄露。该方法适用于个人小规模使用需求。

2026-02-15 15:39:26 750

原创 移动家庭云电脑永不关机实验版本

本文介绍Linux系统下《移动云电脑家庭云不关机版》的使用教程。适用于Ubuntu/Debian等系统,需提前准备备用远程工具。教程包含下载解压、配置账号信息、启动云电脑(首次运行自动加载镜像)、浏览器访问(http://localhost:6080)及停止容器等步骤。该方案采用加密技术,只要Linux不关机或容器未停止,云电脑将保持在线状态。注意强制挤掉已登录会话会导致5分钟后自动断开连接。

2026-02-01 18:20:07 3827 40

原创 了解单片机一下antigravity 仿真stm32 让它写代码跑起来

This C code demonstrates bare-metal programming for an STM32F407 microcontroller, showing how register manipulation translates to physical hardware actions. The program configures GPIO pins (LED control via PD12 and USART2 communication via PA2), initializ

2026-01-21 21:37:01 911

原创 移动家庭云电脑linux docker 容器登陆移动家庭云电脑

摘要:为解决Linux家庭云电脑APP因依赖库过严导致连接失败的问题,提供了两种解决方案:1)离线版Docker,下载后执行脚本即可使用;2)网络版需从零构建容器镜像,但对网络要求较高。仅支持Linux系统,需提前安装Docker环境。Windows用户需自行转换脚本格式。资源下载链接:https://www.123865.com/s/Ny6Hjv-xzSRh(提取码:yn9E)。

2026-01-18 19:56:42 535

原创 中国移动家庭云电脑window安装linux桌面系统

摘要:本文介绍在KVM架构VPS/虚拟机上将Windows系统一键重装为Ubuntu 22.04并配置图形桌面的完整流程。关键步骤包括:①关闭Windows Defender防止拦截脚本;②执行自动化重装命令;③安装ubuntu-desktop组件;④重点解决KVM环境下因云内核缺失驱动导致的黑屏问题(通过安装linux-modules-extra包修复);⑤最终实现可正常使用的Linux桌面环境。操作涉及磁盘格式化,需提前备份数据并确保具备VNC访问权限。(149字)

2026-01-16 22:41:02 2891 9

原创 bash sh为什么终端不能tab补全

摘要 本文解答了关于Linux终端中Shell环境的问题,主要涉及sh和bash的区别、查看当前Shell的方法以及相关原理。 Tab键失效问题:当终端提示符为$时,说明处于sh环境,不支持Tab补全。解决方法:输入bash切换到bash环境,或永久修改默认Shell为bash。 sh与bash的区别: sh是基础Shell,功能简单,不支持Tab补全和历史命令。 bash是增强版,支持智能补全、历史记录等功能。 原理差异在于bash使用了libreadline库,而sh没有。 查看当前Shell: 输入e

2026-01-07 09:11:12 1132

原创 navigation2 源码个人阅读,并大概讲解整体框架设计思路

摘要:ROS2 Navigation2框架采用插件化设计,通过抽象接口实现功能扩展。核心包括:1) BehaviorTreeNavigator基类,开发者需继承实现自定义导航逻辑,每个实例拥有独立的行为树和黑板;2) GlobalPlanner和Controller插件接口,分别负责全局路径规划和速度计算;3) 四个宿主节点(BtNavigator、PlannerServer、ControllerServer、BehaviorServer)通过pluginlib动态加载插件。框架采用行为树异步执行机制,以固

2026-01-01 13:57:35 777

原创 ros2 navigation2 不能多个插件行为树同时运行

摘要:本文记录了ROS2导航系统(nav2)的启动和运行过程,重点分析了多点导航过程中出现的目标冲突问题。在导航测试中,当多点导航执行时接收到单点导航请求,系统因行为树插件互斥机制拒绝新请求,原导航任务继续执行。源码分析表明,nav2通过字符串标识当前运行的行为树插件,确保同一时间只执行一个行为树插件运行。开发者可自定义行为树插件来扩展导航类型,系统仅在收到目标后才会触发行为树执行。

2025-12-22 21:56:56 374

原创 robot_state_publisher 参数

这个节点是一个正向运动学(Forward Kinematics)解算器。它不控制机器人运动,它只负责计算。它时刻回答一个问题:“基于当前的关节角度,机器人的手/眼/轮子在 通用坐标系(如 map, odom) 或 机器人基座(base_link) 中的确切位置在哪里?RSP 本质:通过URDF$\rightarrow$ 计算出 $Transform$ $\rightarrow$ 发布到/tf。参数本质:Launch 文件生成的--ros-args命令行参数,被拦截并解析,最终存储在节点对象内部的。

2025-12-18 22:08:48 1247

原创 ros2 找功能包的get_package_share_directory

ROS 2 通过 Ament 资源索引系统高效获取包路径。其核心机制是: 依赖 AMENT_PREFIX_PATH 环境变量(由 setup.bash 设置) 查找顺序:先工作空间路径,后系统路径 通过检查特定标记文件(share/ament_index/resource_index/packages/<包名>)确认包位置 最终拼接出 /share/<包名> 的完整路径 这种设计相比 ROS 1 的优势: 速度快(避免全盘扫描) 支持覆盖机制(优先使用工作空间的包) 更可靠的依赖管理

2025-12-18 21:23:52 664

原创 蓝牙数据包从底层到应用层协议一层套一层

蓝牙协议栈分层解析(硬件→内核→用户空间→应用) 硬件层:蓝牙芯片处理LL PDU帧(连接/广播)和射频信号(1M/2M PHY),负责加密、跳频等底层操作。 内核层:通过HCI协议与硬件交互,包含: HCI Command(主机→控制器):配置指令(如开启扫描) HCI Event(控制器→主机):状态反馈(如连接完成) HCI ACL Data:双向传输L2CAP层数据(如音频流) 用户空间:bluetoothd守护进程处理ATT协议请求(如Write Request/Response),实现设备间数据

2025-12-12 22:43:40 979

原创 ubuntu ROS1 wifi开关 热点开关 链接指定wifi 扫描wifi节点

本文分享了使用Google AntiGravity IDE GeminiPro 3进行AI编程的体验。作者指出该AI生成的代码质量优于其他工具,但仍需人工干预调整。项目是基于Ubuntu 25.04系统,在Docker环境中开发,通过DBus与宿主机的NetworkManager交互实现WiFi管理功能。主要功能包括:可配置超时的WiFi扫描(支持去重)、支持WPA/WPA2和开放网络的连接、热点创建与管理(含参数校验)、以及WiFi开关控制。作者认为当前AI编程仍需人工参与系统设计,完整项目代码已开源在G

2025-12-07 22:54:24 355

原创 gmapping 重置地图(修改版本,提供了服务,调用服务可运行时清空地图)

《reset_gmapping:为gmapping增加地图重置功能的ROS扩展》摘要 reset_gmapping是一个基于gmapping的ROS扩展包,重置 gmapping 地图

2025-12-01 23:22:48 793

原创 android 14分区表gork 回答

手机基带备份分区的作用是保存基带固件和关键通信数据,确保设备正常联网和通话。从备份文件列表可见,包含modem_a/b.img(基带固件)、modemst1/2.img(基带状态)、fsg.img(射频校准)等重要分区。这些备份可用于恢复基带功能、解决信号问题或刷机失败后的修复。备份总容量约9.2GB,涵盖系统各关键组件,对设备维护和故障恢复具有重要意义。

2025-11-27 14:23:01 1215

原创 真我 Realme GT Neo6 刷机包/全量包/基带备份,sukisu ultra 内核root kernel su , TWRP橙狐

本文整理了Realme GT Neo6刷机与备份资源,包含本地更新包、基带备份、Sukisu Ultra内核及橙狐TWRP恢复工具。资源目前仅支持本地更新,9008端口暂未开放。提供网盘链接(密码5b48)下载全量包、基带备份及内核文件(6.1.57版本),并附详细使用说明。特别提醒刷机前需备份分区,若出现问题可通过fastboot恢复或售后解决。另含TWRP刷入教程和root方法,建议保持616出厂版本不升级。

2025-11-27 12:50:37 2453 5

原创 小米8,dipper后背指纹刷橙狐TWRP,sukisu ultra 教程

【摘要】本文提供小米8(dipper)刷机教程,包含橙狐TWRP和sukisu ultra内核的刷入方法。用户可通过123云盘下载资源(提取码aUhq),使用fastboot分别刷入recovery.img和boot.img文件完成安装。内核版本为4.9.186,教程配有相关操作界面截图辅助说明。资源由用户QingJ分享,适用于小米8后背指纹版本机型。(98字)

2025-11-24 16:23:15 860

原创 ROS串口工具类

本文介绍了一个异步串口通信类的优化设计,重点关注回调机制和重连可靠性。核心改进包括:1) 采用size_t类型回调函数实现数据消费与内存管理的职责分离,用户只需返回已处理字节数,类内部统一执行erase操作;2) 增强重连机制,在底层文件描述符失效时执行完整初始化流程(先关闭、重新设置参数、再次打开)。代码实现了线程安全的读写操作,通过条件变量管理发送队列,并提供了稳健的异常处理机制。该设计适用于需要可靠串口通信的场景,特别是在ROS环境下使用。

2025-11-20 22:37:08 467

原创 BT Navigator:插件化架构与执行逻辑深度大概表达我的思路

BT Navigator:插件化架构与执行逻辑大概表达我的思路

2025-11-16 21:49:12 893

原创 Navigation2 行为树架构源码级分析与设计原理

ChatGPT 生成:下面我会按“源码级”分析的风格,把抽出关键源码模块、文件、调用/通信路径、设计思想与注意点讲清楚。所有结论都基于 nav2 仓库与官方文档里的具体文件与 API(我在每一段后面给出来源引用),不会用“假设”或伪代码 —— 我直接指向并解读真实的源码 / API 界面与文档位置。

2025-11-09 23:55:05 1514

原创 Nav2 Lifecycle Manager:生命周期管理器的设计哲学与源码级运行机制

本文介绍了ROS2导航系统Nav2中的生命周期管理器模块nav2_lifecycle_manager的设计与实现。该模块通过统一管理各生命周期节点(如planner_server、controller_server等)的状态转换,确保导航系统有序启动/关闭/重置/暂停/恢复

2025-10-26 22:53:24 1033

原创 DBUS 蓝牙BLE Buez 广播 创建GATT服务

本文深入解析Linux BLE开发中的核心技术与常见错误。首先对比了经典蓝牙(类似TCP)和低功耗蓝牙(类似UDP)的特性及适用场景,重点介绍了L2CAP层的作用。在Linux平台上,BLE开发围绕BlueZ守护进程、D-Bus通信和GATT架构展开,开发人员需掌握这三者的交互方式。文章特别剖析了"No valid service object found"错误的两个主要原因:D-Bus数据类型不匹配(Python动态类型转换问题)和GATT对象不完整(必须实现特定接口)。最后提供了一个

2025-09-27 18:09:35 922

原创 ubuntu linux 控制wifi功能 dbus控制

Ubuntu系统通过NetworkManager管理网络功能,提供D-Bus接口供应用控制WiFi。本文介绍使用D-Bus命令控制WiFi开关、扫描和连接的方法: 开启/关闭WiFi:通过设置WirelessEnabled属性为true/false 扫描WiFi:先获取无线设备路径,再触发扫描 连接WiFi: 监听扫描结果获取AP路径 创建临时连接配置(文中提供Python示例代码) 使用SSID和密码激活连接 所有操作均需NetworkManager服务运行,并确保有无线网卡设备。通过D-Bus接口统一管

2025-09-21 22:52:47 1209 1

原创 一张图看懂 roslaunch(respawn自启动节点) 与 Linux 进程树:从 pstree 到 systemd 守护

本文通过一张pstree进程树图解,揭示了ROS系统启动背后的进程关系。当执行roslaunch时,会形成三层结构:systemd守护roslaunch,roslaunch监控子节点,各节点又包含多个线程。实验表明,设置respawn="true"的节点被kill后会由roslaunch自动重启。而roslaunch本身若异常终止,子节点会变为孤儿进程。为确保系统持续运行,建议结合systemd服务,通过配置Restart=always实现双重守护机制,使整个机器人系统具备节点级和系统级

2025-08-11 09:43:46 1110

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除