范文一:光电传感器循迹小车
/*************************************************************************************
人员分配
小车的搭建:羊贤奇
网上资料查询:汪育琪
小车程序编程:程林 高康 黄朝刚
可实现的功能
Forward():向前直走
Pivot_Right():小幅度右转
Rotate_right():向右旋转
Pivot_Left():小幅度左转
Rotate_Left():向左旋转
引脚配置
P1_1:左轮
P1_0:右轮
P2_1:右边的传感器
P2_2:中间的传感器
P2_3:左边的传感器
/************************************************************************************/
#include
#include #define uint unsigned int #define uchar unsigned char uchar QTIState ; void delay_nus(uint c) { c--; } void delay_nms(uint d) { uint i; for(i=0;i>1000;i++) {for(;d<0;d--)>0;d--)> } } void Time1_init(void) { EA = 1; //硬件串口使用定时器1,供AT89S52与PC机通信使用 TMOD |= 0x20; //定时器1方式2.8位自动重装模式 SCON = 0x50; //模式1,8位数据 TH1 = 0xFD; //波特率为9600 TL1 = 0xFD; TR1 = 1; //起动定时器 TI = 1; } void Forward(void)//向前行走子程序 { P1_1=1; delay_nus(1700); P1_1=0; P1_0=1; delay_nus(1300); P1_0=0; delay_nms(20); } void Pivot_Left(void)//左转子程序 { P1_1=1; delay_nus(1500); P1_1=0; P1_0=1; delay_nus(1350); P1_0=0; delay_nms(20); } void Pivot_Right(void)//右转子程序以...为中心旋转 { P1_1=1; delay_nus(1650); P1_1=0; P1_0=1; delay_nus(1500); P1_0=0; delay_nms(20); } void Rotate_right(void)//使转动旋转 { P1_1=1; delay_nus(1650); P1_1=0; P1_0=1; delay_nus(1650); P1_0=0; delay_nms(20); } void Rotate_Left(void) { P1_1=1; delay_nus(1350); P1_1=0; P1_0=1; delay_nus(1350); P1_0=0; delay_nms(20); } void Get_QTI_State(void) { QTIState = P2&0x0e ; } void Follow_Line(void) { Get_QTI_State(); switch(QTIState) { case 0x04 : Forward(); break; case 0x06 : Pivot_Right(); break; case 0x02 : Rotate_right(); break; case 0x0c : Pivot_Left(); break; case 0x08 : Rotate_Left(); break; default : Forward(); break; } } void main(void) { Time1_init(); printf("program run ok!"); while(1) { Follow_Line(); } } AGV小车环境感知传感器介绍 AGV小车在运行的过程中,为了实现自主避障,必须依赖于外部环境信息的获取,感知障碍物的存在,测量障碍物的距离。目前,AGV小车避障传感器主要有激光传感器、视觉传感器、红外传感器、超声波传感器等。 1、激光传感器 激光传感器是利用激光进行测量的传感器,激光测距的原理与无线电雷达相同,将激光对准目标发射出去后,测量它的往返时间,再乘以光速即得到往返距离。由于激光具有高方向性、高单色性和高功率等优点,因此激光传感器能够实现远距离测量,速度快,精度高,量程大,抗光,电干扰能力强。这也是激光传感器可以用来定位导航的原因。 视觉传感器 2、 视觉传感器的应用相当于给AGV配备了眼睛。AGV通过CCD传感器获取周围的环境信息,然后经过一定的图像处理方法,提取有用特征,与内存中存取的基准图像进行比较,做出分析,据此给AGV发布命令。米克力美在视觉传感器上将会加大研发力度,把图像识别技术与激光导引技术相结合,使得AGV环境感知更加精确和可靠,行驶更加安全。 3、红外测距传感器 红外测距传感器包括红外二级管发射器和红外接收器。二极管发射出红外线调制信号,红外线遇障碍物后被反射回来由接收器接收。红外传感器有两种常用的测距方法,一种是根据反射光线的强度与距离成反比,通过测量反射光强度得到距离信息。另一种以夏普的红外测距传感器为典型,基于三角测距法。 4、超声波传感器 超声波是一种震动频率高于声波的机械波。超声波传感器也叫超声换能器,人们可以利用超声换能器实现机械能和电能之间的转换。超声波传感器既可以发射超声波,也可以接收超声波。发射换能器发射出固定频率的超声波,声波在传播过程中,遇到障碍物后被反射回来,由接受花能器接收。 环境感知传感器在AGV小车避障中扮演者举足轻重的作用,直接关系到AGV是否能够稳定运行。I-SO系列AGV小车系统之所以能够准确稳定运行,是因为米克力美对底层传感器技术进行了大量的研究,自主研发了一套超高频声光模拟测距系统来实现安全避障,通过障碍物反射信号进行模拟运算进行测定,实现精准自主避障。 成绩评定: 传感器技术 课程设计 题 目 霍尔传感器小车测速 摘要 对车速测量,利用霍尔传感器工作频带宽、响应速度快、测量精度高的特性结合单片机控制电路,设计出了一种新型的测速系统,实现了对脉冲信号的精确、快速测量,硬件成本低,算法简单,稳定性好。霍尔传感器测量电路设计、显示电路设计。测量速度的霍尔传感器和车轴同轴连接,车轴没转一周,产生一定量的脉冲个数,有霍尔器件电路部分输出幅度为12 V 的脉冲。经光电隔离器后成为输出幅度为5 V 转数计数器的计数脉冲。控制定时器计数时间,即可实现对车速的测量。在显示电路设计中,实现LED上直观地显示车轮的转数值。与软件配合,实现了显示、报警功能 关键词:单片机AT89C51 传感器 LED 仿真 目 录 一 、设计目的 ------------------------- 1 二、设计任务与要求 --------------------- 1 2.1设计任务 ------------------------- 1 2.2设计要求 ------------------------- 1 三、设计步骤及原理分析 ----------------- 1 3.1设计方法 ------------------------- 1 3.2设计步骤 ------------------------- 3 3.3设计原理分析 --------------------- 10 四、课程设计小结与体会 ---------------- 11 五、参考文献 ------------------------- 11 一、设计目的 通过《传感器及检测技术》课程设计,使学生掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。进一步理解传感器及检测系统的设计和应用。 用霍尔元件设计测量车速的电子系统,通过对霍尔元件工作原理的掌握实现对车速测量的应用,设计出具体的电子系统电路,并且能够完成精确的车速测量。 二、设计内容及要求 2.1设计任务 霍尔传感器一般由霍尔元件和磁钢组成,当霍尔元件和磁钢相对运动时,就会产生脉冲信号,根据磁钢和脉冲数量就可以计算转速,进而求出车速。 现要求设计一个测量系统,在小车的适当位置安装霍尔元件及磁钢,使之具有以下功能: 功能:1)LED数码管显示小车的行驶距离(单位:cm)。 2)具有小车前进和后退检测功能,并用指示灯显示。 3)记录小车的行驶时间,并实时计算小车的行驶速度。 4)距离测量误差<2cm。 5)其它。 2.2设计要求 设计要求首先选定传感器,霍尔传感器具有灵敏、可靠、体积小巧、无触点、无磨损、使用寿命长、功耗低等优点,综合了电机转速测量系统的要求。其次设计一个单片机小系统,掌握单片机接口电路的设计技巧,学会利用单片机的定时器和中断系统对脉冲信号进行测量或计数。再次实时测量显示并有报警功能,实时测量根据脉冲计数来实现转速测量的方法。要求霍尔传感器转速为0~5000r/min。 三、设计步骤及原理分析 3.1 设计方法 3.1.1 霍尔效应 所谓霍尔效应,是指磁场作用于载流金属导体、半导体中的载流子时,产生横向电位差的物理现象。金属的霍尔效应是1879年被美国物理学家霍尔发现的。 当电流通过金属箔片时,若在垂直于电流的方向施加磁场,则金属箔片两侧面会出现横向电位差。半导体中的霍尔效应比金属箔片中更为明显,而铁磁金属在居里温度以下将呈现极强的霍尔效应。霍尔效应的原理图如图1-2所示。 图1-2霍尔效应的原理图 当电流I通过放在磁场中的半导体基片(霍尔元件)且电流方向和磁场方向垂直时,在垂直于电流和磁通的半导体基片的横向侧面上即产生一个电压,这个电压称为霍尔电压U。霍尔电压U的高低与通过的电流I和磁场强度B成正比,可用下列公式表示: 式中K—霍尔元件的灵敏度 I—电流 B—磁场强度 由上式知霍尔电动势与、I、B有关。当I、B大小一定时,越大,越大。显然,一般希望越大越好。 若磁感应强度B不垂直于霍尔元件,而是与其法线成某一角度θ时,此时的霍尔电动势为 U=KIBcosθ 由上式可知,当通过的电流I为一定值时,霍尔电压与磁场强度B成正比,且当B的方向改变时,霍尔电势的方向也随之改变。即霍尔电压的大小只与磁场强度大小关而与磁通的变化速率无关。如果所施加的磁场为交变磁场,则霍尔电势为同频率的交变电动势。由于通电导线周围存在磁场,其大小与导线中的电流成正比,故可以利用霍尔元件测量出磁场,就可确定导线电流的大小。利用这一原理可以设计制成霍尔电流传感器。其优点是不与被测电路发生电接触,不影响被测电路,不消耗被测电源的功率,特别适合于大电流传感。若把霍尔元 件置于电场强度为E、磁场强度为H的电磁场中,则在该元件中将产生电流I,元件上同时产生的霍尔电位差与电场强度E成正比,如果再测出该电磁场的磁场强度,则电磁场的功率密度瞬时值P可由P=EH确定。 如果把霍尔元件集成的开关按预定位置有规律地布置在物体上,当装在运动物体上的永磁体经过它时,可以从测量电路上测得脉冲信号。根据脉冲信号列可以传感出该运动物体的位移。若测出单位时间内发出的脉冲数,则可以确定其运动速度。 3.1.2 霍尔元件测速原理 基于霍尔传感器的速度测量系统工作过程是:测量转速的霍尔传感器和机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路部分输出。经光电耦合后,成为转速计数器的计数脉冲。同时传感器电路输出幅度为12v的脉冲经光电耦合后降为5v,保持同89C51逻辑电平相一致。控制计数时间,即可实现计数器的计数值对应机轴的转速值。CPU将该值数据处理后,在LCD上显示出来。一旦超速,CPU通过喇叭和指示灯发出声、光报警信号。 3.2设计步骤 3.2.1 系统框图及主程序流程框图 1.系统框图 以单片机AT89C5l为控制核心,用霍尔集成传感器作为测量转速的检测元件,最后用字符型液晶显示器1602(HD44780控制)显示的小型直流电动机转速的方法,是数字式测量方法,智能化微电脑代替了传统的机械式或模拟式结构。系统原理框图如图3所示。 图3-2-1系统原理框图 本次设计系统以单片机AT89C5l为控制核心。用霍尔集成传感器作为测量小型直流电机转速的检测元件,经过单片机数据处理,用字符型液晶显示器1602显示小型直流电机的转速。另外系统还可完成对电机的开关控制、系统工作时间、当前时间及电机状态的显示。单片机转速测量系统。组成单片机转速测量系统的有传感器、处理器、计数器和显示器四个部分组成。 2. 主程序流程图 3整体电路设计 霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。经过电耦合器后,即经过隔离整形电路后,成为转数计数器的计数脉冲。同时霍尔传感器电路输出幅度为12V的脉冲经光电耦合后降为5V,保持同单片机AT89C51逻辑电平相一致,控制计数时间,即可实现计数器的计数值对应机轴的转速值。先进行初始化设置各定时器初值,然后判断是否启动系统进行测量。如果是,就启动系统运行。如果不是就等待启动。启动系统后,霍尔传感器检测脉冲到来后,启动外部中断,每来一个脉冲中断一次,记录脉冲个数。同时启动T0定时器工作,每1秒定时中断一次,读取记录的脉冲个数,即电机转速。连续采样三次,取平均值记为一次转速值。再进行数值的判断,若数值高于5000rpm则报警并返回初始化阶段,否则就进行正常速度液晶显示。 4传感器部分 主要分为两个部分。第一部分是利用霍尔器件将电机转速转化为脉冲信号;第二个部分是使用光耦,将传感器输出的信号和单片机的计数电路两个部分隔开,减少计数的干扰。用于测量的A44E集成霍尔开关,磁钢用直径D=6.004mm,长度为L=3.032mm的钕铁硼磁钢。电源用直流,霍尔开关输出由四位半直流数字电压表测量,磁感应强度B用95A。 5定时器中断 主程序在对定时器、计数器、堆栈等进行初始化后即判断标志位是否为1,如果为1,说明要求对数据进行计算处理,首先将标志位清零,以保证下次能正常判断,然后进入数据处理程序,由于这里的闸门时间为1s,而显示要求为转/分,因此,要将测到的数据进行转换,转换的方法是将测得的数据乘以60,但由于转轴上安装有4只磁钢,每旋转一周可以得到4个脉冲,因此,要将测得的数据除以4,所以综合起来,将测得的数据乘以60/4=15即可得到每分钟的转速。计算得到的结果是二进制的整数,要将数据送往显示缓冲区需要将该数转化为BCD码。运算得到的是压缩BCD码,需要将其转换为非压缩BCD码。定时器T0用作4ms定时发生器,在定时中断程序中进行数码管的动态扫描,同时产生1s的闸门信号。1s闸门信号的产生是通过一个计数器Count,每次中断时间为4ms,每计250次即为1s,到了1s后,即清除计数器Count,然后关闭作为计数器用的INT0,读出TH0、TL0中的数值,分 别送入SpCount和SpCount+1单元,将T0中的值清空,置标志位为1,要求主程序进行速度值的计算。这里还有一个细节,用作1s闸门信号产生的Count每次中断都会加1,而INT0却有一个周期是被关闭的,因此,计数值是251而不是250。系统采用外部晶振,系统时钟SYSCLK等于18432000,T0定时1ms,初始化时TH0=(-SY-SCLK/1000)》8;TL0=-(SYSCLK/1000)。等待1s到,输出转速脉冲个数N,计算电机转速值。将1s内的转速值换算成1 min内的电机转速值,并在LCD上输出测量结果。 /*------------------------主 函 数 -------------------------*/ void main() { int_all();//全局初始化 while(1) { disp_count();//数据处理 if(zhuan>5000) // 转速警告 { warning=1; } if(zhuan warning=0; } write_command(0x80); for (i=0;i write_data(display[i]); //LCD显示 delay(5); } } } 中断服务程序设计 一、外部计数中断 /*-------------------外部中断0计数程序-------------------*/ void counter(void) interrupt 0 { EX1=0; //关外部中断0 count++;//计数加1 if(count==4) //4次循环为电机转一圈 { count=1; //初始化计数 z++;//转圈计数加1 } EX1=1; //开外部中断0 } 二、定时器中断 /*-----------------内部中断0计时计数程序-----------------*/ void Time0(void) interrupt 2 using 0 { TH0=0x4c; //50ms定时 TL0=0x00; msec++; if(msec==20) //50*20=1S { 6显示程序设计 msec=0; zhuan=z; z=0; } } 液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。向LCD输入的数据有两种,一种是指令,一种是数据。指令是负责初始化LCD与LCD显示字符是什么位置。数据是告诉该显示什么。命令与数据是RS端的高低电平来确定。数据开始的时候是由LCDCS高电平开始,低电平结束。 /*--------------------向LCD1602写命令--------------------*/ void write_command(uchar command) { rs=0; //选择写命令 P0=command; //向LCD写命令 lcdcs=1; //信号使能端高电平 lcdcs=0; //信号使能端低电平 } /*-------------------------------------------------------*/ /*--------------------向LCD1602写数据--------------------*/ void write_data(uchar data0) { rs=1; //选择写数据 P0=data0; //向LCD写数据 lcdcs=1; //信号使能端高电平 lcdcs=0; //信号使能端低电平 } 7报警程序设计 蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。蜂鸣器程序设计思路:本程序通过在输出一个音频范围的方波,驱动实验板上的蜂鸣器发出蜂鸣声,其中Delay延时子程序的作用是使输出的方波频率在人耳朵听觉能力之内的20KHZ以下,如果没有这个延时程序的话,输出的频率将大大超出人耳朵的听觉能力,我们将不能听到声音。更改延时常数,可以改变输出频率,也就可以调整蜂鸣器的音调。 代码为: if(zhuan>5000) { warning=1; } if(zhuan { warning=0; } 8转速处理程序的设计 测速的方法决定了测速信号的硬件连接,测速实际上就是测频,因此,频率测量的一些原则同样适用于测速。通常,可以用计数法、测脉宽法和等精度法来进行测试。所谓计数法,就是给定一个闸门时间,在闸门时间内计数输入的脉冲个数;测脉宽法是利用待测信号的脉宽来控制计数门,对一个高精度的高频计数信号进行计数。由于闸门与被测信号不能同步,因此,这两种方法都存在±1误差的问题,第一种方法适用于信号频率高时使用,第二 种方法则在信号频率低时使用。等精度法则对高、低频信号都有很好的适应性。 对于转速与速度的处理方法:v?[n/4(r/s)??d(mm)?10?3](m/s); 其中: n为测得的1s脉冲数, /*-----------------------数据处理------------------------*/ void disp_count() { display[9]=(zhuan/1000+'0'); //转换转速的千位 display[10]=(zhuan/100%10+'0'); //转换转速的百位 display[11]=(zhuan/10%10+'0'); //转换转速的十位 19 display[12]=(zhuan%10+'0'); //转换转速的十位 } d为车轮直径, 3.3设计原理分析 3.3.1 处理器的选择 处理器种类分为MCU、ARM、DSP等,考虑到实用性与经济行,决定采用MCU作为处理芯片,因为ARM和DSP比较昂贵而且结构较大,对于处理简单的计时和信号处理有些浪费,所以还是选用廉价实用的8051作为处理器。 3.3.2霍尔元件的选择 按照霍尔开关的感应方式可将它们分为:单极性霍尔开关、双极性霍尔开关、全极性霍尔开关。 单极性霍尔开关的感应方式:磁场的一个磁极靠近它,输出低电位电压(低电平)或关的信号,磁场磁极离开它输出高电位电压(高电平)或开的信号,但要注意的是,单极性霍尔开关它会指定某磁极感应才有效,一般是正面感应磁场S极,反面感应N极。 双极性霍尔开关的感应方式:因为磁场有两个磁极N、S(正磁或负磁),所以两个磁极分别控制双极性霍尔开关的开和关(高低电平),它一般具有锁定的作用,也就是说当磁极离开后,霍尔输出信号不发生改变,直到另一个磁 极感应。另外,双极性霍尔开关的初始状态是随机输出,有可能是高电平,也有可能是低电平。 全极性霍尔开关的感应方式:全极性霍尔开关的感应方式与单极性霍尔开关的感应方式相似,区别在于,单极性霍尔开关会指定磁极,而全极性霍尔开关不会指定磁极,任何磁极靠近输出低电平信号,离开输出高电平信号。 考虑到实际情况,采用双极性霍尔元件,把磁珠极性来源进行脉冲计数。 3.3.3 系统完整电路框图(附录) 四、课程设计小结与体会 通过本次设计使我对霍尔元件及霍尔效应有了进一步的了解:霍尔转速传感器的稳定性好,抗外界干扰能力强,如抗错误的干扰信号等,因此不易因环境的因素而产生误差。霍尔转速传感器的测量频率范围宽,远远高于电磁感应式无源传感器。霍尔转速传感器的稳定性好,抗外界干扰能力强,如抗错误的干扰信号等,因此不易因环境的因素而产生误差。霍尔转速传感器的测量频率范围宽,远远高于电磁感应式无源传感器。并且霍尔转速传感器的安装简单,使用方便,能实现远距离传输。另外,霍尔转速传感器在防护措施有效的情况下,可以不受电子、电气环境影响。同时也通过本次课程设计是我对传感器自动检测技术及应用这门课程有了更深的了解,掌握如何应用传感器去设计电子产品,为将来的实践工作打下了基础。同时也感谢老师给了我们做这次设计的机会。 五、参考文献 [1] 郑建祥.电子车速表的设计[J].江苏理工大学学报,1999,20,(3): 78-81. [2] 施密特触发器原理及特性. http://wenku.baidu.com/view/2bbb242de2bd960590c67752.html [3] 移位寄存器74LS16中文资料. http://wenku.baidu.com/view/e5821cea81c758f5f61f6752.html [4] 李建波.接口技术实习指导书---电机转速测量实习[M].广东:广东机电职业 技术学院自编教材. [5] LED七段数码显示管. http://wenku.baidu.com/view/99fc58ce050876323112124e.html [6]霍尔传感器在机车测速中的应用研究. http://wenku.baidu.com/view/d251d768a98271fe910ef959.html [7]常慧玲.传感器与自动检测[M].北京:电子工业出版社,2009. [8]李增国.传感器与检测技术[M].北京:北京航空航天大学出版社,2009. 附录 完整的电路图 AGV 小车磁导航传感器的关键技术 概述 (AGV小车-磁导航传感器-磁导航产品-地标传感器-站点传感器-磁传感器-磁导航-导航磁条) 为使自动导弓}小车成功地完成一项任务,最主要的是如何使小车在复杂的环境中以较小的代价到达目的地。这就涉及到如下几个问题的解决,即: (1)如何从环境中得到自动导引小车周围的障碍物信息及其它相关信息; (2)如何根据内部及外部传感器来回答小车当前处于环境中的什么位置; (3)如何根据小车的当前位置和当前信息确定行动策略; (4)如何产生合适的驱动信号使小车运动在预定的轨迹上。 这四个问题的解决对于在实时环境中运动的小乍来说是缺一不可的,与此相对应的技术即为传感器技术、自定位技术、规划决策技术和运动控制技术。 AGV 磁导航传感器的发展情况 20世纪70年代,AGV 作为生产组成部分进入了生产系统,并得到了迅速发展。1973年,瑞典VOLVO 公司大量采用了AGV 进行计算机控制装配作业,在KALMAR 轿车厂的装配线上大放异彩,使AGV 的使用范围得到了大大的扩展。 20世纪70年代,AGV 导引技术基本是靠感应埋在地下的导线产生的电磁频率。为了指引AGV 沿着预定的路径行驶,打开或关闭导线中的频率,通过一个叫做“地面控制器”的设备。 20世纪80年代,AGV 系统得到了升级,无线式导引技术应用于其中,例如利用激光和惯性进行导引,这样提高了AGV 系统的灵活性和准确性,而且,当需要修改路径时,也不必改动地面或中断生产。与当初的埋在地下的感应装备相比,可靠性和灵活性大大提高。这些导引方式的引入,使得AGV 小车的导引方式更加多样化了。 在20世纪80年代末,自动搬运车的类型超过20种,数量超过10000台,其生产厂家达47 家,广泛使用在医药、印刷、汽车制造、钢铁、化工、运输业、机械、电子、仓储和商业上。 从20世纪80年代以来,自动导引运输车(AGV )系统已经发展成为生产物流系统中最大的专业分支之一,成为现代化企业自动化物流中举重轻重的组成部分,并出现团体化,产业化发展的趋势。在欧、美等发达国家,AGV 的发展最迅速,应用最广泛;在亚洲则相对差一些,但在日本和韩国,也有快速的发展和应用,特别是在日本,前面已经提及,现在日本是使用这种车辆最多的国家。技术方面已经快赶超欧美了。而我国的AGV 历史比较晚,发展也不如外国缓慢,市场前景来说倒是十分丰富。 单片机智能寻迹机器人功能描述: 单片机智能寻迹机器人功能描述 1:前方位红外探头让你实现智能寻迹功能(可走黑线或白线) 前方位红外探头让你实现智能寻迹功能(可走黑线或白线) 前方位红外探头让你实现智能寻迹功能 2:正前方的红外反射探头实现智能防撞功能 正前方的红外反射探头实现智能防撞功能. 正前方的红外反射探头实现智能防撞功能 3:红外遥控器的解码让你用红外遥控小车 红外遥控器的解码让你用红外遥控小车 4:前方定位发光二极管,让你在学习点亮 LED 灯的同时,模 前方定位发光二极管, 灯的同时, 前方定位发光二极管 拟汽车前方位灯光。 拟汽车前方位灯光。 5:底板光敏电阻的加放,为机器人增加了白天黑夜识别功能。 :底板光敏电阻的加放,为机器人增加了白天黑夜识别功能。 6:话筒的存在让你完全感受声控的乐趣。 :话筒的存在让你完全感受声控的乐趣。 7:蜂鸣器的报警功能,为机器人增添了报警功能 :蜂鸣器的报警功能, 8:串口通信与电脑软件的结合,给予你电脑控制机器人的方 :串口通信与电脑软件的结合,给予你电脑控制机器人的方 法,串口库的开放让你实现自由电脑编程控制。 串口库的开放让你实现自由电脑编程控制。 9:按键中断与查询的加入也成为控制小车的又一方法.让你良 :按键中断与查询的加入也成为控制小车的又一方法 让你良 好的学习的键盘控制. 好的学习的键盘控制 10: 电机驱动芯片为电机控制提供了最优的方法 让软件编写 电机驱动芯片为电机控制提供了最优的方法,让软件编写 变的简单可行. 变的简单可行 11:本机最大特点 完全实现 ISP(IAP)在线编程 让你不用再 本机最大特点,完全实现 在线编程,让你不用再 本机最大特点 在线编程 为购买编程器而担心.完全无需编程器 为购买编程器而担心 完全无需编程器. 完全无需编程器 12:视频教学光盘与指导书的编写 例程的开源让你完全无师 视频教学光盘与指导书的编写,例程的开源让你完全无师 视频教学光盘与指导书的编写 自通. 自通 13:完全支持 C 语言与汇编语言开发与在线调试 完全支持 语言与汇编语言开发与在线调试. 本机提供服务描述: 本机提供服务描述 A:例程代码的在线讲解 例程代码的在线讲解. 例程代码的在线讲解 B:机器人的组装在线指导 机器人的组装在线指导. 机器人的组装在线指导 C:代码思路的在线指导 代码思路的在线指导. 代码思路的在线指导 D:参考代码的案例开发 参考代码的案例开发. 参考代码的案例开发 E:机器人售后技术支持与技术开发服务 机器人售后技术支持与技术开发服务 单片机益智系列——智能 寻迹机器人是由上海益芯科技有限公司 智能寻迹机器人是由上海益芯科技有限公司 单片机益智系列 为科教方便而研发设计。 根据现代学校对嵌入式系统开发的需求。 依 为科教方便而研发设计。 根据现代学校对嵌入式系统开发的需求。 据提高学生实际动手操作能力和思考能力, 据提高学生实际动手操作能力和思考能力, 以加强学生对现实生活中 嵌入式系统的应用为参照。 智能寻迹机器人全新的设计模式, 良好的 嵌入式系统的应用为参照。 智能寻迹机器人全新的设计模式, 电路设计,一体化的机电组合,智趣的系统开发, 电路设计,一体化的机电组合,智趣的系统开发,更是成为加强学生 学习兴趣的总动源。 学习兴趣的总动源。 总动源 智能寻迹机器人采用现在较为流行的8位单片机作为系统大脑。 智能寻迹机器人采用现在较为流行的 位单片机作为系统大脑。以 位单片机作为系统大脑 8051系列家族中的 AT89S51/AT89S52为主芯片。40脚的 系列家族中的 为主芯片。 脚的 为主芯片 DIP 封装使它拥有 个完全 IO(GPIO—通用输入输出 端口,通 封装使它拥有32个完全 通用输入输出)端口 通用输入输出 端口, 过对这些端口加以信号输入电路, 控制电路, 执行电路共同完成寻迹 过对这些端口加以信号输入电路, 控制电路, 机器人。 机器人。P0.0,P0.1,P0.2,P0.3分别通过 LG9110电机驱动 , , , 分别通过 电机驱动 来驱动电机1和电机 。由电机的正转与反转来完成机器人的前进, 来驱动电机 和电机2。由电机的正转与反转来完成机器人的前进, 和电机 后退,左转,右转,遇障碍物绕行,避悬崖等基本动作。在机器人前 后退,左转,右转,遇障碍物绕行,避悬崖等基本动作。 进时如果前方有障碍物, 由红外发射管发射的红外信号被反射给红外 进时如果前方有障碍物, 由红外发射管发射的红外信号被反射给红外 接收管, 红外接管将此信号经过 P3.7传送入 AT89S52中, 接收管, 传送入 中 主芯片 通过内部的代码进行机器人的绕障碍物操作, 同时主芯片将 P3.7的 通过内部的代码进行机器人的绕障碍物操作, 的 指示灯显示出来。 信号状态通过 P2.5的 LED 指示灯显示出来。机器人行走时会通过 的 P3.5与 P3.6的红外接收探头来进行检测。 当走到悬崖处时, 与 的红外接收探头来进行检测。 当走到悬崖处时, P3.5 的红外接收探头来进行检测 将收到一个电平信号, 或 P3.6将收到一个电平信号, 将收到一个电平信号 此电平信号将通过相应端口传送入主 芯片中,主芯片通过内部代码完成机器人的避悬崖操作。同时 P3.5 芯片中,主芯片通过内部代码完成机器 人的避悬崖操作。 显示出来。 在机器人的左转, 与 P3.6的信号状态将通过 P2.6/P2.7显示出来。 的信号状态将通过 显示出来 在机器人的左转, 右转, 可以通过观看以 P2.0/P0.7为指示灯的运行状 右转,后退的过程, 后退的过程, 为指示灯的运行状 为机器人的声控检测端口, 态。P0.4为机器人的声控检测端口,在运行为前进状态时,可以能 为机器人的声控检测端口 在运行为前进状态时, 过声控(如拍手声 来控制它的运行与停止 过声控 如拍手声)来控制它的运行与停止。P0.6为机器人的声音输 如拍手声 来控制它的运行与停止。 为机器人的声音输 出端。 出端。 在机器人遇到障碍物时。 在机器人遇到障碍物时。 进行绕障碍物与避悬崖时可以通过此 端口控制蜂鸣器发出报警声。 当为白天或黑夜时可以通过 P0.5端口 端口控制蜂鸣器发出报警声。 端口 中的光敏电阻来进行判断,以方便完成机器人夜间自动照明等功能。 中的光敏电阻来进行判断,以方便完成机器人夜间自动照明等功能。 两个按键以查询/中断两种不同的方式来展现按键操作。 两个按键以查询 中断两种不同的方式来展现按键操作。你可以按下 中断两种不同的方式来展现按键操作 S1键来进行机器的停止。再按下 S2键来进行机器人的运行。这个 键来进行机器的停止。 键来进行机器人的运行。 键来进行机器的停止 键来进行机器人的运行 按键的信息分别被 P3.2,P3.4接收到。IR1为红外遥控接收器, , 接收到。 为红外遥控接收器, 接收到 为红外遥控接收器 这就为机器人进行远程遥控创造了可能。 这个红外遥控接收头接收到 这就为机器人进行远程遥控创造了可能。 送入到主芯片, 红外信号时将信号经过 P3.3送入到主芯片, 送入到主芯片 主芯片对其进行解密后 以不同的方式对机器人进行控制。 以不同的方式对机器人进行控制。同时将用户的按键信息通过 P2端 端 数码管显示出来。 端口的加入, 口上 LED 数码管显示出来。P3.0、P3.l 中 COM 端口的加入,让 、 你完全可以用电脑对其进行控制。 你完全可以用电脑对其进行控制。 你可以通过对串口发送数据, 你可以通过对串口发送数据, 数据 数码管中,并让机器人执行相应的功能。 会被显示到 LED 数码管中,并让机器人执行相应的功能。电脑的串 口软件要求波特率为9600。8位数据位,这时你就可以快乐的用电 。 位数据位 位数据位, 口软件要求波特率为 脑来对它进行你的完全控制了。 脑来对它进行你的完全控制了。 EXKJ-ZN02功能的组合多样,使得学生可以充分发挥自主能 功能的组合多样,使得学生可以充分发挥自主能 功能的组合 多样 力, 制作出不同的机器人。 制作出不同的机器人。 它为学校进行机器人竞赛和毕业项目设计 建立了实物平台, 是学校教师授课变得更轻松有趣。 同时也能改变学 建立了实物平台, 是学校教师授课变得更轻松有趣。 生学习模式和激发学习兴趣。更是作为验证学生学习效果的有力工 生学习模式和激发学习兴趣。 具。良好的电路板设计,让学生制作变得方便容易,其大大提高了学 良好的电路板设计,让学生制作变得方便容易, 生的制作成功率。 提高了学生对电子电路的兴趣, 更是教学过程中不 生的制作成功率。 提高了学生对电子电路的兴趣, 可或缺的教具。 可或缺的教具。 智能寻迹机器人套件包括以下模块: 智能寻迹机器人套件包括以下模块 1:智能寻迹机器人车一套 智能寻迹机器人车一套 2:红外遥控器一套 红外遥控器一套 3:COM 串口通信线一条 4:视频光盘及资源光盘各一张 视频光盘及资源光盘各一张 备注:对于无 COM 端口的电脑或想用笔记本的用户可以选择 备注 对于无 USB->COM 线来进行程序下载 另配 从而实现 USB 端口程序下 线来进行程序下载 另配)从而实现 下载.(另配 载. 智能小车的自动寻迹实验 【实验目的】 熟悉光敏电阻的性质 熟悉 ICCAVR 编译环境 进一步熟悉单片机各端口的特性和作用 能够编写程序,利用光敏电阻的性质对小车进行控制 【实验器材】 小车一辆 导线五根 下载线一根 【实验原理】 (一)光敏电阻 当光照射在物体上,物体内部的原子释放出电子并不逸出物体表面,而仍留在内部,使 物体的电阻率1/R 发生变化的效应称为光电导效应。光敏电阻是一种光电导效应半导体器 件。由于光敏电阻没有极性,工作是可加直流偏压或交流电压。当无光照时,光敏电阻的阻 值(暗电阻)很大,电路中电流很小。当它受到一定波长范围的光照射时,其阻值(亮电阻) 急剧减小,电路中电流迅速增加,用电流表可以测量出电流。 本实验所采用的光敏电阻是硫化镉光敏电阻,下图是硫化镉光敏电阻的光照特 光敏电阻的检测 1. 用黑纸片将光敏电阻的透光窗口遮住,此时万用表的指针基本保持不动,阻值接近无穷 大。此值越大说明光敏电阻性能越好。若此值很小或接近为零,说明光敏电阻已烧穿损 坏,不能再继续使用。 2. 用一光源对准光敏电阻的透光窗口,此时万用表的指针应有较大幅度的摆动,阻值明显 减小。此值越小说明光敏电阻性能越好。若此值很大甚至无穷大,表明光敏电阻内部开 路损坏,也不能再继续使用。 3. 将光敏电阻透光窗口对准入射光线,用小黑纸片在光敏电阻的遮光窗上部晃动, 使其间 断受光,此时万用表指针应随黑纸片的晃动而左右摆动。如果万用表指针始终停在某一 位置不随纸片晃动而摆动,说明光敏电阻的光敏材料已经损坏。 (二)Atmega8515的端口特性 由于本实验主要用到 I/O 输入输出的 PA 端口,因此主要介绍 PA 端口的特性。端口 A(PA7..PA0)端口 A 为8位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称 的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外 部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口 A 处于高阻状态。 作为通用数字 I/O 使用时,所有 AVRI/O 端口都具有真正的读-修改-写功能。这意味着用 SBI 或 CBI 指令改变某些管脚的方向(或者是端口电平、禁止/使能上拉电阻)时不会无意地改 变其他管脚的方向(或者是端口电平、禁止/使能上拉电阻)。输出缓冲器具有对称的驱动能 力,可以输出或吸收大电流,直接驱动 LED。所有的端口引脚都具有与电压无关的上拉电阻。 并有保护二极管与 VCC 和地相连。 每个端口都有三个 I/O 存储器地址:数据寄存器–PORTx、数据方向寄存器–DDRx 和端 口输入引脚–PINx。数据寄存器和数据方向寄存器为读/写寄存器,而端口输入引脚为只读 寄存器。当寄存器 SFIOR 的上拉禁止位 PUD 置位时所有端口的全部引脚的上拉电阻都被禁 止。不论如何配置 DDxn,都可以通过读取 PINxn 寄存器来获得引脚电平。PINxn 寄存器的各 个位与其前面的锁存器组成了一个同步器。这样就可以避免在内部时钟状态发生改变的短 时间范围内由于引脚电平变化而造成的信号不稳定。 本实验主要应用 PA 端口的输入引脚 PINA。因此当我们把与光敏电阻的输出电压相连的 五个数据线连接到 PA 端口时可以通过读取寄存器 PINAx 来获得光探测装置输出的电平,在 AVR 中 PA 端口的反转电压是2.1V 为高电平。即当外部输入电压高于2.1V 时,PINAx 读取的输 入逻辑电平值为“1” ,当外部输入电压低于2.1V 时,PINAx 读取的输入逻辑电平值为“0”。 根据 PINA 寄存器放置的五个数据来判断小车的走向。 (三)本实验实现原理 当电路接通电源时,由小车主板的稳压电源电路稳定输出5 伏电压为小车下部的光探测 电路提供电源使二极管发光,当路面是白色时,二极管发出的光大部分被反射,光敏电阻就 接收到比较强的光照射,阻值变小,流过光敏电阻的电流变大。由于电阻的分压作用,使得 光敏电阻的输出电压较小,约为1.5V 左右。当路面是黑色时,由于黑色对光有吸收作用, 使得二极管发出的光大部分被吸收,只有小部分被反射,光敏电阻接收到 的光照就比较小, 阻值变大,流过光敏电阻的电流变小,光敏电阻的输出电压变大,约为2.5V 左右。共有五个 光敏电阻也就是有五个数据输出。这五个信号通过数据线与单片机的 PA 口相连,最左边的 电阻连接 PA 口的最低位 PA0,依次类推,一直连到 PA4 口。 【实验步骤】 (1) 连接好电路,把导线,下载线连接好,打开电源 (2) 进入 ICCAVR 编译环境,编写并调试程序直至没有错误,编译环境简介请参见 附录一 (3) 下载,烧录进单片机,看实验结果 (4) 反复修改调试程序,逐渐增强其功能 (5) 写好实验报告,实验心得体会 【实验电路】 小车的硬件连接图 小车轮子的驱动详见实验一 【程序示例】 由于在实验中黑线的宽度不同,寻迹中所用到的光敏电阻的部位也不同。下面程序的 例子是黑线的宽度只能覆盖一个光敏电阻时对小车的驱动程序 #include } //call this routine to initialize all peripherals void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts port_init(); MCUCR = 0x00; EMCUCR = 0x00; GICR = 0x00; TIMSK = 0x00; SEI(); //re-enable interrupts //all peripherals are now initialized } //****************小车前进的子程序********************* void runforth(void) { PORTE=0x04; PORTD=0x70; } //*****************小车左转的子程序********************* void zuozhuan(void) { PORTE=0x00; PORTD=0X70; } //****************小车右转的子程序********************* void youzhuan(void) { PORTE=0x04; PORTD=0x50; } //***************小车停止不动的子程序**************** void stop(void) { PORTE=0x00; PORTD=0x00; } //****************主程序*************************** void main(void) { while(1)//设置一个死循环,不断读取 PA 口的输入逻辑电平 { init_devices();//调用初始化函数 t=PINA&0x1f; //屏蔽掉 PA 口的高三位数据位 if(t==0x00) {stop();} else { switch(t) { case 0x01:zuozhuan();break; case 0x07:zuozhuan();break; case 0x02:zuozhuan();break; case 0x03:zuozhuan();break; case 0x04:runforth();break; case 0x0e:runforth();break; case 0x06:zuozhuan();break; case 0x08:youzhuan();break; case 0x10:youzhuan();break; case 0x0c:youzhuan();break; case 0x18:youzhuan();break; case 0x1c:youzhuan();break; } } } } 智能寻迹小车( 电路 程序 论文)下载 2010-04-19 16:02 整个电路系统分为检测、控制、驱动三个模块。首先利用光电对管对路面信号进行检测,经 过比较器处理之后,送给软件控制模块进行实时控制,输出相应 de 信号给驱动芯片驱动电机 转动,从而控制整个小车 de 运动。系统方案方框图如图1所示。 图1 智能小车寻迹系统框图 传感检测单元 小车循迹原理 该智能小车在画有黑线 de 白纸 “路面”上行驶, 由于黑线和白纸对光线 de 反射系数不同, 可根据接收到 de 反射光 de 强弱来判断“道路”—黑线。笔者在该模块中利用了简单、应用也 比较普遍 de 检测方法——红外探测法。 红外探测法,即利用红外线在不同颜色 de 物理表面具有不同 de 反射性质 de 特点。在小车行 驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小 车上 de 接收管接收;如果遇到黑线则红外光被吸收,则小车上 de 接收管接收不到信号。 传感器 de 选择 市场上用于红外探测法 de 器件较多,可以利用反射式传感器外接简单电路自制探头,也可以 使用结构简单、工作性能可靠 de 集成式红外探头。ST 系列集成红外探头价格便宜、体积小、 使用方便、性能可靠、用途广泛,所以该系统中最终选择了 ST168反射传感器作为红外光 de 发射和接收器件,其内部结构和外接电路均较为简单,如图2所示: 图2 ST168检测电路 ST168采用高发射功率红外光、电二极管和高灵敏光电晶体管组成,采用非接触式检测 方式。ST168de 检测距离很小,一般为8~15毫米,因为8毫米以下 shi 它 de 检测盲区,而大于 15毫米则很容易受干扰。笔者经过多次测试、比较,发现把传感器安装在距离检测物表面10 毫米时,检测效果最好。 R1限制发射二极管 de 电流,发射管 de 电流和发射功率成正比,但受其极限输入正向电流 50mAde 影响,用 R1=150de 电阻作为限流电阻,Vcc=5V 作为电源电压,测试发现发射功率完 全能满足检测需要;可变电阻 R2可限制接收电路 de 电流,一方面保护接收红外管;另一方 面可调节检测电路 de 灵敏度。因为传感器输出端得到 deshi 模拟电压信号,所以在输出端增 加了比较器,先将 ST168输出电压与2.5V 进行比较,再送给单片机处理和控制。 传感器 de 安装 正确选择检测方法和传感器件 shi 决定循迹效果 de 重要因素, 而且正确 de 器件安装方法 也 shi 循迹电路好坏 de 一个重要因素。从简单、方便、可靠等角度出发,同时在底盘装设4 个红外探测头,进行两级方向纠正控制,将大大提高其循迹 de 可靠性,具体位置分布如图3 所示。 图3 红外探头 de 分布图 图中循迹传感器全部在一条直线上。其中 X1与 Y1为第一级方向控制传感器,X2与 Y2 为第二级方向控制传感器, 并且黑线同一边 de 两个传感器之间 de 宽度不得大于黑线 de 宽度。 小车前进时,始终保持(如图3中所示 de 行走轨迹黑线)在 X1和 Y1这两个 第一级传感器之间, 当小车偏离黑线时,第一级传感器就能检测到黑线,把检测 de 信号送给小车 de 处理、控制 系统,控制系统发出信号对小车轨迹予以纠正。第二级方向探测器实际 shi 第一级 de 后备保 护,它 de 存在 shi 考虑到小车由于惯性过大会依旧偏离轨道,再次对小车 de 运动进行纠正, 从而提高了小车循迹 de 可靠性。 软件控制单元 单片机选型及程序流程 此部分 shi 整个小车运行 de 核心部件, 起着控制小车所有运行状态 de 作用。 控制方法有 很多,大部分都采用单片机控制。由于51单片机具有价格低廉 shi 使用简单 de 特点,这里选 择了 ATMEL 公司 deAT89S51作为控制核心部件,其程序控制方框图如图4所示。 图4 系统 de 程序流程图 小车进入循迹模式后,即开始不停地扫描与探测器连接 de 单片机 I/O 口,一旦检测到某 个 I/O 口有信号变化,程序就进入判断程序,把相应 de 信号发送给电动机从而纠正小车 de 状态。 车速 de 控制 车速调节 de 方法有两种:一 shi 用步进电机代替小车上原有 de 直流电机;二 shi 在原有 直流电机 de 基础上,采用 PWM 调速法进行调速。考虑到机械装置不便于修改等因素,这里 选择后者,利用单片机输出端输出高电平 de 脉宽及其占空比 de 大小来控制电机 de 转速,从 而控制小车 de 速度。经过多次试验,最终确定合适 de 脉宽和占空比,基本能保证小车在所 需要 de 速度范围内平稳前行。 电机驱动单元 从单片机输出 de 信号功率很弱,即使在没有其它外在负载时也无法带动电机,所以在实 际电路中我们加入了电机驱动芯片提高输入电机信号 de 功率, 从而能够根据需要控制电机转 动。根据驱动功率大小以及连接电路 de 简化要求选择 L298N,其外形、管脚分布如图5所示。 图5 L298N 管脚分布图 从图中可以知道,一块 L298N 芯片能够驱动两个电机转动,它 de 使能端可以外接高低 电平,也可以利用单片机进行软件控制,极大地满足各种复杂电路需要。另外,L298Nde 驱 动功率较大,能够根据输入电压 de 大小输出不同 de 电压和功率,解决了负载能力不够这个 问题。 结语 此方案选择 de 器件比较简单,实际中也很容易实现。经过多次测试,结果表明在一定 de 弧 度范围内,小车能够沿着黑线轨迹行进,达到了预期目标。不足之处,由于小车采用直流电 机,其速度控制不够精确和稳定,不能实现急转和大弧度 de 拐弯。 电路 程序 论文下载地址 u.115.com/file/f38e8e8ed5 类别:电路| | 添加到搜藏 | 分享到 i 贴吧 | 浏览(318) | 评论 (2) 下一篇:驻极体话筒的基本知识 上一篇:安全删除 U 盘时,遇到提示“无法... 相关文章: 红外遥控小车笔记—接收电路 最近读者: 登录 后,您 就出现 在这 里。 红外遥控小车笔记—发射电路 基于单片机的智能寻迹小车设计 设备技术网 来源:设备技术网 作者:李毅 卢仁义 吴甜 时间:2010-3-31 摘要: 摘要: 本文介绍了一种基于51单片机的小车寻迹系统。该系统采用两组高灵敏度的光电对管,对路面黑色 轨迹进行检测,并利用单片机产生 PWM 波,控制小车速度。测试结果表明,该系统能够平稳跟踪给定的路 径。 关键词: 关键词: 智能小车;光电对管;寻迹;脉冲宽度调制 在历届全国大学生电子设计竞赛中多次出现了集光、 机、 电于一体的简易智能小车题目。 笔者通过论证、 比较、实验之后,制作出了简易小车的寻迹电路系统。整个系统基于普通玩具小车的机械结构,并利用了小 车的底盘、前后轮电机及其自动复原装置,能够平稳跟踪路面黑色轨迹运行。 总体方案 整个电路系统分为检测、控制、驱动三个模块。首先利用光电对管对路面信号进行检测,经过比较器处 理之后,送给软件控制模块进行实时控制,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的 运动。系统方案方框图如图1所示。 图1 传感检测单元 智能小车寻迹系统框图 小车循迹原理 该智能小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到 的反射光的强弱来判断“道路”—黑线。笔者在该模块中利用了简单、应用也比较普遍的检测方法——红外探 测法。 红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。在小车行驶过程中不断 地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;如果遇到 黑线则红外光被吸收,则小车上的接收管接收不到信号。 传感器的选择 市场上用于红外探测法的器件较多,可以利用反射式传感器外接简单电路自制探头,也可以使用结构简 单、工作性能可靠的集成式红外探头。ST 系列集成红外探头价格便宜、体积小、使用方便、性能可靠、用 途广泛,所以该系统中最终选择了 ST168反射传感器作为红外光的发射和接收器件,其内部结构和外接电路 均较为简单,如图2所示: 图2 ST168检测电路 基于单片机的智能寻迹小车设计 设备技术网 时间:2010-3-31 ST168采用高发射功率红外光、电二极管和高灵敏光电晶体管组成,采用非接触式检测方式。ST168的检 测距离很小,一般为8~15毫米,因为8毫米以下是它的检测盲区,而大于15毫米则很容易受干扰。笔者经过 多次测试、比较,发现把传感器安装在距 离检测物表面10毫米时,检测效果最好。 R1限制发射二极管的电流,发射管的电流和发射功率成正比,但受其极限输入正向电流50mA 的影响, 用 R1=150的电阻作为限流电阻,Vcc=5V 作为电源电压,测试发现发射功率完全能满足检测需要;可变电阻 R2可限制接收电路的电流,一方面保护接收红外管;另一方面可调节检测电路的灵敏度。因为传感器输出端 得到的是模拟电压信号,所以在输出端增加了比较器,先将 ST168输出电压与2.5V 进行比较,再送给单片机 处理和控制。 传感器的安装 正确选择检测方法和传感器件是决定循迹效果的重要因素,而且正确的器件安装方法也是循迹电路好坏 的一个重要因素。从简单、方便、可靠等角度出发,同时在底盘装设4个红外探测头,进行两级方向纠正控 制,将大大提高其循迹的可靠性,具体位置分布如图3所示。 图3 红外探头的分布图 图中循迹传感器全部在一条直线上。其中 X1与 Y1为第一级方向控制传感器,X2与 Y2为第二级方向控 制传感器,并且黑线同一边的两个传感器之间的宽度不得大于黑线的宽度。小车前进时,始终保持(如图3中 所示的行走轨迹黑线)在 X1和 Y1这两个第一级传感器之间, 当小车偏离黑线时, 第一级传感器就能检测到黑 线,把检测的信号送给小车的处理、控制系统,控制系统发出信号对小车轨迹予以纠正。第二级方向探测器 实际是第一级的后备保护,它的存在是考虑到小车由于惯性过大会依旧偏离轨道,再次对小车的运动进行纠 正,从而提高了小车循迹的可靠性。 基于单片机的智能寻迹小车设计 设备技术网 软件控制单元 时间:2010-3-31 单片机选型及程序流程 此部分是整个小车运行的核心部件,起着控制小车所有运行状态的作用。控制方法有很多,大部分都采 用单片机控制。由于51单片机具有价格低廉是使用简单的特点,这里选择了 ATMEL 公司的 AT89S51作为控 制核心部件,其程序控制方框图如图4所示。 图4 系统的程序流程图 小车进入循迹模式后,即开始不停地扫描与探测器连接的单片机 I/O 口,一旦检测到某个 I/O 口有信号 变化,程序就进入判断程序,把相应的信号发送给电动机从而纠正小车的状态。 车速的控制 车速调节的方法有两种:一是用步进电机代替小车上原有的直流电机;二是在原有直流电机的基础上, 采用 PWM 调速法进行调速。考虑到机械装置不便于修改等因素,这里选择后者,利用单片机输出端输出高 电平的脉宽及其占空比的大小来控制电机的转速,从而控制小车的速度。经过多次试验,最终确定合适的脉 宽和占空比,基本能保证小车在所需要的速度范围内 平稳前行。 基于单片机的智能寻迹小车设计 设备技术网 电机驱动单元 从单片机输出的信号功率很弱,即使在没有其它外在负载时也无法带动电机,所以在实际电路中我们加 入了电机驱动芯片提高输入电机信号的功率,从而能够根据需要控制电机转动。根据驱动功率大小以及连接 电路的简化要求选择 L298N,其外形、管脚分布如图5所示。 时间:2010-3-31 图5 L298N 管脚分布图 从图中可以知道,一块 L298N 芯片能够驱动两个电机转动,它的使能端可以外接高低电平,也可以利用 单片机进行软件控制,极大地满足各种复杂电路需要。另外,L298N 的驱动功率较大,能够根据输入电压的 大小输出不同的电压和功率,解决了负载能力不够这个问题。 结语 此方案选择的器件比较简单,实际中也很容易实现。经过多次测试,结果表明在一定的弧度范围内,小 车能够沿着黑线轨迹行进,达到了预期目标。不足之处,由于小车采用直流电机,其速度控制不够精确和稳 定,不能实现急转和大弧度的拐弯。 参考文献: 参考文献: 1. 赵家贵、付小美、董平,新编传感器电路设计手册,中国计量出版社,2002 2. 3. 李华等,MCS-51系列单片机实用接口技术,北京航空航天大学出版社,2003 王晓明,电动机的单片机控制,北京航空航天大学出版社,2002范文二:AGV小车环境感知传感器介绍
范文三:霍尔传感器小车测速)
范文四:AGV小车磁导航传感器的关键技术
范文五:基于红外传感器的智能寻迹小车资料