基于51单片机的红外遥控小车设计和制作
论文关键字:AT89C51单片机直流电机红外线遥控循迹L298论文摘要:本文介绍一款红外线遥控小车,以AT89S51单片机为核心控制器,用L289驱动直流电机工作,控制小车的运行。本款小车具有红外线遥控手动驾驶、自动驾驶、寻迹前进等功能。本系统采用模块化设计,软件用C语言编写。一、设计任务和要求以AT98C51单片机为核心,制作一款红外遥控小车,小车具有自动驾驶,手动驾驶和循迹前进等功能。自动驾驶时,前进过程中可以避障。手动驾驶时,遥控控制小车前进、后退、左转、右转、加速等操作。寻迹前进时小车还可以按照预先设计好的轨迹前进。二、系统组成及工作原理本系统由硬件和软件两部分组成。硬件部分主要完成红外编码信号的发射和接受、障碍物检测、轨迹检测、直流电机运行的发生等功能。软件主要完成信号的检测和处理、设备的驱动及控制等功能。AT89S51单片机查询红外信号并解码,查询各个检测部分输入的信号,并进行相应处理,包括电机的正反转,判断是否遇到障碍物,判断是否小车其那金中有出轨等。系统结构框图如图1所示。图1系统结构框图三、主要硬件电路1、遥控发射器电路该电路的主要控制器件为遥控器芯片HT6221,如图2所示。HT6221将红外码调制成38KHZ的脉冲信号通过红外发射二极管发出红外编码。图2中D1是红外发射二极管,D2是按键指示灯,当有按键按下时D2点亮。HT6221的编码规则是:当一个键按下超过36ms,振荡器使芯片激活,如果这个按键按下且延迟大约108ms,这108ms发射代码由一个起始码9ms,一个结果码45ms,低8位地址码9ms18ms,高8位地址码918ms,8位数据码918ms和这8位数据码的反码918ms组成,如果按键按下超过108ms仍未松开,接下来发射的代码将仅由起始码9ms和结束码25ms组成。按照上图的接法,K1K8的数据码分别为:0x00,0x010x020x030x040x050x060x07。图2遥控发射器电路原理图2、红外线接收模块该模块使用一体化红外接收头1838,其电路如图3所示。瓷片电容104为去耦电容,DOUT即是解调信号的输出端,直接与单片机的P32口相连。有红外编码信号发射时,输出为检波整形后的方波信号,并直接提供给单片机。图3红外接收原理图3、电机驱动模块该模块主要由芯片L298控制两个电机的正反转,以及改变电机的转速,其电路如图4所示。L298芯片是一种高压、大电流双全桥式驱动器。其中SENSEA、SENSEB分别为两个H桥的电流反馈脚,不用时可以直接接地。VCC,VS是r