ROS 机器人工程师30 天突击学习计划(超详细・日更版)第一天 Linux

第 1 周:Linux + C++/Python + ROS 基础(Day1~7)

Day1:Linux 终端命令(ROS 90% 操作都靠它)

上午 9:00–11:30 | 必背命令

查看日志 / 进程bash运行

top # 看CPU htop # 更直观 dmesg # 系统日志 

文件操作bash运行

ls -la # 看所有文件 cd # 进入目录 pwd # 显示当前路径 mkdir -p # 递归创建文件夹 rm -rf # 删除(谨慎) cp -r # 复制文件夹 mv # 移动/重命名 

下午 14:00–17:00 | 权限 + 包管理

bash

运行

sudo chmod 777 file sudo chown -R user:user folder sudo apt update sudo apt install xxx 

晚上 19:00–20:30 | 练习

  • 建一个 ros_ws/src 目录,来回复制删除验收:不看笔记能敲出 15 条常用命令面试点:Linux 在 ROS 里用来干什么?(启动、编译、调试、部署)

什么?(启动、编译、调试、部署)

1. 建立 ros_ws/src 目录并完成复制、删除、验收操作
在终端里操作(假设你用的是 Ubuntu + ROS Noetic/Kinetic/Melodic 等):
bash

# 1. 创建 ROS 工作空间目录结构
mkdir -p ~/ros_ws/src

# 2. 进入 src 目录(此时为空)
cd  ~/ros_ws/src

# 3. 创建一个示例功能包用于测试(假设用 catkin_create_pkg)
#    这里用 rospy 和 std_msgs 作为依赖示例
catkin_create_pkg hello_ros rospy std_msgs

# 4. 回到工作空间根目录
cd  ~/ros_ws

# 5. 编译工作空间(第一次编译会生成 build 和 devel)
catkin_make

# 6. 复制一份 src 目录做备份(验收用)
cp   -r src src_backup

# 7. 查看备份是否成功
ls -l

# 8. 删除刚创建的备份(验收删除)
rm  -rf src_backup

# 9. 确认删除成功
ls   -l

# 10. 验收:确认 src 里还有 hello_ros 包
ls src
这样就完成了 创建 → 复制 → 删除 → 验收 的流程。
2. 不看笔记能敲出的 15 条常用 ROS 命令(面试常考)
下面列出 15 条高频 ROS 命令(以 ROS1 为例,ROS2 略有差异):
1. roscore — 启动 ROS Master、参数服务器、rosout 节点(必须先运行) 13
2. catkin_create_pkg <pkg_name> [dependencies] — 创建功能包 10
3. catkin_make — 编译工作空间(在 workspace 根目录执行) 10
4. source devel/setup.bash — 设置当前终端的环境变量(使能工作空间) 11
5. rospack find <pkg_name> — 查找功能包路径 22
6. roscd <pkg_name> — 切换到功能包目录 15
7. rosls <pkg_name> — 列出功能包里的文件 15
8. rosrun <pkg_name> <executable> — 运行功能包中的节点 22
9. roslaunch <pkg_name> <file.launch> — 启动 launch 文件(可一次启动多个节点) 10
10. rosnode list — 列出当前运行的节点 21
11. rosnode info <node_name> — 查看节点信息(话题、服务、参数) 13
12. rostopic list — 列出当前活跃的话题 9
13. rostopic echo <topic_name> — 打印话题消息内容 9
14. rostopic pub <topic_name> <msg_type> <args> — 发布话题消息 9
15. rosparam list — 列出参数服务器上的参数 9
3. Linux 在 ROS 里用来干什么?(启动、编译、调试、部署)
Linux 是 ROS 的主要运行平台,在 ROS 的启动、编译、调试、部署各环节都扮演核心角色:
1. 启动
◦ ROS 节点本质是 Linux 下的进程,roscore、rosrun、roslaunch 都是在 Linux Shell 中执行的命令。 9
◦ roslaunch 会调用 Python 脚本解析 XML 并启动多个 Linux 进程(节点)。 26
2. 编译
◦ ROS 使用 catkin(基于 CMake)构建系统,编译过程依赖 Linux 下的 GCC/G++ 编译器、make 工具。
◦ catkin_make 或 catkin build 在 Linux 终端执行,生成可执行文件放在 devel/lib/<pkg>/ 或 install/ 目录。
3. 调试
◦ 常用 Linux 命令配合 ROS 工具调试:rosnode、rostopic、rosparam、rqt_graph、rqt_console、gdb(C++ 节点调试)、valgrind(内存检查)。 10
◦ 利用 Linux 的进程管理(ps, kill, top)查看和控制 ROS 节点。
4. 部署
◦ 机器人实际运行时通常在 Linux 系统(如 Ubuntu)上,将编译好的工作空间 install 或 devel 目录部署到目标机。
◦ 通过 Linux 的 shell 脚本或 systemd 服务实现开机自启动 ROS 节点(如 roslaunch 在 .bashrc 或启动脚本中自动运行)。
一句话总结:
Linux 为 ROS 提供了进程管理、编译链、调试工具和运行环境,是 ROS 开发、测试、部署的基石,所有启动、编译、调试、部署操作都依赖 Linux 的 Shell 环境与系统工具链。

Read more

告别手动审核!用Qwen3Guard-Gen-WEB实现自动化内容过滤

告别手动审核!用Qwen3Guard-Gen-WEB实现自动化内容过滤 在内容爆炸的时代,每天有数以亿计的文本、评论、客服对话、营销文案涌入平台。人工审核早已不堪重负:效率低、成本高、标准难统一、响应不及时——更关键的是,它根本跟不上对抗性提示、语义隐喻和跨文化表达带来的新型风险。你是否也经历过这样的场景:一条看似中性的提问,被模型生成出违规结论;一段多语言混杂的用户反馈,因规则引擎漏判而引发舆情危机;又或者,客服系统刚上线三天,就被测试人员用“绕过审查”的话术成功诱导出不当回答? Qwen3Guard-Gen-WEB 不是又一个需要写代码、调接口、配参数的安全插件。它是一套开箱即用的可视化内容安全中枢——部署完成,打开网页,粘贴文字,三秒内返回带解释的风险判断。没有Prompt工程门槛,不依赖开发资源,连非技术的内容运营同事也能独立完成每日千条内容的合规初筛。 这不是理想化的概念演示,而是已在多个内容平台、智能客服中稳定运行的生产级方案。它背后是阿里通义团队基于119万条高质量安全标注数据训练出的生成式审核模型,将“是否安全”这个分类问题,重构为一次自然、可读、可追溯的推理过程

IDEA 创建 Spring Boot Web 项目完整教程

一、新建 Spring Boot 项目 1. 打开新建项目窗口 * 打开 IntelliJ IDEA → 点击 新建项目(或从欢迎页选择 New Project) * 在左侧生成器中选择 Spring Boot *          截图如下 * 选项填写内容说明服务器 URLstart.spring.ioSpring 官方初始化地址名称demo项目名位置D:\idea项目存放路径(建议不要含中文 / 空格)语言Java开发语言类型Maven项目构建工具组org.example项目组织标识工件demo项目模块名软件包名称com.example.demo根包名JDK21 Oracle OpenJDK 21.0.8你的 JDK 版本Java17源码兼容版本(Spring Boot 4.0.3 推荐 Java 17+)打包Jar可执行 Jar 包(Spring

用 Vue 3 重构 Dify 聊天前端(上篇):项目搭建与基础架构

用 Vue 3 重构 Dify 聊天前端(上篇):项目搭建与基础架构

本系列教程将带你从零开始,用 Vue 3 + TypeScript 复刻一个类似 Dify 的 AI 聊天前端。上篇聚焦项目搭建、类型设计、路由认证、HTTP 封装和状态管理。 项目简介 背景 Dify 是一个开源的 LLM 应用开发平台,提供了对话式 AI 的后端服务。在实际项目中,我们往往需要自建前端来对接Dify后端 API或LLM后端服务,实现定制化的聊天界面。 本项目的目标:用 Vue 3 构建一个生产级的 AI 聊天前端,具备以下能力: * SSE 流式输出(打字机效果) * Markdown 渲染 + 代码高亮 * 用户认证 * 文件/图片上传 * 聊天会话历史管理 * 工作流执行可视化 * Agent 思考过程展示 * 移动端响应式适配

动态表单开发新范式:基于JSON Schema的低代码前端效率提升指南

动态表单开发新范式:基于JSON Schema的低代码前端效率提升指南 【免费下载链接】json-editorJSON Schema Based Editor 项目地址: https://gitcode.com/gh_mirrors/js/json-editor 在现代前端开发中,表单构建往往是最耗时且重复的工作之一。你是否曾为一个简单的数据收集页面编写数百行HTML和验证逻辑?是否在需求变更时,不得不同步修改表单UI、数据模型和验证规则?JSON Schema驱动的动态表单技术正彻底改变这一现状。本文将深入探索如何利用JSON Schema实现表单自动化,通过零代码配置大幅提升前端开发效率,让开发者从繁琐的重复劳动中解放出来。 一、表单开发的困境与破局之道 1.1 传统表单开发的痛点剖析 为什么表单开发总是让开发者头疼?传统方式存在三大核心痛点: 首先是代码冗余。一个包含10个字段的简单表单,通常需要编写HTML结构、CSS样式、JavaScript验证逻辑和数据处理代码,形成大量重复劳动。其次是维护成本高。当需求变更时,需要同时修改UI、验证规则和数据模型,容易出现不