第1章:开发环境搭建

各位同学,咱们正式开始。做机器人控制,第一件事不是写代码,而是把“家伙事儿”备齐。我见过太多人卡在环境配置上,一卡就是半天,心态直接崩了。今天咱们就把这事一次性搞定。

1.1 Python环境配置

Python版本怎么选?我个人习惯用Python 3.8或3.10。为什么?因为ROS2对这两个版本支持最好。你非要用3.12,也不是不行,但后面装某些库时会哭的。

注意:千万别用系统自带的Python!我刚开始做项目时图省事,直接用Ubuntu自带的Python 3.6,结果装啥啥报错。后来老老实实装了Miniconda,世界清净了。

安装步骤其实很简单:

  1. 去官网下载Miniconda(选Python 3.8版本)
  2. 一路默认安装,记得勾选“Add to PATH”
  3. 打开终端,输入 python --version 确认版本

嗯,这里要注意:如果你用的是Windows,建议装个WSL2。为什么?因为ROS2在Windows上跑起来太折腾了,我当年为了省事踩过不少坑。

1.2 ROS2安装与配置

ROS2版本我推荐用Humble Hawksbill。为什么是这个版本?说白了,它是最稳定的LTS版本,社区支持好,教程也多。你想想看,做项目最怕什么?最怕遇到问题搜不到答案。

安装命令其实就几行:

# 设置编码
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8

# 添加ROS2源
sudo apt install software-properties-common
sudo add-apt-repository universe

# 安装ROS2 Humble
sudo apt install ros-humble-desktop

# 配置环境变量
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc
小技巧:安装完成后,运行 ros2 run demo_nodes_cpp talker 测试一下。如果能看到“Hello World”输出,说明安装成功了。我曾经在客户现场演示时,ROS2突然启动不了,后来发现是环境变量没加载。所以每次开新终端,记得先 source 一下。

1.3 必要的Python库安装

做关节控制,离不开三个库:numpy、matplotlib、pyserial。它们各自负责什么?

库名 作用 我的经验
numpy 矩阵运算、数据处理 关节角度计算全靠它,速度比纯Python快100倍
matplotlib 数据可视化、曲线绘制 调试时看关节轨迹,一眼就能发现问题
pyserial 串口通信 和电机驱动器打交道,少不了它

安装命令很简单:

pip install numpy matplotlib pyserial
避坑指南:我曾经在树莓派上装numpy,结果编译了整整40分钟。后来发现用 pip install numpy --only-binary=:all: 可以跳过编译,直接下载预编译包。省下的时间够喝三杯咖啡了。

1.4 验证环境是否就绪

装完了别急着走,咱们写个小脚本验证一下:

import numpy as np
import matplotlib.pyplot as plt
import serial

print("numpy版本:", np.__version__)
print("一切就绪,可以开始干活了!")

如果没报错,恭喜你,环境搭好了。如果报错,别慌。99%的情况是路径问题或者版本冲突。我建议你重新开一个终端,再试一次。很多时候重启能解决80%的问题。

1.5 本章知识体系

下面这张图,帮你理清今天的内容:

开发环境搭建知识体系 Python环境 ROS2安装配置 Python库安装 Miniconda 3.8/3.10 WSL2 (Windows用户) Humble Hawksbill 环境变量配置 ros2 run 测试 numpy (矩阵运算) matplotlib (可视化) pyserial (串口通信) 验证:写个小脚本跑一遍

核心要点:

  • Python版本选3.8或3.10,别用最新的
  • ROS2用Humble,稳定压倒一切
  • 三个库必须装:numpy、matplotlib、pyserial
  • 装完一定要验证,别等到写代码才发现问题

好了,环境搭好了,咱们就可以开始真正的关节控制之旅了。记住,磨刀不误砍柴工,环境配好了,后面写代码会顺畅很多。

可可精品资料库