51单片机智能小车电路
51单片机驱动智能小车原理图
13
void time1()interrupt 3 {
TH0=(65536-1000)/256;//定时 1ms TL0=(65536-1000)%256; count2++; if(count2>=1000)//周期是 1s
count2=0; }//**********第五部分 中断服务程序 End********************************
2
方案 4:直接采用 9V 直流电源,由稳压模块将 220v 交流电转换为 9V 直流电,再经 7805 稳压到 5V 供单片 机,电机使用。但其不能用于远距离,且在运行中要注意电线的干扰。由于用于本次设计演示的标轨道不太大, 在演示时我们可以人为控制电源线部分,所以我们采用此方案,因为它最经济实惠。电路图如下:
void forward_turn2()//电机 2 前进
9
{ IN3=0; IN4=1;
}
void reverse_rutn2()//电机 2 后退 {
IN1=1; IN2=0; }
void speed1(int ct,int sd)//电机 1 速度控制函数,其中参数 sd 为生成 PWM 波形的比较基准 {
speed1(ct1,sd1); speed2(ct2,sd2); }
void right_turn1(int ct1,int sd1,int ct2,int sd2)//小车右转 {
forward_turn1(); forward_turn2();
speed1(ct1,sd1); speed2(ct2,sd2); } //*************以下是方案 2, 通过使两轮一正传,一反转来实现转向************************ void left_turn2(int ct1,int sd1,int ct2,int sd2)//小车左转 { forward_turn1(); reverse_rutn1();
基于51单片机智能小车设计
北华航天工业学院课程设计报告(论文)设计课题:基于51单片机智能循迹小车设计专业班级:B12242学生姓名:***指导教师:**设计时间:2014年6月15日北华航天工业学院电子工程系基于51单片机智能循迹小车课程设计任务书指导教师:王晓教研室主任:王晓2014年06 月15 日注:本表下发学生一份,指导教师一份,栏目不够时请另附页。
课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。
内容摘要本设计主要有单片机模块、地面寻线模块、发光二极管模块,电机驱动模块以及电源模块组成,小车具有自主寻迹的功能。
本次设计采用ATMEL公司的AT89C2051单片机作为控制芯片,传感器模块采用红外接收管和比较器实现,能够轻松识别黑白两色路面,同时具有抗环境干扰能力,电机模由LM393芯片和两个直流电机构成,组成了智能车的动力系统,电源采用5V的直流电池,经过系统组装,从而实现了小车的自动循迹的功能。
索引关键词:智能小车AT89C2051 单片机LM393 红外接收管目录一概述 (1)二方案设计与论证 (8)三单元电路设计及各模块具体电路 (3)3.1. 电路中51单片机芯片介绍 (13)3.2 最小系统部分电路 (19)3.3控制模块电路电路 (20)3.4电机驱动及二极管模块电路 (20)3.5寻线检测模块部分电路 (21)3.6软件设计 (22)四总原理图及元器件清单4.1总原理图 (23)4.2元器件清单 (23)五安装与调试5.1.电子元器件的装配 (24)5.2.机械装配 (25)5.3.总装 (25)六性能测试与分析6.1测试方法及注意事项 (26)6.2源程序 (26)七结论 (27)八心得体会 (28)九参考文献 (29)一、概述目前,在企业生产技术不断提高、对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。
基于51单片机智能小车(电路+程序+论文)
基于单片机的多功能智能小车设计论文(摘要(关键词:智能车单片机金属感应器霍尔元件 1602LCD)智能作为现代的新发明,是以后的发展方向,他可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等等的用途。
智能电动车就是其中的一个体现。
本次设计的简易智能电动车,采用AT89S52单片机作为小车的检测和控制核心;采用金属感应器TL-Q5MC来检测路上感应到的铁片,从而把反馈到的信号送单片机,使单片机按照预定的工作模式控制小车在各区域按预定的速度行驶,并且单片机选择的工作模式不同也可控制小车顺着S形铁片行驶;采用霍尔元件A44E检测小车行驶速度;采用1602LCD实时显示小车行驶的时间,小车停止行驶后,轮流显示小车行驶时间、行驶距离、平均速度以及各速度区行驶的时间。
本设计结构简单,较容易实现,但具有高度的智能化、人性化,一定程度体现了智能。
目录1 设计任务 (3)1.1 要求 (3)2 方案比较与选择 (4)2.1路面检测模块 (4)2.2 LCD显示模块 (5)2.3测速模块 (5)2.4控速模块 (6)2.5模式选择模块 (7)3 程序框图 (7)4 系统的具体设计与实现 (9)4.1路面检测模块 (9)4.2 LCD显示模块 (9)4.3测速模块 (9)4.4控速模块 (9)4.5复位电路模块 (9)4.6模式选择模块 (9)5 最小系统图 (10)6 最终PCB板图 (12)7 系统程序 (13)8 致谢 (46)9 参考文献 (47)10 附录 (48)1. 设计任务:设计并制作了一个智能电动车,其行驶路线满足所需的要求。
1.1 要求:1.1.1 基本要求:(1)分区控制:如(图1)所示:(图1)车辆从起跑线出发(出发前,车体不得超出起跑线)。
在第一个路程C~D区(3~6米)以低速行驶,通过时间不低于10s;第二个路程D~E区(2米)以高速行驶,通过时间不得多于4秒;第三个路程E~F区(3~6米)以低速行驶,通过时间不低于10s。
基于51单片机WiFi智能小车制作
基于51单片机WiFi智能小车制作基于51单片机WiFi智能小车制作一、基本原理51单片机WiFi智能小车是利用PC或手机作为控制端,通过手机连接wifi模块(路由器)以获得wifi信号,同时车载也连接wifi模块以获得和手机相同的IP地址,实现手机和小车的连接,然后利用PC或手机上的控制软件以wifi网络信号为载体发送相关信号,wifi模块接收PC 或手机端发送来的相关信号并分析转换成TTL 电平信号,然后发送给单片机,单片机接收到的电平信号处理、分析、计算,转化成控制指令并发送给电机驱动模块以实现小车的前进、后退、左拐、右拐等功能。
二、购买所需材料了解51单片机WiFi智能小车基本原理后,需要购买所需材料进行制作。
下面列出所需制作材料:序号材料备注图例6 小车底盘7 摄像头 根据固件支持摄像头购买8 电源根据自己需要购买种类9 杜邦线及小配件制作所需工具:序号工具名备注图例称1 电烙铁一套 包括松香焊锡2 螺丝刀 平口、十字等3 微型电钻 可以自制4手工刀5 剪刀6 万用表7 热熔胶枪或快干胶8US B下载器三、开始制作1、制作流程开始制作前,我们首先需要看购买路由器的型号,笔者采用的是703n 路由器,所以需要引出ttl 线。
总体步骤为:路由器引TTL 线→路由器刷OpenWrt 固件→制作51单片机最小系统→下载下位机程序到51单片机→安装上位机程序至PC 或手机→测试上、下位机通信→组装→调试完成。
2、路由器引ttl线首先打开703n路由器,按照下图标示位置焊接ttl线。
注意:1、焊接的时候要小心焊接,焊好后微拉下查看松紧2、焊接最好采用软线焊接,防止意外整块拉掉焊点3、焊好后一定用胶固定,最好采用热熔胶下图为引好ttl线样子3 刷OpenWrt固件何为OpenWrt固件,OpenWrt可以被描述为一个嵌入式的Linux 发行版,(主流路由器固件有dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的,静态的系统。
51单片机无线遥控小车设计
51单片机无线遥控小车设计一、引言无线遥控小车是一种基于51单片机的智能小车系统,它利用无线通信技术实现了对小车的遥控。
通过无线遥控,我们可以随时控制小车的方向,实现室内或者室外的移动。
本设计将详细介绍51单片机无线遥控小车的整体设计框架、电路连接和关键模块设计。
二、整体设计框架整个系统分为遥控器端和小车端两个部分。
遥控器端通过按键或者摇杆输入控制指令,经过编码和解码处理后,通过无线传输模块将指令发送给小车端。
小车端接收到指令后,通过解码和控制模块来控制小车的运动。
三、电路连接遥控器端由单片机、按键(或者摇杆)、编码芯片和无线传输模块组成。
按键用于输入控制指令,编码芯片用于将按键输入的模拟信号转换为数字信号,单片机将数字信号进行编码后发送给无线传输模块,最终通过无线通信将指令传输给小车端。
小车端由单片机、解码芯片、电机驱动、电机和无线接收模块组成。
无线接收模块用于接收遥控器端发送过来的指令,解码芯片将数字信号转换为控制信号,单片机根据控制信号来控制电机驱动,从而实现小车的运动。
四、关键模块设计1.编码和解码模块设计编码和解码模块是整个系统中的关键部分,它负责将模拟信号转换为数字信号,并将数字信号转换为控制信号。
2.无线传输模块选择无线传输模块是实现遥控通信的关键组件,我们可以选择使用蓝牙模块、无线射频模块等。
选择合适的无线传输模块需要考虑通信距离、通信速率、功耗等因素。
3.电机驱动模块设计电机驱动模块负责将控制信号转换为电机运动控制信号,驱动电机完成小车的移动。
在设计电机驱动模块时,需要考虑电机的类型和电机驱动电路的选型。
五、总结本设计详细介绍了51单片机无线遥控小车的整体设计框架,电路连接和关键模块设计。
通过对整个设计的理解和实现,我们可以实现对小车的远程遥控,从而实现室内或者室外的自动移动。
这种无线遥控小车系统在娱乐、智能家居、无人巡检等领域都有广泛的应用前景。
基于51单片机的智能小车设计报告
本人保证自写文档,文档不足之处请谅解目录一、设计的目的------------------1二、设计的模块------------------1三、程序的流程------------------6四、元器件清单------------------8五、成品的制作------------------8六、注意事项--------------------9七、设计的总结------------------9设计的目的智能遥控车地目的主要突出在智能与遥控上,遥控意思明显就是通过某种控制手段使得小车能够实现由控制者控制前进后退等操作;智能可以体现为功能上的智能化。
本作的目的是实现控制小车移动时对前方所存在的威胁进行报警提醒。
设计的模块此次设计的硬件电路模块大致为五大类,分别是51单片机最小系统模块、电源模块、电机工作驱动模块、超声波报警系统模块、无线控制发射接收模块。
下图为硬件电路框图:1、单片机最小系统此模块式是本设计的控制核心模块,单片机最小系统由三部分组成:STC89C52芯片部分、复位部分(由按键开关、极性电容、10K电阻组成)、晶振部分(由12M石英晶振、两个30PF的瓷片电容组成)。
主要起程序的输入与控制、程序的复位、时间频率控制的作用。
2、无线控制模块本设计的无线控制模块是由编码芯片PT2262和解码芯片PT2272组成的电路模块组成,工作方式是编码芯片PT2262 发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272 接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。
3、电机驱动模块本设计是采用了L298N电机驱动模块来驱动减速电机工作;L298N是ST公司生产的一种高电压、大电流电机驱动芯片。
该芯片采用15脚封装。
主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功率25W。
基于51单片机的智能避障小车开发
L298N的详细资料驱动直流电机电机驱动电路;电机转速控制电路(PWM信号)主要采用L298N,通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转。
驱动原理图L298电机驱动模块实物图我正在用L298N驱动我的小车的两个直流减速电机,其实它很好用,1和15和8引脚直接接地,4管脚VS接2.5到46的电压,它是用来驱动电机的,9引脚是用来接4.5到7V的电压的,它是用来驱动L298芯片的,记住,L298需要从外部接两个电压,一个是给电机的,另一个给L298芯片的6和11引脚是它的使能端,一个使能端控制一个电机,至于那个控制那个你自己焊接,你可以把它理解为总开关,只有当它们都是高电平的时候两个电机才有可能工作,5,7,10,12是298的信号输入端和单片机的IO口相连,2,3,13,14是输出端,输入5和7控制输出2和3, 输入的10,12控制输出的13,14L298N型驱动器的原理及应用L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
L298N的恒压恒流桥式2A驱动芯片L298N说明及应用L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。
可以方便的驱动两个直流电机,或一个两相步进电机。
L298N芯片可以驱动两个二相电机,也可以驱动一个四相电机,输出电压最高可达50V,可以直接通过电源来调节输出电压;可以直接用单片机的IO口提供信号;而且电路简单,使用比较方便。
L298N 可接受标准TTL逻辑电平信号V SS,V SS可接4.5~7 V电压。
4脚VS接电源电压,VS电压范围VIH为+2.5~46 V。
输出电流可达2.5 A,可驱动电感性负载。
1脚和15脚下管的发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。
(完整版)基于51单片机的智能小车控制源代码(毕业设计)
'*************************************************//***************************************************//// 智能小车控制器基于51 单片机实现前进后退转弯与智能采样控制功能#include <reg52.h>#include<intrins.h>unsigned int tata[8];unsigned char flag=0,flag2=0,flag3=0,n,m;unsigned int Angle,q,length,temp1;sbit A仁P3A2;sbit A2=P3A3;sbit B1=P3A4;sbit B2=P3A5;sbit ENA=P3A6;sbit ENB=P3A7;sbit red1=P1A3;sbit red2=P1A6;void InitUART(void) {TMOD = 0x20;SCON = 0x50;TH1 = 0xFD;TL1 = TH1;PCON = 0x00; ES = 1; TR1 = 1;EA = 1;ENA = 1;ENB = 1;}void delay(void) // 直线延时延时函数{unsigned char a,b;for(b=255;b>0;b --) for(a=38;a>0;a--);}void delay1(void) // 转角延时函数{unsigned char w,y,c;for(c=1;c>0;c--) for(y=97;y>0;y--)for(w=3;w>0;w --);void delay3(void) // 避障延时函数{unsigned char a,b,c; for(c=98;c>0;c--) for(b=100;b>0;b --)for(a=40;a>0;a --);}void delay2(void) // 手动控制延时函数{unsigned char a,b,c;for(c=98;c>0;c--) for(b=15;b>0;b --) for(a=17;a>0;a --) { if(m){ break;}}}void qianjin() // 前进{unsigned char f;A1=1;A2=0;B1=1;B2=0;for(f=0;f<155;f++){A1=0;A2=0;B1=0;B2=1;} // 直线校准语句A1=1;A2=0;B1=1;B2=0;}void zuozhuan() // 左转{A1=1;A2=0;B1=0;B2=1;}void youzhuan() // 右转A1=0;A2=1;B1=1;B2=0;}void houtui(){A1=0;A2=1;B1=0;B2=1;}void tingzhi(){A1=0;A2=0;B1=0;B2=0;}void main(){unsigned char temp;InitUART();while(1){if(flag){flag=0;for(temp=2;temp<8;temp++) // 字符型转成整型函数{tata[temp]=tata[temp]%16;}// 执行转角指令Angle=10*(tata[2]*100+tata[3]*10+tata[4]);m=0;if(Angle<10) // 地面小角度摩擦校正函数{Angle++;}if(tata[1]=='L'){for(q=0;q<Angle;q++){zuozhuan();delay1();if(m){break;}}}else if(tata[1]=='R'){for(q=0;q<Angle;q++){ youzhuan(); delay1(); if(m) { break;}}} tingzhi();delay(); for(temp=2;temp<8;temp++) // 字符型转成整型函数{ tata[temp]=tata[temp]%16;}// 执行前进指令length=100*(tata[5]*100+tata[6]*10+tata[7]);// m=0;if(!m){ for(q=0;q<length;q++){ qianjin(); delay(); delay(); if(m) { break;} if(!red1){ delay1(); if(!red1) { youzhuan(); delay3();while(!red1);}if(!red2){delay1(); if(!red2){zuozhuan(); delay3();while(!red2);}}if((!red1)||(!red2)){houtui();delay3();while((!red1)||(!red2));}}}}if(flag3){m=0;flag3=0;if(tata[1] =='W'){qianjin(); }else if(tata[1]=='A'){A1=0;A2=0;B1=0;B2=1;} elseif(tata[1]=='S'){houtui();}else if(tata[1]=='D'){A1=0;A2=1;B1=0;B2=0;}else if(tata[1]=='T'){tingzhi(); }delay2();}tingzhi();}}void UARTInterrupt(void) interrupt 4 {if(RI) m=1;RI = 0;if(SBUF=='$'){flag2=1;}if(flag2){tata[n]=SBUF;n++;if(n==9&&tata[8]=='*'){n=0;flag=1;flag2=0;}if(n==3&&tata[2]=='#'){n=0;flag3=1;flag2=0;}}。
单片机的智能循迹小车
调试方法
A
总之,基于 51单片机的 智能循迹小 车是一种简 单实用的智 能控制系统
B
通过合理的 硬件设计和 软件编程, 可以实现小 车的自动循
迹功能
C
在调试过程中, 需要逐步排查 问题,不断优 化程序,以提 高系统的性能
和稳定性
感/谢/聆/听
以及调试方法
1
原理
原理
1Байду номын сангаас
基于51单片机的智能循迹小车通过传感器检测小车与路径之间的距 离,将检测到的信号转换为电平信号,然后通过单片机进行处理
单片机根据接收到的信号控制电机驱动模块,从而控制小车的运动 方向和速度
2
3
通过不断调整小车的运动方向和速度,使得小车能够沿着指定的路 径进行运动
2
硬件组成
51单片机的智能 循迹小车
-
01
原理
02 硬件组成
03 软件设计 04 调试方法
51单片机的智能循迹小车
1
智能循迹小车是一种自动 控制系统,能够沿着指定
的路径进行运动
2
基于51单片机的智能循迹 小车是一种使用51单片机 作为主控制器的智能循迹
小车
3
下面将详细介绍基于51单 片机的智能循迹小车的原 理、硬件组成、软件设计
4
调试方法
调试方法
基于51单片机的智能循迹小车的调试方法主要包括以下几个步骤
硬件调试:检查硬件连接是否正确,确保电源、传感器、电机驱动模块等设备 能够正常工作
软件调试:通过调试器或仿真器对程序进行调试,检查程序是否存在语法错误 或逻辑错误
实际环境测试:将调试好的程序下载到单片机中,然后在实际环境中进行测试 。观察小车的运动情况,如果存在偏差或问题,需要对程序进行调整和优化
基于51单片机智能巡线避障小车毕业论文
基于51单片机智能巡线避障小车1系统方案确定及主要元件的选择1.1 系统方案确定本次设计的智能小车实现的基本功能如下:❖实时检测路径,并按照指定路线行驶;❖实时检测障碍物,并躲过继续行驶;❖实时显示当前速度,并显示在lcd1602上为此以AT89C52为主控芯片,主要包括避障模块、电源模块、声控模块、电机驱动模块等,系统框图如图2.3所示。
通过寻迹及避障传感器来采集周围环境信息来反馈给CPU,通过主控的处理,来控制电机的运转,从而实现寻迹与避障,达到智能行驶。
且本设计添加了声控效果,通过声音传感器来对小车发出指令,让其行驶与停止。
为了能够更好地完成本次设计任务,我们采用三轮车,其前轮驱动,前轮左右两边各用一个电机驱动,调制前面两个轮子的转速起停从而达到控制转向的目的,后轮是万象轮,起支撑的作用,并通过软件程序控制,与硬件架构相结合,从而实线自动寻迹、避障的功能。
1.2 主要元件的选择1.2.1 主控器按照题目要求,控制器主要用于控制电机,通过相关传感器对路面的轨迹信息进行处理,并将处理信号传输给控制器,然后控制器做出相应的处理,实现电机的前进和后退,保证在允许范围内实线寻迹避障。
方案一:可以采用ARM为系统的控制器,优点是该系统功能强大,片上外设集成度搞密度高,提高了稳定性,系统的处理速度也很高,适合作为大规模实时系统的控制核心。
而小车的行进速度不可能太高,那么对系统处理信息的要求也就不会太高。
若采用该方案,必将在控制上遇到许许多多不必要增加的难题。
方案二:使用51单片机作为整个智能车系统的核心。
用其控制智能小车,既可以实现预期的性能指标,又能很好的操作改善小车的运行环境,且简单易上手。
对于我们的控制系统,核心主要在于如何实现小车的自动控制,对于这点,单片机就拥有很强的优势——控制简单、方便、快捷,单片机足以应对我们设计需求[5]。
51单片机算术运算功能强,软件编程灵活、自由度大,功耗低、体积小、技术成熟,且价格低廉。
51单片机智能小车PWM调速前进程序源代码、电路原理图和器件表
51单片机智能小车PWM调速前进程序源代码、电路原理图、电路器件表从控制电路角度划分,智能小车电路板分为核心板和驱动板。
核心板上的处理器的芯片型号是:STC15W4K56S4,这是一款51单片机。
驱动板上有电源电路、电机驱动电路以及一些功能模块接口。
智能小车前进只要控制智能小车四个轮子向前转动就可以了。
智能小车四个轮子由四个直流减速电机驱动。
直流减速电机驱动芯片采用L293D,一片电机驱动芯片L293D可以驱动两个直流减速电机,智能小车用到4个直流减速电机,需要用到两片L293D电机驱动芯片。
但有时候我们需要控制智能小车的速度,不希望智能小车全速前进。
比如在“智能小车循迹实验”中,如果智能小车速度过快,来不及反应做出方向的调整,智能小车会很容易跑离轨迹,这样就需要调整控制智能小车的速度了。
那么怎么样实现智能小车前进速度的调节呢?调节智能小车的速度,实际上是调节电机的运转速度,PWM调速是目前电机的主流调速方式。
智能小车采用脉宽调制(PWM)的办法来控制电机的转速,从而控制智能小车的速度。
在此种情况下,电池电源并非连续地向直流电机供电,而是在一个特定的频率下为直流电机提供电能。
不同占空比的方波信号,调节对直流电机的通断电,能起到对直流电机调速作用。
这是因为电机实际上是一个大电感,它有阻碍输入电流和电压突变的能力,因此脉冲输入信号被平均分配到作用时间上。
这样,改变L293D使能端EN1和EN2上输入方波的占空比就能改变加在电机两端的电压大小,从而改变了直流电机转速。
智能小车PWM调速前进程序如下:首先,定义了2个变量,这2个变量用于设置智能小车的速度。
unsigned char pwmval_left_init=6; //调节此值可以调节小车的速度。
unsigned char pwmval_right_init=6; //调节此值可以调节小车的速度。
通过以下函数初始化定时器0,每1毫秒中断一次。
void Timer0_Init(void) //定时器0初始化{TMOD=0x01;TH0=0xf8;TL0=0xcd;TR0=1;ET0=1;EA=1;}下面我们看定时器0的中断处理函数。
51单片机智能小车电路
51单片机智能小车顶顶电子设计的这款简易智能小车,采用STC89C51/52单片机作为小车的检测和控制核心;采用光电开关、声控传感器、光敏传感器、温度传感器、红外接收器等来检测和感应各种外界情况,从而把反馈到的信号送单片机,使单片机按照预定的工作模式控制小车在各区域按预定的速度行驶;智能小车既可以采用LED数码管来显示有关信息,也可以采用1602LCD实时显示小车行驶的距离。
机器小车主要由底盘(含2个带电机的驱动轮、2个从动轮,底板)、电路板和6节5号电池盒三部分组成,其正面和底面外形如图所示:下图是51单片机智能小车的电路组成框图:`下图是智能小车中主要元件在小车中的位置实物图:二、产品配置智能小车产品配置如下:1.小车底板1块、车轴插片4片2.车轮4只3.车轴2根,垫片2只,铜螺帽2只》4.带齿轮箱的电机及104电容各2只5.智能小车开发板1块(除DS18B20外,板上集成电路配备完整)6.避障光电传感器1只(TCR T5000)、循迹光电传感器2只(RPR220)、速度光电传感器1只(RPR220)7.双向插头排线4根8.串口线1根)9.红外遥控器1只10.固定电路板与底板的长螺丝、橡皮垫圈各2只节5号电池盒(因电池属易燃易爆物品,故不配送,请自行购买)12.丰富的源程序、电路原理图和操作使用手册(用户购买后,只需要再另外购502胶水(1元左右)、双面胶(1元左右)和6节5号电池(采用普通的华太电池即可,6节约元)即可进行组装与实验了。
需要说明的是,小车的组装非常简单,有关详细的组装方法,我们将在智能小车操作使用手册上,采用图解的形式进行说明。
三、选配件用户购买产品后,可进行小车的基本实验,如果用户想进行一些特殊的实验,需要购买以下产品,说明如下:1.温度传感器DS18B20,价格6元。
链接:配置DS18B20后,可进行温度显示的实验。
液晶显示器,价格16元。
\链接:配置1602液晶显示器后,可进行液晶显示方面的实验。
51单片机智能小车
51单片机智能小车51单片机智能小车一、介绍本文档是关于使用51单片机制作智能小车的详细指南。
智能小车是一种能够自主感知周围环境并做出相应行动的。
通过学习本文档,您将了解到如何使用51单片机搭建一个具有基本功能的智能小车。
二、硬件准备1、51单片机开发板2、电机驱动模块3、电源模块4、超声波传感器5、电机6、小车底盘三、电路搭建1、将51单片机开发板和电机驱动模块连接起来,确保电机正常工作。
2、将超声波传感器连接到51单片机开发板上。
3、将电源模块连接到开发板和电机驱动模块上,确保电源供应稳定。
四、程序设计1、编写51单片机的C语言程序,实现小车的基本功能,例如前进、后退、左转、右转等。
2、利用超声波传感器进行障碍物检测,并在检测到障碍物时进行相应的避障行动。
3、可以根据需要添加其他功能,例如跟随线路行驶、遥控操作等。
五、调试与测试1、使用烧录器将程序烧录到51单片机开发板中。
2、将电机驱动模块和超声波传感器连接到开发板后,进行电路的连通测试。
3、使用遥控器或其他方式控制小车的运动,观察小车是否根据预期进行动作。
4、进行避障测试,将障碍物放在小车前方,观察小车是否能够正确避开障碍物。
附件:1、51单片机开发板连接图2、电机驱动模块接线图3、超声波传感器接线图法律名词及注释:1、版权:指著作权法所保护的有关著作权人对其创作作品享有的复制、发表、展览、上演、放映、广播、信息网络传播、出版等权利。
2、专利:指在法律规定的范围内以注册的形式保护发明创造的独占权。
3、商标:指为了区别商品来源而使用,具有识别性、区分性和专用性的标志。
4、法律责任:指根据法律规定,个人或者单位在违反法律规范时应承担的法律后果。
基于51单片机的蓝牙循迹小车
基于51单⽚机的蓝⽛循迹⼩车51单⽚机课程设计做了辆蓝⽛⼩车,下⾯是对课程设计内容的⼀些总结基于51单⽚机的蓝⽛循迹⼩车硬件模块L298N具体如图所⽰:⼯作原理简介:可以直接驱动两路 3-16V 直流电机,并提供了 5V 输出接⼝(输⼊最低只要 6V),可以给 5V 单⽚机电路系统供电。
输⼊电压最好是7v以上,输⼊电压低了会导致⼀系列问题,在后⾯有具体实践总结具体应⽤:可以⽅便的控制直流电机速度和⽅向,也可以控制 2 相步进电机,5 线 4 相步进电机。
管脚应⽤可以参考如图所⽰:①板载5V输出使能:如果跳线帽接上,则5v端⼦可以输出电压,若跳线帽没有街上,则12v输⼊端⼦没有作⽤,只能5v输⼊⼝输⼊(如果不接上直接废了,5v 输⼊基本不能使电机模块正常⼯作)②AB通道使能:端⼦接在上⾯表⽰AB通道⼀直保持⾼电平,处于使能状态,并且电压和5v输⼊端⼝电压相同;若处于没有使能状态,直接影响到输⼊端,让其⽆法⼯作!③单⽚机IO控制输⼊ + 马达AB输出 :顾名思义,四个IO输⼊端⼝和单⽚机四个IO⼝相连,然后通过电机驱动模块(双H桥电路)马达AB输出,以获得更⼤的驱动直流减速电机的能⼒,带动电机转动!B站直接搜L298N电机驱动模块,有视频详情介绍问题以及解决⽅案下⾯是⼀些使⽤L298N驱动电机的⼀些问题以及解决⽅法总结问题:1.直流减速电机不能正常转动,⼀个轮⼦只能单⽅向转动2.使能端⼝帽摘下来后,pwm信号输⼊问题3.供电问题解决:1.起初⽤4节南孚电池供电,⽤万⽤表测电压⼩于4.8v(电池快没啥电了),更换四节电池后⽤万⽤表测得4.9v+,上⾯出现的问题解决了2.输⼊端电压⼩于7v(⽤得四节南孚电池6v不到供电),使能电压和5v输⼊端⼦的电压相同,经测量5v端⼝电压只有3.8v左右,故使能电压就只有3.8v左右了,对PWM输出使能有⼀定影响3.L298N电机驱动中有稳压降压模块,如果供电⾜够⼤(⼤于7v),那么稳压降压模块会发挥作⽤,使得5v输⼊端⼦、使能端⼦、马达电机都能有稳定的5v⾼电平输出。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51单片机智能小车一、智能小车开发板介绍智能小车好玩、有趣,很多单片机爱好者就是靠玩小车而走上了单片机开发的职业。
关于智能小车,市场上有一些,经过对照,发现市场上的很多“智能小车”其实就是一个个“四肢发达,头脑简单”的白痴,一点点都不智能,之所以这样说,主要是基于以下两点:一是很多小车太注重小车的机械结构,致使小车整体价格偏高;二是没有提供源程序或提供的源程序很少,不能充分发挥小车的智能性。
顶顶电子设计的这款智能小车,机械和电机部分由广州某公司专门定做,采用二个驱动轮、二个从动轮(也可使用一个万向轮),即简单,又灵活。
电路部分由我们自己独立设计,并配备了丰富多彩的实用源程序,可让那些“智能小车”的粉丝们快快乐乐玩个够!顶顶电子设计的这款简易智能小车,采用STC89C51/52单片机作为小车的检测和控制核心;采用光电开关、声控传感器、光敏传感器、温度传感器、红外接收器等来检测和感应各种外界情况,从而把反馈到的信号送单片机,使单片机按照预定的工作模式控制小车在各区域按预定的速度行驶;智能小车既可以采用LED数码管来显示有关信息,也可以采用1602LCD实时显示小车行驶的距离。
机器小车主要由底盘(含2个带电机的驱动轮、2个从动轮,底板)、电路板和6节5号电池盒三部分组成,其正面和底面外形如图所示:下图是51单片机智能小车的电路组成框图:下图是智能小车中主要元件在小车中的位置实物图:二、产品配置智能小车产品配置如下:1.小车底板1块、车轴插片4片2.车轮4只3.车轴2根,垫片2只,铜螺帽2只4.带齿轮箱的电机及104电容各2只5.智能小车开发板1块(除DS18B20外,板上集成电路配备完整)6.避障光电传感器1只(TCR T5000)、循迹光电传感器2只(RPR220)、速度光电传感器1只(RPR220)7.双向插头排线4根8.串口线1根9.红外遥控器1只10.固定电路板与底板的长螺丝、橡皮垫圈各2只11.6节5号电池盒(因电池属易燃易爆物品,故不配送,请自行购买)12.丰富的源程序、电路原理图和操作使用手册用户购买后,只需要再另外购502胶水(1元左右)、双面胶(1元左右)和6节5号电池(采用普通的华太电池即可,6节约1.5元)即可进行组装与实验了。
需要说明的是,小车的组装非常简单,有关详细的组装方法,我们将在智能小车操作使用手册上,采用图解的形式进行说明。
三、选配件用户购买产品后,可进行小车的基本实验,如果用户想进行一些特殊的实验,需要购买以下产品,说明如下:1.温度传感器DS18B20,价格6元。
链接:/auction/item_detail-0d b1-b2ca1e775f188cd406558351465e6ebe.htm配置DS18B20后,可进行温度显示的实验。
2.1602液晶显示器,价格16元。
链接:/auction/item_detail-0d b1-7539f7eead8de5f63738a80f93bbafd8.htm配置1602液晶显示器后,可进行液晶显示方面的实验。
3.高性能光电开关E3F-DS10C4,价格16元。
链接:/auction/item_detail-0d b1-cd6b09ffffb5f34d94c65f45c64a789e.htm配置E3F-DS10C4后,可大大提供小车避障和循迹的效果。
4.无线遥控套件,价格26元。
链接:/auction/item_detail-0d b1-8543313c500eaa4a1938a09e5980f011.htm配置无线遥控套件后,可进行无线遥控小车实验。
5.ISD1700语音模块,价格66元。
链接:/auction/item_detail-0d b1-4912d8ee5ace480707cd532a2dbd69ef.htm配置ISD1700语音模块后,可使小车具有说话的功能。
以上为选配件,请用户根据情况进行选择。
四、实验说明智能小车附带的程序十分丰富,全部采用C语言编写,非常方便使用和移植,主要程序如下:实验1——电池电压检测程序实现功能:开机后,数码管上显示出电池电压的值,当电池电压低于7V时,蜂鸣器鸣叫,表示电池电压低,需要更换电池。
下图是小车显示的电池电压情况(显示的电压值为8.5V):实验2——模拟PWM控制小车速度程序实现功能:用单片机的IO口模拟PWM信号,控制小车的转速,具体要求是:开机后,小车按全速运转,当按下K1键时,小车运行的速度是全速的0.1,当按下K2键时,小车的转速是全速的0.5。
实验3——用定时中断控制小车速度程序实现功能:采用定时中断方法,控制小车的转速,具体要求是:开机后,小车按全速的0.2运转。
实验时,为了便于对照,读者可在源程序的基础上修改定时器0中断处理函数:void Timer0(void) interrupt 1 //定时器0中断处理函数入口{TH0=0xfc;//定时1msTL0=0x66;EA=0;//关中断tim=tim+1;//时间计数加1if(tim<20){EN1=0;EN2=0;}else {EN1=1;EN2=1;}if(tim==100)tim=0;EA=1;//开中断}修改的方法是:改变上述语句if(tim<20){EN1=0;EN2=0;}中的tim的值,例如,将此改为if(tim<50){EN1=0;EN2=0;},重新编译源程序,再下载到小车的单片机中,此时会发现小车的运转速度快了很多。
实验4——话筒控制小车起停程序实现功能:在智能小车上安装有话筒,要求采用声音可以控制小车的起停,具体要求是:开机后,小车运转,LED1、LED2指示灯亮;当拍一下巴掌或敲击一下器物发出响亮的声音时,小车停转,LED1、LED2指示灯熄灭;再次拍一下,小车继续运转,LED1、LED2指示灯又点亮。
实验5——光控小车程序实现功能:在智能小车上安装有光敏电阻,能够感受到光线的变化情况,要求通过光敏电阻判断出白天和黑夜,当白天时(光线正常时,小车前面的两个指示灯LED1、LED2不亮),当夜晚时(光线暗时),小车前面的两个指示灯LED1、LED2点亮。
实验6——红外遥控数码管显示程序实现功能:在智能小车上安装有红外遥控接收头,能够接收遥控器发出的信号,要求按下遥控器的01H键时,小车前进(前方的两个指示灯熄灭);按下遥控器上的05H键时,小车停止(前方的两个指示灯熄灭);按下遥控器上的04H键时,小车左转(左前方的指示灯点亮);按下遥控器上的06H键时,小车右转(右前方的指示灯点亮);按下遥控器上的09H键时,小车后退(前方的两个指示灯点亮)。
遥控器上的键值能同时在LED数码管上显示出来。
以下是按下遥控器上的05H时,小车显示的情况:实验7——红外遥控LCD显示程序实现功能:在智能小车上安装有红外遥控接收头,能够接收遥控器发出的信号,开机时,LCD显示如下画面:要求按下遥控器的01H键时,小车前进(前方的两个指示灯熄灭);按下遥控器上的05H键时,小车停止(前方的两个指示灯熄灭);按下遥控器上的04H键时,小车左转(左前方的指示灯点亮);按下遥控器上的06H键时,小车右转(右前方的指示灯点亮);按下遥控器上的09H键时,小车后退(前方的两个指示灯点亮)。
遥控器上的键值和状态能同时在LCD上显示出来(前时时显示FRONT,后退时显示BACK,左转时显示LEFT,右转时显示RIGHT,停止时显示STOP)。
以下是按下遥控器上的05H时,小车显示的情况:实验8——数码管温度显示程序实现功能:在智能小车上设有温度传感器DS18B20的安装位置,DS18B20安装好后,能够感知外界的温度,要求外界温度能通过LED数码管显示出来。
以下是显示的温度情况:实验9——LCD温度显示程序实现功能:在智能小车上设有温度传感器DS18B20的安装位置,DS18B20安装好后,能够感知外界的温度,要求外界温度能通过LCD显示出来。
以下是显示的温度情况:实验10——避障小车程序实现功能:在智能小车的头部,设有避障光电开关安装位置,如果装上此光电开关后,就能够感受到前方障碍物的,当检测到有障碍物时,可控制小车后退并转向,从而避开障碍物,达到避障的目的。
特别说明:本实例采用的是普通的光电开关(TCR T5000)进行避障,由于该开关检测距离较短(一般只有1cm左右),因此,避障效果不是很好,只有当小车离障碍物较近时,才能检测到障碍物的存在,容易发生车头触碰障碍物的情况;要真正达到比较好的效果,需要采用性能较好的光电开关,如E3F-DS10C4等,其检测距离达10cm以上,既使小车速度较快,一般也不会发生撞车的现象。
另外,如果想全方位进行避障,还需要在小车的前面多装几个光电开关,对不同方位的障碍物进行检测,用户可根据情况自行设计和安装。
实验11——小车循迹程序实现功能:在智能小车的头部,设有两个循迹光电开关安装位置,如果装上这个光电开关后,就能够感受到地面铺设的道路情况,从而控制小车按事先制作的黑色道路行进。
以下是小车循迹实验效果图:特别说明:本实例采用的是普通的光电开关(RPR220)进行循迹,由于该开关检测距离较短,因此,循迹效果不是很好,另外,还需要根据铺设的道路情况对源程序中的延时程序进行调整(当转向大时,将延时常数调小一些,当转向小时,将延时常数调大一些),以便使小车偏离道路时,能够及时转到正常的轨道上来。
为了能够达到比较好的循迹效果,建议采用性能较好的光电开关,如两只E3F-DS10C4等,其检测灵敏度较高,检测距离较远,当然,既使采用性能较好的光电开关,也需要根据实际的道路情况,对源程序中的延时时间进行调整。
这个源程序实验时有一定难度,用户一定要铺设好道路,对源程序进行简单的修改,并保持一定的耐心,否则,不易成功!实验12——小车里程计算程序实现功能:当小车运行时,在数码管上可以显示出小车转动的圈数,并且每转一圈,指示灯LED3会闪烁一次,当按下K1键时,小车停止,同时,在数码管上显示出小车运行的距离。
以下显示的是小车转动的圈数:特别说明:本实例采用的是普通的光电开关(RPR220)进行检测,由于该开关检测距离较短(一般只有1cm 左右),因此,安装速度光电开关时,应尽量靠近车轮的内侧,如果小车转动时,指示灯LED3不闪烁,说明光电开关安装位置不正确,需要反复进行调整,直至正常为止。
实验13——无线控制小车程序实现功能:将无线遥控接收模块的+5V、GND、10(D0)、11(D1)、12(D2)、13(D3)、VT脚用杜邦线分别接智能小车开发板的VCC、GND、P00~P04脚,如下图所示:连接好后,可实现以下功能:按无线发射器的A键小车前进(再按按压则停止),按B键小车后退(再按按压则停止),按C键小车左转(再按按压则停止),按D键小车右转(再按按压则停止)。