armoto机器人如何使用?

99ANYc3cd6 机器人 8

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

armoto机器人如何使用?-第1张图片-广州国自机器人
(图片来源网络,侵删)

使用 ArMoto 的过程可以分为以下几个核心步骤:


第一步:准备工作(硬件清单)

在使用之前,你需要确保拥有以下所有组件:

  1. ArMoto 机器人套件:这通常包括:

    • 底盘:带有轮子的机械结构。
    • 电机:通常是两个直流减速电机,用于驱动轮子。
    • 电机驱动模块:最常见的是 L298N 模块,Arduino 的引脚无法直接驱动电机,需要这个模块来放大电流。
    • 主控板:通常是 Arduino UNO R3 或兼容板。
    • 车轮和螺丝:用于组装底盘。
    • 万向轮/前轮:作为支撑。
    • 电池盒:为机器人提供电源(通常是 4-6 节 AA 电池或 9V 电池)。
    • 其他结构件:如螺丝柱、螺母等。
  2. 软件环境

    armoto机器人如何使用?-第2张图片-广州国自机器人
    (图片来源网络,侵删)
    • Arduino IDE:这是用来编写和上传代码到 Arduino 板的官方软件,你需要先下载并安装它。

第二步:组装机器人

这是最基础的物理步骤,你需要按照套件说明书,将底盘、电机、车轮、万向轮等部件组装起来,通常这个过程很简单,只需要用螺丝和螺母将各个部分固定好。

关键点

  • 确保两个电机牢固地安装在底盘上。
  • 车轮要安装到位,不会松动。
  • 安装好 Arduino 主控板和电机驱动模块。

第三步:连接电路(硬件接线)

这是最关键的一步,连接错误可能会导致机器人无法工作甚至损坏元件,以下是标准的接线方法:

电源连接

armoto机器人如何使用?-第3张图片-广州国自机器人
(图片来源网络,侵删)
  • 电池盒 -> Arduino:将电池盒的正负极连接到 Arduino 的 VINGND 引脚上,这将为 Arduino 供电。
  • 电池盒 -> L298N 模块:将电池盒的正负极也连接到 L298N 模块的电源输入端(通常标有 +12VGND)。注意: L298N 模块需要一个独立的电源来驱动电机,不能直接从 Arduino 的 5V 引脚取电,因为电流不够大。

电机连接

  • 左边电机的两根线连接到 L298N 模块的 OUT1OUT2 端口。
  • 右边电机的两根线连接到 L298N 模块的 OUT3OUT4 端口。

控制信号连接(Arduino -> L298N) 你需要将 Arduino 的数字引脚连接到 L298N 模块的控制端,以控制电机的转动方向和速度,这里我们使用最简单的方式(不使用 PWM 调速,只控制方向):

  • 左电机控制
    • Arduino D7 引脚 -> L298N IN1
    • Arduino D8 引脚 -> L298N IN2
  • 右电机控制
    • Arduino D9 引脚 -> L298N IN3
    • Arduino D10 引脚 -> L298N IN4

共地连接

  • 非常重要! 将 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 到电脑

  • 用 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, EchoTrig 接任意两个数字引脚。
    • 编程:使用 NewPing 等库来读取距离,然后编写逻辑,当检测到障碍物时,执行转向或后退动作。
  • 红外巡线传感器:用于沿黑线行走(循线)。

    • 连接VCCGND 接电源,OUT 接数字引脚。
    • 编程:读取传感器的数字信号(0 或 1),判断是否在黑线上,然后通过差速转弯来修正路线。
  • 蓝牙模块:实现手机遥控。

    • 连接VCC, GND, TXD, RXD 分别接到 Arduino 的 5V, GND 和某个软件串口(如 D0, D1D2, D3)。
    • 编程:使用 SoftwareSerial 库来接收手机蓝牙APP发来的指令(如 'F' 前进,'B' 后退等),然后控制电机。

使用 ArMoto 机器人的核心流程是:组装 -> 接线 -> 编程 -> 上传 -> 运行

它不仅仅是一个玩具,更是一个绝佳的学习平台,可以帮助你入门:

  • 电子电路:了解面包板、电阻、电容、传感器等基本元件。
  • C/C++ 编程:学习变量、函数、循环、条件判断等编程概念。
  • 嵌入式系统:理解单片机如何与物理世界交互。

通过不断地添加新功能,你可以从一个简单的遥控车,一步步把它改造成一个能自动避障、能循线、能执行复杂任务的智能机器人,祝你玩得开心!

抱歉,评论功能暂时关闭!