资讯详情

【51单片机实例】智能小车(一)--------小车的前进、后退和停止

智能小车(二)-------- 红外遥控调速 智能车(三)-------- 汽车的红外跟踪

文章目录

  • 前言
  • 一、硬件选择
    • 1.1 小车底盘
    • 1.2 电机
    • 1.3 51单片机最小系统板
    • 1.4 L298N双路电机驱动模块
    • 1.5 电源
    • 1.6 杜邦线
  • 二、硬件连接
  • 三、编程
  • 总结


前言

本文主要讲的是如何让基于51单片机的智能车移动。智能车有很多项目,比如跟踪避障、蓝牙遥控、视觉控制等。我会一步一步带你进入单片机项目。这也是我第一次写文章。可能有很多缺点。请给我更多的建议。


一、硬件选择

1.1 小车底盘

你可以根据自己的意愿选择底盘的形状。我在这里选择的是4WD智能车底盘组装方便,使用方便。 在这里插入图片描述

1.2 电机

我使用工作电压3-6v直流减速电机TT电机(如果要两轮(四轮)驱动,需要安装两个(四个)直流减速电机,电机接线需要自行焊接)。

1.3 51单片机最小系统板

对于最小系统板,没有特殊要求。只需使用您熟悉的芯片。我在这里使用的是STC89C52芯片。

1.4 L298N双路电机驱动模块

L298N,它是一种高压电机驱动器,可由直流电机和步进电机驱动。一个驱动芯片可以同时控制两个直流减速电机的不同动作V到46V在电压范围内,提供2安培电流,具有过热自断和反馈检测功能,可通过主控芯片直接控制电机I/O设置输入控制电平,可为电机进行正反转驱动,操作简单,稳定性好,可满足直流电机的大电流驱动条件。 L298N它是一种常用的直流电机驱动模块,也更适合新手。A、B可以用跳线帽盖住,下图中已经标注了每个引脚的具体使用情况,基本属性也可以参考下表。

1.5 电源

我用的是18650锂电池3.7V移动电源2500mAh可充电电池,当然也需要组合相应的电池组,具体也可以根据自己的需要进行选择,选择时要注意电池的电压和电容。

1.6 杜邦线

分为公对公、公对母、母对母三种线形,主要用于电路实验,可与插针连接,具有很好的可靠性,也可以省略焊接过程,快速进入电路实验,广泛应用于电子产品,是必要的辅助部件。

二、硬件连接

这里我用的是双轮驱动,所以硬件部分是:两个直流减速电机,三节三节.7v电池和电池组,51最小系统板(由于设备缺陷,我使用它STC89C52开发板11.0592MHz)、汽车底板,四个车轮,一个L298N双路电机驱动模块、多个铜柱螺钉、杜邦线等。 例子:

三、编程

我在这里使用双轮驱动,只有两个电机M1、M2.驱动汽车IN1~IN在4的逻辑输入中,由IN1、IN2控制电机M1;IN3、IN4控制 电机M2.改变电机的电平变化,使电机正反转。如果没有电平变化,电机将停止旋转,例如IN输入高电平1,IN2输入低电平0,对应电机M1正转;IN输入低电平0,IN输入高电平1,对应电机M1反转,IN1和IN2输入低电平0或高电平1,对应电机M1停止转动,IN3和IN4同理可得。

具体代码如下(示例):

#include<reg52.h>  sbit IN1=P2^0;      //使IN1~IN四端通过杜邦线接收不同的P口,我在这里接收P2 sbit IN2=P2^1;      //其中IN1、IN2控制电机M1;IN3、IN4控制电机M2 sbit IN3=P2^2; sbit IN4=P2^3;                           void Delay1000ms()        ///延迟函数,延迟函数为1s { 
                                     //@11.0592MHz  unsigned char i, j, k;   i = 43;  j = 6;  k = 203;  do  { 
           do   { 
            while (--k);
		} while (--j);
	} while (--i);
}

int main()
{ 
        
    while(1)
    { 
        
      //未调制pwm前小车速度可能比较快
      
        IN1=1;IN2=0;    //两电机正转,小车前进
        IN3=1;IN4=0;
        Delay1000ms();  //延迟1s

        IN1=0;IN2=0;    //两电机停转,小车不动
        IN3=1;IN4=1;
        Delay1000ms();  //延迟1s

        IN1=0;IN2=1;    //两电机反转,小车后退
        IN3=0;IN4=1;
        Delay1000ms();  //延迟1s
    }
    return 0;
}

总结

本节是以STC89C52单片机为CPU,通过一些外围电路和软件编程实现小车前进、后退、停止的功能。整个设计过程中最大的特点是利用简单的原理图将TT电机、L298N驱动模块、51单片机这三个模块有效的结合起来,利用经典的H桥路作为小车前进、后退和停止的编程理论基础,提高了效率,降低了编程的复杂度,具有很强的研究的意义,智能化的发展促使了智能小车往功能更加强大的方向发展。

标签: m1c电容tt智能电容

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台