20、Raspberry Pi 配置与机器人组装全攻略

Raspberry Pi 配置与机器人组装全攻略

1. 树莓派(Raspberry Pi)配置

树莓派官方文档(https://raspberrypi.com/documentation/)是使用树莓派时的优质资源,以下是一些值得参考的部分:
- 入门指南 :此页面包含安装操作系统和使用树莓派镜像写入工具的详细信息。
- 配置说明 :可找到使用 raspi-config 工具的详细内容。
- 远程访问 :涵盖通过 SSH 连接树莓派、传输文件以及使用 VNC 软件远程访问桌面的方法。

1.1 安装树莓派操作系统

按照以下步骤安装树莓派操作系统:
1. 访问 http://mng.bz/JdN0。
2. 点击“Raspberry Pi OS”链接,下载“Raspberry Pi OS with desktop”镜像,此操作将下载最新版本。参考代码是在 2022 - 04 - 04 32 位版本的树莓派操作系统上测试的。桌面镜像自带桌面环境,在为机器人项目创建图形应用时会很有用。
3. 点击“Raspberry Pi Imager”链接,按照说明下载并安装镜像写入工具。
4. 树莓派 4 可以从 microSD 卡或 USB 闪存驱动器安装和启动,USB 闪存驱动器性能更佳,是推荐选项。
5. 使用镜像写入工具将下载的镜像写入安装介质(microSD 卡/USB 闪存驱动器)。
6. 树莓派通过安装程序启动后,在欢迎界面点击“下一步”。
7. 设置国家,将用户名设置为 robo ,然后继续完成配置步骤。
8. 重启后,使用树莓派配置工具进一步配置。
9. 使用该工具将主机名设置为 robopi
10. 接着,使用配置工具启用 SSH、VNC 和 I2C 接口。

以下是操作流程的 mermaid 流程图:

graph TD;
    A[访问 http://mng.bz/JdN0] --> B[下载 Raspberry Pi OS 镜像];
    B --> C[下载并安装 Raspberry Pi Imager];
    C --> D[选择安装介质并写入镜像];
    D --> E[启动树莓派并配置];
    E --> F[重启并进一步配置];
    F --> G[设置主机名和启用接口];
1.2 连接网络与测试

完成上述配置后,还需要进行以下操作:
1. 重启树莓派使更改生效。
2. 通过将网络电缆连接到以太网端口或加入 Wi - fi 网络,将树莓派连接到网络。
3. 在终端中运行 hostname -I 获取机器的 IP 地址。
4. 从网络中的另一台计算机,使用 IP 地址以用户 robo 通过 SSH 连接到树莓派进行测试。现在可以使用 SSH 从网络中的任何计算机在树莓派上运行命令和执行 Python 脚本。
5. 也可以使用主机名 robopi 连接到树莓派,需要在客户端机器的 hosts 文件中添加 robopi 主机名及其关联的 IP 地址。可参考 How - To Geek 网站(http://mng.bz/5owz)的指南编辑不同系统的 hosts 文件。
6. 可以使用 sftp 命令或 FileZilla 应用程序在网络上与树莓派传输文件。如果计算机运行的是 Linux, sshfs 是挂载和处理树莓派上远程文件的好方法,就像处理本地文件一样。

2. 配置 Adafruit CRICKIT HAT

完成树莓派的主要配置步骤后,接下来配置 Adafruit CRICKIT HAT。

2.1 硬件连接与固件更新

按照以下步骤完成 Adafruit CRICKIT HAT 的硬件和软件配置:
1. Adafruit 网站(http://mng.bz/wj5q)有关于设置 CRICKIT HAT 和解决问题的详细指南。
2. 首次使用 CRICKIT HAT 前,最好更新其固件,在 Adafruit 学习指南中,按照“Update Your CRICKIT”部分的步骤操作。
3. 关闭树莓派,将 CRICKIT 附带的头座连接到树莓派 GPIO 连接器,然后连接 CRICKIT HAT。
4. 将电源电缆插入 CRICKIT DC 插孔,打开 CRICKIT 电源开关,检查 CRICKIT LED 是否为绿色,绿色表示电源供应正常。
5. 打开树莓派电源,打开终端或通过 SSH 连接到它。
6. 运行 i2cdetect 命令,检查输出中是否出现 i2c 地址 0x49

$ i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 
2.2 软件更新与环境配置

完成硬件连接后,还需要进行软件更新和环境配置:
1. 运行以下命令更新软件包:

$ sudo apt update
$ sudo apt upgrade
$ sudo apt autoremove
  1. 运行以下命令重启机器:
$ sudo reboot
  1. 重启后,重新连接到机器,运行以下命令创建 Python 虚拟环境并在该环境中安装 Adafruit CRICKIT 库:
$ python3 -m venv ~/pyenv
$ ~/pyenv/bin/pip install adafruit-circuitpython-crickit
  1. 运行以下命令添加激活 Bash 别名,以便在需要时激活 Python 虚拟环境,运行命令后,打开新终端使新别名生效:
$ echo "alias activate='source ~/pyenv/bin/activate'" >> ~/.bashrc
  1. 运行以下命令在虚拟环境中启动 Python 交互式会话:
$ ~/pyenv/bin/python
  1. 在交互式会话中运行以下 Python 代码,确认板载 Neopixel 变为红色以完成 Adafruit CRICKIT HAT 的配置:
>>> from adafruit_crickit import crickit
>>> crickit.onboard_pixel.fill(0xFF0000)
3. 移动机器人组装

移动机器人配置可创建一个带有车载电源、能通过无线连接控制的机器人。

3.1 树莓派与 CRICKIT HAT 准备

按照以下步骤构建机器人:
1. 参考 Adafruit 网站(http://mng.bz/qj0w)的指南,将 CRICKIT HAT 连接到树莓派。
2. 按照 Pibow 指南(http://mng.bz/7v59)组装并将树莓派 4 放入 Pibow 外壳中。
3. 如果购买了可选的尼龙支撑套件,可以在 CRICKIT HAT 没有支撑的两个角各放置一个支撑,使 HAT 更稳固地安装在树莓派上。
4. 最后,将扩展跳线连接到电机连接 1 和 2。

3.2 电源银行准备

接下来准备电源银行:
1. 不同电源银行的尺寸、按钮布局和端口位置会有所不同,但基本步骤相同,可能需要调整电源银行的放置位置。
2. 以 Anker PowerCore Select 10000 电源银行为例,在其顶部有按钮和充电指示灯,在电源银行底部放置 Velcro 粘性方块,这些方块有助于将多余的电缆固定在电源银行下方,使电缆管理更整洁。

3.3 电源电缆连接

连接电源电缆到电源银行:
1. 将磁性 USB 电缆连接到电源银行的一个电源输出端口,该电缆用于为树莓派供电,不使用机器人时可断开磁性连接器以减少电源银行的电量消耗。
2. 将 USB 转桶形插孔电缆插入电源银行的另一个输出端口,该电缆为 CRICKIT HAT 供电,与树莓派不同,CRICKIT HAT 板上有电源开关,不使用时无需拔下插头。
3. 将磁头连接到电源银行的电源输入端口,方便将电源银行连接到电源进行充电。

3.4 机器人底盘组装与电源银行安装

组装机器人底盘并安装电源银行:
1. 按照机器人底盘套件指南(http://mng.bz/mjRr)组装所有部件。
2. 底盘套件很灵活,底盘上的板支持多种螺丝和黄铜支撑的排列方式,可以尝试不同排列以找到最适合电源银行尺寸的方式,将电源银行放置在底盘的中间层。
3. 尽量将电源银行放在中间层而不是顶层,因为它是机器人最重的部分,将重量放在较低层可降低机器人在加速或减速时倾倒的可能性。
4. 在底盘的顶层贴上粘性方块,四个粘性方块可使 Pibow 外壳与底盘牢固连接。

3.5 树莓派安装与最终连接

最后将树莓派安装到底盘并完成最终连接:
1. 将带有外壳的树莓派安装到底盘的顶层,树莓派的 USB 端口应朝向机器人的后部,这样可使 CRICKIT HAT 和树莓派的电源连接器更靠近电源银行的电源线。
2. 连接 CRICKIT HAT 和树莓派的电源线。
3. 最后,将跳线连接到直流电机,确保将右侧直流电机连接到电机连接 1,左侧直流电机连接到电机连接 2。

以下是移动机器人组装步骤的表格总结:
|步骤|操作内容|
|----|----|
|1|连接 CRICKIT HAT 到树莓派|
|2|将树莓派放入 Pibow 外壳|
|3|安装尼龙支撑(可选)|
|4|连接电机跳线|
|5|准备电源银行|
|6|连接电源电缆|
|7|组装底盘并安装电源银行|
|8|安装树莓派并连接电源线和电机|

4. 伺服相机机器人组装

伺服相机机器人配置可创建一个带有相机的机器人,相机通过两个伺服电机控制,一个用于平移,另一个用于倾斜。

4.1 云台套件准备

按照以下步骤构建机器人:
1. Adafruit Mini Pan - Tilt 套件是完全组装好的,该套件支持安装不同尺寸和样式的相机模块。参考 Adafruit 机器人组装指南(http://mng.bz/5oOB),了解移除侧标签的方法,这在下一步会用到。
2. 套件有两个由软尼龙制成的侧标签,可通过扭转或使用钢丝钳移除其中一个,只需要保留一个标签。
3. 在套件的相机安装点放置一个 Velcro 粘性方块。
4. 为了更好的稳定性,将套件的底座固定在一个坚固的表面上,可以剪下一块纸板,使用胶水或双面泡沫胶带将套件固定在纸板上。

4.2 相机准备

准备相机:
1. 将树莓派相机模块放入 Adafruit 相机外壳中。
2. 相机外壳非常适合安装到套件上,因为相机两侧的插槽与套件的侧标签相匹配。
3. 在相机外壳的背面放置一个 Velcro 粘性方块。

4.3 相机与云台套件连接

将相机外壳连接到云台套件:
1. 使用 Velcro 方块可以根据需要轻松安装和拆卸相机。
2. 现在将相机外壳连接到云台套件,确保相机电缆在底部,这样相机拍摄的图像将是正立的。
3. 云台套件的侧标签将滑入相机外壳的插槽中。

4.4 连接到树莓派

最后将云台套件连接到树莓派:
1. 参考树莓派相机模块的官方文档(http://mng.bz/6nYo),了解如何将相机电缆连接到树莓派。
2. CRICKIT HAT 有一个相机电缆开口,将相机电缆穿过 CRICKIT HAT 并连接到树莓派,然后将 CRICKIT HAT 连接到树莓派。
3. 将树莓派 4 放入 Pibow 外壳中。
4. 参考之前提到的 Adafruit 关于 CRICKIT HAT 的指南,了解如何将云台套件的伺服电机连接到 CRICKIT HAT,特别是 CircuitPython Servos 部分,连接时将伺服连接器一侧的深色电线(如黑色和棕色)朝向 CRICKIT 标志,浅色电线(如黄色、橙色或白色)朝向直流电源插孔。
5. 将下部伺服连接器连接到伺服连接 1,上部伺服连接器连接到伺服连接 2。
6. 像之前一样连接 CRICKIT HAT 和树莓派的电源线。

通过以上步骤,你可以完成树莓派的配置以及不同类型机器人的组装,开启你的机器人项目之旅。

Raspberry Pi 配置与机器人组装全攻略

5. 不同机器人配置总结

为了更清晰地对比移动机器人和伺服相机机器人的组装特点,我们可以通过以下表格进行总结:
|机器人类型|主要特点|关键组件连接|电源供应|
|----|----|----|----|
|移动机器人|可移动,通过电机驱动,有车载电源|CRICKIT HAT 连接树莓派,电机连接到 CRICKIT HAT|电源银行通过 USB 和转桶形插孔电缆分别为树莓派和 CRICKIT HAT 供电|
|伺服相机机器人|相机可通过伺服电机实现平移和倾斜|相机连接到云台套件,云台套件伺服电机连接到 CRICKIT HAT|与移动机器人类似,CRICKIT HAT 和树莓派由电源银行供电|

以下是两种机器人组装流程的 mermaid 流程图:

graph LR;
    classDef startend fill:#F5EBFF,stroke:#BE8FED,stroke-width:2px;
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
    A([开始]):::startend --> B(树莓派与 CRICKIT HAT 准备):::process;
    B --> C(电源银行准备):::process;
    C --> D(电源电缆连接):::process;
    D --> E(机器人底盘组装与电源银行安装):::process;
    E --> F(树莓派安装与最终连接):::process;
    F --> G([移动机器人完成]):::startend;
    H([开始]):::startend --> I(云台套件准备):::process;
    I --> J(相机准备):::process;
    J --> K(相机与云台套件连接):::process;
    K --> L(连接到树莓派):::process;
    L --> M([伺服相机机器人完成]):::startend;
6. Python 虚拟环境的使用与优势

在配置 Adafruit CRICKIT HAT 时,我们创建了 Python 虚拟环境。虚拟环境是一种将安装的 Python 包和环境与操作系统使用的系统 Python 环境分离的好方法。以下是关于 Python 虚拟环境的详细介绍:

6.1 虚拟环境的创建与激活

我们通过以下命令创建了 Python 虚拟环境:

$ python3 -m venv ~/pyenv

并使用以下命令在虚拟环境中安装了 Adafruit CRICKIT 库:

$ ~/pyenv/bin/pip install adafruit-circuitpython-crickit

为了方便激活虚拟环境,我们添加了一个 Bash 别名:

$ echo "alias activate='source ~/pyenv/bin/activate'" >> ~/.bashrc

运行上述命令后,打开新终端,就可以使用 activate 命令激活虚拟环境。激活后,终端提示符会显示虚拟环境的名称,例如:

(pyenv) robo@robopi:~ $ 
6.2 虚拟环境的优势

使用 Python 虚拟环境有以下几个重要优势:
- 环境隔离 :不同的项目可以有自己独立的 Python 环境,避免不同项目之间的包冲突。例如,一个项目需要使用某个库的特定版本,而另一个项目需要使用该库的不同版本,虚拟环境可以很好地解决这个问题。
- 可重现性 :可以随时重新创建项目的 Python 环境,而不会影响系统的 Python 安装。这对于项目的迁移和团队协作非常有用。
- 安全性 :在虚拟环境中安装和测试新的 Python 包不会影响系统的稳定性,即使出现问题,也只需要删除虚拟环境即可。

7. 常见问题与解决方法

在树莓派配置和机器人组装过程中,可能会遇到一些常见问题,以下是一些可能的问题及解决方法:

7.1 树莓派无法启动
  • 可能原因 :安装介质(microSD 卡或 USB 闪存驱动器)写入失败、电源供应不足、硬件连接错误。
  • 解决方法 :重新使用镜像写入工具写入镜像,检查电源适配器是否正常工作,确保所有硬件连接牢固。
7.2 无法通过 SSH 连接到树莓派
  • 可能原因 :SSH 服务未启用、网络连接问题、IP 地址获取错误。
  • 解决方法 :使用树莓派配置工具启用 SSH 服务,检查网络连接是否正常,重新获取树莓派的 IP 地址。
7.3 i2cdetect 命令未显示 0x49 地址
  • 可能原因 :CRICKIT HAT 硬件连接错误、固件未更新。
  • 解决方法 :检查 CRICKIT HAT 与树莓派的连接是否正确,按照 Adafruit 学习指南更新 CRICKIT HAT 的固件。
7.4 Python 虚拟环境激活失败
  • 可能原因 :Bash 别名未生效、虚拟环境创建失败。
  • 解决方法 :打开新终端使 Bash 别名生效,重新创建 Python 虚拟环境。
8. 总结与展望

通过本文,我们详细介绍了树莓派的配置过程,包括操作系统的安装、网络连接、Python 虚拟环境的创建以及 Adafruit CRICKIT HAT 的配置。同时,我们还介绍了移动机器人和伺服相机机器人的组装步骤。

在实际应用中,我们可以基于这些基础配置和组装,开发各种有趣的机器人项目。例如,使用移动机器人进行环境探索、使用伺服相机机器人进行监控和图像采集。未来,我们可以进一步扩展这些机器人的功能,如添加传感器、实现自主导航等。

希望本文能帮助你顺利完成树莓派的配置和机器人的组装,开启你的机器人开发之旅。如果你在过程中遇到任何问题,欢迎参考本文提供的常见问题解决方法,或者在相关技术社区寻求帮助。

内容概要:本文为《科技类企业品牌传播白皮书》,系统阐述了新闻媒体发稿、自媒体博主种草短视频矩阵覆盖三大核心传播策略,并结合“传声港”平台的AI工具资源整合能力,提出适配科技企业的品牌传播解决方案。文章深入分析科技企业传播的特殊性,包括受众圈层化、技术复杂性传播通俗性的矛盾、产品生命周期影响及2024-2025年传播新趋势,强调从“技术输出”向“价值引领”的战略升级。针对三种传播方式,分别从适用场景、操作流程、效果评估、成本效益、风险防控等方面提供详尽指南,并通过平台AI能力实现资源智能匹配、内容精准投放全链路效果追踪,最终构建“信任—种草—曝光”三位一体的传播闭环。; 适合人群:科技类企业品牌市场负责人、公关传播从业者、数字营销管理者及初创科技公司创始人;具备一定品牌传播基础,关注效果可量化AI工具赋能的专业人士。; 使用场景及目标:①制定科技产品全生命周期的品牌传播策略;②优化媒体发稿、KOL合作短视频运营的资源配置ROI;③借助AI平台实现传播内容的精准触达、效果监测风险控制;④提升品牌在技术可信度、用户信任市场影响力方面的综合竞争力。; 阅读建议:建议结合传声港平台的实际工具模块(如AI选媒、达人匹配、数据驾驶舱)进行对照阅读,重点关注各阶段的标准化流程数据指标基准,将理论策略平台实操深度融合,推动品牌传播从经验驱动转向数据工具双驱动。
【3D应力敏感度分析拓扑优化】【基于p-范数全局应力衡量的3D敏感度分析】基于伴随方法的有限元分析和p-范数应力敏感度分析(Matlab代码实现)内容概要:本文档围绕“基于p-范数全局应力衡量的3D应力敏感度分析”展开,介绍了一种结合伴随方法有限元分析的拓扑优化技术,重点实现了3D结构在应力约束下的敏感度分析。文中详细阐述了p-范数应力聚合方法的理论基础及其在避免局部应力过高的优势,并通过Matlab代码实现完整的数值仿真流程,涵盖有限元建模、灵敏度计算、优化迭代等关键环节,适用于复杂三维结构的轻量化高强度设计。; 适合人群:具备有限元分析基础、拓扑优化背景及Matlab编程能力的研究生、科研人员或从事结构设计的工程技术人员,尤其适合致力于力学仿真优化算法开发的专业人士; 使用场景及目标:①应用于航空航天、机械制造、土木工程等领域中对结构强度和重量有高要求的设计优化;②帮助读者深入理解伴随法在应力约束优化中的应用,掌握p-范数法处理全局应力约束的技术细节;③为科研复现、论文写作及工程项目提供可运行的Matlab代码参考算法验证平台; 阅读建议:建议读者结合文中提到的优化算法原理Matlab代码同步调试,重点关注敏感度推导有限元实现的衔接部分,同时推荐使用提供的网盘资源获取完整代码测试案例,以提升学习效率实践效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值