ArMoto 并不是一个像扫地机器人那样的独立产品,而是一个基于 Arduino 的开源机器人套件,这意味着它的核心是一个“大脑”(Arduino 控制板),你需要通过编程来控制它。

使用 ArMoto 的过程可以分为以下几个核心步骤:
第一步:准备工作(硬件清单)
在使用之前,你需要确保拥有以下所有组件:
-
ArMoto 机器人套件:这通常包括:
- 底盘:带有轮子的机械结构。
- 电机:通常是两个直流减速电机,用于驱动轮子。
- 电机驱动模块:最常见的是 L298N 模块,Arduino 的引脚无法直接驱动电机,需要这个模块来放大电流。
- 主控板:通常是 Arduino UNO R3 或兼容板。
- 车轮和螺丝:用于组装底盘。
- 万向轮/前轮:作为支撑。
- 电池盒:为机器人提供电源(通常是 4-6 节 AA 电池或 9V 电池)。
- 其他结构件:如螺丝柱、螺母等。
-
软件环境:
(图片来源网络,侵删)- Arduino IDE:这是用来编写和上传代码到 Arduino 板的官方软件,你需要先下载并安装它。
第二步:组装机器人
这是最基础的物理步骤,你需要按照套件说明书,将底盘、电机、车轮、万向轮等部件组装起来,通常这个过程很简单,只需要用螺丝和螺母将各个部分固定好。
关键点:
- 确保两个电机牢固地安装在底盘上。
- 车轮要安装到位,不会松动。
- 安装好 Arduino 主控板和电机驱动模块。
第三步:连接电路(硬件接线)
这是最关键的一步,连接错误可能会导致机器人无法工作甚至损坏元件,以下是标准的接线方法:
电源连接

- 电池盒 -> Arduino:将电池盒的正负极连接到 Arduino 的
VIN和GND引脚上,这将为 Arduino 供电。 - 电池盒 -> L298N 模块:将电池盒的正负极也连接到 L298N 模块的电源输入端(通常标有
+12V和GND)。注意: L298N 模块需要一个独立的电源来驱动电机,不能直接从 Arduino 的 5V 引脚取电,因为电流不够大。
电机连接
- 将左边电机的两根线连接到 L298N 模块的
OUT1和OUT2端口。 - 将右边电机的两根线连接到 L298N 模块的
OUT3和OUT4端口。
控制信号连接(Arduino -> L298N) 你需要将 Arduino 的数字引脚连接到 L298N 模块的控制端,以控制电机的转动方向和速度,这里我们使用最简单的方式(不使用 PWM 调速,只控制方向):
- 左电机控制:
- Arduino
D7引脚 -> L298NIN1 - Arduino
D8引脚 -> L298NIN2
- Arduino
- 右电机控制:
- Arduino
D9引脚 -> L298NIN3 - Arduino
D10引脚 -> L298NIN4
- Arduino
共地连接
- 非常重要! 将 Arduino 的
GND引脚和 L298N 模块的GND引脚连接起来,这是为了让两个模块的“地”参考点一致,确保控制信号正常工作。
接线总结图:
[电池盒] (+) -> [Arduino VIN] & [L298N +12V]
[电池盒] (-) -> [Arduino GND] & [L298N GND] <-- 共地
[左电机] -> [L298N OUT1 & OUT2]
[右电机] -> [L298N OUT3 & OUT4]
[Arduino D7] -> [L298N IN1]
[Arduino D8] -> [L298N IN2]
[Arduino D9] -> [L298N IN3]
[Arduino D10] -> [L298N IN4]
第四步:编写和上传代码
我们需要让 ArMoto 动起来。
安装 Arduino IDE
- 从 Arduino 官网 下载并安装适合你操作系统的 IDE。
连接 Arduino 到电脑
- 用 USB 线将 ArMoto 上的 Arduino 板连接到你的电脑。
选择开发板和端口
- 打开 Arduino IDE,进入
工具->开发板,选择Arduino UNO。 - 进入
工具->端口,选择你的 Arduino 所在的 COM 端口(Windows)或/dev/tty.usbserial...(Mac/Linux)。
编写示例代码
- 将下面的代码复制到 Arduino IDE 中。
// 定义控制引脚
const int leftMotorPin1 = 7; // IN1 on L298N
const int leftMotorPin2 = 8; // IN2 on L298N
const int rightMotorPin1 = 9; // IN3 on L298N
const int rightMotorPin2 = 10;// IN4 on L298N
void setup() {
// 设置所有电机控制引脚为输出模式
pinMode(leftMotorPin1, OUTPUT);
pinMode(leftMotorPin2, OUTPUT);
pinMode(rightMotorPin1, OUTPUT);
pinMode(rightMotorPin2, OUTPUT);
}
void loop() {
// 1. 前进
moveForward();
delay(2000); // 前进2秒
// 2. 停止
stopRobot();
delay(1000); // 停止1秒
// 3. 后退
moveBackward();
delay(2000); // 后退2秒
// 4. 停止
stopRobot();
delay(1000); // 停止1秒
// 5. 左转
turnLeft();
delay(1000); // 左转1秒
// 6. 停止
stopRobot();
delay(1000); // 停止1秒
// 7. 右转
turnRight();
delay(1000); // 右转1秒
// 8. 停止
stopRobot();
delay(1000); // 停止1秒
}
// --- 定义运动函数 ---
// 前进
void moveForward() {
digitalWrite(leftMotorPin1, HIGH);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, HIGH);
digitalWrite(rightMotorPin2, LOW);
}
// 后退
void moveBackward() {
digitalWrite(leftMotorPin1, LOW);
digitalWrite(leftMotorPin2, HIGH);
digitalWrite(rightMotorPin1, LOW);
digitalWrite(rightMotorPin2, HIGH);
}
// 左转(左轮后退,右轮前进)
void turnLeft() {
digitalWrite(leftMotorPin1, LOW);
digitalWrite(leftMotorPin2, HIGH);
digitalWrite(rightMotorPin1, HIGH);
digitalWrite(rightMotorPin2, LOW);
}
// 右转(左轮前进,右轮后退)
void turnRight() {
digitalWrite(leftMotorPin1, HIGH);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, LOW);
digitalWrite(rightMotorPin2, HIGH);
}
// 停止
void stopRobot() {
digitalWrite(leftMotorPin1, LOW);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, LOW);
digitalWrite(rightMotorPin2, LOW);
}
上传代码
- 点击 Arduino IDE 左上角的“上传”按钮(箭头图标),等待上传完成,你会看到“上传成功”的提示。
第五步:运行和测试
上传成功后,断开 USB 线,接上电池盒,机器人就会开始执行你编写的程序:前进、停止、后退、停止、左转、停止、右转、停止。
重要提示:
- 安全第一:第一次测试时,最好将机器人架空(比如放在两个盒子之间),以防它冲出桌子或撞到障碍物。
- 检查方向:如果机器人前进的方向和你预期的相反(比如你让它前进,它却后退),只需要交换对应电机的两根线即可。
进阶玩法:添加传感器
ArMoto 的真正乐趣在于扩展,你可以给它添加各种传感器,让它变得更“智能”。
-
超声波传感器:用于测距,实现自动避障。
- 连接:
VCC接 Arduino 5V,GND接 GND,Echo和Trig接任意两个数字引脚。 - 编程:使用
NewPing等库来读取距离,然后编写逻辑,当检测到障碍物时,执行转向或后退动作。
- 连接:
-
红外巡线传感器:用于沿黑线行走(循线)。
- 连接:
VCC和GND接电源,OUT接数字引脚。 - 编程:读取传感器的数字信号(0 或 1),判断是否在黑线上,然后通过差速转弯来修正路线。
- 连接:
-
蓝牙模块:实现手机遥控。
- 连接:
VCC,GND,TXD,RXD分别接到 Arduino 的 5V, GND 和某个软件串口(如D0,D1或D2,D3)。 - 编程:使用
SoftwareSerial库来接收手机蓝牙APP发来的指令(如 'F' 前进,'B' 后退等),然后控制电机。
- 连接:
使用 ArMoto 机器人的核心流程是:组装 -> 接线 -> 编程 -> 上传 -> 运行。
它不仅仅是一个玩具,更是一个绝佳的学习平台,可以帮助你入门:
- 电子电路:了解面包板、电阻、电容、传感器等基本元件。
- C/C++ 编程:学习变量、函数、循环、条件判断等编程概念。
- 嵌入式系统:理解单片机如何与物理世界交互。
通过不断地添加新功能,你可以从一个简单的遥控车,一步步把它改造成一个能自动避障、能循线、能执行复杂任务的智能机器人,祝你玩得开心!