基本信息
文件名称:Arduino 系列:Arduino Nano (基于 ATmega328P)_(21).项目实战:机器人小车.docx
文件大小:31.13 KB
总页数:47 页
更新时间:2025-06-27
总字数:约2.13万字
文档摘要

PAGE1

PAGE1

项目实战:机器人小车

在这一章节中,我们将使用ArduinoNano(基于ATmega328P)来构建一个简单的机器人小车。这个项目将涉及硬件连接、编程控制以及基本的传感器使用。通过这个项目,你将学习如何使用ArduinoNano来控制电机、读取传感器数据,并实现基本的机器人小车功能。

1.硬件准备

1.1所需材料

在开始之前,确保你已经准备好以下材料:

ArduinoNano

L298N电机驱动模块

两个直流电机

轮子和车架

9V电池

电池盒

杜邦线

遥控器(可选)

超声波传感器(可选)

红外避障传感器(可选)

1.2硬件连接

1.2.1电机驱动模块连接

L298N电机驱动模块是控制直流电机的关键部件。它可以通过PWM信号来控制电机的速度和方向。以下是如何将L298N电机驱动模块与ArduinoNano连接的步骤:

电源连接:

将L298N的12V电源输入连接到9V电池的正极。

将L298N的GND连接到9V电池的负极。

将L298N的5V输出连接到ArduinoNano的5V引脚。

将L298N的GND连接到ArduinoNano的GND引脚。

信号线连接:

将L298N的IN1连接到ArduinoNano的D2引脚。

将L298N的IN2连接到ArduinoNano的D3引脚。

将L298N的IN3连接到ArduinoNano的D4引脚。

将L298N的IN4连接到ArduinoNano的D5引脚。

将L298N的ENA连接到ArduinoNano的D9引脚(用于控制电机A的速度)。

将L298N的ENB连接到ArduinoNano的D10引脚(用于控制电机B的速度)。

电机连接:

将电机A的正极连接到L298N的OUT1。

将电机A的负极连接到L298N的OUT2。

将电机B的正极连接到L298N的OUT3。

将电机B的负极连接到L298N的OUT4。

1.2.2传感器连接

如果你打算使用超声波传感器或红外避障传感器,可以按以下步骤连接:

超声波传感器连接:

将超声波传感器的VCC连接到ArduinoNano的5V引脚。

将超声波传感器的GND连接到ArduinoNano的GND引脚。

将超声波传感器的Trig引脚连接到ArduinoNano的D7引脚。

将超声波传感器的Echo引脚连接到ArduinoNano的D8引脚。

红外避障传感器连接:

将红外避障传感器的VCC连接到ArduinoNano的5V引脚。

将红外避障传感器的GND连接到ArduinoNano的GND引脚。

将红外避障传感器的OUT引脚连接到ArduinoNano的D6引脚。

2.基本控制

2.1控制电机

2.1.1基本电机控制

首先,我们需要编写一个基本的程序来控制电机的前进、后退、停止和转向。以下是一个简单的示例代码:

//定义电机驱动模块的引脚

constintIN1=2;

constintIN2=3;

constintIN3=4;

constintIN4=5;

constintENA=9;

constintENB=10;

voidsetup(){

//初始化电机驱动模块的引脚为输出

pinMode(IN1,OUTPUT);

pinMode(IN2,OUTPUT);

pinMode(IN3,OUTPUT);

pinMode(IN4,OUTPUT);

pinMode(ENA,OUTPUT);

pinMode(ENB,OUTPUT);

}

voidloop(){

//前进

forward();

delay(2000);

//停止

stop();

delay(1000);

//后退

backward();

delay(2000);

//停止

stop();

delay(1000);

//左转

left();

delay(2000);

//停止

stop();

delay(1000);

//右转

right();

delay(2000);

//停止

stop();