Rover
Rover 上手简单但可无限扩展。有从我记事起,关于机器人的事情就吸引了我的想象力。每当我开始新的创客冒险时,它们就是我的舒适区;一旦我通过“闪烁 LED”项目,在学习新平台或技术时,基本机器人总是我的项目。
因此,当我决定尝试 Windows IoT Core 时,这个项目自然是我的起点。 Rover 是一个简单的机器人,所以它是一个很好的起点,但它也可以无限扩展。
这个最初的 Rover 项目创建了一个小机器人,它可以自己在你的客厅里跑来跑去。它只是一直向前行驶,直到它检测到一个物体挡住了它的路径。在这一点上,它会转弯,直到找到一条清晰的路径,然后再次全速前进。 Rover 的核心是运行 Window 10 IoT Core 的 Raspberry Pi。两个电机通过双 H 桥电机控制器驱动,超声波距离传感器用于检测障碍物。 Rover 可以安装在任何滚动底盘上;我选择了一种可以从世界各地的各种零售商处轻松获得的低成本产品。
这是一个初学者项目,不需要任何高级软件或硬件技能。排除先决条件,如果您有任何 Arduino 或类似的微控制器经验,这个项目可以在 1.5 到 2 小时内完成。如果这是您的第一个电子项目,我建议您在开始之前花几个小时观看一些介绍 Arduino 和 Raspberry Pi 的视频。
我还有一些改进需要:
-
用于前灯的光敏电阻和 LED。
-
模拟数字 GPIO 引脚上的 PWM 信号以调整 Rover 速度的代码。
-
3D 打印车身以隐藏所有电子设备(也可能打印底盘)。
如果您尝试任何这些增强功能或您想出的任何其他增强功能,请发表评论并告诉我进展如何。
以下是我在整个项目过程中发现非常有用的一些在线资源:
-
Microsoft Windows Dev Center for IoT 有一个很好的分步指南,可帮助您开始使用 Windows 10 IoT Core。
-
关于在 Raspberry Pi 上使用超声波距离传感器的 ModMyPi 博文
先决条件
-
让 Windows 10 IoT Core 在您的 Raspberry Pi 2 上运行(此处有说明)。
-
在您的 PC 上运行 Windows 10 和 Visual Studio 2015(此处的说明)。
-
将一个简单的 Windows 应用部署到 Raspberry Pi 以确保一切正常(此处的说明)。
注意:完成先决条件需要 2-3 小时,但大部分时间无人看管。
你需要什么
零件:
- Raspberry Pi 2 和标准配件:5v 2A 电源、8GB class 10 micro SD 卡、外壳和网线
- 跳线——公/公和公/母
- 迷你面包板
- 机器人汽车底盘套件,包括底座、电机和车轮
- L298N 电机控制器
- HC-SR04 超声波距离传感器
- 1k 和 2.2k 欧姆电阻
- LM2577 DC-DC 可调升压电源转换器模块
- 3 x 1.5v AA 电池座
- 可选:4 x 1.5v AA 电池座,带开/关开关和盖子
- 可选:双面胶带或魔术贴或橡皮筋
工具:
-
万用表
-
#1 十字螺丝刀
-
小尖嘴钳
-
可选:剥线钳
-
可选:烙铁
- 可选:电工胶带
参考文献:
树莓派 2 引脚输出项目说明
图>
第一步:组装机器人底盘
时间 :30 分钟
工具 :#1 十字头螺丝刀;烙铁或电工胶带;可选剥线器
零件 :机器人底盘套件;可选 4 x AA 电池座,带开/关开关
市场上有多种机器人套件可用于该项目。您只需要一个带有两个从动轮和第三个用于平衡的套件。按照机器人底盘套件随附的说明组装底板、电机和轮子。我发现了一个 YouTube 视频,其中展示了一个与我使用的非常相似的机器人套件的组装。
如果您有烙铁,请继续将附带的电线焊接到电机上。如果您没有烙铁,您可以弯曲暴露的电线末端并将它们钩在电机端子上,然后将电工胶带缠绕在电机上的两个电线/端子连接处以固定它们。
提示:我将电机电线穿过底座上的孔向上布线,以防止它们被车轮卡住。
我没有使用机器人套件随附的 4 x AA 电池座,而是使用了另一个带有盖子和开/关开关的电池座。这是一个可选的替换,因为它根本不会改变机器人的性能或功能。我只是喜欢使用内置在电池座中的开关轻松关闭电机电源的便利性。由于我将 Raspberry Pi 直接安装在电池座的顶部,因此卸下电池以切断电机的电源会稍微困难一些。
电池盒可以通过多种方式安装到底座上。如果机器人底座上的孔与电池盒上的孔对齐,并且您有合适尺寸的螺丝,则可以将外壳拧到底座上。否则,请使用魔术贴、双面胶带或橡皮筋。我用橡皮筋,它们工作得很好。我把机箱安装在底座中间,让重心靠近底座的中点。
第 2 步:为 L298N 电机驱动器接线
时间 :20分钟
工具 :#1 十字头螺丝刀;小尖嘴钳
零件 :L298N电机驱动器;跳线
L298N 电机驱动器允许您使用少量 GPIO 引脚向前和向后旋转电机。首先,将您在上一步中固定到每个电机的两根电线连接到一对电机端子 - 从一个电机到“电机 A”的红黑线和从另一个电机到“电机 B”的红黑线.极性并不重要,如果您在部署代码时电机最终以错误的方式旋转,您可以随时切换电线的顺序。接下来,将 4 x AA 电池座的电线连接到电源端子 - 红色连接 +12v 输入,黑色连接接地; 4 节 AA 电池是电机的电源。还要确保从 L298N 上的接地端子连接到 Raspberry Pi 上的 GND GPIO 引脚(引脚 6)。
图>L298N 旨在支持电机和微控制器/计算机的单一电源。来自电源的全电压被路由到电机。同时,来自电源的电压被转换并调节为 5v 供微控制器/计算机使用,并通过电源块上的 +5v 端子供电。然而,通过过去的电机项目,我发现 L298N 的 5v 电源的功率变化太大——即,当电机停转时,5v 输出电压降很大(大到足以重置 Raspberry Pi)。此外,即使电机没有运行,我也仅测量到 5v 电源的 4.35v 输出。虽然实际上,这足以为 Raspberry Pi 供电(尽管 Raspberry Pi 的规范声明它低于所需的最低电压),但我不想冒险——在 Raspberry Pi 中追逐不一致的行为并不有趣特别是当它可能是由于非常小的电压变化时。因此,对于这个项目,我决定使用两种电源——一种用于电机,一种用于 Raspberry Pi。在此步骤的早些时候,我们将 4 节 AA 电池连接到 +12v 端子为电机供电。在下一步中,我们将连接 3 节 AA 电池为 Raspberry Pi 供电。
但是在我们设置 L298N 时,我们将继续将 Raspberry Pi 的电源连接到 L298N。首先,从 L298N 上移除物理跳线(照片中标记为“5v enable”)。这会将电机控制器逻辑设置为由 Raspberry Pi 通过电源块上的 +5v 端子供电,而不是从连接到 +12v 端子的电源供电。
图>重要提示:确保移除 L298N 上的物理 5v 启用跳线。如果不这样做,那么 L298N 将通过 +5v 端子输出可变的 4-5v,这可能会导致 Raspberry Pi 出现性能问题。
不幸的是,Raspberry Pi 只有两个 5v 引脚,我需要三个用于此项目。所以,我决定在我的面包板上创建一个电源轨——使用面包板上的互连行来分配来自 Raspberry Pi 的电源。要创建电源轨,请将母/公跳线从 Raspberry Pi 的引脚 2(5v 引脚)连接到面包板上任何未使用的行(我通常使用第一行或最后一行)。现在,可以通过插入面包板上的同一行,将来自 Raspberry Pi 的 5v 电压分配到整个项目中。使用公/公跳线将L298N上的+5v端子连接到电源轨。
所需的最后连接是将 Raspberry Pi 的 4 个 GPIO 引脚连接到 L298N 上的 4 个电机输入引脚。 IN1 和 IN2 控制电机 A 的方向,IN3 和 IN4 控制电机 B 的方向。将 L298N 上连接到两组电机使能引脚(ENA 和 ENB)的跳线留在原位。我的连接如下:
IN1 -> GPIO 27 / 物理 13
IN2 -> GPIO 22 / 物理 15
IN3 -> GPIO 5 / 物理 29
IN4 -> GPIO 6 / 物理 31
现在,您的连接应该与下图相符:
图>步骤 3:为 DC-DC 升压电源转换器接线
时间 :20分钟
工具 :万用表;烙铁或电工胶带;可选剥线器
零件 :DC-DC升压电源转换器; 3 x AA 电池座;跳线
如第 2 步所述,我决定为 Raspberry Pi 和电机使用单独的电源。不幸的是,Raspberry Pi 不支持广泛的输入电源——3 节 AA 电池不够,4 节太多——所以你需要在电池组和 Raspberry Pi 之间使用一些东西来输出稳定的 5v。为了尽可能减轻负载,我选择了 3 节 AA 电池而不是 4 节。 DC-DC 升压转换器可以从 3 节 AA 电池中获取 4.5v 输入,并且可以为 Raspberry Pi 输出 5v .
图>将 3 x AA 电池座的红线和黑线分别焊接到直流转换器上的 In+ 和 In- 焊盘,或者,对于那些没有烙铁的人,钩住电线的末端进入焊盘 - 照片中标有“电池供电” - 并将电工胶带缠绕在它们周围几次。将三块电池放入支架中,然后使用万用表测量从直流转换器输出的直流电压。使用转换器的内置电位器“拨入”5v 输出。
重要提示:在将 DC 转换器连接到 Raspberry Pi 之前,请确保将其输出设置为 5v。开箱即用,转换器的功率输出通常要高得多 - 高到足以损坏 Raspberry Pi。
最后,将直流转换器的输出连接到树莓派。使用剥线钳,我将两个公/母跳线的公端剪掉,剥掉一点绝缘层,给裸露的电线镀锡,然后将它们焊接到 Out+(红色跳线)和 Out-(黑色跳线)。或者,扭转暴露的线股,将它们钩在直流转换器的焊盘上,然后用胶带粘住。将跳线的母端连接到 Raspberry Pi 上的 5v 引脚(红线到引脚 4)和 GND 引脚(黑线到引脚 14)。
阅读更多详情:Rover
当前项目/帖子也可以使用:
- rover raspberry pi
制造工艺