欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    智能寻迹小车实验报告文档格式.docx

    • 资源ID:19472497       资源大小:776.77KB        全文页数:26页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    智能寻迹小车实验报告文档格式.docx

    1、处理器就根据是否收到反射回来的红外光为依 据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限,一般最大不应超过 3cm。2、驱动原理:利用L298N构成电机驱动电路。21 L298N 的恒压恒流桥式 2A 驱动芯片 引脚介绍:和和引脚直接接地;管脚VS接.到的电压,它是用来驱动电机的。引脚是用来接.到V的电压的,它是用来驱动芯片的,L298需要从外部接两个电压,一个给电机,一个给芯片。和引脚是使能端,一个使能端控制一个电机,至于控制哪个取决自己。可以理解为总开关,只有都是高电平的时候两个电机才能工作。,是的信号输入端,和单片机的IO口连接。,是输出端。输入和控制输出和,输入的,控制输出

    2、的,. ;L298N是SGS公司产品,内部包含4通道逻辑驱动电路,是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V,2A以下的电机。 ;OUT1,OUT2,和OUT3,OUT4直接分别接2个电动机。TN1,TN2,TN3,TN4引脚从单片机接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。 ;对于电机的调速,我们采用PWM调速的方法。其原理就是开关管在一个周期内的导通时间为,周期为。VCC是电源电压。电机的转速与电机两端的电压成正比,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比

    3、成比例。在硬件电路的连接上,我们将单片机的.口分别连接到的ININ上,通过改变P2.0上的高低电平变化以控制小车的前进方向,通过改变口上的高低电压的占空比以控制电机的转速。 ;PWM配合桥式驱动电路,实现直流电机调速,非常简单,且调速范围大。另外我们特别在直流电机的电驱两端并联一个磁片电容,以稳定电机的电压不致对单片机造成干扰,实际效果不错,省掉了通过光耦隔离TPL实现单片机输出信号与电机驱动信号隔离22驱动板电路原理: 该驱动板需要.电源供电,但的逻辑参考电平为典型的TTL电平。用了一个稳压芯片是为了提供稳定的V输出电压和逻辑参考电压。,和是发光二极管,指示运动方向,与它们连接的电阻是限流电

    4、阻。,是下拉电阻,让ENB和ENB要么是高电平,要么是低电平,避免电平混乱,提高对输入信号的抗干扰能力。输出端都接有.电容,加上二极管平衡电路。都是为了保护L298N,电机是感性负载,当给电机突然通电和断电,因为电流的瞬变,电机两端会产生瞬时高电压和大电流。如果没有保护措施,会被损害。3 智能小车舵机控制原理 利用舵机灵活控制超声波探头 1800旋转,可以实现小车的全方位避障。什么是舵机 在机器人机电控制系统中,舵机控制效果是性能的重要影响因素。舵机可以在微机电系统和航模中作为基本的输出执行机构,其简单的控制和输出使得单片机系统非常容易与之接口。舵机是一种位置(角度)伺服的驱动器,适用于那些需

    5、要角度不断变化并可以保持的控制系统。舵机工作原理 控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有 一个基准电路,产生周期为 20ms,宽度为 1.5ms 的基准信号,将获得的直流偏 置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机 驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器 旋转,使得电压差为 0,电机停止转动。舵机的控制 舵机的控制一般需要一个 20ms 左右的时基脉冲,该脉冲的高电平部分一 般为 0.5ms2.5ms 范围内的角度控制脉冲部分。以 180 度角度伺服为例,那么对 应的控制关系是这样的: 0.5ms-0 度

    6、; 1.0ms-45 度; 1.5ms-90 度; 2.0ms-135 度; 2.5ms-180 度;4. 智能小车避障基本原理 小车避障是利用超声波测距,并根据测出离障碍物不同距离而做出不同反应。超声波测距模块简介 检测距离:5CM-5M 分辨率:5MM 数字电平信号,可直接接单片机,无需任何辅助电路,也无需单片机产生任何信号辅助,距离和模块输出信号脉冲长度成正比。 尺寸:43.5*20.5 毫米 高度:13.8 毫米 2.5.2 超声波测距原理 你只需要提供一个短期的 10uS 脉冲触发信号。该模块内部将发出 8 个 40kHz 周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响

    7、信号是一个脉冲的宽度 成正比的距离对象。可通过发射信号到收到的回响信号时间间隔可以计算得到距式:uS/58= 厘米或者 uS/148=英寸。建议测量周期为 60ms 以上,以防止发射信号对回响信号的影响5. 智能小车液晶显示原理 加入液晶显示一方面是为了弥补数码管显示的局限性,其次是为了显示小车的运动状 态,离前方障碍物距离,循迹状态,是否遇到黑线,后退,前进还是转 向,作为一个控制平台,实现小车的灵活控制。液晶显示原理 液晶显示其实就是对屏幕的每个点的扫描,带字库的液晶内部自带控制芯片,直接对它操作就可以显示出汉子字符,需要读写命令和数据,才能达到对液晶控制器的操作。6. 避障模块电路设计

    8、小车避障模块由超声波和舵机两部分组成,超声波测量距离障碍物的距离, 舵机来控制超声波探头的 旋转,从而达到全方位的避障控制。7电源我们用的是六节干电池,用LM2940s降压。原理图如下8.红外通信原理 通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用电路芯片来进行控制操作。遥控器在按键按下后,周期性地发出同一种 32 位二进制码,周期约为 108ms。当一个键按下超过 36ms,振荡器使芯片激活,将发射一组 108ms 的编码脉冲,这 108ms 发射代码由一 个起始码(9ms),一个结果码(4.5ms),低 8 位地址码(9ms18ms),高 8 位地址码(9ms18ms),8 位

    9、数 据码(9ms18ms)和这 8 位数据的反码(9ms18ms)组成。接收器及解码 一体化红外线接收器是一种集红外线接收和放大于一体,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。 VS1838B三、材料准备1小车底盘,电机。我们从淘宝网上买的车模,他们直接组装好的。2四路红外探测系统。3超声波探测模块。4舵机、液晶5STC89C52,L298N,LM2940S,VS1838B,IN5819。瓷片电容104四、实验过程i.我们先做了单片机STC89C52最小系统。以及稳压电路。ii.我们

    10、用L298N以及IN5819,104电容照前边原理图搭建了驱动电路。iii.第三阶段做红外探测,用的是LM339,红外发射、接收二极管,好多次都失败了,最后我们就买了四路红外探测系统。调试时发现还不太好用,就换掉了滑动变阻器。iv.第四阶段我们对小车进行组装,加上了液晶显示器,超声波模块,舵机(带动超声波探头),红外一体化接收头。v.最后阶段对小车进行总体调试。五、程序1一些定义#include /头文件一般无需改动intrins.h#include hongwai.h#define uchar unsigned char /宏定义#define uint unsigned intsbit o

    11、ut1 = P22;/电机驱动输出控制管脚配置sbit out2 = P23;sbit out3 = P20;sbit out4 = P21;sbit ena=P37;sbit enb=P36;sbit SPK=P35;sbit in1 = P01;/循迹模块的信号输入管脚配置sbit in2 = P02;sbit in3 = P03;sbit in4 = P04;sbit RS = P24; /定义端口 sbit RW = P25;sbit EN = P26;sbit pwm=P00;sbit ECHO=P33;sbit TRIG= P34;extern unsigned char Y0;/

    12、外部链接变量#define RS_CLR RS=0 #define RS_SET RS=1#define RW_CLR RW=0 #define RW_SET RW=1 #define EN_CLR EN=0#define EN_SET EN=1#define DataPort P1 long S=0;2驱动程序void qianjin()/使小车向前行驶ena=enb=1; out2=out4=1;void zuozhuan()/控制小车做轻微左转动作ena=enb=1; out1=0; out2=out3=out4=1;void youzhuan()/控制小车做轻微右转? ena=enb=

    13、1; out1=out2=out4=1; out3=0;void zuozhuan1()/控制小车做左转动作 ena=enb=1; out1=out4=0; out2=out3=1;void youzhuan1()/控制小车做右转动作 out1=out4=1; out2=out3=0;void houtui()/控制小车可以使小车倒退行驶 out1=out3=1; out2=out4=0;void tingzhi () /使小车停止当前所有动? out1=out2=out3=out4=1;void TIM2Inital(void) /用定时器2 RCAP2H = (65536-100)/256

    14、;/晶振12M 60ms 16bit 自动重载 RCAP2L = (65536-100)%256; ET2=1; /打开定时器中断 EA=1; /打开总中断void TIM2(void) interrupt 5 using 1/定时器2中断 输出不同PWM信号TF2=0; count+; /对小车调速 if(countshu) else out1=out3=0; count=count%50;3液晶显示函数bit LCD_Check_Busy(void) /判忙 DataPort= 0xFF; RS_CLR; RW_SET; EN_CLR; _nop_(); EN_SET; return (b

    15、it)(DataPort & 0x80); void LCD_Write_Com(uchar com) /命令 while(LCD_Check_Busy(); /忙则等待 RW_CLR; DataPort= com; void LCD_Write_Data(uchar Data) /写数据 RS_SET; RW_CLR; EN_SET; DataPort= Data; _nop_(); EN_CLR; void LCD_Clear(void) /清屏 LCD_Write_Com(0x01); delay(5); void LCD_Write_String(uchar x,uchar y,uch

    16、ar *s)/*写字符串*/ if (y = 0) LCD_Write_Com(0x80 + x); /表示第一行 else LCD_Write_Com(0xC0 + x); /表示第二行 while (*s) LCD_Write_Data( *s); s +; void LCD_Write_Char(uchar x,uchar y,uchar Data) /*写单个字符*/ LCD_Write_Data( Data); void LCD_Init(void) /初始化 LCD_Write_Com(0x38); /*显示模式设置*/ delay(7); LCD_Write_Com(0x08);

    17、 /*显示关闭*/ /*显示清屏*/ LCD_Write_Com(0x06); /*显示光标移动设置*/ LCD_Write_Com(0x0C); /*显示开及光标设置*/4.超声波检测unsigned int time=0; bit flag =0; void Conut(void) time=TH0*256+TL0; TH0=0; TL0=0; S=time*1.7/100; /算出来是CM 12M晶振 void StartModule() TRIG=1; TRIG=0; StartModule(); while(!ECHO); /当ECHO为零时等待 TR0=1; /开启计数 while

    18、(ECHO); /当ECHO为1计数并等待 TR0=0; Conut();void disp(void) /液晶显示障碍距离 LCD_Write_Char(8,1,0+S%1000/100); LCD_Write_Char(9,1,+S%1000%100/10); LCD_Write_Char(10,1,+S%1000%10 %10); 5避障程序void bizhang() uchar a; StartModule(); delay(5); if(S13) delay(10); if(S TR2=0;delay(2);tingzhi();delay(3); LCD_Clear();/清屏 d

    19、elay(20); LCD_Write_String(5,0,Barrier);delay(5); for(a=0;ayou) /判断左右转 zuozhuan();delay(400); else youzhuan(); TR1=0; /关PWM void init_pwm() /定时器1控制舵机带动超声波模块摇头 TMOD|=0X10; TH1=0XFE; TL1=0X33; ET1=0;void duoji() interrupt 3 定时器1中断 if(count1shu1) pwm=1; pwm=0; count1+; count1=count1%40;6.循迹程序void xunji

    20、() if(in1=1&in2=0&in3=0&in4=0)delay(1);TR2=0;zuozhuan(); else if(in1=0&in2=1&youzhuan(); else if(in1=0&in4=1)delay(1);youzhuan1(); else if(in3=1&in1=0&zuozhuan1(); else if (in1=0&TR2=1; qianjin(); else if (in1=1&in3=1& TR2=0; tingzhi();7红外通信sbit IRIN = P32;/红外接收器数据线unsigned char Y0=2;/unsigned char

    21、IRCOM7;/暂存数组void IRdelay(unsigned char x) /x*0.14MS unsigned char i; while(x-) for (i = 0; i13; i+) void IRInit() IE |= 0x81; /允许总中断中断,使能 INT0 外部中断 TCON |= 0x01; /触发方式为脉冲负边沿触发 IRIN=1; /I/O口初始 IRdelay(1);void IR_IN(void) interrupt 0 unsigned char j,k,N=0; EX0 = 0; IRdelay(15); if (IRIN=1) EX0 =1; return; /确认IR信号出现


    注意事项

    本文(智能寻迹小车实验报告文档格式.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开