Arduino 蓝牙机器人小车





准备工作:
材料:
- Arduino Uno R3 开发板:该项目使用 Freenove UNO R3,但任何兼容 Arduino 的开发板都可以。Arduino 包含项目代码,从蓝牙模块读取(输入)蓝牙信号并将信号写入(输出)电机屏蔽。
- L293D 电机驱动屏蔽:该项目使用 Gikfun 电机驱动屏蔽扩展板 L293D 来驱动 Arduino UNO。电机屏蔽从 Arduino 板读取(输入)信号并驱动(输出)旋转车轮的伺服器。
- HC-05 蓝牙无线:该项目使用 DSD-Tech HC-05 蓝牙串行直通模块。蓝牙模块从 Android 应用程序接收(输入)蓝牙信号并将信号发送(输出)到 Arduino 板。
- 机器人汽车套件:该套件包含底盘、电机、轮胎/车轮、电线、螺丝、螺母等。基本套件包括底盘(可能是 2 个)、4 个电机、4 个车轮以及每个电机的螺母、螺栓、螺丝和 2 根电线。
- 电池:两节电池:一节 9V 电池用于 Arduino 开发板,一节 4 AA 电池用于 Motor Shield。一节 9V 电池驱动 Arduino,一节 4 AA 电池驱动 Motor Shield。
- Android 应用程序:Android 蓝牙遥控控制器应用程序向机器人汽车发送蓝牙信号。该应用程序控制机器人汽车的运动(前进、后退、左转、右转)。
工具:
项目概述

机器人汽车底盘包含底部框架,驱动轮胎/车轮的电机安装在其上。电机连接到通电的电机驱动屏蔽,该屏蔽连接到 Arduino UNO 板(背负式)。蓝牙接收器模块也连接到 Arduino 板。Arduino 被编程为从 Android 应用程序接收蓝牙信号,并打开/关闭电机,从而旋转车轮并移动汽车。
方法:获取、准备、组装!

- 获取组件:提前收集所有组件以完成项目。
- 准备模块:将连接器连接到所有连接在一起的模块。
- 组装项目:按顺序组装以确保连接顺利且容易。
组件

- Arduino Uno R3 开发板:该项目使用 Freenove UNO R3,但任何兼容 Arduino 的开发板都可以。Arduino 包含项目代码,从蓝牙模块读取(输入)蓝牙信号并将信号写入(输出)电机屏蔽。
- L293D 电机驱动屏蔽:该项目使用 Gikfun 电机驱动屏蔽扩展板 L293D 来驱动 Arduino UNO。电机屏蔽从 Arduino 板读取(输入)信号并驱动(输出)旋转车轮的伺服器。
- HC-05 蓝牙无线:该项目使用 DSD-Tech HC-05 蓝牙串行直通模块。蓝牙模块从 Android 应用程序接收(输入)蓝牙信号并将信号发送(输出)到 Arduino 板。
- 机器人汽车套件:该套件包含底盘、电机、轮胎/车轮、电线、螺丝、螺母等。基本套件包括底盘(可能是 2 个)、4 个电机、4 个车轮以及每个电机的螺母、螺栓、螺丝和 2 根电线。
- 电池:两节电池:一节 9V 电池用于 Arduino 开发板,一节 4 AA 电池用于 Motor Shield。一节 9V 电池驱动 Arduino,一节 4 AA 电池驱动 Motor Shield。
- Android 应用程序:Android 蓝牙遥控控制器应用程序向机器人汽车发送蓝牙信号。该应用程序控制机器人汽车的运动(前进、后退、左转、右转)。
准备工作:概述

机器人汽车通常以基本套件(底盘、电机、车轮、螺母、螺栓、电线,但没有电路板)或完整套件(带有 Arduino、电机护罩、蓝牙、电池、组装说明和可选的其他传感器)的形式出售(eBay、亚马逊、Banggood 等)。只要您拥有所有组件,组装过程就是一样的。
电机线

每个电机需要连接 2 根电线:地线和电压。为了保持一致性,请将正电压线(红色)连接到顶部电机连接器(通过焊接或挂钩),将负地线(黑色、蓝色或任何其他颜色)连接到底部电机连接器。
在组装之前,每个电机都要单独进行此操作。如果在组装之后,焊接底部电线连接可能有点棘手(但可行!)。还建议垂直焊接电线(指向上方,而不是侧面),从而提供更长的电线,使另一端更容易连接到电机护罩。
蓝牙线

HC-05蓝牙模块需要4根线:
RX和TX:母头(来自 HC-05 侧)到公头(电机屏蔽 TX 和 RX 接头针)。
VCC和GND:母头(来自 HC-05 侧)到母头(电机屏蔽伺服器 + 和 - 引脚)。
电机屏蔽线

电机护罩将位于 Arduino 板的顶部(搭载),因此其 GPIO(引脚)将与其下方的 Arduino 板相对应。我们不能或不想直接焊接 Arduino 板引脚。
因此,我们需要将 2 针接头焊接到 Motor Shield 上的 GPIO 0 和 1(因此分别连接到下面的 Arduino RX 和 TX 引脚)。这些稍后将连接到 HC-05 蓝牙 TX 和 RX 引脚(因此,按相反顺序:蓝牙 RX 连接到 Arduino TX,蓝牙 TX 连接到 Arduino RX)。
Arduino逻辑代码

Arduino 需要读取输入信号(蓝牙)并向电机写入输出命令以移动车轮。可以将代码从下面的框复制粘贴到 Mac/PC 上的 Arduino IDE 中,然后上传到 Arduino 板。
代码需要 AFMotor 库 (AF = Ada Fruit)。这是一个标准库,可以直接从 Arduino IDE 安装(无需外部链接)。导航 Sketch > Include Library > Manage Libraries,然后从 Adafruit Motor Shield 搜索。为此项目安装版本 1.0.1(不是 2.0)。然后将以下代码复制/粘贴到新的 IDE 项目文件中,验证然后上传。上传成功后,断开 Arduino 板(因为它会将代码保留在其内存中)。Arduino 现在可以作为独立设备使用了。
Android Arduino蓝牙遥控车

在 Android 手机上,导航至 Google Play 商店并下载Arduino Bluetooth RC Car应用程序。一旦连接到 Arduino/Motor Shield,该应用程序稍后将与 HC-05 蓝牙模块配对。该应用程序将允许您控制汽车的移动。
电池




您将需要 2 个电池单元:
带有电池扣的9V电池可为 Arduino 开发板供电。
4xAA电池盒(或机器人汽车套件所需的任何东西)为电机护罩供电。可能需要压接电线以确保它们牢固地安装在电机护罩插针内。
组装、机器人汽车套件




组装顺序对于确保项目顺利完成非常重要。因此,
1.从底盘开始(电机、车轮)
2. 将 Motor Shield 连接到 Arduino 开发板。
3. 将电机连接至电机护罩
4. 将 HC-05 蓝牙模块连接到 Motor Shield
该套件很可能会有组装说明,但它们通常遵循以下步骤:
1. 确定汽车的前部和后部(在照片中,从观看者的角度来看,前部朝上,如同向前行驶)。
2. 将电机标记为左前、左后和右前、右后。这是为了方便连接到电机护罩左侧和右侧。
3. 依次组装每个电机,注意如图所示的位置(前电机朝后,后电机朝前)。对于每个电机:
3.1 将电机放置在底盘上
3.2 用两侧的支架固定
3.3 添加螺钉和螺母并紧固以将电机固定到位
3.4 添加速度编码器(黑色/灰色圆圈)
3.5 将车轮安装到电机外侧
Arduino和电机护罩

电机屏蔽将搭载在 Arduino 板上。将电机屏蔽放在 Arduino 的顶部,确保引脚正确对齐:电机屏蔽 0 RX 和 1 TX 引脚位于 Arduino 0 RX 和 1 TX 引脚的顶部。
轻轻向下推,直到 2 块电路板牢固对齐并连接。完成后,电机护罩左侧将位于 Arduino 9V 电池输入的顶部。
在底盘中间固定一个小的空盒子,并将 Arduino/Motor Shield 组合放在上面(略高于电机)。
确保蓝牙 RX/TX 朝向汽车前部,Arduino 9V 电池输入位于汽车左侧。电机屏蔽 M1 和 M2 引脚现在位于汽车左侧,M3 和 M4 引脚现在位于汽车右侧。
电机屏蔽接线

电机护罩有 4 个电机连接器:左侧为 M1、M2,右侧为 M3、M4。电机有一根负黄线和一根正红线(见图)。每个 M 的第一个引脚朝外(例如 M1/M4 的第一个引脚朝前,M2/M3 的第一个引脚朝后)。
M1连接左前电机:第 1 个引脚 -ve,第 2 个引脚 +ve
M2连接左后电机:第 1 针 -ve,第 2 针 +ve
M3连接右后电机:第 1 针 -ve,第 2 针 +ve
M4连接右前电机:第 1 针 -ve,第 2 针 +ve
正确的 Mx 连接对于确保车轮一起以正确的方向旋转非常重要。例如,当汽车要向前行驶时,所有车轮都应逆时针旋转,而向后行驶则相反。
HC-05蓝牙接线

HC-05 蓝牙模块需要 4 根线:RX 和 TX 连接到 Arduino/Motor Shield TX 和 RX,GND 和 VCC 连接到 Motor Shield Servos - 和 + 引脚。在 Motor Shield 的左前方有 2 个簇,每个簇有 3 个引脚;需要连接的是第 2 个簇(靠近 USB 端口),最左边的引脚为 -ve,最右边的引脚为 +ve)。
蓝牙 RX(黑色)-> 电机屏蔽 2 针接头 1(TX)
蓝牙 TX(红色)-> 电机屏蔽 2 针接头 0(RX)
蓝牙 GND(棕色)-> - 伺服器(最左边的针脚)
蓝牙 VCC(红色)-> + 伺服器(最右边的引脚)
电池接线

将9V 电池固定(使用 Blu Tack、双面胶带或胶水)到汽车前部。将电池卡扣连接到 Arduino 9V 电池输入插座(在汽车左侧)。电机屏蔽绿灯将亮起,蓝牙模块(通常为红色)灯将开始闪烁(表示准备配对)。
将4 节 AA 电池组 固定在汽车后部。将电池组的负极(黑色)和正极(红色)电线连接到 Motor Shield 电池针脚(2 个蓝色针脚朝向汽车后部)。标有 GND 的右侧针脚连接到黑线,另一个左侧针脚连接到红线。
测试和驾驶

【视频地址】https://www.youtube.com/embed/9EmSlKW5KyI?feature=oembed&autoplay=1
【工作原理】
蓝牙遥控控制器应用程序向汽车蓝牙模块 HC-05 发送以下命令(以字符形式):
“ F ”前进
‘ B ’ 向后
“ L ” 左转
“ R ” 右转
' S ' 停车
请参阅应用程序设置,了解可添加到 Arduino 代码的更多命令。
Arduino 板逻辑使用 RX/TX 连接读取蓝牙 HC-05 输入(在 loop() 函数中连续读取),并指示 Motor Shield 移动电机/车轮以执行命令。例如,要左转,Arduino 会使电机 M1 和 M2 向前移动,使电机 M3 和 M4 向后移动。
【测试】
汽车现在已准备就绪!但要让它真正移动,我们需要将其蓝牙模块与 Android 应用程序配对。确保蓝牙模块灯闪烁,表示可搜索并准备配对。
1. 导航至 Android 手机设置 > 蓝牙并搜索汽车蓝牙模块。在我们的项目中,模块是DSD TECH HC-05,密码/pin 通常为1234(如果不是,则为 0000)。将 Android 手机与 HC-05 配对。
2. 启动蓝牙遥控车应用程序,导航至“设置”(齿轮图标菜单),然后从“选项菜单”中选择“连接到汽车”。如果一切正常,则连接已建立(蓝牙闪烁停止),应用程序屏幕左上角的大红色圆圈将变为绿色。
3. 将汽车底盘放在桌子上一个细长的盒子上,这样盒子就位于底盘中间,车轮可以自由旋转。点击应用程序屏幕上的“前进”、“后退”、“向右”和“向左”按钮来测试连接。观看视频以了解视觉效果。
4. 如果所有车轮都正确旋转(例如逆时针前进),则将汽车放在光滑的表面上(大理石、乙烯基、木材,不是地毯),然后驾驶汽车。尽情享受吧!











