使用Arduino UNO和红外遥控器制作智能小车
创作时间:
作者:
@小白创作中心
使用Arduino UNO和红外遥控器制作智能小车
引用
CSDN
1.
https://blog.csdn.net/mftang/article/details/136053105
本文将详细介绍如何使用Arduino UNO和红外遥控器制作一台智能小车。通过L298N电机驱动模块和HX1838B红外接收模块,实现小车的前进、后退、左转和右转功能。文章包括详细的硬件连接、电路图和Arduino代码,适合对Arduino和机器人制作感兴趣的读者。
概述
本文主要介绍使用整体结构小车底盘,外加Arduino控制板和L298N控制板搭建一台智能遥控小车。以HX1838B作为控制信号接收模块,使用遥控器就能控制小车前进、后退、左转、右转功能。
硬件组成
1.1 电机驱动模块
电机驱动模块主要用于驱动板上的四个电机。使用L298N模块,其通过下图的真值表,控制四个电机的前进,后退,左转,右转。且该模块还有一个集成的5V电压模块:78M05e稳压电路,其可以输出5V的电压,用于对控制板供电。
L298N驱动模块接口定义如下:
驱动板引脚功能介绍:
引脚 | 功能 | 介绍 |
|---|---|---|
VCC | 外部电源供电引脚 | |
GND | 公共地 | 控制板和外部电源GND都接在这个引脚上 |
5V | 控制板电源引脚 | |
IN1,IN2 | 左侧两个电机控制线 | 连接控制板IO |
IN3,IN4 | 右侧两个电机控制线 | 连接控制板IO |
OU1,OUT2 | 左侧电机驱动接口 | 连接直流电机信号线 |
OU3,OUT4 | 右侧电机驱动接口 | 连接直流电机信号线 |
1.2 控制板
控制板使用Arduino UNO,其实现功能如下:
- 控制电机驱动板 IN1、IN2、IN3、IN4的电平状态
- 接收遥控器信号
控制板引脚功能定义如下:
控制板引脚 | 功能 | 介绍 |
|---|---|---|
AI-0 | 连接控制板: IN-1 | 左侧电机控制信号引脚 |
AI-1 | 连接控制板: IN-2 | 左侧电机控制信号引脚 |
AI-2 | 连接控制板: IN-3 | 右侧电机控制信号引脚 |
AI-3 | 连接控制板: IN-4 | 右侧电机控制信号引脚 |
D2 | 连接IR | HX1838B 信号接口 |
1.3 遥控器模块
红外信号接收信号,用于接收要控制发送的控制码,以实现小车前进,后退,左转,右转。Arduino UNO的公共库已经提供该模块的驱动,使用时仅需连接pin引脚。调用相应的接口函数,就可以实现解码功能。本系统使用IR模块为HX1838B。
机械结构
2.1 底盘介绍
在某宝上,可以采购现成的地盘,回来自己组装,价位一般在50RMB,包括4个车轮,测速码盘,直流电机。线路连接注意点:
- 左侧两个电机转动方向必须一致
- 右侧两个电机转动方向必须一致
2.2 转向功能实现
- 右转:右侧两个电机向后运行,左侧两个电机向前运动
- 左转:右侧两个电机向前运行,左侧两个电机向后运动
软件实现
使用Arduino IDE编写代码,主要实现红外解码和控制电机转动方向。详细代码如下:
// ATMEL ATMEGA8 & 168 / ARDUINO
//
// +-\/-+
// PC6 1| |28 PC5 (AI 5)
// (D 0) PD0 2| |27 PC4 (AI 4)
// (D 1) PD1 3| |26 PC3 (AI 3)
// (D 2) PD2 4| |25 PC2 (AI 2)
// PWM+ (D 3) PD3 5| |24 PC1 (AI 1)
// (D 4) PD4 6| |23 PC0 (AI 0)
// VCC 7| |22 GND
// GND 8| |21 AREF
// PB6 9| |20 AVCC
// PB7 10| |19 PB5 (D 13)
// PWM+ (D 5) PD5 11| |18 PB4 (D 12)
// PWM+ (D 6) PD6 12| |17 PB3 (D 11) PWM
// (D 7) PD7 13| |16 PB2 (D 10) PWM
// (D 8) PB0 14| |15 PB1 (D 9) PWM
// +----+
#include <Arduino.h>
#include <IRremote.hpp>
// 电机控制接口
#define PIN_A0 (14)
#define PIN_A1 (15)
#define PIN_A2 (16)
#define PIN_A3 (17)
static const uint8_t MA0 = PIN_A0;
static const uint8_t MA1 = PIN_A1;
static const uint8_t MA2 = PIN_A2;
static const uint8_t MA3 = PIN_A3;
// IR 信号接口
#define IR_RECEIVE_PIN 2 // To be compatible with interrupt example, pin 2 is chosen here.
void setup() {
// put your setup code here, to run once:
IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK);
Serial.begin(9600);
pinMode(MA0, OUTPUT);
pinMode(MA1, OUTPUT);
pinMode(MA2, OUTPUT);
pinMode(MA3, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if (IrReceiver.decode()) { // Grab an IR code
IrReceiver.printIRResultShort(&Serial);
// IrReceive
Serial.println(IrReceiver.lastDecodedCommand, HEX); // Print "old" raw data
switch( IrReceiver.lastDecodedCommand )
{
case 0x18: // 前进
digitalWrite(MA0, LOW);
digitalWrite(MA1, HIGH);
digitalWrite(MA2, LOW);
digitalWrite(MA3, HIGH);
break;
case 0x52: // 后退
digitalWrite(MA0, HIGH);
digitalWrite(MA1, LOW);
digitalWrite(MA2, HIGH);
digitalWrite(MA3, LOW);
break;
case 0x08: // 左转
digitalWrite(MA0, HIGH);
digitalWrite(MA1, LOW);
digitalWrite(MA2, LOW);
digitalWrite(MA3, HIGH);
break;
case 0x5a: // 右转
digitalWrite(MA0, LOW);
digitalWrite(MA1, HIGH);
digitalWrite(MA2, HIGH);
digitalWrite(MA3, LOW);
break;
case 0x45:
default:
digitalWrite(MA0, LOW);
digitalWrite(MA1, LOW);
digitalWrite(MA2, LOW);
digitalWrite(MA3, LOW);
break;
}
}
IrReceiver.resume(); // Prepare for the next value
}
运行测试
4.1 红外解码测试
红外解码测试:
- 地址位:
- 数据位:
- 数据码信息,控制板能准确解析遥控器的编码信息:
4.2 电机运行测试
遥控器按键和小车运行方向关系:
通过按遥控器按键,可以自由控制小车运行方向:
现场测试图片:
热门推荐
孕早期干呕指南:5种情况需就医,正常范围这样判断
孕吐是身体在“报喜”?一文读懂孕吐真相
春节健康防护指南:防疫、饮食、出行全方位指导
健康过大年:饮食运动睡眠全方位指导
出生医学证明补办指南:四步完成从申请到审核
一文详解溧阳成都两地出生医学证明补办政策
池了了:《清明上河图密码》中的一抹坚韧才情
冬季养生:提升免疫力的科学方法
珠海11.11案件:樊某为何报复社会?
高息网贷可以不还吗?
九街酒吧街:重庆夜生活的灵魂地带
重庆老街区的华丽转身:从废弃工厂到文创天堂
重庆周末约会胜地推荐:洪崖洞、解放碑、磁器口
广州至澳门自驾攻略:京珠高速VS港珠澳大桥,两条路线任你选
54岁女子减重55斤:211饮食法让减肥不再挨饿
空港快线成广州至澳门首选,最快180分钟抵达
92元从广州白云机场到澳门,空港快线省时省力
吉大创全球首个人参大模型,高端化妆品研发推动产业创新
黄芪等五味中药可增强免疫力,但有禁忌
金花蛇滑翔揭秘:生物界空气动力学大师
金花蛇滑翔机制揭秘:无人机设计的新灵感?
金花蛇滑翔揭秘:仿生学的新灵感?
金花蛇滑翔揭秘:空中飞蛇的秘密武器
米开朗基罗:文艺复兴的人体美学之巅
米开朗琪罗雕塑:文艺复兴的人体美学
自制低脂粉蒸肉,健康吃货的新宠
气温偏高致哈尔滨初雪迟到,预计本周将至
冬日雪景如何拍?6个实用技巧让你秒变摄影达人
四川粉蒸肉的家常秘籍:软糯不油腻,新手也能做出餐厅级美味
指甲变黄变厚竟是真菌感染?当心这些健康隐患