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

小白也能玩转AI写作!Qwen3-4B-Instruct保姆级教程

小白也能玩转AI写作!Qwen3-4B-Instruct保姆级教程 在人工智能快速普及的今天,越来越多用户希望借助大模型提升内容创作效率。然而,动辄需要高端GPU、复杂配置的部署流程让许多“非技术党”望而却步。本文将带你从零开始,使用 AI 写作大师 - Qwen3-4B-Instruct 镜像,在无需任何编程基础的前提下,轻松搭建属于自己的高智商AI写作助手。 这款镜像基于阿里云最新发布的 Qwen/Qwen3-4B-Instruct 模型打造,拥有40亿参数规模,具备强大的逻辑推理与长文本生成能力,支持代码编写、小说创作、报告撰写等多种高阶任务。更重要的是,它专为CPU环境优化,无需昂贵显卡也能稳定运行,真正实现“开箱即用”。 1. 为什么选择 Qwen3-4B-Instruct? 1.1 参数量决定“智力水平” 大模型的能力与其参数量密切相关。相比常见的0.5B或1B级别小模型,4B(40亿)参数意味着: * 更强的语言理解与组织能力 * 更准确的上下文记忆和连贯性保持 * 能处理更复杂的指令,如“写一个带GUI的Python贪吃蛇游戏”

By Ne0inhk

AI绘画创业第一步:Stable Diffusion 3.5低成本验证方案

AI绘画创业第一步:Stable Diffusion 3.5低成本验证方案 你是不是也经常刷到别人用AI画出精美插画、定制头像、甚至接单赚钱?看着心动,但又怕买设备、学软件、投钱打水漂?别担心,作为一个从零开始摸索过来的自由职业者,我完全理解你的顾虑。 今天我要分享的,是一套专为自由职业者设计的AI绘画副业启动方案——利用 Stable Diffusion 3.5(SD 3.5) 和云端GPU资源,实现“零硬件投入、低时间成本、快速出图变现”的可行性验证路径。整个过程不需要你懂编程,也不用买显卡,只要会打字、会上网,就能在几个小时内跑通全流程。 为什么选 SD 3.5?因为它不仅是目前开源图像生成模型中的“顶流”,还特别适合商业应用:支持更高分辨率、细节更精细、文字渲染能力更强,而且对提示词(prompt)的理解更加自然。更重要的是,

By Ne0inhk

Copilot集成安全风险曝光:90%团队忽略的4大隐患及应对策略

第一章:Copilot集成安全风险曝光:现状与挑战 GitHub Copilot 作为基于AI的代码辅助工具,已广泛集成于主流开发环境,显著提升编码效率。然而,其自动生成代码的能力也引入了新的安全边界问题。开发者在依赖建议代码时,往往未充分审查潜在漏洞或授权风险,导致敏感信息泄露、硬编码凭证甚至后门代码被引入生产系统。 典型安全风险场景 * 生成代码包含已知漏洞模式,如SQL注入或不安全的反序列化操作 * 建议代码引用过时或已被废弃的加密库函数 * 自动补全逻辑可能暴露企业内部API结构或认证机制 代码片段中的安全隐患示例 // Copilot 自动生成的 Node.js 路由处理函数 app.get('/user/:id', (req, res) => { const query = `SELECT * FROM users WHERE id = ${req.params.id}`; // 直接拼接参数,存在SQL注入风险 db.query(query, (err,

By Ne0inhk

把大模型塞进蓝牙耳机:1.46MB 的 Whisper-Lite 落地全记录

最近研学过程中发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击链接跳转到网站人工智能及编程语言学习教程。读者们可以通过里面的文章详细了解一下人工智能及其编程等教程和学习方法。下面开始对正文内容的介绍。 一、需求:耳机里“藏”一个语音转写模型 某 TWS 耳机代工厂要做「离线会议速记」: * 芯片:BES 2800,Cortex-M55 + ARM-Helium,SRAM 512KB,外挂 8MB Flash * 场景:长按触控 3 秒→实时转写 10 分钟→回手机 TXT 文件 * 指标:功耗 < 8mA(45mAh 电池续航 5h),WER ≤ 5%,模型体积 ≤ 1.5MB,首包延迟 <

By Ne0inhk