资源简介

该小车使用了红外对管循迹,超声波测距,颜色传感器,直流减速电机,180°舵机,步进电机。 该资源包含小车的所有完整程序,原理图,PCB图,题目要求。 把题目简单介绍下: 寻迹智能电动车(本科大三大四题) 一、任务 设计并制作一个寻迹智能电动车,根据要求完成从出发区到终点区的任务: 二、要求 1、基本要求 (1)电动车从出发区出发(车体不得超出出发区),沿引导黑线向终点区行驶,电动车行驶过程中不可脱离黑色引导线行驶。 (2)电动车行驶过程中遇到十字路口时发出声光指示信息。 (3)电动车行驶过程中遇到障碍物。电动车必须避开障碍通过且不得与其接触。 (4)电动车到达终点后应立即停车,但全程行驶时间不能大于90秒,行驶时间达到90秒时必须立即自动停车。 2、发挥部分 (1)电动车行驶过程中遇到红色障碍物电动车必须选择向左转避开障碍物,遇到绿色障碍物电动车必须选择向右转避开障碍物。 (2)电动车避开障碍物通过不得与其接触且选择最短行驶距离到达终点区。 (3)电动车进入终点区域后,能进一步准确驶入终点区,要求电动车的车身完全进入终点区到达终点区中心。停车后,能准确显示电动车全程行驶时间和路程。 三、评分标准 项 目 满分 基本要求 完成第(1)项 10 完成第(2)项 12 完成第(3)项 15 完成第(4)项 13 发挥部分 完成第(1)项 20 完成第(2)项 12 完成第(3)项 8 其它 10 四、说明 1、场地上面铺设白纸,可用一张A0或者两张A1纸制作。 2、场地的引导线宽度2cm,可以涂墨或粘黑色胶带。示意图中的和尺寸标注线不要绘制在白纸上,出发区和终点区的边框为25cm*25cm 用签字笔细线标注。 3、电动车出发方向由测评专家指定,可选择(如图)正X方向或正Y方向。 3、障碍物可由包有红、绿色纸的长方体制作,其长、宽、高约为62mm 62mm 87mm(可用几张扑克牌制作长方体),场地上可允许有最多两个障碍物(也可只有一个,也可以放置两个同色或者不同色的障碍物,由测评专家指定),放置位置可在任意十字路口中间位置(T字路口不放置,障碍物面向电动车放置)。 4、电动车允许用玩具车改装,但不能由人工遥控,其外围尺寸(含车体上附加装置)的限制为:长度≤30cm,宽度≤20cm。 5、要求在电动车顶部明显标出电动车的中心点位置,即横向与纵向两条中心线的交点。 6、以图的左下角为坐标原点。 由于该程序是我2个月的心血,所以10分,不要嫌分多,肯定物超所值。 文件列表: 循迹主系统修正版.ddb 智能循迹小车程序 智能循迹小车程序 颜色传感器 HC-SR04超声波测距模块.pdf 步进电机工作原理及使用说明.pdf 舵机舵机的工作原理.pdf 利用单片机PWM进行舵机控制.pdf 颜色传感器产品使用手册.doc 寻迹智能电动车(本科).doc

资源截图

代码片段和文件信息



/**************************************************
工程名称: 智能寻迹避障小车 总程序
创建时间: 2011-4-19
作    者: 秦英哲
说    明:
最后修改: 2011-5-10
**************************************************/



#include < reg52.h >
#include < intrins.h >

#include “ Statement.h “ //声明及定义变量
#include “ LCD1602.h “ //1602显示程序组
#include “ CSBCJ.h “ //超声波测距程序组
#include “ WaitStart.h “ //等待开始程序组
#include “ WalkInlink.h “
#include “ DJControl.h “ //电机控制程序组
#include “ baseControl.h “ //基本方向控制程序组



void Main()
{
Init();
while( s1 == 1 );
Write1602Com( 0x01 1 );  //显示清屏
Countdown();
DisplayNormal();
DisplayTime();  
ET2 = 1; //开定时器2中断
TR2 = 1; //开定时器2
GoAhead();
Delay1ms( 600 );
while ( 1 )
{
DisplayTime();
WalkInlink();
SearchCross();
SearchTRoad();
if ( time_sec == 90 ) TimeOver();  
}  
}




/* 定时器0程序 计算PWM码占空比 */
void timer0( void ) interrupt 1 
{
ET0 = 0;
TR0 = 0;
TH0 = V_TH0;
TL0 = V_TL0;

click0 ++;
if ( click0 >= pwmmax )
click0 = 0;
if ( click0 < pwm0 )
pwmout0 = 1;

else
pwmout0 = 0;    

click1 ++;
if ( click1 >= pwmmax )
click1 = 0;
if ( click1 < pwm1 )
pwmout1 = 1;
else
pwmout1 = 0;   
ET0 = 1;
TR0 = 1;
}



/* 定时器1程序 用来计数器溢出超过测距范围 */
void timer1( void ) interrupt 3   
{
flag = 1;  //中断溢出标志
if ( flag_pwm == 1 )
{
ET1 = 0;
TR1 = 0;
TH1 = 0xaa;
TL1 = 0xa0;

click2 ++;
if ( click2 >= pwmmax )
click2 = 0;
if ( click2 < pwm2 )
pwmout2 = 1;

else
pwmout2 = 0;    
  
switch ( pwm_select )
{
case 0 :run_l0 = pwmout2; break;
case 1 :run_r0 = pwmout2; break;
case 2 :run_a0 = pwmout2; break;
}

ET1 = 1;
TR1 = 1;
}   
}  


/* 定时器2程序 用于显示时间 */
void timer2 () interrupt 5
{
TF2 = 0;
time_count ++;
if ( time_count == 20 )
{
time_count = 0;
time_sec ++;
}

 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     228932  2010-03-26 17:35  智能循迹小车程序\HC-SR04超声波测距模块.pdf

     文件     763811  2011-04-11 22:58  智能循迹小车程序\利用单片机PWM进行舵机控制.pdf

     文件      40448  2011-03-29 21:37  智能循迹小车程序\寻迹智能电动车(本科).doc

     文件     376832  2011-04-28 19:17  智能循迹小车程序\循迹主系统修正版.ddb

     文件       7146  2011-05-11 14:12  智能循迹小车程序\智能循迹小车程序\baseControl.h

     文件      50142  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR

     文件       2084  2011-05-11 13:07  智能循迹小车程序\智能循迹小车程序\CAR.c

     文件      14449  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR.hex

     文件         38  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR.lnp

     文件       6175  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR.LST

     文件      72954  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR.M51

     文件      58868  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR.OBJ

     文件        172  2011-11-22 11:51  智能循迹小车程序\智能循迹小车程序\CAR.plg

    .......     61802  2011-11-22 11:51  智能循迹小车程序\智能循迹小车程序\CAR.uvopt

     文件      13234  2011-04-19 21:56  智能循迹小车程序\智能循迹小车程序\CAR.uvproj

    .......     61965  2011-11-22 11:50  智能循迹小车程序\智能循迹小车程序\CAR_uvopt.bak

     文件          0  2011-04-19 16:24  智能循迹小车程序\智能循迹小车程序\CAR_uvproj.bak

     文件       2236  2011-05-10 14:40  智能循迹小车程序\智能循迹小车程序\CSBCJ.h

     文件       5353  2011-05-11 13:53  智能循迹小车程序\智能循迹小车程序\DJControl.h

     文件       3097  2011-05-10 10:41  智能循迹小车程序\智能循迹小车程序\LCD1602.h

     文件       3310  2011-05-10 18:48  智能循迹小车程序\智能循迹小车程序\Statement.h

     文件       2182  2011-05-10 15:47  智能循迹小车程序\智能循迹小车程序\WaitStart.h

     文件       3280  2011-05-11 13:18  智能循迹小车程序\智能循迹小车程序\WalkInlink.h

     文件       7209  2011-05-12 21:06  智能循迹小车程序\智能循迹小车程序 颜色传感器\baseControl.h

     文件      48331  2011-11-22 11:49  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR

     文件       2262  2011-05-12 21:01  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR.c

     文件      13864  2011-11-22 11:49  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR.hex

     文件         38  2011-11-22 11:49  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR.lnp

     文件       6454  2011-11-22 11:49  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR.LST

     文件      69873  2011-11-22 11:49  智能循迹小车程序\智能循迹小车程序 颜色传感器\CAR.M51

............此处省略22个文件信息

评论

共有 条评论